@charset "UTF-8";

/*
Theme Name: 2022mj_josui-kitakyushu.com
Description: 2022mj_josui-kitakyushu.com
Theme URI: https://josui-kitakyushu.com/
Author: https://josui-kitakyushu.com/
Author URI: https://josui-kitakyushu.com/
Version: 1.0.0
License: GNU General Public License
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

@font-face {
	font-family: 'Comfortaa-VariableFont_wght';
	src: url(fonts/Comfortaa/Comfortaa-VariableFont_wght.ttf) format('truetype');
	font-display: swap;
}
.comfortaa {
	font-family: 'Comfortaa-VariableFont_wght';
}

* {
	font-size: inherit;
	line-height: inherit;
}
*, *:before, *:after {
	box-sizing: inherit;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
html, body {
	margin: 0;
	padding: 0;
}
body {
	color: #251E1F;
	font-size: 16px;
	line-height: 1.8;
	font-weight: normal;
	font-family: YakuHanJP, "Noto Sans JP", sans-serif;
}
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
img {
	max-width: 100%;
	height: auto;
	box-sizing: border-box;
	vertical-align: middle;
}
p {
	margin:0 0 1.5em 0;
	padding: 0;
	font-weight: normal;
}
p:last-child {
	margin: 0;
}
p span {
	font-weight: normal;
}

@media screen and (max-width: 768px) {
	body {
		font-size: 16px;
	}
}
@media screen and (max-width: 430px) {
	body {
		font-size: 14px;
	}
}
@media screen and (max-width: 320px) {
	body {
		font-size: 14px;
	}
}

/****************************************
 * リンク
*****************************************/

a {
	color: #251E1F;
	text-decoration: none;
	transition: all .3s ease;
	word-break: break-all;
}
a:hover {
	opacity: .7;
}
a img {
	transition: all .3s;
	-webkit-transition: all .3s;
}
a img:hover {
	opacity: .7;
}

/*single テキストリンク
*****************************************/
#single .contents_textbox a,
#page .contents a {
	text-decoration: underline;
}

/* 別ウィンドウリンク
*****************************************/
a.tab {
	display: inline-block;
	position: relative;
	padding-right: 25px;
	line-height: 1;
}
a.tab:after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	right: 3px;
	background: url(images/common/icon140_tab.png) no-repeat;
	background-size: 100%;
	background-position: center;
	width: 18px;
	height: 18px;
}

/* メインボタン
*****************************************/
a.main_btn {
	width: auto;
	text-decoration: none !important;
	display: inline-block;
	padding: 0 4em 0 3em;
	color: #FFF;
	background: #ED5314;
	line-height: 60px;
}
a.main_btn:hover {
	opacity: 1;
	color: #FFF;
	background: #F07241;
	/*background-image: linear-gradient(45deg, #0f9b9e, #58a7d2);*/
}

a.pochi {
	position: relative;
}
a.pochi:before {
	content: '';
	position: absolute;
	top: 50%;
	right: 15%;
	transform: translateY(-50%) rotate(45deg);
	background: #FFF;
	width: 6px;
	height: 6px;
	border-radius: 12px;
}
a.pochi-FFF {
	position: relative;
}
a.pochi-FFF:before {
	content: '';
	position: absolute;
	top: 50%;
	right: 15%;
	transform: translateY(-50%) rotate(45deg);
	background: #F07241;
	width: 6px;
	height: 6px;
	border-radius: 12px;
}
a.pochi-FFF:hover:before {
	background: #FFF;
}

@media screen and (max-width: 768px) {
	a.main_btn {
		padding: 0 3em 0 2em;
	}
	a.pochi:before {
		right: 11%;
	}
	a.pochi-FFF:before {
		right: 11%;
	}
}
@media screen and (max-width: 560px) {
	a.main_btn {
		font-weight: bold;
		line-height: 52px;
	}
}

/****************************************
 * 見出し
*****************************************/
h1, h2, h3, h4, h5, h6 {
	font-weight: 600;
	margin: 0;
	text-align: center;
}

/* h2
*****************************************/

h2 {
	font-size: 2em;
	margin-bottom: 60px;
}
.main_title {
	line-height: 1.6;
}

@media screen and (max-width: 768px) {
	h2 {
		font-size: 1.8em;
	}
}
@media screen and (max-width: 560px) {
	h2 {
		font-size: 1.6em;
		margin-bottom: 45px;
	}
}
@media screen and (max-width: 430px) {
	h2 {
		font-size: 1.5em;
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 320px) {
	h2 {
		font-size: 1.3em;
	}
}

/* h3
*****************************************/

h3 {
	text-align: left;
	font-size: 1.3em;
	margin-bottom: 45px;
}

@media screen and (max-width: 560px) {
	h3 {
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 430px) {
	h3 {
		font-size: 1.2em;
	}
}
@media screen and (max-width: 320px) {
	h3 {
		font-size: 1.1em;
	}
}


/****************************************
リスト
*****************************************/
table {
	table-layout: fixed;
}
dl,
dt,
dd {
	margin: 0;
	padding: 0;
	list-style: none;
}
ul ul{
	margin-left: 1em;
}

/****************************************
 * レスポンシブ
*****************************************/

@media screen and (min-width: 1025px) {/*1025px以上で*/
	.tb {
		display: none !important;
	}
	.pc {
		display: block !important;
	}
	.sp {
		display: none !important;
	}
}
@media screen and (max-width:1024px) {/*1024px以下で*/
	.tb {
		display: block !important;
	}
	.pc {
		display: none !important;
	}
	.sp {
		display: none !important;
	}
}
@media screen and (max-width: 560px) {/*560px以下で*/
	.tb {
		display: none !important;
	}
	.sp {
		display: block !important;
	}
}

/****************************************
 * ヘッダー
*****************************************/

header {
	background: #FFF;
	border-top: 4px solid #ED5314;
	border-image: linear-gradient(to right, #9BCA3E 0%, #ED5314 100%);
	border-image-slice: 1;
	position: sticky;
	top: 0;
	box-shadow: 0 0 6px rgb(0 0 0 / 20%);
	z-index: 90;
}
header .header_discription {
	padding: 16px 0;
	line-height: 1;
}
header .header_discription .bloginfo {
	text-align: left;
	font-weight: normal;
	font-size: .8em;
	line-height: 1;
}

header .header_main .inner {
	position: relative;
}
header .header_main .header_middle_flex {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
}
header .header_main .header_middle_flex .header_middle_logo {
	
}
header .header_main .header_middle_flex .header_contact {
	display: flex;
	align-items: center;
	flex-direction: column;
}
header .header_main .header_middle_flex .header_contact .header_phone {
	margin-right: 150px;
}
header .header_main .header_middle_flex .header_contact .header_flex {
	display: flex;
	align-items: center;
}
header .header_main .header_middle_flex .header_contact .header_flex .header_flex_free {
	text-align: center;
	margin-right: 12px;
}
header .header_main .header_middle_flex .header_contact .header_flex .header_flex_free span.phone_number {
	
}
header .header_main .header_middle_flex .header_contact .header_flex .header_flex_tel {
	text-align: center;
	margin: 0 12px;
}
header .header_main .header_middle_flex .header_contact .header_flex .header_flex_tel span.phone_number {
	
}
header .header_main .header_middle_flex .header_contact .header_phone a {
	display: block;
	color: #ED5314;
}
header .header_main .header_middle_flex .header_contact span.phone_number {
	display: block;
	line-height: 1;
	font-size: 1.8em;
	font-weight: 500;
	position: relative;
}
header .header_main .header_middle_flex .header_contact span.memo {
	display: inline-block;
	line-height: 1;
	margin-bottom: 8px;
	text-align: center;
	font-size: .9em;
	font-weight: 500;
	padding-right: 12px;
	color: #ED5314;
	position: relative;
}
header .header_main .header_middle_flex .header_contact span.memo:before {
	content: '';
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%) rotate(45deg);
	background: #ED5314;
	width: 6px;
	height: 6px;
	border-radius: 12px;
}
header .header_main .header_middle_flex .header_contact span.hours {
	display: block;
	line-height: 1.3;
	text-align: center;
	font-size: .8em;
	background: #FDEDE7;
	padding: 8px;
}
header .header_main .header_middle_flex .header_contact a.header_form {
	position: absolute;
	top: -48px;
	right: 0;
	margin: 0;
}

header .header_nav {
	padding: 18px 0 16px;
	margin: 12px auto 0;
}
header .header_nav nav{
	width: 100%;
}
header .header_nav nav ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: nowrap;
	flex-direction: row;
	align-items: center;
	justify-content: space-around;
}
header .header_nav nav ul li {
	position: relative;
	text-align: center;
}
header .header_nav nav ul li a {
	display: block;
	text-align: center;
	font-weight: 500;
}
header .header_nav nav ul li a:hover {
	color: #fa6e57;
	opacity: 1;
}
header .header_nav nav ul ul {
	background: #FFF;
	width: 12em;
	position: absolute;
	top: 100%;
	left: -2px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin: 0;
	z-index: 1;
}
header .header_nav nav ul ul li {
	width: 100%;
	margin: 0;
	text-align: left;
	border-bottom: 1px solid #ededed;
}
header .header_nav nav ul ul li:before {
	content: none;
}
header .header_nav nav ul ul li a {
	display: inline-block;
	padding: 8px 12px;
}
header .header_nav nav ul ul {
	visibility: hidden;
	opacity: 0;
	transition: .2s ease-in-out;
}
header .header_nav nav ul li:hover > ul {
	padding: 8px 0 0;
	visibility: visible;
	opacity: 1;
}

@media screen and (max-width: 1260px) {
	header .header_main .header_middle_flex .header_contact a.header_form {
		right: 60px;
	}
	header .header_main .header_middle_flex .header_contact a.header_form img {
		width: 145px;
	}
	header .header_main .header_middle_flex .header_contact .header_phone {
		margin-right: 175px;
	}
}
@media screen and (max-width: 1194px) {
	header .header_nav nav ul li a {
		padding: 0 20px;
	}
}
@media screen and (max-width: 768px) {
	header .header_main .header_middle_flex .header_middle_logo img {
		width: 150px;
	}
	header .header_main .header_middle_flex .header_contact a.header_form {
		right: 30px;
	}
	header .header_main .header_middle_flex .header_contact a.header_form img {
		width: 120px;
	}
	header .header_main .header_middle_flex .header_contact .header_flex {
		flex-wrap: wrap;
		justify-content: center;
	}
	header .header_main .header_middle_flex .header_contact .header_phone {
		margin-right: 135px;
	}
	header .header_main .header_middle_flex .header_contact .header_flex .header_flex_tel {
		margin: 0 6px;
	}
	header .header_main .header_middle_flex .header_contact span.memo {
		font-size: .8em;
	}
	header .header_main .header_middle_flex .header_contact span.phone_number {
		font-size: 1.2em;
	}
	header .header_main .header_middle_flex .header_contact span.hours {
		display: none;
	}
	
	header .header_nav nav ul {
		flex-wrap: wrap;
		margin: -12px 0 0;
	}
	header .header_nav nav ul li {
		width: calc(100%/4);
		margin: 12px 0 0;
	}
	header .header_nav nav ul li a {
		padding: 0;
		width: auto;
	}
}
@media screen and (max-width: 559px) {
	header {
		position: static;
		padding-bottom: 16px;
	}
	header .header_discription .bloginfo {
		overflow-x: auto;
		white-space: nowrap;
		margin-right: 80px;
	}
	header .header_main .header_middle_flex {
		flex-direction: column;
		align-items: flex-start;
	}
	header .header_main .header_middle_flex .header_contact {
		margin-top: 8px;
	}
	header .header_main .header_middle_flex .header_contact .header_phone {
		width: 100%;
		margin: 0;
	}
	header .header_main .header_middle_flex .header_contact .header_flex .header_flex_free,
	header .header_main .header_middle_flex .header_contact .header_flex .header_flex_form {
		width: calc(100%/2);
		margin: 0;
	}
	header .header_main .header_middle_flex .header_contact span.phone_number {
		font-size: 1.6em;
		font-weight: bold;
	}
	header .header_main .header_middle_flex .header_contact span.memo {
		margin-bottom: 0;
	}
	header .header_main .header_middle_flex .header_contact a.header_form {
		position: static;
	}
	header .header_main .header_middle_flex .header_contact a.header_form img {
		width: auto;
	}
	
	header .header_nav {
		padding: 0;
		margin: 0;
	}
}
@media screen and (max-width: 430px) {
	header .header_main .header_middle_flex .header_contact {
		margin-top: 10px;
	}
	header .header_main .header_middle_flex .header_contact span.phone_number {
		font-size: 1.3em;
	}
	header .header_main .header_middle_flex .header_contact .header_flex .header_flex_free {
		margin-top: -6px;
	}
}
@media screen and (max-width: 320px) {
	header .header_main .header_middle_flex .header_contact span.phone_number {
		margin-top: -2px;
	}
	header .header_main .header_middle_flex .header_contact span.memo {
		font-size: .5em;
	}
	
}

/****************************************
 * ナビゲーション
 * スマートフォン
*****************************************/

#gn-full-screen {
	display: none;
}

@media screen and (max-width: 560px) {
	#gn-full-screen {
		display: block;
	}
	
	/*ハンバーガーメニュー*/
	#gn-full-screen .hamburger {
		position: fixed;
		right: 30px;
		top: 30px;
		width: 35px;
		height: 20px;
		z-index: 9999;
	}
	#gn-full-screen .hamburger-line {
		display: block;
		height: 3px;
		background: #ee5314;
		position: absolute;
		transition:transform .3s;
		width: 100%;
	}
	#gn-full-screen .hamburger-line-center{
		top: 12px;
	}
	#gn-full-screen .hamburger-line-bottom{
		bottom: -6px;
	}
	#gn-full-screen .hamburger-line-top.active{
		top: 8px;
		transform: rotate(45deg);
	}
	#gn-full-screen .hamburger-line-top.active {
		top: 13px;
		background: #ee5314;
	}
	#gn-full-screen .hamburger-line-center.active{
		transform:scaleX(0);
	}
	#gn-full-screen .hamburger-line-bottom.active{
		bottom: 5px;
		background: #ee5314;
		transform: rotate(135deg);
	}
	
	/*ナビゲーション*/
	#gn-full-screen nav.gn-full-screen-menu {
		width: 100%;
		height: 100vh;
		overflow-y: scroll;
		background: #FFF;
		display: none;
		height: 100%;
		position: fixed;
		left: 0;
		top: 0;
		z-index: 999;
	}
	#gn-full-screen .menu-sp-menu-container {
		width: 90%;
		margin: 50px auto;
		padding-right: 5px;/*スクロールバー分*/
	}
	#gn-full-screen .menu-sp-menu-container ul#menu-sp-menu,
	#gn-full-screen .menu-sp-menu-container ul#menu-sp-menu ul.sub-menu {
		list-style: none;
		padding: 0;
		margin: 0;
	}
	#gn-full-screen .menu-sp-menu-container ul#menu-sp-menu li {
		border-bottom: 1px solid #fff;
	}
	#gn-full-screen .menu-sp-menu-container ul#menu-sp-menu li.menu-item-206 {
		padding-bottom: 5px;
	}
	#gn-full-screen .menu-sp-menu-container ul#menu-sp-menu li ul.sub-menu {
		margin-left: 30px;
	}
	#gn-full-screen .menu-sp-menu-container ul#menu-sp-menu li ul.sub-menu li {
		padding: 0;
		border: none;
	}
	#gn-full-screen .menu-sp-menu-container ul#menu-sp-menu a {
		color: #fff;
		font-size: 1.3em;
		transition: .5s;
		padding: 15px;
		display: block;
	}
	
	#gn-full-screen .sp_nav {
		margin: 60px auto 0;
		padding: 15px 60px 30px;
	}
	#gn-full-screen .sp_nav a {
		font-weight: 600;
	}
	#gn-full-screen .sp_nav .nav_service_lp {
		text-align: center;
	}
	#gn-full-screen ul.service_lp_list {
		list-style: none;
		margin: 12px auto 0;
		padding: 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#gn-full-screen ul.service_lp_list li {
		width: calc(100%/2 - 6px);
		margin: 22px 0 0;
	}
	#gn-full-screen ul.sp_nav_list li:first-child {
		border-top: 1px solid #BA9847;
	}
	#gn-full-screen ul.service_lp_list li a {
		padding: 0 2em 0 12px;
	}
	#gn-full-screen ul.service_lp_list li a.pochi:before {
		right: 11%;
	}
	#gn-full-screen ul.service_lp_list li a.dx {
		letter-spacing: -.6px;
		font-size: .93em;
	}
	
	#gn-full-screen .sp_nav .nav_menu {
		text-align: center;
		margin: 60px auto 0;
	}
	#gn-full-screen ul.menu_list {
		list-style: none;
		margin: 12px auto 0;
		padding: 0;
		display: flex;
		flex-direction: column;
	}
	#gn-full-screen ul.menu_list li {
		width: 100%;
		margin: 0;
		border-bottom: 1px solid #ededed;
	}
	#gn-full-screen ul.menu_list li:first-child {
		border-top: 1px solid #ededed;
	}
	#gn-full-screen ul.menu_list li a {
		padding: 12px 30px;
	}
	
	
	#gn-full-screen .sp_nav .nav_cotact {
		text-align: center;
		margin: 60px auto 0;
	}
	#gn-full-screen ul.cotact_list {
		list-style: none;
		margin: 0 auto;
		padding: 0;
		display: flex;
	}
	#gn-full-screen ul.cotact_list li {
		width: calc(100%/2);
		margin: 0;
	}
	#gn-full-screen ul.cotact_list li.line {
		margin: 12px auto 0;
	}
	#gn-full-screen ul.cotact_list li.phone span.memo {
		display: inline-block;
		line-height: 1;
		margin-bottom: 8px;
		text-align: center;
		font-size: .8em;
		font-weight: 500;
		padding-right: 12px;
		color: #ED5314;
		position: relative;
	}
	#gn-full-screen ul.cotact_list li.phone span.memo:before {
		content: '';
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateY(-50%) rotate(45deg);
		background: #ED5314;
		width: 6px;
		height: 6px;
		border-radius: 12px;
	}
	#gn-full-screen ul.cotact_list li.phone span.phone_number {
		display: block;
		line-height: 1;
		font-size: 1.6em;
		font-weight: 500;
		color: #ED5314;
		margin-bottom: 3px;
	}
	
}
@media screen and (max-width: 430px) {
	#gn-full-screen .sp_nav {
		margin: 60px auto 0;
		padding: 15px 20px 30px;
	}
	#gn-full-screen .sp_nav .nav_service_lp img {
		width: 220px;
	}
	#gn-full-screen .sp_nav .nav_menu,
	#gn-full-screen .sp_nav .nav_cotact {
		margin: 45px auto 0;
	}
	#gn-full-screen ul.service_lp_list li a {
		padding: 0 1em 0 8px;
		line-height: 52px;
	}
	#gn-full-screen ul.service_lp_list li a.pochi:before {
		right: 6.5%;
	}
	#gn-full-screen ul.menu_list li a {
		padding: 16px 30px;
	}
	
	#gn-full-screen ul.cotact_list {
		display: flex;
		flex-direction: column;
		margin: -22px 0 0;
	}
	#gn-full-screen ul.cotact_list li {
		width: 100%;
		margin: 22px 0 0;
	}
	#gn-full-screen ul.cotact_list li.phone span.phone_number {
		font-size: 1.8em;
		font-weight: bold;
	}
	#gn-full-screen ul.cotact_list li.phone span.memo {
		font-size: 1em;
		font-weight: bold;
	}
	#gn-full-screen ul.cotact_list li.line {
		margin-top: 18px;
	}
	#gn-full-screen ul.cotact_list img {
		width: 230px;
		border-radius: 8px;
	}
}
@media screen and (max-width: 380px) {
	#gn-full-screen .hamburger {
		top: 20px;
		right: 20px;
	}
}
@media screen and (max-width: 360px) {
	#gn-full-screen ul.service_lp_list li {
		width: 100%;
		margin: 2px 0 0;
	}
	#gn-full-screen ul.service_lp_list li a.pochi:before {
		right: 12%;
	}
	#gn-full-screen .sp_nav .nav_menu,
	#gn-full-screen .sp_nav .nav_cotact {
		margin: 12px auto 0;
	}
	#gn-full-screen ul.menu_list li a {
		padding: 12px 30px;
	}
}
@media screen and (max-width: 320px) {
	#gn-full-screen ul.service_lp_list li a {
		padding: 0 2em 0 12px;
		line-height: 48px;
	}
	#gn-full-screen ul.menu_list li a {
		padding: 8px 30px;
	}
	#gn-full-screen ul.cotact_list {
		margin: -8px 0 0;
	}
	#gn-full-screen ul.cotact_list li {
		margin: 12px 0 0;
	}
}

/****************************************
 * レイアウト
*****************************************/

.inner {
	padding: 0 60px;
	width: 1260px;
	margin: 0 auto;
}
.inner__nr {
	padding: 0 60px;
	width: 980px;
	margin: 0 auto;
}
main {
	overflow: hidden;
	width: 100%;
	margin: 0 auto;
}
article {
	overflow: hidden;
	width: 100%;
}
article.front-page,
article#page {
	background: #FFF;
}
article#archive,
article#single {
	background: #FFF;
}
section {
	padding: 90px 0;
}
section#office {
	padding-bottom: 0;
}
.contents {
	margin: 0 auto 0;
}
#archive .contents {
	padding: 60px 0;
}
#page_lp .contents {
	padding: 60px 0 0;
}
.contents.contact_contents {
	padding: 0;
}

@media screen and (max-width: 1260px) {
	.inner,
	.inner__nr {
		width: 100%;
	}
	.contents {
		padding: 60px 0;
	}
}
@media screen and (max-width: 768px) {
	.inner,
	.inner__nr {
		padding: 0 30px;
	}
	section {
		padding: 75px 0;
	}
}
@media screen and (max-width: 559px) {
	section {
		padding: 60px 0;
	}
	section.contents {
		padding: 45px 0;
	}
}
@media screen and (max-width: 430px) {
	.inner,
	.inner__nr {
		padding: 0 20px;
	}
	section {
		padding: 45px 0;
	}
	#archive .contents {
		padding: 45px 0;
	}
	#page_lp .contents {
		padding: 45px 0 0;
	}
}

/****************************************
 * パンくず
*****************************************/

.breadcrumbs_area {
	padding: 18px 0;
	border-bottom: 1px solid #fafafa;
}
.breadcrumbs {
	font-size: .8em;
	color: #665E5B;
}
.breadcrumbs a {
	color: #665E5B;
}

@media screen and (max-width: 560px) {
	.breadcrumbs {
		overflow-x: auto;
		white-space: nowrap;
	}
}
@media screen and (max-width: 560px) {
	.breadcrumbs_area {
		padding: 20px 0;
	}
}


/****************************************
 * p-back.php
*****************************************/

#back {
	padding: 30px 0;
	text-align: right;
	font-size: .8em;
	background: #FDEDE7;
}

/****************************************
 * p-contact.php
*****************************************/

#p-contact {
	padding: 90px 0 0;
	position: relative;
}
#p-contact:after {
	content: '';
	display: block;
	position: absolute;
	background: #FDEDE7;
	margin: auto;
	bottom: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 244px;
}
#p-contact .p-contact_top {
	margin: 0 auto;
}
#p-contact .p-contact_top .information {
	width: 940px;
	margin: 0 auto 30px;
	text-align: center;
}
#p-contact .p-contact_top .information p.office {
	font-size: 1.2em;
	font-weight: bold;
	margin-bottom: 12px;
}
#p-contact .p-contact_top .information p.address {
	font-weight: bold;
	margin-bottom: 12px;
}
#p-contact .p-contact_top .information p.address span {
	font-weight: bold;
	display: block;
}
#p-contact .p-contact_top .information p.access {
	font-weight: bold;
	margin: 0;
}
#p-contact .p-contact_top .information .access_more {
	margin: 16px 0 0;
}
#p-contact .p-contact_top .information .access_more ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
}
#p-contact .p-contact_top .information .access_more ul li {
	margin-right: 12px;
}
#p-contact .p-contact_top .information .access_more ul li a {
	display: inline-block;
	padding: 8px 40px 8px 18px;
	border-radius: 60px;
	line-height: 28px;
	font-size: .8em;
}
#p-contact .p-contact_top .p-contact_top_box .information .access_more ul li a.circle:before {
	right: 1.2em;
	width: 10px;
	height: 10px;
}
#p-contact .p-contact_top .p-contact_top_box .information .access_more ul li a:hover {
	color: #FFF;
}

#p-contact .p-contact_map {
    margin-bottom: -75px;
}
#p-contact .p-contact_outline {
	padding: 45px 60px;
	background: #ED5314;
	color: #FFF;
	border-radius: 12px;
	box-shadow: 0 0 12px 0 rgb(19 71 52 / 20%);
	position: relative;
	z-index: 1;
}
#p-contact .p-contact_outline .caution_txt {
	font-size: 1.2em;
	text-align: center;
	margin-bottom: 30px;
}
#p-contact .p-contact_outline .caution_txt span.deco_sideline {
	display: inline-block;
	padding: 0 60px;
	position: relative;
}
#p-contact .p-contact_outline .caution_txt span.deco_sideline:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0, -50%);
	background-image: url(images/common/deco_sideline_left.png);
	background-size: contain;
	background-repeat: no-repeat;
	width: 33px;
	height: 34px;
}
#p-contact .p-contact_outline .caution_txt span.deco_sideline:after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0, -50%);
	background-image: url(images/common/deco_sideline_right.png);
	background-size: contain;
	background-repeat: no-repeat;
	width: 33px;
	height: 34px;
}
#p-contact .p-contact_box {
	display: flex;
	flex-wrap: nowrap;
	align-items: stretch;
	justify-content: space-between;
}
#p-contact .p-contact_box .p-contact_inbox {
	text-align: center;
}
#p-contact .p-contact_box .p-contact_phone {
	width: 460px;
	text-align: center;
	font-weight: bold;
	border-right: 1px solid;
}
#p-contact .p-contact_box .p-contact_mail {
	width: 400px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-right: 1px solid;
}
#p-contact .p-contact_box .p-contact_mail span {
	display: block;
	font-size: 1.1em;
	margin: 0 0 12px;
}
#p-contact .p-contact_box .p-contact_line {
	width: 160px;
	display: flex;
	align-items: center;
	justify-content: center;
}
#p-contact .p-contact_box .p-contact_line .p-contact_inbox {
	background: #FFF;
	padding: 18px;
	border-radius: 12px;
}
#p-contact .p-contact_box .p-contact_line .p-contact_inbox span {
	display: block;
	color: #03c755;
	font-weight: bold;
	font-size: .8em;
	line-height: 1;
	margin: 0 0 12px;
}
#p-contact p.btn_tel_text_free {
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	margin: 0;
}
#p-contact p.btn_tel_text_free span {
	display: inline-block;
	font-size: 2.4em;
	color: #FFF;
	letter-spacing: .03em;
	margin: 0;
	padding: 0 0 6px;
	position: relative;
}
#p-contact p.btn_tel_text_free span.free {
	font-size: .9em;
	line-height: 1.4;
	padding: 0;
	margin-right: 12px;
	letter-spacing: -.06em;
}
#p-contact p.btn_tel_text_phone {
	display: flex;
	align-items: center;
	justify-content: space-around;
	line-height: 1;
	margin: 12px 0 0;
}
#p-contact p.btn_tel_text_phone span {
	display: inline-block;
	font-size: 1.6em;
	color: #FFF;
	letter-spacing: .03em;
	margin: 0;
	padding: 0 0 0 45px;
	position: relative;
}
#p-contact p.btn_tel_text_phone span:before {
	content: '';
	display: block;
	position: absolute;
	margin: auto;
	top: 53%;
	left: 15px;
	transform: translateY(-50%) translateX(0);
	background: url(images/common/icon_phone-FFF.png) no-repeat;
	background-size: 100%;
	width: 22px;
	height: 22px;
}
#p-contact p.btn_tel_text_hour {
	margin-top: 8px;
	font-size: 1em;
	font-weight: 500;
	color: #FFF;
}
#p-contact a.btn_mail {
	display: inline-block;
	width: 320px;
	margin: 0 auto;
	padding: 12px;
	color: #ED5314;
	background: #FFF;
	position: relative;
}
#p-contact a.btn_mail span.btn_mail_text {
	display: inline-block;
	padding-right: 20px;
	margin: 0;
	font-size: 1.2em;
	position: relative;
}
#p-contact a.btn_mail span.btn_mail_text:before {
	content: '';
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%) rotate(45deg);
	background: #ED5314;
	width: 6px;
	height: 6px;
	border-radius: 12px;
}

a.mail_button {
	line-height: 1.6;
	display: block;
	width: 300px;
	margin: 1em auto 0;
	color: #251E1F !important;
	background: #F2D857;
	border: 2px solid #F2D857;
	position: relative;
	display: inline-block;
	padding: 8px 0;
	transition: all .3s ease-in-out;
	text-align: center;
	font-weight: bold;
}
a.mail_button:before,
a.mail_button:after {
	content: '';
	display: block;
	position: absolute;
	border: 2px solid #F2D857;
	width: 1em;
	height:1em;
	transition: all 0.3s ease-in-out;
}
a.mail_button:before {
	top: -6px;
	left: -6px;
	border-width: 2px 0 0 2px;
	z-index: 5;
}
a.mail_button:after {
	bottom: -6px;
	right: -6px;
	border-width: 0 2px 2px 0;
}
a.mail_button:hover:before,
a.mail_button:hover:after {
	width: calc(100% + 12px);
	height: calc(100% + 12px);
	border-color: #FFF;
}
a.mail_button:hover {
	opacity: 1;
	color: #1F583B !important;
	background: #FFF;
	border-color: #FFF;
}

@media screen and (max-width: 1024px) {
	#p-contact .p-contact_top .information {
		width: 100%;
	}
	#p-contact .p-contact_outline {
		padding: 45px;
	}
	#p-contact p.btn_tel_text_free span {
		font-size: 2em;
	}
	#p-contact a.btn_mail {
		width: 285px;
	}
}
@media screen and (max-width: 768px) {
	#p-contact {
		padding: 60px 0 0;
	}
	#p-contact .p-contact_outline {
		padding: 30px;
	}
	#p-contact .p-contact_outline .caution_txt {
		font-size: 1.1em;
		line-height: 1.4;
	}
	#p-contact .p-contact_box {
		flex-wrap: wrap;
	}
	#p-contact .p-contact_box .p-contact_phone {
		width: 100%;
		border-right: none;
		border-bottom: 1px solid;
		padding-bottom: 18px;
		margin-bottom: 18px;
	}
	#p-contact p.btn_tel_text_free span {
		font-size: 1.8em;
	}
	#p-contact p.btn_tel_text_free span.free {
		font-size: .7em;
	}
	#p-contact p.btn_tel_text_phone span {
		font-size: 1.3em;
	}
	#p-contact p.btn_tel_text_hour {
		font-size: .9em;
	}
	#p-contact .p-contact_box .p-contact_mail {
		width: calc(100% - 260px);
	}
	#p-contact a.btn_mail {
		width: 280px;
	}
	#p-contact a.btn_mail span.btn_mail_text {
		font-size: 1em;
	}
	#p-contact .p-contact_box .p-contact_mail span {
		font-size: 1em;
	}
	#p-contact .p-contact_box .p-contact_line {
		width: 260px;
	}
	#p-contact .p-contact_box .p-contact_line .p-contact_inbox {
		display: flex;
		align-items: center;
		justify-content: space-between;
		background: none;
		padding: 0;
	}
	#p-contact .p-contact_box .p-contact_line .p-contact_inbox span {
		color: #FFF;
		margin: 0;
		padding-right: 18px;
		font-size: 1em;
	}
}
@media screen and (max-width: 559px) {
	#p-contact {
		padding: 45px 0 0;
	}
	#p-contact:after {
		content: "";
	}
	#p-contact .p-contact_map {
		margin-bottom: 0;
	}
	#p-contact .p-contact_contact {
		background: #FDEDE7;
	}
	#p-contact .p-contact_outline .caution_txt {
		margin-bottom: 18px;
	}
	#p-contact .p-contact_box {
		flex-direction: column;
	}
	#p-contact .p-contact_box .p-contact_phone,
	#p-contact .p-contact_box .p-contact_mail,
	#p-contact .p-contact_box .p-contact_line {
		width: 100%;
	}
	#p-contact p.btn_tel_text_phone {
		display: none;
	}
	#p-contact .p-contact_box .p-contact_phone {
		border-right: 0;
		border-bottom: 1px solid;
		padding-bottom: 18px;
	}
	#p-contact p.btn_tel_text_hour {
		font-size: .9em;
	}
	#p-contact .p-contact_box .p-contact_mail {
		border-right: none;
		border-bottom: 1px solid;
		padding-bottom: 18px;
	}
	#p-contact .p-contact_box .p-contact_line {
		padding-top: 18px;
	}
}
@media screen and (max-width: 430px) {
	#p-contact .p-contact_outline .caution_txt {
		font-size: 1em;
	}
	#p-contact .p-contact_outline .caution_txt span.deco_sideline {
		padding: 0 20px;
		font-weight: bold;
	}
	#p-contact .p-contact_outline .caution_txt span.deco_sideline:before {
		left: -20px;
	}
	#p-contact .p-contact_outline .caution_txt span.deco_sideline:after {
		right: -20px;
	}
	#p-contact .p-contact_box .p-contact_phone {
		margin-top: 12px;
	}
	#p-contact p.btn_tel_text_free span {
		font-weight: bold;
	}
	#p-contact p.btn_tel_text_phone span {
		font-size: 1.6em;
	}
	#p-contact p.btn_tel_text_hour {
		font-size: 1em;
		font-weight: bold;
		margin-top: 15px;
	}
	#p-contact .p-contact_box .p-contact_mail span {
		font-weight: bold;
	}
	#p-contact .p-contact_box .p-contact_line .p-contact_inbox span {
		line-height: 1.6;
	}
}
@media screen and (max-width: 380px) {
	#p-contact .p-contact_outline {
		padding: 30px;
	}
	#p-contact .p-contact_outline .caution_txt {
		font-size: 1em;
	}
	#p-contact a.btn_mail {
		padding: 12px;
	}
	#p-contact p.btn_mail_text {
		font-size: 1.1em;
	}
}
@media screen and (max-width: 320px) {
	#p-contact .p-contact_contact .inner {
		padding: 0;
	}
	#p-contact .p-contact_outline {
		padding: 30px 20px;
		border-radius: 0;
	}
	#p-contact .p-contact_outline .caution_txt {
		font-size: .9em;
		padding: 0 12px;
	}
	#p-contact .p-contact_outline .caution_txt span.deco_sideline {
		padding: 0 8px;
	}
	#p-contact .p-contact_outline .caution_txt span.deco_sideline:before,
	#p-contact .p-contact_outline .caution_txt span.deco_sideline:after {
		width: 20px;
		height: 27px;
	}
	#p-contact p.btn_tel_text_free span {
		font-size: 1.6em;
	}
	#p-contact p.btn_tel_text_phone {
		font-size: 1.8em;
		padding-left: 32px;
	}
	#p-contact p.btn_tel_text_phone:before {
		width: 22px;
		height: 22px;
	}
	#p-contact a.btn_mail {
		width: 100%;
	}
	#p-contact .p-contact_top .p-contact_top_box .information .access_more ul {
		display: flex;
		flex-direction: column;
	}
	#p-contact .p-contact_top .p-contact_top_box .information .access_more ul li {
		margin: 12px 0 0;
	}
	#p-contact .p-contact_top .p-contact_top_box .information .access_more ul li a {
		width: 100%;
	}
}

/****************************************
 * 共通
*****************************************/

/*ビジュアル
*****************************************/
.page_topimage {
	padding: 0;
	position: relative;
}
.page_topimage .page_topimage_flex {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: stretch;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.page_topimage .page_topimage_flex .page_topimage_title {
	width: 46%;
	height: 100%;
	margin-left: auto;
	display: flex;
	align-items: center;
}
.page_topimage .page_topimage_flex .page_topimage_title_inbox {
	max-width: 820px;
	width: 100%;
	padding: 45px 0 45px 45px;
}
.page_topimage .page_topimage_flex .page_topimage_title .topimage_title {
	text-align: left;
	font-size: 2em;
	margin: 0;
	max-width: 820px;
}
.page_topimage .page_topimage_flex .page_topimage_title .topimage_title span {
	display: block;
	text-transform: uppercase;
	font-size: .5em;
	font-weight: normal;
}


@media screen and (max-width: 1024px) {
	.page_topimage .page_topimage_flex .page_topimage_title {
		width: 100%;
	}
	.page_topimage .page_topimage_flex .page_topimage_title_inbox {
		max-width: 100%;
		padding: 45px;
	}
	.page_topimage .page_topimage_flex .page_topimage_title .topimage_title {
		text-align: center;
	}
}
@media screen and (max-width: 560px) {
	.page_topimage .page_topimage_flex .page_topimage_title .topimage_title {
		font-size: 1.8em;
	}
	.page_topimage .page_topimage_flex .page_topimage_title_inbox {
		padding: 30px;
	}
}
@media screen and (max-width: 430px) {
	.page_topimage .page_topimage_flex .page_topimage_title .topimage_title {
		font-size: 1.6em;
	}
	.page_topimage .page_topimage_flex .page_topimage_title_inbox {
		padding: 20px;
	}
}
@media screen and (max-width: 380px) {
	.page_topimage .page_topimage_flex .page_topimage_title .topimage_title {
		font-size: 1.4em;
	}
}

/*見出し
*****************************************/
.pagecontents_title {
	font-size: 2em;
	text-align: center;
}
.pagecontents_title span {
	display: block;
	text-transform: uppercase;
	font-size: .4em;
	font-weight: bold;
}

@media screen and (max-width: 560px) {
	.pagecontents_title {
		font-size: 1.5em;
	}
}
@media screen and (max-width: 430px) {
	.pagecontents_title {
		font-size: 1.3em;
	}
}
@media screen and (max-width: 320px) {
	.pagecontents_title {
		font-size: 1.2em;
	}
}

/*ボタンボックス
*****************************************/
.button_box {
	text-align: center;
	margin-top: 45px;
	position: relative;
	z-index: 0;
}

@media screen and (max-width: 430px) {
	.button_box {
		margin-top: 30px;
	}
}

/*スクロールテキスト
*****************************************/
p.scroll_text {
	margin: 0 0 6px;
	color: #ED1588;
	font-size: .9em;
	font-weight: bold;
	text-align: right;
}


/*ページ内ジャンプ
*****************************************/
.jump {
	margin-bottom: 90px;
}
.jump ul {
	margin: -30px 0 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}
#office .jump ul,
#establishment .jump ul {/*会社設立・DX*/
	justify-content: space-evenly;
}
.jump ul li {
	margin: 0 0 0;
	text-align: center;
}
.jump a {
	display: inline-block;
	width: 250px;
	text-align: center;
	text-decoration: none !important;
	padding: 18px 30px;
	line-height: 1;
	color: #ED5314;
	background: #FFF;
	border: 1px solid #ED5314;
}
.jump a:hover {
	opacity: 1;
	color: #FFF;
	background: #ED5314;
}
#service .jump ul li {
	width: calc(100%/3 - 96px);
	margin: 30px 15px 0;
}
#page_lp .jump ul li {
	margin: 30px 18px 0;
}
#service .jump a {
	width: 100%;
}

#establishment .jump a { /*不動産賃貸*/
	color: #ED5314;
	background: #FFF;
	border: 1px solid #ED5314;
}
#establishment .jump a:hover{
	opacity: 1;
	color: #FFF;
	background: #ED5314;
}
#inheritancetax .jump a { /*相続税*/
	color: #FFB92A;
	background: #FFF;
	border: 1px solid #FFB92A;
}
#inheritancetax .jump a:hover{
	opacity: 1;
	color: #FFF;
	background: #FFB92A;
}
#establishment .jump a { /*会社設立*/
	color: #1068BB;
	background: #FFF;
	border: 1px solid #1068BB;
}
#establishment .jump a:hover{
	opacity: 1;
	color: #FFF;
	background: #1068BB;
}
#dental .jump a { /*歯科医*/
	color: #9BCA3E;
	background: #FFF;
	border: 1px solid #9BCA3E;
}
#dental .jump a:hover{
	opacity: 1;
	color: #FFF;
	background: #9BCA3E;
}
#establishment .jump a { /*会社設立・DXサポート*/
	width: 400px;
	padding: 0;
	border: none;
	box-shadow: 0 0 14px rgb(0 0 0 / 12%);
}
#establishment .jump a img {
	transition: .3s;
	filter: grayscale(100%);
}
#establishment .jump a:hover {
	opacity: 1;
	background: none;
	transform: translateY(-6px);
}
#establishment .jump a img:hover {
	opacity: 1;
	filter: none;
}

@media screen and (max-width: 1024px) {
	.jump ul li {
		width: calc(100%/4 - 20px);
	}
	#establishment .jump ul li {/*会社設立・DX*/
		width: calc(100%/2 - 45px);
	}
	.jump a {
		width: 100%;
		min-width: 170px;
		padding: 18px 30px 18px 18px;
	}
}
@media screen and (max-width: 768px) {
	.jump {
		margin-bottom: 75px;
	}
	.jump ul {
		margin: -18px 0 0;
	}
	.jump ul li {
		width: calc(100%/2 - 15px);
		margin: 18px 0 0;
	}
	#page_lp .jump ul li {
		width: calc(100%/2 - 15px);
		margin: 18px 0 0;
	}
	#establishment .jump a {
		width: 100%;
	}
}
@media screen and (max-width: 560px) {
	.jump {
		margin-bottom: 60px;
	}
	.jump a {
		line-height: 52px;
		padding: 0 2em 0 12px;
	}
	#page_lp .jump ul {
		justify-content: space-between;
	}
	.jump ul li {
		width: calc(100%/2 - 18px);
		margin: 18px 0 0;
	}
	
	#page_lp .jump ul li {
		width: calc(100%/2 - 6px);
	}
	#establishment .jump a img {
		filter: none;
	}
}
@media screen and (max-width: 430px) {
	.jump {
		margin-bottom: 45px;
	}
	.jump a {
		font-size: .9em;
		padding: 0 1em 0 8px;
	}
	.jump ul li {
		width: calc(100%/2 - 8px);
	}
}
@media screen and (max-width: 380px) {
	.jump {
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 320px) {
	.jump {
		display: none;
	}
}

/*ルビ
*****************************************/

rt {
  font-size: .6em;
}


/****************************************
 * トップページ
*****************************************/

/* トップイメージ
*****************************************/
.topimage {
	padding: 0;
	border-bottom: 6px solid #ED5314;
	border-image: linear-gradient(to right, #9BCA3E 0%, #ED5314 100%);
	border-image-slice: 1;
}

/* スライダー
*****************************************/
#top_slider ul.slick-dots {
	width: 380px;
	margin: 30px auto;
	list-style: none;
	font-size: 0;
	display: flex;
	justify-content: space-evenly;
}
#top_slider ul.slick-dots li {
	margin: 0 4px; 
	width: 100%;
	height: 5px;
	cursor: pointer;
}
#top_slider ul.slick-dots li button:before {
	content:'';
	width: 60px;
	height: 5px;
	background: #E0E0E0;
	opacity: 1;
}
#top_slider ul.slick-dots li.slick-active button:before{
	background: #F2C802;
}

@media screen and (max-width: 1024px) {
}


/* ごあいさつ
*****************************************/
.greeting {
	background: #FDEDE7 url(images/front-page/greeting_bg.png) no-repeat;
	background-size: cover;
	background-position: top center;
}
.greeting .greeting_box {
	padding: 60px;
	text-align: center;
	background: rgba(255,255,255,.9);
	box-shadow: 0 0 14px rgb(0 0 0 / 12%);
}


@media screen and (max-width: 834px) {
	.greeting .greeting_box {
		padding: 45px;
	}
}
@media screen and (max-width: 560px) {
	.greeting {
		background: #FDEDE7 url(images/front-page/greeting_bg_sp.png) no-repeat;
		background-size: cover;
		background-position: top center;
	}
	.greeting .greeting_box {
		padding: 30px;
	}
}
@media screen and (max-width: 430px) {
	.greeting .greeting_box {
		padding: 20px;
		text-align: left;
	}
}
@media screen and (max-width: 320px) {
}



/* サービス
*****************************************/
.service {
	margin: 0 calc(50% - 50vw);
	position: relative;
}
.service:before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	margin: 0 18.75rem 0 calc(50% - 50vw);
	background: #FCF8EF;
	z-index: -1;
}
.service .service_box {
	width: 43vw;
	padding-right: 120px;
}
.service figure.service_img {
	max-width: 50%;
	position: absolute;
	right: 0;
	bottom: -90px;
}
.service .service_box ul.service_items {
	margin: 0;
	padding: 0;
	list-style: none;
}
.service .service_box ul.service_items li {
	margin: 30px 0 0;
}
.service .service_box ul.service_items .service_item_inbox_title {
	color: #ED5314;
	margin: 0 0 8px;
}
.service .service_box ul.service_items .service_item_inbox_title span {
	margin-right: 12px;
	font-weight: bold;
}
.service .service_box ul.service_items .service_item_inbox {
	padding-left: calc(1.6em + 12px);
}
.service .service_box ul.service_items .service_item_inbox p.service_item_inbox_p {
	margin: 0 0 8px;
	color: #666;
}

@media screen and (max-width: 1500px) {
	.service .service_box {
		width: 54vw;
		padding-right: 90px;
	}
	.service figure.service_img {
		max-width: 40%;
	}
}
@media screen and (max-width: 1194px) {
	.service {
		padding-bottom: 0;
	}
	.service .service_box {
		width: 100%;
		padding-right: 0;
	}
	.service figure.service_img {
		position: static;
		width: 100%;
		max-width: 100%;
		margin: 60px 0 0;
	}
}


/* サービス（LP）
*****************************************/
.service_lp {
	background: #FDEDE7;
	position: relative; /*サービスの右の画像の下を切るため*/
}
.service_lp .greeting_box {
	
}
.service_lp .service_lp_flex {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
}
.service_lp .service_lp_flex .service_lp_item {
	width: calc(100%/2);
	background: #FFF;
	border-right: 1px solid #FDEDE7;
	border-bottom: 1px solid #FDEDE7;
	
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.service_lp .service_lp_flex .service_lp_item:nth-child(2),
.service_lp .service_lp_flex .service_lp_item:nth-child(4) {
	border-right: none;
}
.service_lp .service_lp_flex .service_lp_item:nth-child(3),
.service_lp .service_lp_flex .service_lp_item:nth-child(4) {
	border-bottom: 0;
}
.service_lp .service_lp_flex .service_lp_item .service_lp_item_inbox {
	margin: 45px;
}
.service_lp .service_lp_flex .service_lp_item .service_lp_item_link {
	position: relative;
}
.service_lp .service_lp_flex .service_lp_item .service_lp_item_link a {
	display: flex;
	justify-content: center;
	align-content: center;
	flex-flow: row wrap;
	align-items: center;
	width: 250px;
	padding: 0 4em 0 3em;
	margin: 0 0 0 auto;
	line-height: 60px;
	background: #ED5314;
	color: #FFF;
}
.service_lp .service_lp_flex .greeting_contents .greeting_contents_inner {
	max-width: 820px;
	padding: 90px 0 90px 90px;
}

@media screen and (max-width: 768px) {
	.service_lp .service_lp_flex .service_lp_item .service_lp_item_inbox {
	margin: 30px;
	}
	.service_lp .service_lp_flex .service_lp_item .service_lp_item_link a {
		width: 200px;
		padding: 0 3em 0 2em;
	}
}
@media screen and (max-width: 560px) {
	.service_lp .service_lp_flex .service_lp_item {
		width: 100%;
	}
	.service_lp .service_lp_flex .service_lp_item .service_lp_item_link a {
		line-height: 52px;
		font-weight: bold;
	}
	.service_lp .service_lp_flex .service_lp_item:nth-child(3) {
		border-bottom: 1px solid #FDEDE7;
	}
}


/* 先生紹介
*****************************************/
.profile {
	background: #FFF url(images/front-page/profile_bg.jpg) no-repeat;
	background-position: bottom center;
}
.profile .profile_text {
	width: 900px;
	margin: 0 auto;
	padding: 60px;
	background: rgba(255,255,255,.6);
}
.profile .profile_text .profile_text_name {
	text-align: right;
	margin: 12px 0 0;
}

@media screen and (max-width: 1194px) {
	.profile .profile_text {
		width: 100%;
	}
}
@media screen and (max-width: 768px) {
	.profile .profile_text {
		padding: 45px;
	}
}
@media screen and (max-width: 560px) {
	.profile {
		background: #FFF url(images/front-page/profile_bg_sp.jpg) no-repeat;
		background-position: bottom center;
	}
	.profile .profile_text {
		padding: 30px;
	}
}


/* 感染症対策
*****************************************/
.measures {
	background: #FFF;
	background-size: cover;
	background-position: center;
}
.measures .measures_title {
	text-align: center;
}
.measures .measures_box {
	text-align: center;
}
.measures .measures_box ul.measures_flex {
	list-style: none;
	margin: 45px 0 0;
	padding: 0;
	display: flex;
	align-items: stretch;
	border-top: 3px solid #9BCA3E;
	border-left: 3px solid #9BCA3E;
}
.measures .measures_box ul.measures_flex li {
	background: #F8FBF3;
	width: calc(100%/3);
	padding: 45px;
	display: flex;
	align-items: center;
	flex-direction: column;
	border-right: 3px solid #9BCA3E;
	border-bottom: 3px solid #9BCA3E;
}
.measures .measures_box ul.measures_flex li p {
	line-height: 1.6;
	margin: 16px 0 0;
}
.measures .measures_box ul.measures_flex li p span {
	display: block;
	margin: 0 0 8px 0;
	color: #9BCA3E;
	font-weight: bold;
	font-size: 1.1em;
}

@media screen and (max-width: 768px) {
	.measures .measures_box ul.measures_flex li {
		padding: 30px 24px;
	}
	.measures .measures_box ul.measures_flex li p span {
		font-size: 1em;
	}
}
@media screen and (max-width: 560px) {
	.measures .measures_box ul.measures_flex li {
		padding: 18px 10px;
	}
	.measures .measures_box ul.measures_flex li img {
		width: 60px;
	}
	.measures .measures_box ul.measures_flex li p {
		font-size: .8em;
	}
}
@media screen and (max-width: 430px) {
	.measures .measures_box ul.measures_flex {
		flex-direction: column;
		margin: 30px 0 0;
	}
	.measures .measures_box ul.measures_flex li {
		width: 100%;
		display: flex;
		flex-direction: row;
		align-items: center;
		padding: 15px 30px;
	}
	.measures .measures_box ul.measures_flex li img {
		width: 45px;
	}
	.measures .measures_box ul.measures_flex li p {
		font-size: .8em;
		text-align: left;
		margin: 0 0 0 30px;
	}
}


/* 代表メッセージ
*****************************************/
.message {
	background: #fafafa url(images/front-page/message_bg.jpg) no-repeat;
	background-size: cover;
	background-position: bottom center;
}
.message_contenst a.circle {
	color: #D15776;
	background: #FFF;
	border: 1px solid #D15776;
}
.message_contenst a.circle:before {
	border-top: solid 1px #D15776;
	border-right: solid 1px #D15776;
}
.message_contenst a.circle:hover {
	color: #FFF;
	background: #D15776;
	background-image: linear-gradient(45deg, #CE9FAB, #D15776);
}
.message_contenst a.circle:hover:before {
	border-top: solid 1px #FFF;
	border-right: solid 1px #FFF;
}

@media screen and (max-width: 768px) {
	.message {
		padding-bottom: 160px;
	}
}
@media screen and (max-width: 560px) {
	.message {
		background: #fafafa url(images/front-page/message_bg_sp.jpg) no-repeat;
		background-size: cover;
		background-position: top center;
	}
}


/* お知らせ
*****************************************/
.news {
	background: #FFF9EF;
}
.news .news_box {
	
}
ul.news_list {
	list-style: none;
	width: 100%;
	margin: 0;
	padding: 0;
}
ul.news_list li {
	border-bottom: 1px solid #feb92b;
	border-right: 1px solid #feb92b;
	position: relative;
}
ul.news_list li:first-child {
	border-top: 1px solid #feb92b;
}
ul.news_list li a {
	display: block;
	text-decoration: none;
	text-align: center;
	position: relative;
}
ul.news_list li a:before {
	content: '';
	position: absolute;
	top: 50%;
	right: 30px;
	transform: translateY(-50%) rotate(45deg);
	background: #FFB92A;
	width: 6px;
	height: 6px;
	border-radius: 12px;
}
ul.news_list li a:hover {
	
}
ul.news_list li dl {
	width: 100%;
	display: flex;
	align-items: center;
}
ul.news_list li dl dt {
	width: 200px;
	background: #FFB92A;
	color: #FFF;
	padding: 15px 30px;
}
ul.news_list li dl dd {
	width: calc(100% - 200px);
	background: #FFF;
	padding: 15px 60px 15px 30px;
	text-align: left;
}

@media screen and (max-width: 559px) {
	ul.news_list li {
		border-left: 1px solid #feb92b;
	}
	ul.news_list li:before {
		right: 15px;
	}
	ul.news_list li dl,
	ul.news_list li dl dt,
	ul.news_list li dl dd {
		display: block;
		width: 100%;
		background: #FFF;
	}
	ul.news_list li dl {
		padding: 12px;
	}
	ul.news_list li dl dt {
		font-size: .8em;
		background: none;
		color: #000;
		text-align: left;
	}
	ul.news_list li dl dt,
	ul.news_list li dl dd {
		padding: 0;
	}
}
@media screen and (max-width: 430px) {
	ul.news_list li:before {
		right: 0;
	}
}

/****************************************
 * Gutenberg（グーテンベルク）
*****************************************/

.wp-caption {}
.wp-caption-text {}
.sticky {}
.gallery-caption {}
.bypostauthor {}
.screen-reader-text {}

.wp-block-quote {
	background: #fafafa;
	padding: 15px 15px 15px 1.3em !important;
}
figure.wp-block-table {
	padding: 0;
	width: 100%;
	border-collapse: collapse;
}
figure.wp-block-table table th,
figure.wp-block-table table td {
	border-bottom: 1px #999 solid;
	padding: 30px 15px;
}
figure.wp-block-table table th {
	width: 30%;
}
.wp-block-group {
	margin-top: 60px;
}
figure {
	display: block;
	margin: 0;
}
figcaption {
	line-height: 1.5;
	font-size: .8em;
	text-align: center;
	margin-top: 15px;
}

@media screen and (max-width: 559px) {
	.wp-block-media-text__content {
		padding: 0 !important;
		margin-top: 45px;
	}
}
@media screen and (max-width: 480px) {
	.wp-block-media-text__content,
	.wp-block-group {
		margin-top: 30px;
	}
}
@media screen and (max-width: 430px) {
	.wp-block-group {
		margin-top: 30px;
	}
	figure.wp-block-table table th {
		width: 25%;
	}
	figure.wp-block-table table th,
	figure.wp-block-table table td {
		padding: 15px;
	}
}
@media screen and (max-width: 320px) {
	.wp-block-media-text__content {
		margin-top: 20px;
	}
}


/****************************************
 * 固定ページ
 * 料金表
*****************************************/

#price .price_main {
	margin: 0 auto 150px;
}
#price table {
	width: 100%;
}
#price table,
#price table th,
#price table td {
	border-collapse: collapse;
	border: 1px solid #888;
}
#price table th,
#price table td {
	padding: 12px;
}
#price table th {
	background: #ED5314;
	color: #FFF;
}
#price table td {
}
#price table td.value {
	text-align: right;
	font-size: 1.1em;
	font-weight: bold;
}

#price .sup {
	margin: 18px 0 0;
}
#price .sup p {
	font-size: .9em;
	margin: 0;
}

#price .adviser {
	margin: 60px auto 0;
}
#price .adviser .adviser_title {
	margin: 0 0 18px;
}
#price .adviser ol {
	counter-reset: counter;
	list-style: none;
	margin: 0;
	padding: 0;
}
#price .adviser ol li {
	padding: 0 0 0 30px;
	position: relative;
}
#price .adviser ol li:before {
	content:counters(counter, "-") ". ";
	counter-increment:counter;
	position: absolute;
	left: 0;
}
#price .adviser ol li ol {
	list-style:none;
	counter-reset:counter;
	display: inline-block;
}
#price .adviser ol li ol li {
	padding-left: 38px;
}
#price .adviser ol li ol li:before {
	position: absolute;
	left: 0;
}

#price .adviser .noadviser {
	text-align: left;
	margin: 30px auto 0;
}
#price .adviser .noadviser h4 {
	text-align: left;
}


#price .price_box {
	padding: 150px 0 150px;
}
#price #price01.price_box {
	padding: 210px 0 150px;
}
#price #price02,
#price #price04 {
	background: url(images/price/bg.png) repeat;
}
#price .price_box .price_flex {
	display: flex;
}
#price .price_box .price_flex .price___img {
	width: 500px;
	margin-top: -210px;
}
#price .price_box .price_flex .price___text {
	width: calc(100% - 500px);
}
#price #price01 .price___text,
#price #price03 .price___text,
#price #price05 .price___text {
	padding-left: 90px;
}
#price #price02 .price___text,
#price #price04 .price___text {
	padding-right: 90px;
}
#price .price___button {
	text-align: right;
}

@media screen and (max-width: 1024px) {
	#price .price_box .price_flex .price___img {
		width: 380px;
	}
	#price .price_box .price_flex .price___text {
		width: calc(100% - 380px);
	}
	#price #price01 .price___text,
	#price #price03 .price___text,
	#price #price05 .price___text {
		padding-left: 60px;
	}
	#price #price02 .price___text,
	#price #price04 .price___text {
		padding-left: 60px;
	}
}
@media screen and (max-width: 768px) {
	#price .price_box .price_flex .price___img {
		width: 280px;
	}
	#price .price_box .price_flex .price___text {
		width: calc(100% - 280px);
	}
	#price #price01 .price___text,
	#price #price03 .price___text,
	#price #price05 .price___text {
		padding-left: 45px;
	}
	#price #price02 .price___text,
	#price #price04 .price___text {
		padding-left: 45px;
	}
}
@media screen and (max-width: 560px) {
	#price .price_main {
		margin: 0 auto 90px;
	}
	#price table {
		table-layout: inherit;
		white-space: inherit;
		-webkit-overflow-scrolling: touch;
	}
	#price table td.value {
		font-size: 1em;
	}
	#price .price_box {
		padding: 60px 0 !important;
	}
	#price #price01.price_box {
		padding: 30px 0 60px !important;
	}
	#price .price_box .price_flex {
		flex-direction: column;
	}
	#price .price_box .price_flex .price___img,
	#price .price_box .price_flex .price___text {
		width: 100%;
		margin: 0;
	}
	#price .price_box .price_flex .price___img {
		order: 1;
	}
	#price .price_box .price_flex .price___text {
		order: 2;
		padding: 0 !important;
		margin: 30px 0 0;
	}
}
@media screen and (max-width: 430px) {
	#price .price_main {
		margin: 0 auto 60px;
	}
}
@media screen and (max-width: 320px) {
	#price .price_main {
		margin: 0 auto 30px;
	}
}


/****************************************
 * 固定ページ
 * 会社概要
*****************************************/

#office .office_box {
	margin-top: 90px;
}
#office table.company {
	width: 100%;
}
#office table.company,
#office table.company th,
#office table.company td {
	border-collapse: collapse;
}
#office table.company tr {
	display: flex;
	align-items: center;
	padding: 18px 0;
	border-bottom: 1px solid #ededed;
}
#office table.company tr:first-child {
	border-top: 1px solid #ededed;
}
#office table.company th {
	width: 320px;
	font-weight: normal;
}
#office table.company td {
	width: calc(100% - 320px);
	padding-left: 30px;
	border-left: 1px solid #F7B8A0;
}
#office table.company td.hour span {
	margin-left: 20px;
}
#office table.company td .td_flex {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#office table.company td .td_flex .td_flex_right a {
	width: 250px;
	padding: 18px 30px;
	line-height: 1;
}
#office ul.office_member,
#office ul.office_contact,
#office ul.office_works {
	list-style: none;
	padding: 0;
	margin: 0;
}
#office ul.office_works {
	list-style: inside;
}
#office ul.office_works li {
	width: 100%;
}
#office ul.office_contact li.phone {
	display: block;
}
#office ul.office_contact li.fax {
	display: block;
}
#office ul.office_contact span {
	margin-right: 8px;
}
#office .freee_box .freee_flex {
	width: 880px;
	margin: 45px auto 0;
	display: flex;
	align-items: center;
}
#office .freee_box .freee_flex .freee_flex___img {
	width: 200px;
}
#office .freee_box .freee_flex .freee_flex___text {
	width: calc(100% - 200px);
	padding-left: 45px;
}


/*アクセス*/
#office #office02 {
	padding: 90px 0;
	background: url(images/office/access_bg.jpg) no-repeat;
	background-size: cover;
}
#office #office02 .access_flex {
	display: flex;
}
#office #office02 .access_flex .access_flex___text {
	width: calc(100% - 400px);
	background: #FFF;
	padding: 60px;
}
#office #office02 .access_flex .access_flex___img {
	width: 400px;
}
#office #office02 .access_flex .access_flex___img img.building_sp {
	display: none;
}
#office #office02 .access_flex .access_flex___img img.building_pc {
	display: block;
	width: 100%;
	height: 100%;
}
#office #office02 .access_flex .access_flex___text .access_flex___textBOX {
	margin: 45px 0 0;
}
#office #office02 .access_flex .access_flex___text .access_flex___textBOX h3 {
	line-height: 1;
	color: #ED5314;
	padding: 0 0 0 12px;
	margin: 0 0 22px;
	position: relative;
}
#office #office02 .access_flex .access_flex___text .access_flex___textBOX h3:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 0;
	background: #ED5314;
	width: 4px;
	height: 100%;
	border-radius: 10px;
	z-index: 1;
}

@media screen and (max-width: 1194px) {
	#office table.company th {
		width: 280px;
	}
	#office table.company td {
		width: calc(100% - 280px);
	}
}
@media screen and (max-width: 1024px) {
	#office table.company th {
		width: 220px;
	}
	#office table.company td {
		width: calc(100% - 220px);
	}
	#office table.company td .td_flex .td_flex_right a {
		width: 240px;
		padding: 18px 20px;
	}
	
	#office #office02 .access_flex .access_flex___img {
		overflow: hidden;
	}
	#office #office02 .access_flex .access_flex___img img {
		transform: scale(1.3);
	}	
}
@media screen and (max-width: 768px) {
	#office .office_box {
		margin-top: 75px;
	}
	#office table.company th {
		width: 200px;
	}
	#office table.company td {
		width: calc(100% - 200px);
	}
	
	#office table.company td .td_flex {
		flex-direction: column;
		align-items: stretch;
	}
	#office table.company td .td_flex .td_flex_right {
		text-align: right;
		margin: 12px 0 0;
	}
	#office table.company td .td_flex .td_flex_right a {
		text-align: left;
		width: 220px;
	}
	
	#office #office02 {
		padding: 75px 0;
	}
	#office #office02 .access_flex {
		flex-direction: column;
	}
	#office #office02 .access_flex .access_flex___text,
	#office #office02 .access_flex .access_flex___img {
		width: 100%;
	}
	#office #office02 .access_flex .access_flex___text {
		padding: 45px;
	}
	#office #office02 .access_flex .access_flex___img img.building_sp {
		display: block;
	}
	#office #office02 .access_flex .access_flex___img img.building_pc {
		display: none;
	}
}
@media screen and (max-width: 560px) {
	#office .office_box {
		margin-top: 60px;
	}
	#office table.company th {
		width: 130px;
	}
	#office table.company td {
		width: calc(100% - 130px);
	}
	#office #office02 {
		padding: 60px 0;
	}
	#office #office02 .access_flex .access_flex___text {
		padding: 30px;
	}
	
	#office ul.office_contact li.line {
		margin: 12px 0 0;
	}
}
@media screen and (max-width: 430px) {
	#office .office_box {
		margin-top: 45px;
	}
	#office table.company tr {
		flex-direction: column;
		
	}
	#office table.company th {
		width: 100%;
		text-align: left;
		font-size: .9em;
		padding-left: 20px;
		color: #ED5314;
		border-left: 1px solid #F7B8A0;
	}
	#office table.company td {
		width: 100%;
		padding-left: 20px;
	}
	#office table.company td .td_flex .td_flex_right a {
		width: 200px;
	}
	
	#office #office02 {
		padding: 45px 0;
	}
	#office #office02 .access_flex .access_flex___text {
		padding: 30px;
	}
}

/****************************************
 * LP：共通
*****************************************/

#page_lp .lp_box {
	padding: 0 0 120px;
}
#page_lp .lp_inbox {
	margin: 90px auto 0;
}
#page_lp .lp_inbox.center {
	text-align: center;
}
#page_lp .lp_inbox:first-child {
	margin: 0;
}
#page_lp .lp_box:last-of-type {
	padding: 0;
}

#page_lp .title_box {
	overflow: hidden; /*必須*/
	padding: 12px 30px;
	margin: 0 0 60px 0;
	color: #FFF;
	border-radius: 8px;
	box-shadow: 0 0 12px 0 rgb(19 71 52 / 20%);
	position: relative;
	top: -22px;
}
#page_lp .title_box::before {
	position: absolute;
	top: -30px;
	left: 0;
	width: 80%;
	height: 120%;
	content: '';
}
#page_lp .title_box::after {
	position: absolute;
	top: 30px;
	left: -60px;
	width: 80%;
	height: 110%;
	content: '';
}
#page_lp .title_box::before {
	transform: rotate(18.5deg);
	transform-origin: bottom left;
}
#page_lp .title_box::after {
	transform: rotate(-23.5deg);
	transform-origin: bottom left;
}
#page_lp .title_box .lp_title {
	font-size: 3em;
	text-align: center;
	margin: 0;
	position: relative;
	z-index: 1;
}
#page_lp .lp_subtitle {
	font-size: 2em;
	text-align: center;
}

#realestateleasing .title_box { /*不動産賃貸*/
	background: #ED5314;
}
#realestateleasing .title_box::before {
	background: #F07241;
}
#realestateleasing .title_box::after {
	background: #F28458;
}
#inheritancetax .title_box { /*相続税*/
	background: #feb92b;
}
#inheritancetax .title_box::before {
	background: #FEC656;
}
#inheritancetax .title_box::after {
	background: #FFD789;
}
#establishment .title_box { /*会社設立*/
	background: #0C4E8C;
}
#establishment .title_box::before {
	background: #0E5BA4;
}
#establishment .title_box::after {
	background: #1068BB;
}
#dental .title_box { /*歯科医*/
	background: #9BCA3E;
}
#dental .title_box::before {
	background: #91BC3A;
}
#dental .title_box::after {
	background: #87AF36;
}

@media screen and (max-width: 1024px) {
	#page_lp .title_box .lp_title {
		font-size: 2.6em;
	}
}
@media screen and (max-width: 768px) {
	#page_lp .lp_box {
		padding: 0 0 90px;
	}
	#page_lp .title_box .lp_title {
		font-size: 2.3em;
	}
}
@media screen and (max-width: 560px) {
	#page_lp .lp_box {
		padding: 0 0 75px;
	}
	#page_lp .title_box {
		margin: 0 0 30px 0;
	}
	#page_lp .title_box .lp_title {
		font-size: 1.8em;
	}
	#page_lp .lp_subtitle {
		font-size: 1.8em;
	}
	#page_lp .lp_inbox {
		margin: 45px auto 0;
	}
}
@media screen and (max-width: 430px) {
	#page_lp .lp_box {
		padding: 0 0 60px;
	}
	#page_lp .title_box {
		padding: 12px 20px;
	}
	#page_lp .title_box .lp_title {
		font-size: 1.6em;
	}
	#page_lp .lp_subtitle {
		font-size: 1.6em;
	}
	#page_lp .lp_inbox {
		margin: 30px auto 0;
	}
	
	#page_lp .title_box::before {
		top: -10px;
		left: -120px;
	}
	#page_lp .title_box::after {
		left: -100px;
	}
}
@media screen and (max-width: 320px) {
	#page_lp .title_box {
		margin: 0;
	}
	#page_lp .title_box::before,
	#page_lp .title_box::after {
		content: none;
	}
	#page_lp .title_box .lp_title {
		font-size: 1.3em;
	}
	#page_lp .lp_inbox {
		margin: 12px auto 0;
	}
}

/*お悩みのタイトル
*****************************************/
.problem .problem_title {
	position: relative;
	padding-top: 77px;
}
.problem .problem_title:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 120px;
	height: 77px;
}
#realestateleasing .problem .problem_title:before { /*不動産賃貸業*/
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	background: url(images/lp_realestateleasing/hatena.png) no-repeat;
	background-size: contain;
	background-position: center;
}
#dental .problem .problem_title:before { /*歯科医*/
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	background: url(images/lp_dental/hatena.jpg) no-repeat;
	background-size: contain;
	background-position: center;
}
#inheritancetax .problem .problem_title:before { /*相続税*/
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	background: url(images/lp_inheritancetax/hatena.jpg) no-repeat;
	background-size: contain;
	background-position: center;
}


/* お聞かせください
*****************************************/
#page_lp .summary .summary_box {
	margin-bottom: 60px;
}
#page_lp .summary p {
	font-weight: bold;
}
#page_lp .summary p.summary_title {
	font-style: italic;
	font-size: 1.3em;
	font-weight: bold;
	line-height: 1;
	padding-left: 30px;
	position: relative;
}
#page_lp .summary p.summary_title:before {
	content: "";
	position: absolute;
	bottom: -11px;
	left: 0;
	transform: rotate(-12deg);
	width: 23px;
	height: 40px;
}
#page_lp #realestateleasing .summary p.summary_title {/*不動産賃貸業*/
	color: #ED5314;
}
#page_lp #realestateleasing .summary p.summary_title:before {
	background: url(images/lp_realestateleasing/idea.png) no-repeat;
	background-size: 100%;
}
#page_lp #dental .summary p.summary_title { /*歯科医院*/
	color: #9bca3e;
}
#page_lp #dental .summary p.summary_title:before {
	background: url(images/lp_dental/idea.png) no-repeat;
	background-size: 100%;
}
#inheritancetax .summary p.summary_title { /*相続税*/
	color: #feb92b;
}
#inheritancetax .summary p.summary_title:before {
	background: url(images/lp_inheritancetax/idea.png) no-repeat;
	background-size: 100%;
}
#establishment .summary p.summary_title { /*会社設立・DXサポート*/
	color: #0c4e8c;
}
#establishment .summary p.summary_title:before {
	background: url(images/lp_establishment/idea.png) no-repeat;
	background-size: 100%;
}

@media screen and (max-width: 560px) {
	#page_lp .summary p.summary_title {
		font-size: 1.6em;
		padding: 18px 0 0;
		margin: 0 0 1em 0;
		text-align: center;
		line-height: 1.6;
	}
	#page_lp .summary p.summary_title:before {
		top: -30px;
		left: 50%;
		transform: translateX(-50%) rotate(-12deg);
	}
}
@media screen and (max-width: 380px) {
	#page_lp .summary p.summary_title {
		font-size: 1.5em;
	}
}
@media screen and (max-width: 320px) {
	#page_lp .summary p.summary_title {
		font-size: 1.4em;
	}
}

/* 価格
*****************************************/
.price .price_flex {
	display: flex;
	justify-content: space-around;
	align-items: stretch;
}
.price .price_flex .price_flex___left {
	width: calc(100% /2);
	padding: 0 45px 0 0;
}
.price .price_flex .price_flex___right {
	width: calc(100% /2);
	padding: 0 0 0 45px;
}
.price .price_flex table {
	width: 100%;
	text-align: center;
	position: relative; /*price_flagとprice_llcのため*/
	z-index: 3; /*price_flagとprice_llcのため*/
}
.price .price_flex table.price3 {
	margin: 18px 0 0;
}
.price .price_flex table.price_soft,
.price .price_flex table.price_dental {
	width: 80%;
	margin: 0 auto;
}
.price .price_flex table caption {
	font-size: 1.3em;
	font-weight: bold;
	letter-spacing: .16em;
	margin: 0 -.16em 12px 0; 
}
.price .price_flex table,
.price .price_flex table th,
.price .price_flex table td {
	border-collapse: collapse;
	border: 1px solid #888;
}
.price .price_flex table th {
	background: #feb92b;
	color: #FFF;
	padding: 12px;
}
.price .price_flex table td {
	background: #FFF;
	padding: 12px;
}
.price .price_flex table td.value {
	font-size: 1.1em;
	font-weight: bold;
}
.price .price_flex .sup {
	margin: 18px 0 0;
}
.price .price_flex .sup p {
	font-size: .9em;
	margin: 0;
}

@media screen and (max-width: 768px) {
	
	/*テーブルのスクロール*/
	.table_scroll {
		overflow-x: scroll;
		white-space:nowrap;
	}
	.price .price_flex table {
		table-layout: inherit;
		white-space: inherit;
		-webkit-overflow-scrolling: touch; /* スマホで滑らかなスクロール */
		width: calc(100% + 240px);
	}
	
	.price .price_flex {
		flex-direction: column;
	}
	.price .price_flex .price_flex___left,
	.price .price_flex .price_flex___right {
		width: 100%;
		padding: 0;
	}
	#inheritancetax .price .price_flex table {
		width: 100%;
	}
	
	.price .price_flex table.price_dental {
		width: 100%;
	}
	#dental .price .price_flex table {
		table-layout: fixed;
	}
	
}
@media screen and (max-width: 560px) {
	.price .price_flex table td.value {
		font-size: 1em;
	}
}

/* サービス内容
*****************************************/

ul.service_list {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin: -18px 0 0;
	padding: 0;
}
ul.service_list li {
	width: calc(100%/3);
	border-right: 1px solid #999;
	padding: 8px 12px;
	margin: 18px 0 0;
	line-height: 1;
	font-size: 1.1em;
	font-weight: bold;
	text-align: center;
}
ul.service_list li:nth-child(3n) {
	border-right: none;
}
ul.service_list li span {
	display: block;
	font-size: .8em;
	margin: 12px auto 0;
}

@media screen and (max-width: 768px) {
	ul.service_list li {
		width: calc(100%/2);
	}
	ul.service_list li:nth-child(3n) {
		border-right: 1px solid #999;
	}
	ul.service_list li:nth-child(2n) {
		border-right: none;
	}
}
@media screen and (max-width: 560px) {
	ul.service_list {
		display: block;
		text-align: center;
		margin: -12px 0 0;
	}
	ul.service_list li {
		width: auto;
		display: inline-block;
		font-size: 1.3em;
		line-height: 1.6;
		margin: 12px 0 0 0;
		padding: 0 6px;
	}
	ul.service_list li,
	ul.service_list li:nth-child(3n) {
		border-right: none;
	}
	ul.service_list li span {
		display: inline-block;
		margin: 0;
		vertical-align: super;
	}
}
@media screen and (max-width: 320px) {
	ul.service_list li {
		padding: 0 12px;
	}
}


/* 流れ
*****************************************/
ul.step {
	width: 100%;
	padding: 0;
	list-style: none;
	display: flex;
	justify-content: space-around;
	align-items: stretch;
	flex-wrap: wrap;
}
#establishment ul.step { /*会社設立・DXサポート*/
	justify-content: center;
}
ul.step li {
	background: #FFF;
	padding: 30px 30px 45px 30px;
}
ul.step li.three {
	width: calc(100%/3);
}
#inheritancetax ul.step li.three { /*相続税*/
	border-right: 3px solid #FFF9EF;
}
ul.step li.four {
	width: calc(100%/4);
}
#realestateleasing ul.step li.four { /*不動産賃貸業*/
	border-right: 3px solid #FDEDE7;
}
#dental ul.step li.four { /*歯科医*/
	border-right: 3px solid #F8FBF3;
}
ul.step li.six {
	width: calc(100%/3);
}
#establishment ul.step li.six { /*会社設立・DXサポート*/
	border-right: 3px solid #E7F2FC;
	border-top: 3px solid #E7F2FC;
}
#establishment ul.step li.six { /*会社設立・DXサポート*/
	border-right: 3px solid #E7F2FC;
	border-top: 3px solid #E7F2FC;
}

ul.step li:last-child {
	border-right: 0;
}
ul.step li span {
	display: block;
	text-align: center;
	font-size: .9em;
	font-weight: bold;
	margin: 0 0 12px;
	padding-bottom: 12px;
	position: relative;
}
ul.step li span:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	width: 8px;
	height: 8px;
	border-radius: 8px;
}

#realestateleasing ul.step li span { /*不動産賃貸業*/
	color: #ec5315;
}
#realestateleasing ul.step li span:before { /*不動産賃貸業*/
	background: #ec5315;
}
#inheritancetax ul.step li span { /*相続税*/
	color: #FFB92A;
}
#inheritancetax ul.step li span:before { /*相続税*/
	background: #FFB92A;
}
#establishment ul.step li span { /*会社設立・DXサポート*/
	color: #0C4E8C;
}
#establishment ul.step li span:before { /*会社設立・DXサポート*/
	background: #0C4E8C;
}
#dental ul.step li span { /*歯科医*/
	color: #9BCA3E;
}
#dental ul.step li span:before { /*歯科医*/
	background: #9BCA3E;
}

ul.step li .step_box {
	margin: 30px 0 0;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	text-align: center;
	flex-direction: column;
}
ul.step li .step_box p {
	margin: 0;
	font-weight: bold;
}
ul.step li .step_box p.detail {
	margin-top: 12px;
	font-size: .86em;
	text-align: left;
	font-weight: normal;
}

@media screen and (max-width: 560px) {
	ul.step {
		display: block;
	}
	ul.step li {
		width: 100% !important;
		padding: 20px;
		display: flex;
		align-items: center;
	}
	ul.step li.three,
	ul.step li.four {
		border-right: none:
	}
	#inheritancetax ul.step li { /*相続税*/
		border-bottom: 3px solid #FFF9EF;
	}
	#realestateleasing ul.step li { /*不動産賃貸業*/
		border-bottom: 3px solid #FDEDE7;
	}
	#dental ul.step li { /*歯科医*/
		border-bottom: 3px solid #F8FBF3;
	}
	ul.step li:last-child {
		border-bottom: none !important;
	}
	ul.step li span {
		width: 90px;
	}
	ul.step li .step_box {
		width: calc(100% - 90px);
		margin: 0;
		padding-left: 12px;
	}
	ul.step li .step_box p.detail {
		font-size: 1em;
	}
}
@media screen and (max-width: 430px) {
	#page_lp .jump ul {
		display: block;
	}
	#page_lp .jump ul li {
		width: 100%;
	}
}
@media screen and (max-width: 380px) {
	ul.step li span {
		width: 70px;
	}
}
@media screen and (max-width: 320px) {
	ul.step li {
		display: block;
	}
	ul.step li span,
	ul.step li .step_box {
		width: 100%;
	}
	ul.step li .step_box {
		padding: 0;
	}
}


/* よくある質問
*****************************************/
.lp_faq_items .lp_faq_item .lp_faq_itemQ {
	padding: 30px;
}
#realestateleasing .lp_faq_items .lp_faq_item .lp_faq_itemQ { /*不動産賃貸業*/
	background: #FDEDE7;
	border-top: 1px solid #F7B8A0;
}
#inheritancetax .lp_faq_items .lp_faq_item .lp_faq_itemQ { /*相続税*/
	background: #FEF1D6;
	border-top: 1px solid #FFD789;
}
#establishment .lp_faq_items .lp_faq_item .lp_faq_itemQ { /*会社設立・DXサポート*/
	background: #E7F2FC;
	border-top: 1px solid #0C4E8C;
}
.lp_faq_items .lp_faq_item .lp_faq_itemQ > div {
	position: relative;
	padding-left: 45px;
}
.lp_faq_items .lp_faq_item .lp_faq_itemQ > div:before {
	content: "Q";
	display: inline-block;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	font-size: 2.2em;
	font-weight: bold;
	font-family: sans-serif;
	line-height: 1;
}
#realestateleasing .lp_faq_item .lp_faq_itemQ > div:before { /*不動産賃貸業*/
	color: #ED5314;
}
#inheritancetax .lp_faq_item .lp_faq_itemQ > div:before { /*相続税*/
	color: #FFB92A;
}
#establishment .lp_faq_item .lp_faq_itemQ > div:before { /*会社設立・DXサポート*/
	color: #0C4E8C;
}
.lp_faq_items .lp_faq_item .lp_faq_itemA {
	background: #FFF;
	padding: 30px;
}
.lp_faq_items .lp_faq_item .lp_faq_itemA > div {
	position: relative;
	padding-left: 45px;
}
.lp_faq_items .lp_faq_item .lp_faq_itemA > div:before {
	content: "A";
	display: inline-block;
	position: absolute;
	left: 0;
	top: 0;
	font-size: 2.2em;
	font-weight: bold;
	font-family: sans-serif;
	color: #FF2B71;
	line-height: 1;
}

@media screen and (max-width: 560px) {
	.lp_faq_items .lp_faq_item .lp_faq_itemQ,
	.lp_faq_items .lp_faq_item .lp_faq_itemA {
		padding: 20px;
	}
}

/* お問い合わせボタン
*****************************************/
.contactLP {
	width: 90%;
	background: url(images/p-contactLP/bg.jpg) no-repeat;
	background-size: cover;
	padding: 30px;
	margin: 90px auto 0;
	box-shadow: 0 0 12px 0 rgb(19 71 52 / 20%);
}
#realestateleasing .contactLP { /*不動産賃貸*/
	background: url(images/p-contactLP/bg-green.jpg) no-repeat;
	background-size: cover;
}
.contactLP a {
	text-decoration: none !important;
}
.contactLP p.contactLP_p {
	text-align: center;
	margin: 0 0 12px;
	color: #FFF;
	font-weight: bold;
	font-size: 1.2em;
}
.contactLP .contactLP_flex {
	background: rgba(255,255,255,.9);
	box-shadow: 0 0 12px 0 rgb(19 71 52 / 20%);
	padding: 20px;
	margin: 0;
	text-align: center;
	display: flex;
	align-items: center;
}
.contactLP .contactLP_flex .contactLP_flex___phone {
	width: calc(100%/2);
	border-right: 1px solid #ED5314;
}
#realestateleasing .contactLP .contactLP_flex .contactLP_flex___phone { /*不動産賃貸*/
	border-right: 1px solid #9BCA3E;
}
.contactLP .contactLP_flex .contactLP_flex___form {
	width: calc(100%/2);
}
.contactLP .contactLP_flex .contactLP_flex___phone p.contactLP_flex___phone_p {
	text-align: center;
	margin: 0 0 8px;
	font-size: .82em;
}
.contactLP .contactLP_flex .contactLP_flex___phone p.contactLP_flex___phone_p span {
	margin-left: 6px;
}
.contactLP .contactLP_flex .contactLP_flex___phone a {
	display: inline-block;
	color: #ED5314;
	padding-right: 6%;
	line-height: 1;
	font-size: 1.8em;
	font-weight: bold;
}
#realestateleasing .contactLP .contactLP_flex .contactLP_flex___phone a { /*不動産賃貸*/
	color: #9BCA3E;
}
.contactLP .contactLP_flex .contactLP_flex___phone a.pochi:before {
	background: #ED5314;
	right: 0;
}
#realestateleasing .contactLP .contactLP_flex .contactLP_flex___phone a.pochi:before { /*不動産賃貸*/
	background: #9BCA3E;
}
.contactLP .contactLP_flex .contactLP_flex___form a {
	display: inline-block;
	background: #ED5314;
	color: #FFF;
	padding: 15px 15% 15px 30px;
}
#realestateleasing .contactLP .contactLP_flex .contactLP_flex___form a { /*不動産賃貸*/
	background: #9BCA3E;
}

@media screen and (max-width: 1024px) {
	.contactLP {
		width: 100%;
	}
}
@media screen and (max-width: 560px) {
	.contactLP {
		margin: 60px auto 0;
	}
	.contactLP .contactLP_flex {
		flex-direction: column;
	}
	.contactLP .contactLP_flex .contactLP_flex___phone,
	.contactLP .contactLP_flex .contactLP_flex___form {
		width: 100%;
		border: none !important;
	}
	.contactLP .contactLP_flex .contactLP_flex___form {
		margin: 18px 0 0;
	}
}
@media screen and (max-width: 430px) {
	.contactLP .contactLP_flex {
		padding: 16px 12px;
	}
	.contactLP .contactLP_flex .contactLP_flex___phone a {
		font-size: 1.6em;
	}
	.contactLP .contactLP_flex .contactLP_flex___form a {
		font-weight: bold;
		padding: 15px 15% 15px 20px;
	}
}
@media screen and (max-width: 390px) {
	.contactLP {
		padding: 30px 20px;
	}
}
@media screen and (max-width: 320px) {
	.contactLP {
		padding: 20px;
	}
	.contactLP .contactLP_flex .contactLP_flex___form a {
		padding: 12px 15% 12px 20px;
	}
}


/****************************************
 * LP：不動産賃貸
*****************************************/

#realestateleasing .problem {
	background: url(images/lp_realestateleasing/problem_bg.png) no-repeat;
	background-position: bottom right;
	background-size: 600px;
	padding: 0 0 120px;
}
#realestateleasing .problem .problem_box {
	width: 720px;
	padding: 0 90px;
	margin-top: 90px;
}
#realestateleasing .problem ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
#realestateleasing .problem ul li {
	position: relative;
	padding-left: 36px;
	margin: 12px 0 0;
	font-size: 1.3em;
	font-weight: bold;
	text-align: left;
}
#realestateleasing .problem ul li:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 10px;
	  transform: translateY(-50%) rotate(45deg);
    width: 7px;
    height: 12px;
    border-right: 3px solid #ED5314;
    border-bottom: 3px solid #ED5314;
}
#realestateleasing .problem ul li:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
	  transform: translateY(-50%);
    width: 26px;
    height: 26px;
	  line-height: 26px;
    border: 2px solid #ED5314;
    border-radius: 26px;
}
#realestateleasing .problem .summary {
	margin: 90px auto 0 90px;
	width: 720px;
	font-size: 1.1em;
	background: rgba(237,83,20,.1);
	padding: 60px;
	position: relative;
}
#realestateleasing .problem .summary:before {
	content: "";
	position: absolute;
	top: 0;
	left: 120px;
  border: 23px solid transparent;
  border-top: 23px solid #FFF;
  z-index: 2;
}

#realestateleasing .price table {
	width: 100%;
	text-align: center;
}
#realestateleasing .price table.price3 {
	margin: 18px 0 0;
}
#realestateleasing .price table caption {
	font-size: 1.3em;
	font-weight: bold;
	letter-spacing: .3em;
	margin: 0 -.3em 12px 0; 
}
#realestateleasing .price table,
#realestateleasing .price table th,
#realestateleasing .price table td {
	border-collapse: collapse;
	border: 1px solid #888;
}
#realestateleasing .price table th {
	background: #ec5315;
	color: #FFF;
	padding: 12px;
}
#realestateleasing .price table th span {
	margin: 0 6px;
}
#realestateleasing .price table td {
	background: #FFF;
	padding: 12px;
}
#realestateleasing .price table td.value {
	font-size: 1.1em;
	font-weight: bold;
}
#realestateleasing .price table td span.rooms {
	margin-left: 6px;
	font-weight: bold;
	font-size: 1.1em;
}
#realestateleasing .price table td span.tax {
	margin-left: 12px;
	font-weight: normal;
	font-size: .9em;
}
#realestateleasing .wrapup {
	text-align: center;
	margin-top: 60px;
}
#realestateleasing .wrapup img.wrapup_title {
	margin-bottom: -36px;
	position: relative;
	z-index: 1;
}
#realestateleasing .wrapup_flex {
	width: 880px;
	margin: 0 auto 90px;
	padding: 90px 60px;
	background: #FFF;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
}
#realestateleasing .wrapup_flex:before {
	content: "";
	position: absolute;
	top: 45px;
	left: 50%;
	transform: translateX(-50%);
	background: url(images/lp_realestateleasing/deco_line.png) no-repeat;
	background-size: contain;
	width: 760px;
	height: 7px;
}
#realestateleasing .wrapup_flex:after {
	content: "";
	position: absolute;
	bottom: 45px;
	left: 50%;
	transform: translateX(-50%);
	background: url(images/lp_realestateleasing/deco_line.png) no-repeat;
	background-size: contain;
	width: 760px;
	height: 7px;
}
#realestateleasing .wrapup_flex .wrapup_flex___img {
	width: 200px;
}
#realestateleasing .wrapup_flex .wrapup_flex___text {
	width: calc(100% - 200px);
	padding-left: 45px;
	text-align: left;
}
#realestateleasing .wrapup_flex .wrapup_flex___text p {
	font-weight: bold;
}

#realestateleasing .contact_memo {
	text-align: center;
	margin: 60px auto -60px;
	font-size: 1.1em;
	font-weight: bold;
	color: #9bca3e;
}

@media screen and (max-width: 1024px) {
	#realestateleasing .problem {
		padding: 0 0 300px;
	}
	#realestateleasing .problem .summary {
		width: 630px;
		margin: 90px auto 0 0;
	}
}
@media screen and (max-width: 768px) {
	#realestateleasing .problem {
		padding: 0 0 120px;
		background-size: 480px;
	}
	#realestateleasing .problem .summary {
		width: 470px;
		padding: 45px;
	}
	
	#realestateleasing .wrapup_flex {
		width: 100%;
	}
	#realestateleasing .wrapup_flex:before,
	#realestateleasing .wrapup_flex:after {
		width: 640px;
	}
	#realestateleasing .wrapup img.wrapup_title {
		width: 560px;
	}
}
@media screen and (max-width: 560px) {
	#realestateleasing .problem .problem_box {
		width: 100%;
		padding: 0;
		margin-top: 60px;
	}
	#realestateleasing .problem {
		padding: 0 0 380px;
	}
	#realestateleasing .problem ul li {
		font-size: 1.1em;
	}
	#realestateleasing .problem .summary {
		width: 100%;
		margin: 60px auto 0 0;
		padding: 60px 30px 30px;
		font-size: 1em;
	}
	
	#realestateleasing .price table td span.rooms,
	#realestateleasing .price table td span.tax {
		display: block;
		margin: 0;
	}
	
	#realestateleasing .wrapup img.wrapup_title {
		width: 100%;
		padding: 0 16px;
		margin-bottom: -20px;
	}
	#realestateleasing .wrapup_flex {
		flex-direction: column;
		padding: 60px 30px;
	}
	#realestateleasing .wrapup_flex:before,
	#realestateleasing .wrapup_flex:after {
		width: 87%;
	}
	#realestateleasing .wrapup_flex .wrapup_flex___img,
	#realestateleasing .wrapup_flex .wrapup_flex___text {
		width: 100%;
		padding: 0;
	}
	#realestateleasing .wrapup_flex .wrapup_flex___img {
		padding-top: 12px;
	}
	#realestateleasing .wrapup_flex .wrapup_flex___img img {
		width: 150px;
	}
	#realestateleasing .wrapup_flex .wrapup_flex___text {
		margin: 12px auto 0;
		padding: 12px 0;
	}
	
	#realestateleasing .contact_memo {
		margin: 60px auto -30px;
	}
}
@media screen and (max-width: 430px) {
	#realestateleasing .problem {
		background-size: 380px;
		padding: 0 0 290px;
	}
	#realestateleasing .problem .problem_box {
		margin-top: 45px;
	}
	#realestateleasing .problem .summary {
		padding: 60px 30px 30px;
	}
	#realestateleasing .problem .summary:before {
		left: 70px;
	}
}
@media screen and (max-width: 380px) {
	#realestateleasing .wrapup_flex .wrapup_flex___img img {
		width: 120px;
	}
}
@media screen and (max-width: 320px) {
	#realestateleasing .problem .summary {
		padding: 60px 20px 20px;
	}
}

/****************************************
 * LP：歯科医院
*****************************************/

#dental .problem {
	padding: 0 0 120px;
}
#dental .problem .problem_box {
	position: relative;
	padding-bottom: 120px;
}
#dental .problem .problem_box img.problem_img {
	border-radius: 12px;
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: -1;
}
#dental .problem .problem_inbox {
	width: 580px;
	padding: 60px;
	background: #FFF;
	border-radius: 12px;
	box-shadow: 0 0 12px 0 rgb(19 71 52 / 20%);
	position: relative;
	z-index: 1;
}
#dental .problem .problem_inbox ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
#dental .problem .problem_inbox ul li {
	position: relative;
	padding-left: 36px;
	margin: 8px 0 0;
	font-size: 1.2em;
	font-weight: bold;
	text-align: left;
}
#dental .problem .problem_inbox ul li:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 10px;
	  transform: translateY(-50%) rotate(45deg);
    width: 7px;
    height: 12px;
    border-right: 3px solid #9bca3e;
    border-bottom: 3px solid #9bca3e;
}
#dental .problem .problem_inbox ul li:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
	  transform: translateY(-50%);
    width: 26px;
    height: 26px;
	  line-height: 26px;
    border: 2px solid #9bca3e;
    border-radius: 26px;
}

#dental .problem .summary {
	margin: 60px auto 0;
	width: 900px;
	font-size: 1.1em;
	position: relative;
}


#dental .service_flex {
	display: flex;
	justify-content: space-between;
}
#dental .service_flex .service_flex___item {
	width: calc(100%/3 - 30px);
}
#dental .service_flex .service_flex___item .service_flex___text {
	padding-top: 45px;
	position: relative;
}
#dental .service_flex .service_flex___item .service_flex___text:before {
	content: "";
	position: absolute;
	top: 18px;
	left: 50%;
	transform: translateX(-50%) rotate(45deg);
	background: #9BCA3E;
	width: 12px;
	height: 12px;
	border-radius: 12px;
}
#dental .service_flex .service_flex___item .service_flex___title {
	font-size: 1.3em;
	margin: 0 0 12px;
}

#dental .insist {
	margin: 90px auto 0;
}
#dental .insist .insist_title {
	font-size: 1.6em;
	text-align: center;
	padding-bottom: 40px;
	color: #1e754a;
	position: relative;
}
#dental .insist .insist_title:before {
	content: "";
	position: absolute;
	bottom: 20px;
	left: 50%;
	transform: translate(-50%);
	background: url(images/lp_dental/deco_leaf.png) no-repeat;
	background-size: 100%;
	width: 180px;
	height: 38px;
}
#dental .insist .insist_title span {
	display: inline-block;
	background: #EEF6DF;
	padding: 22px 60px;
	border-radius: 60px;
}
#dental .insist .insist_box {
	margin: -135px auto 0;
	padding: 90px 60px 60px;
	background: url(images/lp_dental/insist_box_bg.png) no-repeat;
	background-position: left center;
	background-size: cover;
	border: 1px solid #EEF6DF;
}
#dental .insist .insist_box p {
	font-weight: bold;
	font-size: 1.1em;
}

#dental .price .price_flex___title {
	margin: 0 0 60px;
	position: relative;
	padding: 15px;
	background-color: #9BCA3E;
	color: #FFF;
	font-size: 1.8em;
	text-align: center;
}
#dental .price table.price_dental th {
	background: #9BCA3E;
	color: #FFF;
	padding: 12px;
}
#dental .price table.price_dental td span {
	display: block;
	font-size: .9em;
}


/*補助金
*****************************************/
#dental #subsidy .subsidy_box {
	margin-top: -120px;
	padding: 120px 0 90px;
	background: url(images/lp_dental/subsidy_bg.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}
#dental #subsidy .subsidy_item {
	width: 520px;
	list-style: none;
	padding: 0;
	margin: 0 30px 0 auto;
}
#dental #subsidy .subsidy_item .subsidy_item_title {
	font-size: 1.3em;
	color: #9bca3e;
	position: relative;
	z-index: 1;
}
#dental #subsidy .subsidy_item .subsidy_item_title:before {
	content: "";
	position: absolute;
	bottom: -100px;
	right: 0;
	background: url(images/lp_dental/deco_leaf2.png) no-repeat;
	background-size: 100%;
	width: 260px;
	height: 261px;
	z-index: -1;
}
#dental #subsidy .subsidy_item dl {
	background: #9BCA3E;
	color: #FFF;
	margin: 18px 0 0;
	padding: 16px 28px;
	box-shadow: 0 0 12px 0 rgb(19 71 52 / 20%);
	display: flex;
	justify-content: flex-start;
	align-items: center;
	position: relative;
	z-index: 1;
}
#dental #subsidy .subsidy_item dl dt {
	width: calc(100% - 200px);
	font-size: 1.3em;
	font-weight: bold;
}
#dental #subsidy .subsidy_item dl dd {
	width: 260px;
	font-size: 1.5em;
	font-weight: bold;
	text-align: right;
	padding-left: 60px;
	position: relative;
}
#dental #subsidy .subsidy_item dl dd:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	background: #FFF;
	width: 3px;
	height: 1em;
	border-radius: 3px;
}
#dental #subsidy .subsidy_item_detail {
	margin: 60px auto 0;
	padding: 60px 60px 90px 120px;
	background: rgba(255,255,255,.7);
	position: relative;
	z-index: 1;
}
#dental #subsidy .subsidy_item_detail:before {
	content: "";
	position: absolute;
	bottom: -20px;
	left: -45px;
	transform: rotate(-16deg);
	background: url(images/lp_dental/deco_leaf3.png) no-repeat;
	background-size: 100%;
	width: 190px;
	height: 275px;
	z-index: -1;
}
#dental #subsidy .subsidy_item_detail dl {
	margin: 18px 0 0;
	padding-left: 26px;
	border-left: 1px solid #9BCA3E;
}
#dental #subsidy .subsidy_item_detail dt {
	font-weight: bold;
}
#dental #subsidy .subsidy_item_detail dd .target {
	margin: 8px 0 0;
}
#dental #subsidy .subsidy_item_detail dd .target ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
#dental #subsidy .subsidy_item_detail dd .target li {
	display: inline-block;
}
#dental #subsidy .subsidy_item_detail dd .target li:after {
	content: "／";
}
#dental #subsidy .subsidy_item_detail dd .target li:last-child:after {
	content: none;
}
#dental #subsidy .subsidy_item_detail dd .target li.target_item {
	background: #9BCA3E;
	color: #FFF;
	font-size: .9em;
	padding: 1px 6px;
	margin-right: 12px;
}
#dental #subsidy .subsidy_item_detail dd .target li.target_item:after {
	content: none;
}

#dental .point {
	padding: 90px 0;
	position: relative;
}
#dental .point:before {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: -60px;
	left: 50%;
	transform: translateX(-50%);
	background: url(images/lp_dental/arrow-FFF.png) no-repeat;
	background-size: contain;
	background-position: center;
	width: 600px;
	height: 60px;
}
#dental .point .point_box {
	width: 880px;
	margin: 0 auto;
}
#dental .point .point_title {
	text-align: center;
	color: #1e7549;
	font-weight: bold;
	font-size: 1.8em;
	margin: 0 0 12px;
}

#dental .whats {
	padding: 45px 12px;
}
#dental .whats p {
	font-weight: bold;
}
#dental .whats u {
	color: #1e7549;
}

#dental .solution {
	padding: 150px 0 90px;
	background: url(images/lp_dental/solution_bg.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}
#dental .solution .solution_box {
	width: 600px;
	padding: 45px;
	margin: 0;
	background: rgba(255,255,255,.8);
}
#dental .solution .solution_box ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
#dental .solution .solution_box ul li {
	margin: 8px 0 0;
	padding-left: 36px;
	font-weight: bold;
	font-size: 1.2em;
	position: relative;
}
#dental .solution .solution_box ul li:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background: url(images/common/icon_bang.png) no-repeat;
	background-size: contain;
	background-position: center;
	width: 22px;
	height: 22px;
}

#dental .solution .solution_pr {
	padding: 0 45px 0 75px;
	margin: 45px 0 0;
	position: relative;
	z-index: 1;
}
#dental .solution .solution_pr:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 0;
	top: -60px;
	background: url(images/lp_dental/deco_leaf4.png) no-repeat;
	background-size: contain;
	background-position: center;
	width: 110px;
	height: 104px;
	z-index: 1;
}
#dental .solution .solution_pr p {
	font-weight: bold;
	text-shadow: 1px 1px 2px #fff, -1px 1px 2px #fff, 1px -1px 2px #fff, -1px -1px 2px #fff, 1px 0 1px #fff, 0 1px 2px #fff, -1px 0 1px #fff, 0 -1px 2px #fff;
}

@media screen and (max-width: 768px) {
	#dental .problem .problem_box {
		padding-bottom: 360px;
	}
	#dental .problem .problem_inbox {
		padding: 45px;
	}
	#dental .problem .summary {
		width: 100%;
	}
	
	#dental #subsidy .subsidy_box {
		background: url(images/lp_dental/subsidy_bg_tb.jpg) no-repeat;
		background-size: cover;
		background-position: left center;
	}
	#dental .point .point_box {
		width: 100%;
	}
	#dental .solution {
		background: url(images/lp_dental/solution_bg_tb.jpg) no-repeat;
		background-position: center;
	}
}
@media screen and (max-width: 560px) {
	#dental .problem .problem_box {
		padding-bottom: 0;
	}
	#dental .problem .problem_inbox {
		width: 100%;
		padding: 30px;
	}
	#dental .problem .problem_inbox ul li {
		font-size: 1.1em;
	}
	#dental .problem .problem_box img.problem_img {
		position: static;
		margin: 18px auto 0;
	}
	
	
	#dental .service_flex {
		flex-direction: column;
		margin: -30px 0 0
	}
	#dental .service_flex .service_flex___item {
		width: 100%;
		margin: 30px 0 0;
		text-align: center;
	}
	#dental .service_flex .service_flex___item img {
		width: 150px;
		height: 150px;
		border-radius: 150px;
	}
	#dental .service_flex .service_flex___item .service_flex___text {
		width: 100%;
	}
	
	#dental .insist .insist_title span {
		padding: 22px 30px;
	}
	#dental .insist .insist_box {
		padding: 120px 45px 45px;
	}
	
	#dental .price .price_flex___title {
		font-size: 1.6em;
		margin: 0 0 45px;
		padding: 15px;
	}
	
	#dental #subsidy .subsidy_box {
		padding: 120px 0 60px;
		background: url(images/lp_dental/subsidy_bg_sp.jpg) no-repeat;
		background-size: cover;
		background-position: left center;
	}
	#dental #subsidy .subsidy_item {
		width: 100%;
	}
	#dental #subsidy .subsidy_item .subsidy_item_title:before {
		bottom: -120px;
	}
	#dental #subsidy .subsidy_item_detail {
		padding: 30px;
		background: rgba(255,255,255,.85);
	}
	#dental #subsidy .subsidy_item_detail:before {
		display: none;
	}
	
	#dental .point {
		padding: 60px 0;
	}
	#dental .solution {
		padding: 120px 0 60px;
		background: url(images/lp_dental/solution_bg_sp.jpg) no-repeat;
		background-position: center;
	}
	#dental .solution .solution_box {
		width: 100%;
		background: none;
		padding: 0;
	}
	#dental .solution .solution_pr {
		padding: 0;
		margin: 60px 0 0;
	}
	#dental .solution .solution_pr:before {
		content: none;
	}
	
}
@media screen and (max-width: 430px) {
	
	#dental .problem .problem_inbox {
		padding: 20px;
	}
	
	#dental .insist .insist_title {
		font-size: 1.2em;
		font-weight: bold;
	}
	#dental .insist .insist_box {
		padding: 120px 30px 30px;
	}
	
	#dental .price .price_flex___title {
		font-size: 1.3em;
	}
	
	#dental #subsidy .subsidy_item_detail {
		padding: 30px;
	}
	#dental #subsidy .subsidy_item_detail dl {
		padding-left: 20px;
	}
	
	#dental #subsidy .subsidy_item dl {
		padding: 16px 20px;
	}
	#dental #subsidy .subsidy_item dl dt {
		width: calc(100% - 200px);
		font-size: 1em;
	}
	#dental #subsidy .subsidy_item dl dd {
		width: 200px;
		font-size: 1.2em;
		padding-left: 30px;
	}
	
	#dental .point:before {
		bottom: -36px;
		width: 190px;
		height: 40px;
	}
	#dental .point .point_title {
		font-size: 1.6em;
	}
	
}
@media screen and (max-width: 390px) {
	#dental #subsidy .subsidy_item_detail {
		padding: 20px;
	}
	
	#dental #subsidy .subsidy_item .subsidy_item_title:before {
		width: 190px;
		height: 220px;
	}
	#dental #subsidy .subsidy_item dl dt {
		width: calc(100% - 150px);
	}
	#dental #subsidy .subsidy_item dl dd {
		width: 150px;
		font-size: 1.1em;
		padding-left: 18px;
	}
}
@media screen and (max-width: 320px) {
	#dental #subsidy .subsidy_item dl {
		padding: 16px 8px;
	}
	#dental #subsidy .subsidy_item dl dt {
		width: calc(100% - 130px);
	}
	#dental #subsidy .subsidy_item dl dd {
		width: 150px;
		font-size: 1.1em;
		padding-left: 15px;
	}
	
	#dental #subsidy .subsidy_item_detail {
		padding: 15px;
	}
	#dental #subsidy .subsidy_item_detail dl {
		padding: 0;
		border-left: none;
	}
	#dental #subsidy .subsidy_item_detail dt {
		color: #9BCA3E;
	}
}

/****************************************
 * LP：相続税
*****************************************/

#inheritancetax .problem {
	background: url(images/lp_inheritancetax/problem_bg.jpg) no-repeat;
	background-position: bottom center;
	background-size: 100%;
	padding: 0 0 150px;
}
#inheritancetax .problem .problem_flex {
	width: 100%;
	background: #FFF;
	padding: 60px 60px;
	display: flex;
	justify-content: space-around;
	align-items: stretch;
	border-radius: 12px;
	box-shadow: 0 0 12px 0 rgb(19 71 52 / 20%);
}
#inheritancetax .problem .problem_flex h3 {
	text-align: center;
}
#inheritancetax .problem .problem_flex h3 span {
	background: #ec5315;
	color: #FFF;
	margin-right: 3px;
	padding: 2px 8px;
}
#inheritancetax .problem .problem_flex .problem_flex___left {
	width: calc(100% /2);
	border-right: 1px solid #ededed;
	padding: 0 45px 0 0;
	position: relative;
}
#inheritancetax .problem .problem_flex .problem_flex___left:before {
	content: "";
	position: absolute;
	top: -30px;
	left: -30px;
	background: url(images/lp_inheritancetax/deco_pochi.png) no-repeat;
	background-size: 100%;
	width: 12px;
	height: 12px;
}
#inheritancetax .problem .problem_flex .problem_flex___left:after {
	content: "";
	position: absolute;
	bottom: -30px;
	left: -30px;
	background: url(images/lp_inheritancetax/deco_pochi.png) no-repeat;
	background-size: 100%;
	width: 12px;
	height: 12px;
}
#inheritancetax .problem .problem_flex .problem_flex___right {
	width: calc(100% /2);
	padding: 0 0 0 45px;
	position: relative;
}
#inheritancetax .problem .problem_flex .problem_flex___right:before {
	content: "";
	position: absolute;
	top: -30px;
	right: -30px;
	background: url(images/lp_inheritancetax/deco_pochi.png) no-repeat;
	background-size: 100%;
	width: 12px;
	height: 12px;
}
#inheritancetax .problem .problem_flex .problem_flex___right:after {
	content: "";
	position: absolute;
	bottom: -30px;
	right: -30px;
	background: url(images/lp_inheritancetax/deco_pochi.png) no-repeat;
	background-size: 100%;
	width: 12px;
	height: 12px;
}
#inheritancetax .problem .problem_flex ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
#inheritancetax .problem .problem_flex ul li {
	position: relative;
	padding-left: 36px;
	margin: 8px 0 0;
	font-size: 1.2em;
	font-weight: bold;
	text-align: left;
}
#inheritancetax .problem .problem_flex ul li:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 10px;
	  transform: translateY(-50%) rotate(45deg);
    width: 7px;
    height: 12px;
    border-right: 3px solid #feb92b;
    border-bottom: 3px solid #feb92b;
}
#inheritancetax .problem .problem_flex ul li:after {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 26px;
	height: 26px;
	line-height: 26px;
	border: 2px solid #feb92b;
	border-radius: 26px;
}
#inheritancetax .problem .summary {
	margin: 60px auto 0;
	width: 900px;
	font-size: 1.1em;
	position: relative;
}
#inheritancetax p.sup {
	margin: 30px 30px 0;
}

@media screen and (max-width: 768px) {
	#inheritancetax .problem .problem_flex {
		padding: 45px;
	}
	#inheritancetax .problem .problem_flex .problem_flex___left {
		padding: 0 30px 0 0;
	}
	#inheritancetax .problem .problem_flex .problem_flex___right {
		padding: 0 0 0 30px;
	}
}
@media screen and (max-width: 560px) {
	#inheritancetax .problem .problem_flex {
		flex-direction: column;
	}
	#inheritancetax .problem .problem_flex .problem_flex___left,
	#inheritancetax .problem .problem_flex .problem_flex___right {
		width: 100%;
		padding: 0;
		border-right: none;
	}
	#inheritancetax .problem .problem_flex .problem_flex___left:after {
		top: -30px;
		left: auto;
		right: -30px;
	}
	#inheritancetax .problem .problem_flex .problem_flex___right {
		margin: 30px 0 0;
	}
	#inheritancetax .problem .problem_flex .problem_flex___right:before {
		top: auto;
		bottom: -30px;
		left: -30px;
	}
	#inheritancetax .problem .summary {
		width: 100%;
	}
}
@media screen and (max-width: 430px) {
	#inheritancetax .problem .problem_flex {
		padding: 30px;
	}
	#inheritancetax .problem .problem_flex .problem_flex___left:before {
		top: -15px;
		left: -15px;
	}
	#inheritancetax .problem .problem_flex .problem_flex___left:after {
		top: -15px;
		right: -15px;
	}
	#inheritancetax .problem .problem_flex .problem_flex___right:before {
		bottom: -15px;
		left: -15px;
	}
	#inheritancetax .problem .problem_flex .problem_flex___right:after {
		bottom: -15px;
		right: -15px;
	}
	
	#inheritancetax .problem .problem_flex ul li {
		padding-left: 26px;
		font-size: 1.1em;
	}
	#inheritancetax .problem .problem_flex ul li:after {
		width: 22px;
		height: 22px;
		line-height: 22px;
	}
	#inheritancetax .problem .summary p.summary_title {
		padding: 30px 0 0;
		text-align: center;
	}
	#inheritancetax .problem .summary p.summary_title:before {
		top: -30px;
		left: 50%;
		transform: translateX(-50%) rotate(-12deg);
	}
	#inheritancetax .problem .problem_flex ul li:before {
		left: 8px;
	}
}
@media screen and (max-width: 380px) {
	#inheritancetax .problem .problem_flex .problem_flex___left:before,
	#inheritancetax .problem .problem_flex .problem_flex___left:after,
	#inheritancetax .problem .problem_flex .problem_flex___right:before,
	#inheritancetax .problem .problem_flex .problem_flex___right:after {
		width: 8px;
		height: 8px;
	}
}
@media screen and (max-width: 320px) {
	#inheritancetax .problem .problem_flex {
		padding: 20px;
	}
	#inheritancetax .problem .problem_flex ul li {
		font-size: 1em;
	}
}

/****************************************
 * LP：会社設立支援サービス
*****************************************/

#establishment .sub_topimage {
	overflow: hidden;
	border-radius: 18px;
	position: relative;
	z-index: 9;
}
#establishment .service:before {
	content: none;
}
#establishment .summary {
	margin: 60px auto;
	width: 780px;
}
#establishment .service_flex {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
}
#establishment .service_flex .service_flex___left {
	width: calc(100%/2 - 45px);
	text-align: center;
}
#establishment .service_flex .service_flex___right {
	width: calc(100%/2 - 45px);
	text-align: center;
}
#establishment .service_flex .service_flex___title {
	margin: 21px 0;
	font-size: 1.6em;
	position: relative;
	z-index: 2;
}
#establishment .service_flex .service_flex___title span.deco_marker {
	position: relative;
	z-index: 1;
}
#establishment .service_flex .service_flex___title span.deco_marker:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 10px;
	left: 10px;
	background-image: url(images/lp_establishment/deco_marker.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center bottom;
	width: 94%;
	height: 100%;
	z-index: -1;
}
#establishment .service_flex .service_flex___inbox {
	padding: 60px;
	text-align: left;
	background: #E7F2FC;
	border-radius: 3px;
	position: relative;
}
#establishment .service_flex .service_flex___inbox:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 30px;
	left: 30px;
	background-image: url(images/lp_establishment/service_deco.png);
	background-size: 100%;
	background-repeat: no-repeat;
	width: 20px;
	height: 20px;
}
#establishment .service_flex .service_flex___inbox:after {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: 30px;
	right: 30px;
	background-image: url(images/lp_establishment/service_deco.png);
	background-size: 100%;
	background-repeat: no-repeat;
	width: 20px;
	height: 20px;
}
#establishment img.service01_img {
	margin: 60px auto 0;
}

#establishment .establishment_price {
	padding: 90px 0;
}
#establishment .price_flex {
	display: flex;
	flex-direction: column;
}
#establishment .price_flex .price_flex___coltd {
	margin: 90px auto 0;
}
#establishment .price_flex .price_flex___coltd .price_flex___title {
	margin: 0 0 60px;
	position: relative;
	padding: 15px;
	background-color: #0d4e8b;
	color: #FFF;
	font-size: 1.8em;
	text-align: center;
}
#establishment .price_flex .price_flex___coltd .price_flex___title:before {
	content: "";
	position: absolute;
	top: 105%;
	left: 50%;
	transform: translate(-50%, 0);
	border-left: 8px dotted #0d4e8b;
	height: 20px;
}
#establishment .price .price_flag_coltd,
#establishment .price .price_flag_llc {
	position: relative;
}
#establishment .price .price_flag_coltd:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: -190px;
	left: 60px;
	background-image: url(images/lp_establishment/flag_coltd.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center bottom;
	width: 300px;
	height: 200px;
	z-index: 1;
}
#establishment .price .price_flag_llc:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: -190px;
	left: 60px;
	background-image: url(images/lp_establishment/flag_llc.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center bottom;
	width: 300px;
	height: 200px;
	z-index: 1;
}
#establishment .price table th {
	background: #0C4E8C;
	color: #FFF;
	padding: 12px;
}
#establishment .price table th.empty,
#establishment .price table td.empty {
	width: 60px;
	background: none !important;
	border-top: 1px solid #e7f2fc;
	border-bottom: 1px solid #e7f2fc;
}
#establishment .price table td.free {
	position: relative;
}
#establishment .price table td.free:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: -10px;
	right: 10px;
	background-image: url(images/lp_establishment/deco_free.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center bottom;
	width: 60px;
	height: 60px;
	z-index: 1;
}
#establishment .price table td.special {
	color: #ED1588;
}
#establishment .price table td span.superscript {
	vertical-align: super;
	color: #000;
}
#establishment .price .sup {
	margin: 18px 0 0;
}
#establishment .price .sup p {
	font-size: .9em;
	margin: 0;
}

#establishment .merit {
	position: relative;
	margin: 90px auto 0;
	padding: 90px 0 120px;
}
#establishment .merit:before {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: 0;
	left: 0;
	background-image: url(images/lp_establishment/merit_bg.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center bottom;
	width: 60%;
	height: 100%;
	z-index: 1;
}
#establishment .merit .merit_items {
	width: 520px;
	margin-left: auto;
	position: relative;
	z-index: 1;
}
#establishment .merit .merit_items .merit_items_title {
	position: relative;
	width: 100%;
	display: inline-block;
	font-size: 1.3em;
	margin: 0 0 45px;
	padding: 12px 30px;
	color: #FFF;
	background: #eeb818;
	border-radius: 3px;
}
#establishment .merit .merit_items .merit_items_title:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -15px;
	border: 15px solid transparent;
	border-top: 15px solid #eeb818;
}
#establishment .merit .merit_items ul {
	margin: -3px 0 0;
	padding: 0 30px;
	list-style: none;
}
#establishment .merit .merit_items ul li {
	font-weight: bold;
	font-size: 1.3em;
	padding-left: 30px;
	margin-top: 3px;
	position: relative;
}
#establishment .merit .merit_items ul li:before {
	content: '';
	display: block;
	position: absolute;
	margin: auto;
	top: 50%;
	left: 0;
	transform: translateY(-50%) translateX(0);
	background: url(images/common/icon_star.png) no-repeat;
	background-size: 100%;
	width: 22px;
	height: 22px;
}

#establishment .soft {
	margin: 0 auto 90px;
}
#establishment .soft .soft_items {
	background: #FFF;
	padding: 0 60px 60px;
	margin-top: -40px;
	border-radius: 12px;
	box-shadow: 0 0 14px rgb(0 0 0 / 12%);
	position: relative;
	z-index: 1;
}
#establishment .soft .soft_items .soft_items_title {
	font-size: 1.3em;
	margin: 0 0 12px;
	position: relative;
	top: -22px;
}
#establishment .soft .soft_items .soft_items_title span {
	background: #eeb818;
}
#establishment .soft .soft_items ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: center;
}
#establishment .soft .soft_items ul li {
	width: calc(100%);
	text-align: center;
}
#establishment .soft .soft_items ul li.freee {
	position: relative;
}
#establishment .soft .soft_items ul li.freee img.soft_items_freee {
	position: absolute;
	bottom: -110px;
	left: 50%;
	transform: translateX(-50%) scale(1.5);
}
#establishment .establishment_faq {
	padding: 90px 0;
}

@media screen and (max-width: 1024px) {
	#establishment .price .price_flag_coltd:before,
	#establishment .price .price_flag_llc:before {
		left: 30px;
	}
	#establishment .price_flex .price_flex___coltd .price_flex___title {
		padding: 15px 15px 15px 150px;
	}
	#establishment .merit:before {
		background-position: left -175px bottom;
	}
	#establishment .soft .soft_items {
		padding: 0 45px 45px;
	}
}
@media screen and (max-width: 768px) {
	#establishment .summary {
		width: 100%;
	}
	#establishment .service_flex {
		flex-direction: column;
	}
	#establishment .service_flex .service_flex___left,
	#establishment .service_flex .service_flex___right {
		width: 100%;
	}
	#establishment .service_flex .service_flex___right {
		margin: 45px auto 0;
	}
	#establishment .establishment_price {
		padding: 60px 0;
	}
	#establishment .price_flex {
		display: block;
	}
	#establishment .price_flex .price_flex___coltd .price_flex___title {
		margin: 0 0 45px;
	}
	#establishment .price .price_flag_coltd:before,
	#establishment .price .price_flag_llc:before {
		left: 8px;
	}
	#establishment .price .price_flag_coltd:before {
		top: -168px;
		width: 260px;
		height: 173px;
	}
	#establishment .price .price_flag_llc:before {
		top: -168px;
		width: 260px;
		height: 173px;
	}
	#establishment .price table td.free:before {
		right: -12px;
	}
	
	#establishment .merit:before {
		background-image: url(images/lp_establishment/merit_bg_tb.png);
		background-size: cover;
		background-repeat: no-repeat;
		background-position: left -120px bottom;
	}
	#establishment .soft .soft_items ul {
		flex-wrap: wrap;
		margin: -40px 0 0;
	}
	#establishment .soft .soft_items ul li {
		width: calc(100%/2);
		margin: 18px 0 0;
	}
}
@media screen and (max-width: 560px) {
	#establishment .sub_topimage {
		margin: -30px 0 0;
		position: relative;
	}
	#establishment .sub_topimage img {
		display: block;
		margin: 0 auto;
	}
	#establishment .sub_topimage img.sub_topimage_sp_img_01 {
		width: 80%;
	}
	#establishment .sub_topimage ul {
		list-style: none;
		margin: 0;
		padding: 0;
	}
	#establishment .sub_topimage ul li {
		color: #0c4b84;
		margin: 8px 0 0;
		padding: 12px 30px;
		font-size: 1.1em;
		font-weight: bold;
		border-radius: 8px;
		background: #E7F2FC;
	}
	#establishment .sub_topimage ul li span {
		font-size: 1.3em;
	}
	#establishment .summary {
		margin: 45px auto;
	}
	#establishment .service_flex .service_flex___title {
		font-size: 1.3em;
	}
	#establishment .service_flex .service_flex___inbox {
		padding: 45px;
	}
	#establishment .service_flex .service_flex___inbox:before {
		top: 20px;
		left: 20px;
	}
	#establishment .service_flex .service_flex___inbox:after {
		bottom: 20px;
		right: 20px;
	}
	
	#establishment .price_flex .price_flex___coltd {
		margin: 60px auto 0;
	}
	#establishment .price_flex .price_flex___coltd .price_flex___title {
		font-size: 1.6em;
		margin: 0 0 45px;
		padding: 15px;
	}
	#establishment .price_flex .price_flex___coltd .price_flex___title:before {
		content: none;
	}
	#establishment .price .price_flag_coltd:before,
	#establishment .price .price_flag_llc:before {
		content: none;
	}
	#establishment .price table th.empty,
	#establishment .price table td.empty {
		width: 120px !important;
		padding: 0;
	}
	#establishment .merit {
		margin: 60px auto 0;
		padding: 0 0 90px;
	}
	#establishment .merit:before {
		top: 0;
		background-image: url(images/lp_establishment/merit_bg_sp.png);
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center;
		width: 100%;
		height: 340px;
	}
	#establishment .merit .merit_items {
		width: 100%;
		padding-top: 300px;
	}
	#establishment .soft {
		margin: 0 auto 60px;
	}
	#establishment .soft .soft_items {
		padding: 0 30px 30px;
	}
	#establishment .soft .soft_items .soft_items_title {
		width: 110%;
		left: 50%;
		transform: translateX(-50%);
	}
	.price .price_flex table.price_soft,
	.price .price_flex table.price_dental {
		width: 100%;
	}
	#establishment .establishment_faq {
		padding: 60px 0;
	}
}
@media screen and (max-width: 430px) {
	#establishment .sub_topimage ul li {
		padding: 12px 18px;
		border-radius: 18px;
	}
	#establishment .service_flex .service_flex___title {
		font-size: 1.2em;
	}
	#establishment .merit .merit_items ul {
		padding: 0 30px;
	}
	#establishment .merit .merit_items ul li {
		font-size: 1.1em;
	}
	#establishment .soft .soft_items ul {
		justify-content: space-between;
	}
	#establishment .soft .soft_items ul li {
		width: calc(100%/2 - 22px);
	}
	#establishment .price_flex .price_flex___coltd .price_flex___title {
		font-size: 1.3em;
	}
}
@media screen and (max-width: 320px) {
	#establishment .merit .merit_items .merit_items_title {
		padding: 12px 8px;
		font-size: 1.2em;
	}
	#establishment .merit .merit_items ul {
		padding: 0;
	}
	#establishment .service_flex .service_flex___inbox {
		padding: 30px;
	}
	#establishment .service_flex .service_flex___inbox:before {
		top: 10px;
		left: 10px;
	}
	#establishment .service_flex .service_flex___inbox:after {
		bottom: 10px;
		right: 10px;
	}
}

/****************************************
 * お問い合わせ
*****************************************/

#contact {
	padding-bottom: 0;
}
#contact .contact_title {
	text-align: center;
	font-size: 1.9em;
}
#contact .phone_box .contact_title {
	margin: 0 0 6px;
}

/*電話
*****************************************/
#contact .phone_box {
	text-align: center;
	padding: 60px;
	margin: 0 auto 90px;
	color :#FFF;
	background: #ED5314;
	border-radius: 12px;
	box-shadow: 0 0 14px rgb(0 0 0 / 12%);
}
.page-id-48 #contact .phone_box {
	margin: 60px auto 0;
}
#contact .phone_box .phone_flex {
	display: flex;
	justify-content: center;
	align-items: center;
}
#contact .phone_box .phone_flex .phone_flex_title {
	width: 50%;
	padding: 0 60px 0 0;
	border-right: 1px solid #FFF;
}
#contact .phone_box .phone_flex .phone_flex_content {
	width: 50%;
	padding: 0 0 0 60px;
}
#contact .phone_box .phone_flex .phone_flex_content .free_flex {
	display: flex;
	align-items: center;
	justify-content: center;
}
#contact .phone_box .phone_flex .phone_flex_content .free_flex span {
	font-size: .8em;
	line-height: 1.2;
}
#contact .phone_box .phone_flex .phone_flex_content .free_flex a.free {
	font-size: 2.6em;
	line-height: 1;
	color: #FFF;
	padding-left: 8px;
	margin-bottom: 3px;
	text-decoration: none;
}
#contact .phone_box .phone_flex .phone_flex_content p.phone_hour {
	margin: 12px 0 0;
	font-size: 1.1em;
}

@media screen and (max-width: 1024px) {
	#contact .phone_box {
		padding: 45px;
	}
	#contact .contact_title {
		font-size: 1.7em;
	}
	#contact .phone_box .phone_flex .phone_flex_title {
		padding: 0 45px 0 0;
	}
	#contact .phone_box .phone_flex .phone_flex_content {
		padding: 0 0 0 45px;
	}
	#contact .phone_box .phone_flex .phone_flex_content .free_flex a.free {
		font-size: 2.5em;
	}
	
}
@media screen and (max-width: 768px) {
	#contact .phone_box {
		padding: 45px 30px;
		margin: 0 auto 75px;
	}
	#contact .contact_title {
		font-size: 1.5em;
	}
	#contact .phone_box .phone_flex .phone_flex_title {
		padding: 0 30px 0 0;
	}
	#contact .phone_box .phone_flex .phone_flex_content {
		padding: 0 0 0 30px;
	}
	#contact .phone_box .phone_flex .phone_flex_content .free_flex a.free {
		font-size: 2em;
	}
	#contact .phone_box .phone_flex .phone_flex_content .free_flex span {
		font-size: .7em;
	}
}
@media screen and (max-width: 560px) {
	#contact .phone_box {
		margin: 0 auto 60px;
	}
	#contact .phone_box .phone_flex {
		flex-direction: column;
	}
	#contact .phone_box .phone_flex .phone_flex_title,
	#contact .phone_box .phone_flex .phone_flex_content {
		width: 100%;
	}
	#contact .phone_box .phone_flex .phone_flex_title {
		border-right: none;
		border-bottom: 1px solid;
		padding: 0 0 18px 0;
	}
	#contact .phone_box .phone_flex .phone_flex_title p.phone_bottom {
		font-weight: bold;
	}
	#contact .phone_box .phone_flex .phone_flex_content {
		padding: 18px 0 0 0;
	}
	#contact .phone_box .phone_flex .phone_flex_content .free_flex a.free {
		font-size: 2.2em;
	}
	#contact .phone_box .phone_flex .phone_flex_content .free_flex span {
		font-size: .8em;
		font-weight: bold;
	}
	#contact .phone_box .phone_flex .phone_flex_content p.phone_hour {
		font-size: 1em;
		font-weight: bold;
	}
}
@media screen and (max-width: 430px) {
	#contact .phone_box {
		padding: 30px;
		margin: 0 auto 45px;
	}
	#contact .contact_title {
		font-size: 1.3em;
	}
	#contact .phone_box .phone_flex .phone_flex_content .free_flex a.free {
		font-size: 1.8em;
		font-weight: bold;
	}
}
@media screen and (max-width: 320px) {
	#contact .phone_box {
		padding: 20px;
		margin: 0 auto 30px;
	}
	#contact .phone_box .phone_flex .phone_flex_content .free_flex {
		flex-direction: column;
	}
	#contact .phone_box .phone_flex .phone_flex_content .free_flex span {
		font-size: .8em;
		margin-bottom: 10px;
	}
	#contact .phone_box .phone_flex .phone_flex_content .free_flex a.free {
		margin: 0;
	}
	#contact .phone_box .phone_flex .phone_flex_content p.phone_hour {
		margin-top: 10px;
	}
}

/* LINE
*****************************************/
#contact #contact_line {
	padding-bottom: 90px;
}
#contact #contact_line .line_box {
	text-align: center;
}
#contact #contact_line .line_box .line_title {
	text-align: center;
	color: #03c755;
}
#contact #contact_line .line_box .line_title span.deco_sideline {
	display: inline-block;
	padding: 0 60px;
	position: relative;
}
#contact #contact_line .line_box .line_title span.deco_sideline:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0, -50%);
	background-image: url(images/common/deco_sideline_left-green.png);
	background-size: contain;
	background-repeat: no-repeat;
	width: 33px;
	height: 34px;
}
#contact #contact_line .line_box .line_title span.deco_sideline:after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0, -50%);
	background-image: url(images/common/deco_sideline_right-green.png);
	background-size: contain;
	background-repeat: no-repeat;
	width: 33px;
	height: 34px;
}

@media screen and (max-width: 768px) {
	#contact #contact_line {
		padding-bottom: 75px;
	}
}
@media screen and (max-width: 560px) {
	#contact #contact_line {
		padding-bottom: 60px;
	}
	#contact #contact_line .line_box .line_title {
		font-size: 1.2em;
	}
	#contact #contact_line .line_box .line_title span.deco_sideline {
		padding: 0 45px;
	}
}
@media screen and (max-width: 430px) {
	#contact #contact_line {
		padding-bottom: 45px;
	}
	#contact #contact_line .line_box .line_title {
		font-size: 1.2em;
	}
	#contact #contact_line .line_box .line_title span.deco_sideline {
		display: block;
		padding: 0 30px;
	}
}
@media screen and (max-width: 320px) {
	#contact #contact_line .line_box .line_title {
		font-size: 1em;
	}
}

/*フォーム
*****************************************/
#contact #contact_mail {
	padding: 90px 0;
	background: #FFF9EF;
}
#contact #contact_mail .contact_mail_box {
	background: #FFF;
	padding: 60px;
	border: 1px solid #FFB92A;
	box-shadow: 0 0 14px rgb(0 0 0 / 8%);
}
#contact #contact_mail .contact_mail_inbox {
	text-align: center;
}
#contact .mail_box {
	text-align: center;
	padding: 30px;
	border-radius: 12px;
	background: #fafafa;
}
#contact .mail_box .mail_inbox {
	padding: 60px 30px 30px;
	border-radius: 12px;
	background: #FFF;
	position: relative;
}
#contact .mail_box .mail_inbox p.mail_text {
	font-family: sans-serif;
	background: #5498ca;
	text-align: center;
	border-radius: 30px;
	color: #fff;
	left: 50%;
	padding: 11px 76px;
	position: absolute;
	top: -40px;
	transform: translate(-50%);
	white-space: nowrap;
	font-size: 1.3em;
}
#contact .mail_box .mail_inbox p.mail_text:before {
	border-color: #5498ca transparent transparent transparent;
	border-style: solid;
	border-width: 10px 11px 0 11px;
	content: "";
	display: block;
	height: 0;
	left: calc(50% - 11px);
	position: absolute;
	top: 100%;
	width: 0;
}
#contact input.date::placeholder {
	color: #000;
}

/*確認ページのメールアドレス2つめ*/
.page-id-46 span.check_no {
	display: none;
}

/*フォーム*/
#contact .mw_wp_form_input,
#contact .mw_wp_form_confirm {
	margin-top: 30px;
	padding: 30px;
}
#contact table {
	width: 100%;
	margin: 0 auto;
}
#contact table,
#contact table th,
#contact table td {
	border-collapse: collapse;
}
#contact table tr {
	display: flex;
	align-items: center;
	padding: 30px;
	border-bottom: 1px solid #ededed;
}
#contact table th {
	width: 280px;
	font-weight: normal;
	text-align: left;
	line-height: 1;
	position: relative;
}
#contact table th span.hissu {
	display: inline-block;
	line-height: 1;
	font-size: .7em;
	background: #FFB92A;
	color: #FFF;
	padding: 6px;
	margin-right: 8px;
	text-align: center;
	vertical-align: middle;
}
#contact table td {
	width: calc(100% - 280px);
	text-align: left;
	padding-left: 30px;
	line-height: 1;
	border-left: 1px solid #F7B8A0;
}
#contact table td dl {
	display: table;
}
#contact table td dt {
	width: 180px;
	display: table-cell;
	vertical-align: middle;
}
#contact table td dd {
	display: table-cell;
	vertical-align: middle;
	padding-left: 12px;
}
#contact textarea.consultation {
	min-height: 220px;
	line-height: 1.6;
}
#contact .information {
	margin-top: 45px;
}
.page-id-25 #contact table.contact_form td.position span.memo {
	display: none;
}
#contact input.mail_check {
	margin-top: 12px;
}
#contact input.postcode {
	width: 120px;
	margin-bottom: 5px;
}
#contact .check_send {
	text-align: center;
	margin-top: 30px;
}
#contact input.form_btn {
	width: auto;
	text-decoration: none !important;
	display: inline-block;
	padding: 0 4em;
	color: #FFF;
	background: #ED5314;
	line-height: 60px;
	font-size: 1.3em;
	border-radius: 0 !important;
}
#contact input.form_btn:hover {
	opacity: 1;
	color: #FFF;
	background: #F07241;
}

/*内容確認*/
#contact .mw_wp_form_confirm table td span.check_no {
	display: none;
}
#contact .mw_wp_form_confirm table td.consultation_td {
	line-height: 1.6;
}

@media screen and (max-width: 1024px) {
	#contact table th {
		width: 230px;
	}
	#contact table td {
		width: calc(100% - 230px);
	}
}
@media screen and (max-width: 768px) {
	#contact #contact_mail {
		padding: 75px 0;
	}
	#contact .tel_box .tel_inbox {
		padding: 0 60px;
	}
	#contact .mw_wp_form_input,
	#contact .mw_wp_form_confirm {
		padding: 30px 0;
	}
	#contact table tr {
		padding: 30px 0;
	}
	#contact table th {
		width: 200px;
		font-size: .9em;
	}
	#contact table td {
		width: calc(100% - 200px);
	}
}
@media screen and (max-width: 559px) {
	#contact #contact_mail {
		padding: 60px 0;
	}
	#contact #contact_mail .contact_mail_box {
		padding: 30px;
	}
	#contact table tr {
		flex-direction: column;
	}
	#contact table tr:first-child {
		padding: 0 0 30px;
	}
	#contact table th,
	#contact table td {
		width: 100%;
	}
	#contact table th {
		border-left: 1px solid #F7B8A0;
		padding: 0 0 0 12px;
		margin-bottom: 12px;
		font-weight: bold;
	}
	#contact table td {
		border: none;
		padding: 12px 0 0 12px;
	}
	
	#contact input.form_btn {
		margin: 0;
		padding: 0;
		width: calc(100%/2 - 12px);
		line-height: 52px;
	}
}
@media screen and (max-width: 430px) {
	#contact #contact_mail {
		padding: 45px 0;
	}
	#contact #contact_mail .contact_mail_box {
		padding: 20px;
	}
	#contact #contact_mail .contact_mail_inbox {
		text-align: left;
	}
	#contact table td {
		padding: 12px 0 0 0;
	}
	
	#contact input.form_btn.btn_back {
		margin-right: 6px;
	}
	#contact input.form_btn.btn_submit {
		margin-left: 6px;
	}
}

/****************************************
 * フォーム
*****************************************/

/* iOSリセット */
input[type="submit"],
input[type="button"] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
	display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
	outline-offset: -2px;
}
select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	outline: none;
	background: transparent;
}
button,
input[type="submit"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 0;
	border: none;
	outline: none;
	background: transparent;
}

/*フォーム*/
textarea {
	overflow: auto;
}
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="search"],
textarea {
	font-size: 1em;
	font-family: YakuHanJP, "Noto Sans JP", sans-serif;
	margin: 0;
	padding: 15px;
	width: 100%;
	max-width: 100%;
	outline: none;
	color: #000;
	vertical-align: bottom;
	transition: .3s;
	letter-spacing: 1px;
	border: 1px solid #ededed;
	background: #FFF;
}
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
textarea:focus {
	background: #FFF9EF;
	border: 1px solid #FFB92A;
	outline: none;
}
select {
	position: relative;
	font-family: YakuHanJP, "Noto Sans JP", sans-serif;
	width: 100%;
	padding: 15px 40px 15px 15px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 1px solid #ededed;
	background: #fff url(images/common/select_arrow.jpg) no-repeat;
	background-position: right center;
	background-size: 25px, 100%;
	letter-spacing: 1px;
	font-size: 1em;
	line-height: 23px;
	color: #000;
}

/*ボタン*/
.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"],
.button:before,
button:before,
input[type="submit"]:before,
input[type="reset"]:before,
input[type="button"]:before,
.button:after,
button:after,
input[type="submit"]:after,
input[type="reset"]:after,
input[type="button"]:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"] {
	display: inline-block;
	line-height: 70px;
	border-radius: 70px;
	padding: 0 5em;
	margin: 0 1em;
	height: auto;
	text-align: center;
	text-decoration: none;
	color: #FFF;
	background: #5498ca;
	outline: none;
	position: relative;
}
.button:before,
button:before,
input[type="submit"]:before,
input[type="reset"]:before,
input[type="button"]:before,
.button:after,
button:after,
input[type="submit"]:after,
input[type="reset"]:after,
input[type="button"]:after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover {
	background: #1F4865;
}

@media screen and (max-width: 559px) {
	.button,
	button,
	input[type="submit"],
	input[type="reset"],
	input[type="button"] {
		margin: 0 0.5em;
		padding: 0 3.5em;
		line-height: 60px;
		border-radius: 60px;
	}
}

/****************************************
 * プライバシーポリシー
*****************************************/

#privacy-policy h3 {
	text-align: left;
	margin-bottom: 15px;
	padding-left: 20px;
	line-height: 1;
	position: relative;
}
#privacy-policy h3:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	background: #000;
	width: 4px;
	height: 22px;
	border-radius: 6px;
}
#privacy-policy h4 {
	text-align: left;
	margin-bottom: 15px;
}
#privacy-policy .policy_box {
	margin-top: 45px;
}
#privacy-policy ul {
	font-family: 'KleeOne-Regular', sans-serif;
	list-style: inside;
	margin: 0 0 30px 1em;
	padding: 0;
}

@media screen and (max-width: 768px) {
	#privacy-policy .privacy-policy-content {
		padding: 80px 30px;
	}
	#privacy-policy .privacy-policy-content table th {
		width: 30%;
	}
	#privacy-policy .privacy-policy-content table td {
		padding-left: 30px;
	}
	#privacy-policy .privacy-policy-content table span.height2 {
		padding: 24px 10px;
	}
	#privacy-policy .privacy-policy-content table span.height {
		padding: 20px 10px;
	}
	#privacy-policy .privacy-policy-content table span.height-td {
		padding: 20px 10px;
	}
}
@media screen and (max-width: 559px) {
	#privacy-policy .privacy-policy-content .outline {
		padding: 30px;
	}
	#privacy-policy .privacy-policy-content .outline .begin {
		width: 100%;
	}
	#privacy-policy .privacy-policy-content table {
		margin: 50px 0 30px;
	}
	#privacy-policy .privacy-policy-content table span.height2 {
		padding: 24px 10px;
	}
	#privacy-policy .privacy-policy-content table span.height {
		padding: 25px 10px;
	}
}
@media screen and (max-width: 430px) {
	#privacy-policy .top {
		background: url(images/privacy-policy/top-bg_sp.jpg) no-repeat;
		background-position: center;
		background-size: cover;
		padding: 30px 0;
	}
	#privacy-policy .privacy-policy-content {
		padding: 30px;
	}
	#privacy-policy .privacy-policy-content .outline {
		padding: 15px;
	}
	#privacy-policy .privacy-policy-content table {
		margin: 30px 0;
	}
	#privacy-policy .privacy-policy-content table tr,
	#privacy-policy .privacy-policy-content table th,
	#privacy-policy .privacy-policy-content table td {
		display: block;
		width: 100%;
	}
	#privacy-policy .privacy-policy-content table tr {
		border-bottom: 1px solid #9999;
	}
	#privacy-policy .privacy-policy-content table span,
	#privacy-policy .privacy-policy-content table span.top,
	#privacy-policy .privacy-policy-content table span.height,
	#privacy-policy .privacy-policy-content table span.height2 {
		border: none;
	}
	#privacy-policy .privacy-policy-content table th {
		padding: 0;
	}
	#privacy-policy .privacy-policy-content table td {
		padding: 0;
	}	
	#privacy-policy .privacy-policy-content table th span {
		padding: 10px 10px 0 10px !important;
	}
	#privacy-policy .privacy-policy-content table td span {
		padding: 0 10px 10px 10px !important;
	}
}
@media screen and (max-width: 320px) {
	#privacy-policy .privacy-policy-content {
		padding: 30px 15px;
	}
}

/****************************************
 * サイトマップ
*****************************************/

ul#menu-sitemaps-nav {
	padding: 0;
	margin: 0;
	list-style: none;
}
ul#menu-sitemaps-nav li {
	width: 100%;
	border-bottom: 1px solid #ededed;
}
ul#menu-sitemaps-nav li:first-child {
	border-top: 1px solid #ededed;
}
ul#menu-sitemaps-nav li:nth-child(2):before {
	top: 30px;
}
ul#menu-sitemaps-nav li a {
	display: block;
	padding: 15px 60px 15px 30px;
	margin-top: 3px;
	text-decoration: none !important;
	position: relative;
}
ul#menu-sitemaps-nav li a:before {
	content: '';
	position: absolute;
	top: 50%;
	right: 30px;
	transform: translateY(-50%) rotate(45deg);
	background: #ED5314;
	width: 6px;
	height: 6px;
	border-radius: 12px;
}
ul#menu-sitemaps-nav li ul.sub-menu {
	list-style: none;
	padding: 0;
	margin: 0;
}
ul#menu-sitemaps-nav li ul.sub-menu li:last-child {
	border: none;
}
ul#menu-sitemaps-nav li ul.sub-menu li:nth-child(2):before {
	top: 45%;
}
ul#menu-sitemaps-nav li ul.sub-menu li a {
	background: #FFF;
	padding: 15px 60px 15px 45px;
}
ul#menu-sitemaps-nav li ul.sub-menu li a:hover {
	opacity: 1;
}

@media screen and (max-width: 560px) {
	ul#menu-sitemaps-nav li a {
		padding: 12px 45px 12px 30px;
	}
	ul#menu-sitemaps-nav li ul.sub-menu li a {
		padding: 12px 45px 12px 45px;
	}
	ul#menu-sitemaps-nav li:nth-child(2):before {
		top: 25px;
	}
}
@media screen and (max-width: 430px) {
	ul#menu-sitemaps-nav li a {
		padding: 8px 30px 8px 15px;
	}
	ul#menu-sitemaps-nav li ul.sub-menu li a {
		padding: 8px 30px 8px 25px;
	}
	ul#menu-sitemaps-nav li:before {
		right: 15px;
		width: 10px;
		height: 10px;
	}
}

/****************************************
 * single.php
*****************************************/

/* single.php
*****************************************/
#single .contents_box {
	border: 1px solid #feb92b;
    box-shadow: 0 0 14px rgb(0 0 0 / 8%);
}
#single .contents_box .meta {
	padding: 45px 60px 45px;
	background: #FFF9EF;
}
#single .contents_box .meta p.date {
	text-align: right;
	margin: 0;
}
#single .contents_box .meta .the_title {
	font-size: 1.3em;
	margin: 0;
}
#single .contents_box .contents_textbox {
	padding: 60px;
	border-top: 1px solid #FEF1D6;
}
#single .related {
	padding-bottom: 30px;
}

@media screen and (max-width: 560px) {
	#single .contents_box .meta {
		padding: 45px;
	}
	#single .contents_box .contents_textbox {
		padding: 45px;
	}
}
@media screen and (max-width: 430px) {
	#single .contents_box .meta {
		padding: 30px;
	}
	#single .contents_box .meta p.date {
		font-size: .9em;
	}
	#single .contents_box .contents_textbox {
		padding: 30px;
	}
	#single .contents_box .meta .the_title {
		font-size: 1.1em;
	}
}
@media screen and (max-width: 380px) {
	#single .contents_box .meta {
		padding: 20px;
	}
	#single .contents_box .meta p.date {
		font-size: .8em;
	}
	#single .contents_box .contents_textbox {
		padding: 20px;
	}
	#single .contents_box .meta .the_title {
		font-size: 1em;
	}
}

/****************************************
 * WPネイティブCSS
*****************************************/
.alignleft {
	float: left;
}
.alignright {
	float: right;
}
.wp-block-image {}
.wp-block-image figcaption {}
img[class*="wp-image-"],
img[class*="attachment-"] {
	max-width: 100%;
	height: auto;
}
img.alignright {
	display: block;
	margin: 0 0 0 auto;
}
img.alignleft {
	display: block;
	margin: 0 auto 0 0;
}
img.aligncenter {
	display: block;
	margin: 0 auto;
}
blockquote {
	display: block;
	-webkit-margin-before: 1em;
	-webkit-margin-after: 1em;
	-webkit-margin-start: 40px;
	-webkit-margin-end: 40px;
	margin: 50px;
	border-left: 1px solid #ededed;
	padding-left: 30px;
}
cite {
	font-size: .8em;
}
cite a {
	display: inline;
}

/* clearfix */
.clearfix {
	overflow: hidden;
	zoom: 1;
}
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

@media screen and (max-width: 480px) {
	blockquote {
		margin: 30px;
	}
}

/****************************************
画像キャプション
*****************************************/
.wp-caption {
	text-align: right;
}
.wp-caption-text,
.gallery-caption　{
	font-size: 12px;
	margin: 0;
	color: #333;
}
.wp-caption img {
	margin: 0;
	padding: 0;
	border: 0 none;
	vertical-align: bottom;
}
.wp-caption-dd {
	margin: 0;
	padding: 0 4px 5px;
	font-size: 11px;
	line-height: 17px;
}


/****************************************
 * 404.php
*****************************************/

#error .error_title {
	font-size: 2em;
	margin-bottom: 30px;
}
#error .error_box {
	text-align: center;
	font-size: 1.3em;
}
#error p.error_url span {
	color: #B5978B;
}
#error a {
	text-decoration: none;
}

@media screen and (max-width: 768px) {
	#error .error_title {
		font-size: 1.8em;
	}
	#error .error_box {
		font-size: 1.1em;
	}
}
@media screen and (max-width: 559px) {
	#error .error_title {
		font-size: 1.6em;
	}
}
@media screen and (max-width: 430px) {
	#error .error_title {
		font-size: 1.5em;
	}
	#error .error_box {
		font-size: 1em;
	}
}
@media screen and (max-width: 320px) {
	#error .error_title {
		font-size: 1.3em;
	}
}

/****************************************
 * フッター
*****************************************/

footer {
	clear: both;
	overflow: hidden;
	background: #FDEDE7;
	padding: 30px 0 0;
}
footer a {
	color: #000;
}
footer .totop {
	position: fixed;
	bottom: 30px;
	right: 30px;
	z-index: 9;
}
footer .footer_information {
	width: 780px;
	margin: 60px auto 0;
}
footer .footer_information .footer_information_logo {
	width: 100%;
	text-align: center;
}
footer .footer_information .footer_information_info {
	width: 100%;
	text-align: center;
	margin: 12px 0 0;
}
footer .footer_information .footer_information_info span {
	display: block;
}
footer .footer_information .footer_information_info span a {
	margin: 12px 0;
}
footer .footer_box .footer_menu {
	margin-top: 45px;
	font-family: 'KleeOne-Regular', sans-serif;
}
footer nav.footer-nav {
	margin-bottom: 10px;
	text-align: center;
}
footer nav.footer-must {
	font-size: .8em;
	text-align: center;
	margin: 30px 0 0;
}
footer nav.footer-nav ul#menu-footer-nav,
footer nav.footer-must ul#menu-footer-must {
	list-style: none;
	margin: 0;
	padding: 0;
}
footer nav.footer-nav ul#menu-footer-nav li,
footer nav.footer-must ul#menu-footer-must li {
	display: inline-block;
	margin-right: 15px;
}
footer nav.footer-nav ul#menu-footer-nav li:last-child {
	margin-right: 0;
}
footer .footer_bottom1 {
	border-top: 1px solid #FFF;
	border-bottom: 1px solid #FFF;
	padding: 15px 0;
	position: relative;
}
footer .footer_bottom1 nav.footer-must {
	position: absolute;
	right: 0;
	top: 0;
}
footer .footer_bottom1 nav.footer-must ul#menu-footer-must {
	list-style: none;
}
footer .footer_bottom1 nav.footer-must ul#menu-footer-must li {
	display: inline-block;
	margin-left: 15px;
	font-size: .8em;
}
footer #copyright {
	font-size: .9em;
	text-align: center;
	margin-top: 60px;
	padding: 30px;
	background: #FBDBCF;
}
footer #copyright a {
	color: #ee5314;
	font-weight: bold;
}

@media screen and (max-width: 768px) {
	footer .totop img.icon {
		width: 40px;
	}
	footer .footer_information {
		width: 100%;
	}
	footer nav.footer-nav ul#menu-footer-nav {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		margin-top: -12px;
	}
	footer nav.footer-nav ul#menu-footer-nav li {
		width: calc(100%/4);
		margin-right: 0;
		margin-top: 12px;
	}
	footer .footer_information .footer_information_info span a.main_btn {
		width: auto;
	}
}
@media screen and (max-width: 560px) {
	footer nav.footer-nav ul#menu-footer-nav li {
		width: calc(100%/3);
	}
	footer .footer_information {
		margin: 0;
	}
	footer #copyright {
		margin-top: 45px;
	}
}
@media screen and (max-width: 430px) {
	footer nav.footer-nav ul#menu-footer-nav li {
		font-size: .83em;
	}
}
@media screen and (max-width: 320px) {
	footer .totop img.icon {
		width: 35px;
	}
}

/****************************************
プラグイン
*****************************************/

/* MW WP Form
*****************************************/
.mw_wp_form .error {
	text-align: left !important;
	font-weight: bold !important;
	font-size: .9em !important;
	color: #feb92d !important;
	line-height: 1.35 !important;
	margin-top: 15px !important;
	position: relative;
}
.mwform-checkbox-field input,
.mwform-radio-field input {
	vertical-align: middle;
	margin: 0 6px 0 0;
	width: 20px;
	height: 20px;
}
.mw_wp_form .vertical-item + .vertical-item {
	margin-top: 8px !important;
}

@media screen and (max-width: 559px) {
	.mw_wp_form .vertical-item {
		width: 100% !important;
	}
}
