@charset "UTF-8";

/*
Theme Name : 2021mj_souzoku-mima
Theme URI: https://souzoku-mima.com
Description: 2021mj_souzoku
Version: 1.0
Author: https://souzoku-mima.com
Author URI : https://souzoku-mima.com
*/ 

@font-face {
	font-family: 'nsj_th';
	src: url('fonts/Noto_Sans_JP/NotoSansJP-Thin.otf') format('opentype');
	font-display: swap;
}
@font-face {
	font-family: 'nsj_rg';
	src: url('fonts/Noto_Sans_JP/NotoSansJP-Regular.otf') format('opentype');
	font-display: swap;
}
@font-face {
	font-family: 'nsj_md';
	src: url('fonts/Noto_Sans_JP/NotoSansJP-Medium.otf') format('opentype');
	font-display: swap;
}
@font-face {
	font-family: 'nsj_bd';
	src: url('fonts/Noto_Sans_JP/NotoSansJP-Bold.otf') format('opentype');
	font-display: swap;
}
@font-face {
	font-family: 'nsj_bl';
	src: url('fonts/Noto_Sans_JP/NotoSansJP-Black.otf') format('opentype');
	font-display: swap;
}
@font-face {
	font-family: 'oxy_rg';
	src: url('fonts/Oxygen/Oxygen-Regular.ttf') format('truetype');
	font-display: swap;
}
@font-face {
	font-family: 'oxy_bd';
	src: url('fonts/Oxygen/Oxygen-Bold.ttf') format('truetype');
	font-display: swap;
}

.nsj_th {
	font-family: 'nsj_th', sans-serif;
	font-weight: 100;
}
.nsj_rg {
	font-family: 'nsj_rg', sans-serif;
	font-weight: 400;
}
.nsj_md {
	font-family: 'nsj_md', sans-serif;
	font-weight: 500;
}
.nsj_bd {
	font-family: 'nsj_md', sans-serif;
	font-weight: 700;
}
.nsj_bl {
	font-family: 'nsj_md', sans-serif;
	font-weight: 900;
}

.oxy_rg {
	font-family: 'oxy_rg', sans-serif;
	font-weight: 300;
}
.oxy_bd {
	font-family: 'oxy_bd', sans-serif;
	font-weight: 700;
}


html, body {
	margin: 0;
	padding: 0;
}
body {
	color: #000;
	font-size: 18px;
	line-height: 1.8;
	font-family: "Noto Sans JP",sans-serif;
}
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
p {
	margin:0 0 1.5em 0;
	padding: 0;
}
p:last-child {
	margin: 0;
}

img {
	max-width: 100%;
	height: auto;
	box-sizing: border-box;
	vertical-align: middle;
}

@media screen and (max-width: 768px) {
	body {
		font-size: 17px;
	}
}
@media screen and (max-width: 480px) {
	body {
		font-size: 16px;
	}
	p {
		margin: 0 0 1.2em 0;
	}
}
@media screen and (max-width: 320px) {
	body {
		font-size: 15px;
	}
}

/****************************************
 * h
*****************************************/

h1, h2, h3, h4, h5, h6 {
	font-weight: 700;
	margin: 0;
	line-height: 1;
}
h1 {
	font-size: 1.8em;
	margin: 0;
	color: #FFF;
	position: relative;
}
h1 span {
	position: absolute;
	top: -20px;
	font-size: .5em;
}
h2 {
	font-size: 2em;
	text-align: center;
	margin-bottom: 60px;
}
h3 {
	font-size: 1.8em;
	text-align: center;
}
h4 {
	font-size: 1.4em;
}
h5 {
	font-size: 1.2em;
	margin: 0 0 10px;
}
h6 {
	font-size: 1.0em;
}

.img_title {
	text-align: center;
	margin-bottom: 30px;
}
.img_title img {
	display: block;
	margin: 0 auto;
}

/*トップページ*/
.main_title,
.p-contact .main_title {
	color: #FFF;
	background: #96bd55 !important;
	position: relative;
	padding: 30px 0 60px 190px !important;
	font-size: 2.3em;
	text-align: left !important;
	border: none !important;
	border-radius: 12px !important;
	line-height: 1 !important;
}
.main_title:before,
.p-contact .main_title:before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	display: inline-block;
	background: url(images/common/main_title_dotted.png) no-repeat;
	background-size: 100%;
	background-position: center;
	width: 115px;
	height: 20px;
}
.main_title:after,
.p-contact .main_title:after {
	content: "";
	display: inline-block;
	position: absolute;
	left: 0;
	bottom: 30px;
	background: #8BB345;
	width: 100%;
	height: 3px;
}
.main_title span {
	display: block;
	margin-bottom: 12px;
	font-size: .6em;
}

/*選ばれる理由*/
.office .main_title {
	background: #FF8C63 !important;
}
.office .main_title:after {
	background: #FF7847;
}

@media screen and (max-width: 960px) {
	.main_title,
	.p-contact .main_title {
		padding: 30px 0 60px 120px !important;
		font-size: 2.1em;
	}
}
@media screen and (max-width: 768px) {
	.main_title,
	.p-contact .main_title {
		padding: 30px 0 60px 110px !important;
		font-size: 2.1em;
	}
}
@media screen and (max-width: 560px) {
	.main_title,
	.p-contact .main_title {
		padding: 20px 10px 40px 100px !important;
		font-size: 1.6em;
	}
	.main_title:after,
	.p-contact .main_title:after {
		bottom: 22px;
	}
}
@media screen and (max-width: 430px) {
	.main_title,
	.p-contact .main_title {
		padding: 20px 15px 30px 80px !important;
		font-size: 1.3em;
	}
	.main_title:after,
	.p-contact .main_title:after {
		bottom: 14px;
	}
}
@media screen and (max-width: 420px) {
	.main_title,
	.p-contact .main_title {
		padding: 20px 15px 30px 68px !important;
		font-size: 1.2em;
	}
	.main_title:after,
	.p-contact .main_title:after {
		bottom: 14px;
	}
}

/*見出しのイラスト*/
.men1,
.men2,
.men3,
.women4,
.men5 {
	position: relative;
}
.men1:before {
	content: "";
	position: absolute;
	left: 60px;
	right: auto;
	top: -22px;
	bottom: auto;
	margin: auto;
	display: inline-block;
	background: url(images/common/ilst_men1.png) no-repeat;
	background-size: 100%;
	width: 110px;
	height: 152px;
	z-index: 1;
}
.men2:before {
	content: "";
	position: absolute;
	left: 60px;
	right: auto;
	top: -28px;
	bottom: auto;
	margin: auto;
	display: inline-block;
	background: url(images/common/ilst_men2.png) no-repeat;
	background-size: 100%;
	width: 120px;
	height: 157px;
	z-index: 1;
}
.men3:before {
	content: "";
	position: absolute;
	left: 20px;
	right: auto;
	top: -28px;
	bottom: auto;
	margin: auto;
	display: inline-block;
	background: url(images/common/ilst_men3.png) no-repeat;
	background-size: 100%;
	width: 170px;
	height: 154px;
	z-index: 1;
}
.women4:before {
	content: "";
	position: absolute;
	left: 38px;
	right: auto;
	top: -26px;
	bottom: auto;
	margin: auto;
	display: inline-block;
	background: url(images/common/ilst_women4.png) no-repeat;
	background-size: 100%;
	width: 140px;
	height: 150px;
	z-index: 1;
}
.men5:before {
	content: "";
	position: absolute;
	left: 26px;
	right: auto;
	top: -14px;
	bottom: auto;
	margin: auto;
	display: inline-block;
	background: url(images/common/ilst_men5.png) no-repeat;
	background-size: 100%;
	width: 155px;
	height: 141px;
	z-index: 1;
}

@media screen and (max-width: 960px) {
	.men1:before {
		top: -10px;
		left: 15px;
		width: 90px;
		height: 124px;
	}
	.men2:before {
		top: -10px;
		left: 15px;
		width: 90px;
		height: 118px;
	}
	.men3:before {
		top: 12px;
		left: 10px;
		width: 110px;
		height: 100px;
	}
	.women4:before {
		top: 12px;
		left: 0;
		width: 110px;
		height: 100px;
	}
	.men5:before {
		top: 14px;
		left: 3px;
		width: 110px;
		height: 100px;
	}
}
@media screen and (max-width: 768px) {
	.women4:before {
		left: -8px;
	}
}
@media screen and (max-width: 560px) {
	.men1:before {
		top: -10px;
		left: 10px;
		width: 80px;
		height: 111px;
	}
	.men2:before {
		top: -10px;
		left: 5px;
		width: 80px;
		height: 105px;
	}
	.men3:before {
		top: 6px;
		left: 5px;
		width: 90px;
		height: 80px;
	}
	.women4:before {
		top: 12px;
		left: 6px;
		width: 80px;
		height: 86px;
	}
	.men5:before {
		top: 14px;
		left: 5px;
		width: 88px;
		height: 82px;
	}
}
@media screen and (max-width: 430px) {
	.men1:before {
		top: -2px;
		left: 10px;
		width: 60px;
		height: 84px;
	}
	.men2:before {
		top: 8%;
		left: 10px;
		width: 60px;
		height: 84px;
	}
	.men3:before {
		top: 6px;
		left: -5px;
		width: 78px;
		height: 70px;
	}
	.women4:before {
		top: 12px;
		left: 0;
		width: 66px;
		height: 70px;
	}
	.men5:before {
		top: 14px;
		left: 5px;
		width: 88px;
		height: 82px;
	}
}
@media screen and (max-width: 420px) {
	.men1:before {
		top: 3px;
		left: 7px;
		width: 51px;
		height: 71px;
	}
	.men2:before {
		top: 13%;
		left: 7px;
		width: 54px;
		height: 71px;
	}
	.men3:before {
		top: 15px;
		left: -5px;
		width: 65px;
		height: 59px;
	}
	.women4:before {
		top: 9px;
		left: 0;
		width: 60px;
		height: 64px;
	}
	.men5:before {
		top: 18px;
		left: -5px;
		width: 65px;
		height: 59px;
	}
}

/* 投稿のタイトル */
.post_title {
	margin-bottom: 10px !important;
	border: none !important;
	padding: 0 !important;
}


/* single・page */
#page h2,
#page h3,
#page h4,
#page h5,
#page h6,
#single h2,
#single h3,
#single h4,
#single h5,
#single h6 {
	text-align: left;
}
#single h2,
#page h2 {
	overflow: hidden;
	text-align: left;
	padding: 20px 30px;
	background: #F1F6E8;
	border-top: 1px solid #95bf54;
	border-bottom: 1px solid #95bf54;
	color: #95bf54;
	line-height: 1.3;
	z-index: 1;
	margin-bottom: 30px;
}
#single h3,
#page h3 {
	color: #95bf54;
	margin-bottom: 30px;
	border-bottom: 1px solid;
	padding-bottom: 12px;
}
#single h4,
#page h4 {
	border-left: 5px solid #000;
	padding-left: 20px;
	margin-bottom: 30px;
}
#single h5,
#page h5 {
	border-bottom: 1px solid;
	padding: 0 0 10px;
	margin-bottom: 30px;
}
#single h6,
#page h6 {
	margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
	h1 {
		font-size: 1.6em;
		margin: 0;
		color: #FFF;
	}
	h2 {
		font-size: 1.6em;
		text-align: center;
	}
	h3 {
		font-size: 1.3em;
	}
	h4 {
		font-size: 1.3em;
	}
}
@media screen and (max-width: 559px) {
	h1 {
		font-size: 1.5em;
		margin: 0;
		color: #FFF;
	}
	h2 {
		font-size: 1.5em;
		text-align: center;
		margin-bottom: 45px;
	}
	h3 {
		font-size: 1.2em;
	}
	h4 {
		font-size: 1.2em;
	}
}
@media screen and (max-width: 480px) {
	h1 {
		font-size: 1.4em;
		margin: 0;
		color: #FFF;
	}
	h2 {
		font-size: 1.4em;
		text-align: center;
	}
	
	.page_contents_title:after {
		bottom: -50px;
		width: 160px;
		height: 160px;
	}
}
@media screen and (max-width: 430px) {
	h1 {
		font-size: 1.3em;
	}
	h2 {
		font-size: 1.3em;
		margin-bottom: 20px;
	}
	h3 {
		font-size: 1.1em;
	}
	h4 {
		font-size: 1em;
	}
	
	.img_title {
		margin-bottom: 20px;
	}
	.page_contents_title {
		padding: 20px;
	}
	#single h3 {
		margin-bottom: 20px;
		margin-left: 0;
	}
}
@media screen and (max-width: 380px) {
}
@media screen and (max-width: 320px) {
}

/****************************************
 * リスト
*****************************************/

ul,
dl,
dt,
dd {
	margin: 0;
	padding: 0;
	list-style: none;
}
ul ul{
	margin-left: 1em;
}

table {
	table-layout: fixed;
}

blockquote{
	margin-bottom: 2em;
	margin-left: 20px;
	padding-left: 20px;
	border-left: 5px solid #ddd;
}

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

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

.main_contents a {
	text-decoration: underline;
}

/****************************************
 * 別ウィンドウリンク
*****************************************/

/*ノーマルリンク*/
a.tab {
	display: inline-block;
	position: relative;
	padding: 0 27px 0 0;
	margin: 0 3px;
	line-height: 1;
}
a.tab:before {
	content: "";
	display: inline-block;
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	right: 0;
	background: url(images/common/icon100_tab.png) no-repeat;
	background-size: 100%;
	width: 18px;
	height: 18px;
}

/*ボタン*/
a.newtab {
	display: inline-block;
	position: relative;
	text-decoration: underline;
	padding: 0 25px 0 0;
	margin: 0 3px;
	border-radius: 50px;
	line-height: 1;
	transition: all .3s;
}
a.newtab:before {
	content: "";
	display: inline-block;
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	right: 0;
	background: url(images/common/icon100_tab.png) no-repeat;
	background-size: 100%;
	width: 20px;
	height: 20px;
}

@media screen and (max-width: 559px) {
	a.newtab:before {
		width: 18px;
		height: 18px;
	}
	a.newtab:hover:after {
		width: 18px;
		height: 18px;
	}
}

/****************************************
 * フォーム・ボタン
*****************************************/

/* 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;
	margin: 0;
	padding: 10px;
	max-width: 100%;
	outline: none;
	color: #000;
	vertical-align: bottom;
	transition: .3s;
	letter-spacing: 1px;
	border: none;
	border: 1px solid #ededed;
	background: #fefae8;
}
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
textarea:focus {
	background: #fefae8 !important;
	border: 1px solid #f29603;
	outline: none;
	transition: all .3s;
}
select {
	position: relative;
	width: 100%;
	padding: 10px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 1px solid #ededed;
	background: #fff url(images/contact/select_arrow.jpg) no-repeat;
	background-position: right 2% center;
	background-size: 20px, 100%;
	font-size: 1em;
	border-radius: 0;
}

/*ボタン*/
.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;
	position: relative;
	padding: 20px 40px 20px 86px;
	margin: 0 3px;
	background: #BAB844;
	border-radius: 6px;
	color: #FFF !important;
	line-height: 1;
	transition: background-color .3s, box-shadow .3s;
	box-shadow: 2px 3px 2px rgb(0 0 0 / 30%);
}
.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 {
	box-shadow: none;
	background: #BAB728;
	opacity: 1;
}

/*三角 グリーン*/
a.triangle_gr {
	display: inline-block;
	position: relative;
	text-decoration: none;
	padding: 15px 30px 15px 56px;
	margin: 0 3px;
	background: #96bd55;
	border-radius: 50px;
	color: #FFF;
	line-height: 1;
	font-family: "Noto Sans JP",sans-serif;
	box-shadow: 0px 0px 10px -5px #5e5e5e;
}
a.triangle_gr:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%) translateX(0);
	left: 35px;
	width: 0;
	height: 0;
	border: 8px solid transparent; 
	border-left: 8px solid #FFF;
}
a.triangle_gr:hover {
	background: #8CAF4F;
	box-shadow: none;
}

/*三角 オレンジ*/
a.triangle_og {
	display: inline-block;
	position: relative;
	text-decoration: none;
	padding: 15px 30px 15px 56px;
	margin: 0 3px;
	background: #FF8C63;
	border-radius: 50px;
	color: #FFF;
	line-height: 1;
	font-family: "Noto Sans JP",sans-serif;
	box-shadow: 0px 0px 10px -5px #5e5e5e;
}
a.triangle_og:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%) translateX(0);
	left: 35px;
	width: 0;
	height: 0;
	border: 8px solid transparent; 
	border-left: 8px solid #FFF;
}
a.triangle_og:hover {
	background: #FF8356;
	box-shadow: none;
}

a.internal {
	display: inline-block;
	position: relative;
	text-decoration: none;
	padding: 15px 30px 15px 56px;
	margin: 0 3px;
	background: #FFF;
	border-radius: 50px;
	color: #ED9394;
	border: 1px solid #ED9394;
	line-height: 1;
	transition: background-color .3s, box-shadow .3s;
}
a.internal:before {
	content: "";
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	left: 26px;
	width: 10px;
	height: 10px;
	border-top: 3px solid #ED9394;
	border-right: 3px solid #ED9394;
	transform: rotate(45deg);
}
a.internal:after {
	content: "";
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	left: 21px;
	width: 23px;
	height: 23px;
	border: 3px solid #ED9394;
	border-radius: 50%;
}
a.internal:hover {
	color: #FFF;
	background: #E15052;
	border: 1px solid #FFF;
	box-shadow: 2px 3px 2px rgba(0,0,0,0.3);
}
a.internal:hover:before {
	border-top: 3px solid #FFF;
	border-right: 3px solid #FFF;
}
a.internal:hover:after {
	border: 3px solid #FFF;
}

@media screen and (max-width: 559px) {
	
}
@media screen and (max-width: 480px) {
	
}
@media screen and (max-width: 430px) {
	a.triangle_gr,
	a.triangle_og {
		padding: 12px 20px 12px 50px;
	}
	a.triangle_gr:before,
	a.triangle_og:before {
		left: 25px;
	}
}
@media screen and (max-width: 380px) {
	
}
@media screen and (max-width: 320px) {
	
}

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

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

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

.marker_gr {
	display: inline !important;
	background: linear-gradient(transparent 50%, #D9E8C3 50%);
}
.marker_yr {
	background: linear-gradient(transparent 50%, #F2D852 50%);
}
.marker_rd {
	background: linear-gradient(transparent 50%, #D92525 50%);
}
.marker_og {
	background: linear-gradient(transparent 50%, #FF8C63 50%);
}
.button_box {
	text-align: center;
	margin-top: 20px;
}


.right {
	text-align: right;
}
.left {
	text-align: left;
}
.center {
	text-align: center;
}

/*アイコン */
.phone {
	position: relative;
}
.phone:before {
	content: "";
	display: block !important;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 40px;
	background: url(images/common/icon140_phone.png) no-repeat;
	background-size: 100%;
	width: 36px;
	height: 36px;
	z-index: 1;
}
.mail {
	position: relative;
}
.mail:before {
	content: "";
	display: block !important;
	position: absolute;
	top: 19px;
	left: 40px;
	background: url(images/common/icon140_mail.png) no-repeat;
	background-size: 100%;
	width: 36px;
	height: 36px;
	z-index: 1;
}

/*ページ上部の問い合わせ*/
#contact_top {
	padding: 0;
	background: #f6f4ef;
}
#contact_top p.contact_title {
	font-weight: bold;
	font-size: .9em;
	margin: 0 0 8px;
}
#contact_top p.contact_title span {
	margin-left: 6px;
}
#contact_top p.contact_address {
	font-size: .8em;
	margin: 0;
	line-height: 1.3;
}
#contact_top p.contact_address span {
	margin-left: 8px;
}
#contact_top p.contact_access {
	font-size: .8em;
	margin-bottom: 8px;
	line-height: 1.3;
}
#contact_top p.contact_access span {
	margin-left: 8px;
}
#contact_top .hour {
	width: 620px;
}
#contact_top .hour table {
	width: 100%;
	font-size: .9em;
}
#contact_top .hour table,
#contact_top .hour table th,
#contact_top .hour table td {
	border-collapse: collapse;
	border: 1px solid #c9595e;
	background: #FFF;
	line-height: 1;
}
#contact_top .hour table th {
	background: #c9595e;
	color: #FFF;
	padding: 8px;
	text-align: center;
}
#contact_top .hour table th.left {
	width: 180px;
}
#contact_top .hour table td {
	padding: 8px;
	text-align: center;
}
#contact_top .hour table td span {
	display: block;
}
#contact_top .contact_top_box {
	position: relative;
	padding: 30px 60px;
	border-radius: 6px;
}
#contact_top .contact_top_box img.map {
	position: absolute;
	right: 60px;
	top: 0;
	bottom: 0;
	margin: auto;
}
#contact_top .contact_way {
	width: 620px;
	margin-top: 15px;
	text-align: center;
}
#contact_top .contact_way .phone {
	display: inline-block;
	margin: 0 26px 0 0;
	padding: 0 0 0 42px;
	font-size: 1.6em;
	line-height: 1;
}
#contact_top .contact_way .phone:before {
	top: 50%;
	transform: translateY(-50%) translateX(0);
	left: 0;
	width: 34px;
	height: 34px;
}
#contact_top .contact_way a.mail {
	margin: 0;
	padding: 0;
	font-size: 1em;
	text-decoration: underline;
	line-height: 1;
}
#contact_top .contact_way a.mail:before {
	content: none;
}

/*ページ上部の黄色*/
.summary {
	margin-bottom: 30px;
}
.summary .summary_box {
	background: #F8F7EC;
	border-bottom: 3px solid #F7E202;
	border-top: 3px solid #F7E202;
	padding: 30px 45px;
	text-align: center;
}
.summary p {
	margin: 0;
}
.summary p.summary_txtop {
	margin: 0;
}
.summary p.summary_txbottom {
	font-size: 1.2em;
	margin: 0;
}

/*ページ内リンク*/
#jump {
	background: #fafafa;
	padding: 30px;
	border-radius: 12px;
}
#jump ul {
	display: flex;
	flex-wrap: nowrap;
	flex-direction: column;
}
#jump ul li {
	width: 100%;
	border-bottom: 1px solid #ededed;
	position: relative;
}
#jump ul li:first-child {
	border-top: 1px solid #ededed;
}
#jump ul li:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%) translateX(0);
	left: 20px;
	width: 0;
	height: 0;
	border: 8px solid transparent;
	border-left: 8px solid #bbb;
}
#jump ul li a {
	display: block;
	text-decoration: none;
	padding: 8px 15px 8px 40px;
}

/*ページ内リンクへ戻る*/
.tojump {
	text-align: right;
}
.tojump span.tojump_link {
	font-size: .9em;
}

@media screen and (max-width: 1024px) {
	#contact_top .contact_top_box {
		padding: 30px;
	}
	#contact_top .contact_top_box img.map {
		right: 0;
		width: 280px;
	}
}
@media screen and (max-width: 960px) {
	#contact_top .inner {
		padding: 0;
	}
	#contact_top .contact_top_box ul {
		width: 600px;
	}
	#contact_top .contact_top_box ul li {
		padding: 8px 10px;
	}
	#contact_top .contact_top_box img.map {
		width: 220px;
		right: 30px;
	}
}
@media screen and (max-width: 768px) {
	#contact_top .inner {
		padding: 0 30px;
	}
	#contact_top .contact_top_box {
		padding: 30px 0;
	}
	#contact_top .hour {
		width: 490px;
	}
	#contact_top .contact_top_box img.map {
		right: 0;
		width: 200px;
	}
	#contact_top .contact_way {
		width: 100%;
	}
}
@media screen and (max-width: 559px) {
	#contact_top .contact_top_box {
		text-align: center;
	}
	#contact_top .contact_top_box img.map {
		display: none;
	}
	#contact_top .contact_top_box ul,
	#contact_top .contact_way {
		width: 100%;
	}
	
	#contact_top .hour {
		width: 100%;
		margin: 0;
	}
}
@media screen and (max-width: 480px) {
	#contact_top .contact_top_box {
		padding: 20px 0;
	}
	#contact_top .contact_top_box ul li:first-child {
		display: none;
	}
	#contact_top p.contact_address span {
		display: block;
	}
}
@media screen and (max-width: 430px) {
	#contact_top .inner {
		padding: 0 20px;
	}
	#contact_top .contact_way .phone {
		margin: 0 13px 0 0;
	}
	#contact_top .hour table th.left {
		width: 160px;
	}
	.phone:before,
	.mail:before {
		top: 16px;
		width: 26px;
		height: 26px;
	}
	#jump {
		padding: 20px;
		margin-bottom: 20px;
	}
	.tojump {
		margin-top: 10px;
	}
}
@media screen and (max-width: 380px) {
	#contact_top .hour table th.left {
		width: 100px;
	}
	#contact_top .hour table td.left {
		text-align: center;
	}
	#contact_top .hour table td span {
		font-size: .8em;
		margin: 0 0 3px;
		display: block;
	}
	#contact_top .contact_way a.mail {
		display: block;
		margin-top: 8px;
	}
}
@media screen and (max-width: 320px) {
	.button_box {
		margin-top: 15px;
	}
	.phone:before,
	.mail:before {
		left: 30px;
		width: 22px;
		height: 22px;
	}
	.summary .summary_box {
		padding: 15px;
	}
}

/****************************************
 * 上部固定ヘッダー
*****************************************/

.fix_header {
	background: #FFF;
	color: #333;
	position: fixed;
	top: -100px;
	left: 0;
	text-align: center;
	width: 100%;
	margin: 0 auto;
	opacity:0;
	z-index: 1000;
	box-shadow: 0 0 6px rgb(0 0 0 / 20%);
}
.fix_header a {
	display: inline-block;
	line-height: 0;
}
.fix_header_contents {
	width: 1160px;
	margin: 0 auto;
	padding: 15px 30px;
}
.fix_header nav#fix_header {
	overflow: hidden;
}
.fix_header ul {
	list-style-type: none;
	margin: 15px 0;
	display: flex;
	justify-content: space-around;
	align-items: center;
}
.fix_header ul li {
	width: auto;
	line-height: 1;
	font-size: .9em;
}
.fix_header li a,
.fix_header li a:visited {
	display: block;
}
.fix_header li:last-child{
	margin-right:0;
}

@media screen and (max-width: 1024px) {
	.fix_header_contents {
		width: 100%;
	}
}
@media screen and (max-width: 568px) {
	.fix_header {
		display: none;
	}
}


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

header {
	border-top: 5px solid #96be55
}
header .header_inner {
	overflow: hidden;
	position: relative;
	max-width: 1260px;
	margin: 0 auto;
	padding: 0 30px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	align-content: space-around;
}
header #logo {
	position: absolute;
	top: 0;
}
header .header_inner a.hd_mail_btn {
	display: inline-block;
	position: absolute;
	right: 30px;
	top: 0;
}
header .header_inner .hd_contact {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
header .hd_contact p.hd_phone {
	margin: 0 15px 0 0;
	font-size: 2em;
	line-height: 30px;
	text-align: center;
	padding-left: 30px;
}
header .hd_contact p.hd_phone span.number {
	vertical-align: middle;
	padding-left: 55px;
}
header .hd_information {
	padding: 20px 0;
	line-height: 1.6;
	font-size: .9em;
}
header .hd_information p.hours {
	display: inline-block;
	padding-right: 15px;
	color: #c95a5e;
}
header .hd_information p.hours span {
	background: #c95a5e;
	color: #FFF;
	padding: 2px 6px;
	margin-right: 10px;
	border-radius: 4px;
	font-size: .8em;
}
header .hd_information p.access {
	display: block;
	color: #c95a5e;
}

@media screen and (max-width: 1024px) {
	header #logo {
		width: 260px;
	}
}
@media screen and (max-width: 960px) {
	header .header_inner {
		display: block;
	}
	header .header_inner .hd_logo {
		width: 100%;
		margin-top: 30px;
	}
	header .header_inner .hd_contact {
		width: 100%;
		margin: 0;
		display: flex;
		justify-content: space-around;
		align-items: center;
	}
	header .header_inner .hd_contact p.hd_phone {
		font-size: 2.2em;
	}
	header .header_inner .hd_contact .hd_information {
		font-size: 1.1em;
	}
}
@media screen and (max-width: 768px) {
	header .header_inner a.hd_mail_btn {
		width: 140px;
	}
	header .header_inner .hd_contact p.hd_phone {
		font-size: 1.8em;
	}
	header .hd_contact p.hd_phone span.jp {
		font-size: .6em;
	}
	header .header_inner .hd_contact .hd_information {
		font-size: 1em;
	}
}
@media screen and (max-width: 559px) {
	header {
		height: auto;
	}
	header .header_inner {
		height: 75px;
	}
	#logo {
		width: 200px;
	}
	header #description {
		margin: 0;
	}
	header .header_inner a.hd_mail_btn {
		display: none;
	}
	header .header_inner .hd_contact {
		display: none;
	}
}
@media screen and (max-width: 480px) {
	header #header .logo-area img {
		width: 50%;
	}
}
@media screen and (max-width: 430px) {
	header .header_inner {
		padding: 0 20px;
	}
	header .header_inner .hd_logo {
		margin-top: 20px;
	}
}
@media screen and (max-width: 380px) {
	header .header_inner .hd_contact .hd_information {
		font-size: .9em;
	}
}
@media screen and (max-width: 320px) {
	header .hd_information p.access {
		font-size: .9em;
	}
}

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

.inner {
	width: 1160px;
	margin: 0 auto;
	padding: 0 30px;
}
article {
	background: #fafafa;
}
article.front-page {
	background: #FFF;
}
section {
	padding: 90px 0;
}
section.contents {
	width: 1160px;
	margin: 0 auto;
	padding: 30px 30px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: nowrap;
}
section.contents_wide {
	width: 1160px;
	margin: 0 auto;
}
.main_contents {
	order: 2;
	width: 780px;
}
.content_title {
	padding: 30px 45px 45px 45px;
	background: #95bf54;
	color: #FFF;
	font-size: 1.6em;
	border-radius: 12px 12px 0 0;
	position: relative;
}
.content_title span {
	display: block;
	font-size: .7em;
}
.content_title:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 0;
	bottom: 30px;
	background: #8BB345;
	width: 100%;
	height: 3px;
}
.content {
	background: #FFF;
	padding: 45px;
	border-radius: 0 0 12px 12px;
}
aside {
	order: 1;
	width: 290px;
}

.topimage {
	text-align: center;
	padding: 0 !important;
}
.topimage_text {
	padding: 8px 0 !important;
	background: #96bd55;
	color: #FFF;
	text-align: center;
}
.page_topimage {
	padding: 30px 0;
	background: #96be55;
}
.page_head {
	text-align: center;
}

@media screen and (max-width: 1024px) {
	.inner {
		width: 100%;
	}
	section.contents {
		width: 1024px;
	}
	.main_contents {
		width: 680px;
	}
	aside {
		width: 250px;
	}
}
@media screen and (max-width: 960px) {
	section.contents {
		width: 940px;
		padding: 30px;
	}
	.main_contents {
		width: 620px;
	}
	aside {
		width: 240px;
	}
}
@media screen and (max-width: 768px) {
	.inner {
		width: 100%;
	}
	section {
		padding: 60px 0;
	}
	section.contents {
		width: 100%;
	}
	.main_contents {
		width: 100%;
	}
	aside {
		display: none;
	}
	
	.content {
		padding: 30px;
	}
}
@media screen and (max-width: 560px) {
	section {
		padding: 45px 0;
	}
}
@media screen and (max-width: 480px) {
	.content_title {
		border-radius: 0;
		padding: 20px 30px 30px 30px;
	}
	.content_title:before {
		bottom: 20px;
	}
	section.contents {
		padding: 0;
	}
	.topimage_text {
		padding: 8px 15px !important;
	}
}
@media screen and (max-width: 430px) {
	.inner {
		padding: 0 20px;
	}
	.content_title {
		font-size: 1.3em;
		padding: 20px 20px 30px 20px;
	}
	.content_title span {
		margin-bottom: -5px;
	}
	.content {
		padding: 20px;
	}
}
@media screen and (max-width: 320px) {
	.content {
		padding: 15px;
	}
}

/****************************************
 * ナビゲーション
*****************************************/

.g_navi {
	padding: 0 !important;
	border-top: 1px solid #ededed;
}
#general {
	width: 100%;
	height: 62px;
}
#general a {
	display: block;
	font-weight: 700;
	margin: 0 auto;
}
#general a:hover {
	background: #E6EFD6;
}
#general ul {
	display: flex;
	text-align: center;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	text-align: center;
}
#general ul li {
	width: 100%;
	display: inline-block;
	line-height: 62px;
	position: relative;
}
#general ul li::after {
	content: "";
	display: block;
	position: absolute;
	top: 19px;
	left: 0;
	width: 1px;
	height: 26px;
	background: #96be55;
	border-radius: 5px;
}
#general ul li:first-child::before {
	content: "";
	display: block;
	position: absolute;
	top: 19px;
	left: 0;
	width: 1px;
	height: 26px;
	background: #96be55;
	border-radius: 5px;
}
#general ul li:last-child::before {
	content: "";
	display: block;
	position: absolute;
	top: 19px;
	right: 0;
	width: 1px;
	height: 26px;
	background: #96be55;
	border-radius: 5px;
}
#general ul li.law_menu,
#general ul li.law_menu a {
	width: 280px;
	color: #96be55;
}
#general ul li:first-child:after {
	content: none;
}
#general ul li i {
	display: block;
	margin-bottom: 5px;
}
#general ul.sub-menu,
nav ul.children {
	position: absolute;
	left: -1px;
	display: none;
	margin-left: 0;
	width: auto;
	width: 300px;
	border: 1px solid #ddd;
	background: #eee;
}
nav#general .sub-menu li,
nav .children li {
	position: relative;
	border: none;
}
nav#general .sub-menu li a,
nav .children li a {
	background: #6B574C;
}
nav#general ul.sub-menu ul,
nav ul.children ul {
	top: -1px;
	left: 150px;
}
nav#general .menu li:hover > ul{
	display: block;
}

@media screen and (max-width: 960px) {
	nav#general {
		font-size: .9em;
	}
	#general ul li.law_menu,
	#general ul li.law_menu a {
		width: 240px;
	}
}
@media screen and (max-width: 768px) {
	nav#general {
		font-size: .8em;
	}
	#general ul li.top_menu,
	#general ul li.top_menu a {
		width: 60px;
	}
	#general ul li.law_menu,
	#general ul li.law_menu a{
		width: 195px;
	}
	#general ul li::after {
		
	}
}
@media screen and (max-width: 559px) {
	nav#general {
		display: none;
	}
}

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

#slidecross-nav {
	display: none;
}
#cat-nav {
	position: fixed;
	right: 20px;
	top: 20px;
	z-index: 999;
}
#cat-nav nav#cat-nav-body {
	position: relative;
	background: #96be55;
	padding: 10px;
}
#cat-nav nav#cat-nav-body input.cat-nav-unshown {
	display: none;
}
#cat-nav nav#cat-nav-body label#cat-nav-open {
	display: inline-block;
	width: 25px;
	height: 20px;
	vertical-align: middle;
}
#cat-nav nav#cat-nav-body label#cat-nav-open span,
#cat-nav nav#cat-nav-body label#cat-nav-open span:before,
#cat-nav nav#cat-nav-body label#cat-nav-open span:after {
	content: '';
	display: block;
	position: absolute;
	height: 3px;
	width: 25px;
	border-radius: 3px;
	background: #FFF;
	cursor: pointer;
}
#cat-nav nav#cat-nav-body label#cat-nav-open span:before {
	bottom: -8px;
}
#cat-nav nav#cat-nav-body label#cat-nav-open span:after {
	bottom: -16px;
}
#cat-nav nav#cat-nav-body label#cat-nav-close {
	display: none;
	position: fixed;
	z-index: 99;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: black;
	opacity: 0;
	transition: .3s ease-in-out;
}
	
/*メニュー*/
#cat-nav nav#cat-nav-body .cat-nav-content {
	overflow: auto;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
	width: 80%;
	max-width: 330px;
	height: 100%;
	background: #E5EFD6;
	transition: .3s ease-in-out;
	transform: translateX(-105%);
}
#cat-nav nav#cat-nav-body .cat-nav-content img.logo-fff {
	display: block;
	margin: 30px auto;
}
#cat-nav a {
	display: block;
	color: #000000;
	font-size: 1.1em;
}
#cat-nav ul#menu-sp-nav {
	border-bottom: 1px solid #CFE1B1;
}
#cat-nav ul#menu-sp-nav li {
	padding: 12px 30px;
	border-top: 1px solid #CFE1B1;
	border-bottom: 1px solid #EDF5F6;
}
#cat-nav ul#menu-sp-nav li:first-child {
	border-top: none;
}
#cat-nav ul#menu-sp-nav li ul.sub-menu {
	margin: 0 0 0 20px !important;
}
#cat-nav ul#menu-sp-nav li ul.sub-menu li {
	border: none !important;
	padding: 3px 0;
}
#cat-nav ul#menu-sp-nav li ul.sub-menu li a {
	padding: 
}
#cat-nav #cat-nav-input:checked ~ #cat-nav-close {
	display: block;
	opacity: .6;
}
#cat-nav #cat-nav-input:checked ~ .cat-nav-content {
	transform: translateX(0%); /*右へスライド*/
	box-shadow: 6px 0 25px rgba(0,0,0,.15);
}
#cat-nav .pdf_dl {
	padding: 30px;
	font-size: .8em;
}
#cat-nav .pdf_dl a {
	display: block;
	margin: 0 auto;
}

@media screen and (max-width: 1024px) {
	#slidecross-nav {
		display: block;
	}
}
@media screen and (max-width: 430px) {
	#cat-nav nav#cat-nav-body .cat-nav-content img.logo-fff {
		width: 100px;
	}
}
@media screen and (max-width: 380px) {
	#cat-nav a {
		font-size: 1em;
	}
}
@media screen and (max-width: 320px) {
	#cat-nav a {
		font-size: 1em;
	}
	#cat-nav nav#cat-nav-body .cat-nav-content img.logo-fff {
		width: 80px;
	}
	#cat-nav ul#menu-sp-nav li {
		padding: 12px 25px;
	}
}

/****************************************
 * ページナビゲーション
*****************************************/

nav.pagination {
	margin-top: 30px;
	text-align: right;
}
nav.pagination .page-numbers {
	display: inline-block;
	margin: 0 8px;
	font-weight: bold;
	text-decoration: none;
	color: #95bf54;
}
nav.pagination .page-numbers.current {
	color: #000;
}

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

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

.breadcrumbs_area {
	padding: 015px 0;
	border-bottom: 1px solid #ededed;;
}
.breadcrumbs {
	font-size: .8em;
}
.breadcrumbs a {
	text-decoration: underline;
}

@media screen and (max-width: 559px) {
	.breadcrumbs {
		overflow-x: auto;
		white-space: nowrap;
	}
}

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

.p-contact {
	padding: 60px 0 !important;
	margin-bottom: -60px;
}
.pr_banner {
	padding: 0;
}
.pr_banner .pr_banner_box {
	margin: 0;
	position: relative;
	z-index: 1;
}
.pr_banner .pr_banner_box ul {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: nowrap;
}

.pr_info {
	padding: 120px 0 90px;
	background: #E6EFD6;
	margin-top: -60px;
}
.pr_info .pr_info_box {
	width: 860px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
.pr_info .pr_info_box ul {
	text-align: center;
}
.pr_info .pr_info_box ul li.office_name  {
	margin-bottom: 10px;
}
.pr_info .pr_info_box ul li.office_name span {
	display: block;
}
.pr_info .pr_info_box ul li.office_phone  {
	padding: 15px 30px;
	margin-top: 10px;
	border-top: 1px solid #96be55;
	border-bottom: 1px solid #96be55;
	line-height: 1;
	text-align: center;
	font-size: 2.2em;
	text-align: left;
}
.pr_info .pr_info_box ul li.office_phone a {
	color: #96be55;
}
.pr_info .pr_info_box ul li.office_phone span.number {
	padding-left: 45px;
}
.pr_info .pr_info_box ul li.office_phone span.number:before {
	left: 0;
	top: 50%;
	transform: translateY(-50%) translateX(0);
	background: url(images/common/icon140_phone-96bd55.png) no-repeat;
	background-size: 100%;
	width: 33px;
	height: 33px;
}
.pr_info .pr_info_box ul li span.donichi {
	background: #96be55;
	color: #FFF;
	border-radius: 4px;
	padding: 1px 8px;
	display: inline-block;
	font-size: .8em;
	margin-left: 10px;
}
.pr_info .pr_info_box p.map_text {
	font-size: .8em;
	text-align: center;
}

@media screen and (max-width: 960px) {
	.pr_banner .pr_banner_box ul li {
		width: calc(100%/3 - 15px);
	}
	.pr_info .pr_info_box {
		width: 100%;
	}
	.pr_info .pr_info_box ul,
	.pr_info .pr_info_box .pr_info_map {
		width: 340px;
	}
	.pr_info .pr_info_box ul li.office_phone {
		padding: 15px 20px;
	}
}
@media screen and (max-width: 559px) {
	.p-contact {
		padding: 45px 0 !important;
	}
	.pr_banner .pr_banner_box ul li {
		width: calc(100%/3 - 10px);
	}
	.pr_info {
		padding: 60px 0 60px;
		margin-top: -30px;
	}
	.pr_info .pr_info_box {
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	.pr_info .pr_info_box ul {
		width: 380px;
		margin: auto;
	}
	.pr_info .pr_info_box ul li.office_phone {
		text-align: center;
	}
	.pr_info .pr_info_box .pr_info_map {
		width: 100%;
		margin: 20px auto 0;
		text-align: center;
	}
}
@media screen and (max-width: 480px) {
	.p-contact {
		padding: 30px 0 !important
	}
	.pr_banner .pr_banner_box ul {
		margin-top: -15px;
		display: flex;
		justify-content: space-around;
		align-items: center;
		flex-direction: row;
		flex-wrap: wrap;
		align-content: flex-start;
	}
	.pr_banner .pr_banner_box ul li {
		width: calc(100%/2 - 15px);
		margin-top: 15px;
	}
	.pr_info {
		padding: 45px 0 45px;
		margin-top: 30px;
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 430px) {
	
}
@media screen and (max-width: 380px) {
	.pr_info .pr_info_box ul {
		width: 100%;
	}
}
@media screen and (max-width: 320px) {
	.pr_info .pr_info_box ul li.office_phone {
		padding: 15px 0;
	}
}


/****************************************
 * p-articles.php
*****************************************/

.p-articles {
	overflow: hidden;
	background: #FFF;
	margin-top: 45px;
	border-radius: 6px;
}

/* 共通表示*/

.caution {
	font-size: .7em;
	padding: 30px 0 0;
}
.front-page .caution {
	margin: 0 0 30px;
}

ul#articles_list {
	padding: 0 !important;
	margin: 0 !important;
	border-radius: 6px;
	list-style: none !important;
}
ul#articles_list a {
	display: block;
	text-decoration: none;
	color: #000;
	padding: 30px;
}
ul#articles_list a:hover {
	background: #F1F6E8;
}
ul#articles_list li {
	border-bottom: 1px solid #96bd55;
}
ul#articles_list li:first-child {
	border-top: 1px solid #96bd55;
}
ul#articles_list li dl {
	display: flex;
	flex-wrap: nowrap;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
}
ul#articles_list li dt {
	width: auto;
}
ul#articles_list li dt span.new {
	display: block;
	background: #c9595e;
	color: #FFF;
	font-size: .8em;
	text-align: center;
}
ul#articles_list li dd {
	width: 860px;
	position: relative;
}
ul#articles_list li dt img {
	border-radius: 6px;
}
ul#articles_list li dd span.title {
	display: block;
}
ul#articles_list li dd .excerpt {
	
}
ul#articles_list li dd span.date {
	position: absolute;
	right: 0;
	bottom: 0;
	color: #999;
	font-size: .9em;
}
ul#articles_list li dd span.category {
	display: inline-block;
	font-size: .9em;
	font-weight: 900;
}

/*カテゴリー*/
span.cat-souzoku {
	color: #72b1bf;
}
span.cat-yuigon {
	color: #7D71BC;
}
span.cat-souzokuhouki {
	color: #82BC71;
}

@media screen and (max-width: 960px) {
	ul#articles_list li dt {
		width: 140px;
	}
	ul#articles_list li dd {
		width: 640px;
	}
}
@media screen and (max-width: 768px) {
	ul#articles_list li dt {
		width: 120px;
	}
	ul#articles_list li dd {
		width: 490px;
	}
}
@media screen and (max-width: 559px) {
	.caution {
		padding: 30px 0 0;
	}
	ul#articles_list a {
		padding: 20px;
	}
	ul#articles_list li dl {
		display: block;
	}
	ul#articles_list li dt {
		display: block;
		width: 100%;
		margin-bottom: 8px;
	}
	ul#articles_list li dd {
		display: block;
		width: 100%;
	}
	ul#articles_list li dt span.new {
		display: inline-block;
		width: 60px;
		margin-right: 10px;
		font-size: .8em;
	}
	ul#articles_list li dt span.date {
		font-size: .8em;
	}
	ul#articles_list li dd .excerpt {
		font-size: .8em;
	}
}
@media screen and (max-width: 480px) {
	.p-articles {
		margin-top: 30px;
	}
	.caution {
		padding: 30px 30px 0;
	}
}
@media screen and (max-width: 430px) {
	ul#articles_list a {
		padding: 8px 15px;
	}
	ul#articles_list li dd .excerpt {
		display: none;
	}
}
@media screen and (max-width: 430px) {
	
}
@media screen and (max-width: 380px) {
	.caution {
		padding: 20px 20px 0;
	}
	
	ul#articles_list li dt {
		width: 80px;
	}
	ul#articles_list li dd {
		width: 235px;
	}
	.p-articles ul#articles_list li dd {
		width: 200px;
	}
}
@media screen and (max-width: 320px) {
	.p-articles ul#articles_list li {
		padding: 15px;
	}
	ul#articles_list li dt {
		width: 70px;
	}
	ul#articles_list li dd {
		width: 195px;
	}
	.p-articles ul#articles_list li dd {
		width: 160px;
	}
	ul#articles_list li dd .excerpt {
		margin: 10px 0 0;
	}
}


/****************************************
 * サイドバー
*****************************************/

aside a {
	display: block;
}
/*見出し*/
aside .aside_title {
	text-align: left !important;
	font-size: 1.3em;
	color: #FFF !important;
	background: #95bf54;
	margin: 0 !important;
	padding: 20px 15px !important;
	border-bottom: 0 !important;
	border-radius: 12px 12px 0 0;
}
aside #categories-2 .aside_title,
aside #aside_article .aside_title {
	font-size: 1.1em;
}
aside #aside_banner .aside_title:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 25px;
	top: 12px;
	background: url(images/common/icon100_search.png) no-repeat;
	background-size: 100%;
	width: 26px;
	height: 26px;
}
aside .widgettitle {
	text-align: left;
	color: #FFF !important;
	background: #95bf54 !important;
	border-radius: 12px 12px 0 0;
	padding: 15px;
	margin: 0 !important;
	font-size: 1.1em !important;
}
aside .post_title {
	font-size: .9em;
	font-weight: normal;
	border: none !important;
	padding: 0 !important;
	margin: 6px 0 0 !important;
}

aside .aside_box,
aside .widget {
	margin-top: 30px;
}
aside .information {
	margin-top: 10px;
}
aside .information a.phone {
	font-size: 1.8em;
	padding-left: 60px;
	border-top: 1px solid #96bd55;
	border-bottom: 1px solid #96bd55;
}
aside .information a.phone:before {
	left: 15px;
}
aside .information a.mail {
	text-align: right;
	font-size: .8em;
}
aside .information a.mail:before {
	content: none;
}
aside .information p.time {
	margin: 0;
}
aside .information p.time span {
	display: inline-block;
	background: #95bf54;
	color: #FFF;
	margin-right: 12px;
	padding: 0 15px;
	font-size: .8em;
	border-radius: 30px;
}

/* PDF */
aside #print {
	background: #c9595e;
	color: #FFF;
	padding: 20px;
	border-radius: 12px;
}
aside #print p {
	font-size: .8em;
}
aside #print a.pdf_btn {
	
}
aside #print a.pdf_btn:hover {
	
}

/*カテゴリとリンク */
#categories-2 ul,
#aside_link ul {
	border: 1px solid #95bf54;
}
#categories-2 ul li,
#aside_link ul li {
	border-bottom: 1px solid #95bf54;
	position: relative;
}
#aside_link ul li {
	font-size: .9em;
}
#categories-2 ul li:last-child,
#aside_link ul li:last-child {
	border-bottom: none;
}
#categories-2 ul li:before,
#aside_link ul li:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%) translateX(0);
	left: 20px;
	width: 0;
	height: 0;
	border: 8px solid transparent;
	border-left: 8px solid #95bf54;
}
#categories-2 ul li a,
#aside_link ul li a {
	padding: 15px 15px 15px 40px;
	font-size: .9em;
}
#categories-2 ul li a:hover,
#aside_link ul li a:hover {
	background: #F1F6E8;
}

/*記事 */
aside ul#articles_list {
	border: 1px solid #95bf54;
	border-radius: 0;
}
aside ul#articles_list a {
	padding: 15px;
}
aside ul#articles_list li {
	padding: 0;
	border-top: 1px solid #96bd55;
	border-bottom: none !important;
}
aside ul#articles_list li:first-child {
	border-top: none;
}
aside ul#articles_list li dl {
	display: block;
}
aside ul#articles_list li dt {
	width: 100%;
	line-height: 1.3;
}
aside ul#articles_list li dt span.date {
	display: inline-block;
	font-size: .8em;
}
aside ul#articles_list li dt span.new {
	display: inline-block;
	font-size: .6em;
	margin-left: 6px;
	padding: 2px 6px;
	vertical-align: middle;
}
aside ul#articles_list li dd {
	width: 100%;
}
aside ul#articles_list li dd span.new {
	font-size: .7em;
	top: 15px;
	left: -45px;
	width: 40px;
	height: 40px;
	line-height: 40px;
}

/* その他 */
aside #sidebar-other {
	border-radius: 5px;
	padding: 10px;
	font-size: .85em;
	margin-bottom: 10px;
}
aside #sidebar-other .images {
	text-align: center;
}

@media screen and (max-width: 1024px) {
	aside ul#articles_list li dt {
		width: 80px;
	}
	aside ul#articles_list li dd {
		width: 155px;
	}
	aside ul#articles_list li dd span.date {
		font-size: .7em;
	}
}
@media screen and (max-width: 960px) {
	aside ul#articles_list li dt {
		width: 80px;
	}
	aside ul#articles_list li dd {
		width: 155px;
	}
}

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

/*共通*/
.front-page .summary {
	width: 900px;
	margin: 30px auto 30px;
}

@media screen and (max-width: 768px) {
	.front-page .summary {
		width: 100%;
	}
}

/*バナー*/
.banner1160 {
	width: 100%;
	padding: 60px 0 0;
	text-align: center;
}
.banner1160_box a {
	display: block;
}
.banner1160_box ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
	align-items: center;
}
.banner1160_box ul li {
	overflow: hidden;
	width: calc(100%/2 - 10px);
	border-radius: 6px;
}

/*問題*/
.problem {
	background: #f6f4ef;
	position: relative;
}
.problem:after {
	content: "";
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	margin: auto;
	border-right: 49vw solid transparent;
	border-left: 49vw solid transparent;
	border-top: 100px solid #f6f4ef;
}

.problem .problem_box {
	
}
.problem .problem_box ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.problem .problem_box ul li {
	width: calc(100%/2 - 15px);
	padding: 18px 0 20px 80px;
	font-weight: bold;
	font-size: 1.1em;
	color: #333;
	border-bottom: 2px dashed #FFF;
	position: relative;
}
.problem .problem_box ul li:before {
	content: '';
	position: absolute;
	left: 30px;
	top: 50%;
	transform: translateY(-50%) translateX(0);
	background: url(images/common/icon100_check.png) no-repeat;
	background-size: 100%;
	background-size: contain;
	width: 30px;
	height: 30px;
}

@media screen and (max-width: 960px) {
	.problem .problem_box ul li {
		padding: 18px 0 20px 50px;
		line-height: 1.5;
	}
	.problem .problem_box ul li:before {
		left: 10px;
	}
}
@media screen and (max-width: 768px) {
	.problem .problem_box ul li {
		font-size: 1em;
		padding: 18px 0 20px 50px;
		line-height: 1.5;
	}
	.problem .problem_box ul li:before {
		left: 10px;
		width: 24px;
		height: 24px;
	}
}
@media screen and (max-width: 560px) {
	.problem .problem_box ul {
		display: flex;
		flex-wrap: nowrap;
		flex-direction: column;
	}
	.problem .problem_box ul li {
		width: 100%;
	}
	.problem .problem_box ul li:before {
		left: 10px;
		width: 24px;
		height: 24px;
	}
}
@media screen and (max-width: 430px) {
	.problem:after {
		border-top: 40px solid #f6f4ef;
	}
	.problem .problem_box ul li {
		padding: 15px 0 15px 40px;
	}
}

/*プラン*/
.plan {
	padding: 180px 0 90px;
	background: url(images/front-page/plan_bg.png) no-repeat;
	background-position: left bottom;
}
.plan .plan_box {
	width: 680px;
	margin-left: auto;
	display: flex;
	justify-content: flex-end;
}
.plan .plan_box ul {
	margin-top: -20px;
	background: #ffeae2;
	padding: 20px;
	border-radius: 12px;
}
.plan .plan_box ul li {
	background: #FFF;
	padding: 30px 45px;
	margin-top: 20px;
	border-radius: 12px;
}
.plan .plan_box .plan_title {
	text-align: left;
	margin-bottom: 22px;
}
.plan .plan_box .plan_title span {
	
}
.plan .plan_box .button_box {
	text-align: right;
	margin-top: -12px;
}

@media screen and (max-width: 960px) {
	.plan {
		background-position: left -180px bottom;
	}
	.plan .plan_box {
		width: 530px;
	}
	.plan .plan_box ul li {
		padding: 30px;
	}
	
}
@media screen and (max-width: 768px) {
	.plan {
		background-position: left -220px bottom;
	}
	.plan .plan_box {
		width: 460px;
	}
	.plan .plan_box ul li {
		padding: 30px;
	}
	
}
@media screen and (max-width: 560px) {
	.plan {
		padding: 150px 0 420px;
		background: url(images/front-page/plan_bg_sp.png) no-repeat;
		background-size: contain;
		background-position: left bottom;
	}
	.plan .plan_box {
		width: 100%;
		margin: 0;
	}
	.plan .plan_box ul li {
		padding: 30px;
	}
}
@media screen and (max-width: 480px) {
	.plan {
		padding: 150px 0 370px;
	}
}
@media screen and (max-width: 430px) {
	.plan {
		padding: 80px 0 320px;
	}
	.plan .plan_box ul {
		margin-top: 0;
		padding: 10px;
	}
	.plan .plan_box ul li {
		padding: 20px;
	}
}


/*特徴*/
.office {
	padding: 90px 0 0;
	background: #f6f4ef;
}
.office .office_box {
	
}

.office .feature {
}
.office .feature ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	align-items: stretch;
	margin-top: -60px;
	counter-reset: number;
}
.office .feature ul li {
	width: calc(100%/2 - 45px);
	margin-top: 60px;
}
.office .feature_box {
	border-radius: 6px;
	height: 100%;
}
.office .feature_box .feature_title {
	position: relative;
	margin: 15px;
	font-size: 1.4em;
	color: #FF8C63;
	line-height: 1.3;
}
.office .feature_inbox {
	text-align: center;
}
.office .feature .feature_image {
	position: relative;
}
.office .feature .feature_image::before {
	display: block;
	position: absolute;
	top: -20px;
	left: 60px;
	margin: auto;
	counter-increment: number;
	content: counter(number, decimal-leading-zero);
	background: #FF8C63;
	color: #FFF;
	border-radius: 50%;
	font-family: 'oxy_bd', sans-serif;
	font-size: 2em;
	text-align: center;
	width: 80px;
	height: 80px;
	line-height: 80px;
}
.office .feature .feature_image img {
	border-radius: 12px;
}
.office .owner {
	margin-top: 60px;
	position: relative;
	z-index: 1;
}
.office .owner:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 0;
	bottom: -90px;
	background: #FF8C63;
	width: 100%;
	height: 400px;
	z-index: -1;
}
.office .owner_box {
	background: #FFC3AF url(images/page/owner_photo.jpg) no-repeat;
	background-size: contain;
	background-position: left top;
	border-radius: 12px;
	padding: 60px;
	display: flex;
}
.office .owner_box .office_about_text {
	padding-left: 360px;
	font-family: serif;
}

@media screen and (max-width: 960px) {
	.office .feature ul li {
		width: calc(100%/2 - 30px);
	}
	.office .owner_box {
		background-position: left -60px top;
	}
}
@media screen and (max-width: 768px) {
	.office .feature ul li {
		width: calc(100%/2 - 20px);
	}
	.office .feature .feature_image::before {
		left: 30px;
		width: 60px;
		height: 60px;
		line-height: 60px;
	}
	.office .feature_box .feature_title {
		margin: 15px 0;
	}
	.office .owner:before {
		bottom: -60px;
	}
	.office .owner_box {
		font-size: .9em;
		padding: 45px;
		background-position: left -60px top;
	}
	.office .owner_box .office_about_text {
		padding-left: 280px;
	}
}
@media screen and (max-width: 560px) {
	.office {
		padding: 45px 0 0;
	}
	.office .feature ul li {
		width: calc(100%/2 - 12px);
	}
	.office .feature .feature_image::before {
		left: 20px;
		width: 50px;
		height: 50px;
		line-height: 50px;
		font-size: 1.3em;
	}
	.office .feature_box .feature_title {
		font-size: 1.3em;
	}
	.office .owner:before {
		bottom: -45px;
	}
	.office .owner_box {
		padding: 45px 30px;
		background: #FFC3AF url(images/page/owner_photo_sp.png) no-repeat;
		background-size: contain;
		background-position: left top;
	}
	.office .owner_box .office_about_text {
		padding: 265px 0 0;
	}
}
@media screen and (max-width: 480px) {
	.office {
		padding: 45px 0 0;
	}
	.office .feature ul {
		margin-top: -45px;
	}
	.office .feature ul li {
		width: 100%;
		margin-top: 45px;
	}
	.office .owner_box .office_about_text {
		padding: 205px 0 0;
	}
}
@media screen and (max-width: 430px) {
	.office .feature ul {
		margin-top: -30px;
	}
	.office .owner {
		margin-top: 45px;
	}
	.office .owner_box {
		padding: 30px 20px;
	}
	.office .owner_box .office_about_text {
		padding: 210px 0 0;
	}
}

/*お約束*/
.promise {
	padding: 90px 0;
	margin: 90px auto 0;
	background: url(images/front-page/promise_bg.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}
.promise .promise_title {
	margin-top: -75px;
	margin-bottom: 45px;
}
.promise .promise_box {
	background: #FFF;
	padding: 60px;
	border-radius: 12px;
}
.promise ol {
	margin: 0;
	padding: 0;
	counter-reset:number;
	list-style-type: none!important;
	font-size: 1.3em;
}
.promise ol li {
	position: relative;
	padding: 8px 15px 8px 45px;
	border-bottom: 1px dashed #ffc3ae;
}
.promise ol li:first-child {
	border-top: 1px dashed #ffc3ae;
}
.promise ol li:before {
	counter-increment: number;
	content: counter(number);
	display:inline-block;
	position: absolute;
	top: 50%;
	left: 15px;
	transform: translateY(-50%);
	font-family: 'oxy_bd', sans-serif;
}

@media screen and (max-width: 768px) {
	.promise {
		padding: 60px 0;
		margin: 60px auto 0;
	}
	.promise .promise_title {
		margin-top: -45px;
	}
}
@media screen and (max-width: 560px) {
	.promise {
		padding: 45px 0;
		margin: 45px auto 0;
	}
	.promise .promise_title {
		margin-top: -75px;
	}
	.promise .promise_box {
		padding: 45px 30px;
	}
	.promise ol {
		font-size: 1.1em;
	}
}
@media screen and (max-width: 480px) {
	.promise .promise_title {
		margin-top: -70px;
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 430px) {
	.promise .promise_title {
		margin-top: -70px;
		margin-bottom: 20px;
	}
	.promise .promise_box {
		padding: 45px 20px 30px;
	}
	.promise ol {
		font-size: 1em;
	}
	.promise ol li {
		padding: 8px 12px 8px 36px;
	}
}

/*相続のスケジュール*/
.schedule {
	background: #F1F2F3 url(images/common/dots_bg.png) repeat;
}
.schedule img.schedule_img {
	border: 18px solid #FFF;
	border-radius: 6px;
}

/*よくある質問*/
.front-page .faq_box {
	margin-top: 45px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: flex-start;
}
.front-page .faq_box .faq_item {
	width: calc(100%/2 - 60px);
}
.front-page .faq_box .faq_item.Afaq,
.front-page .faq_box .faq_item.Bfaq {
	margin-top: -30px;
}

/*相続ガイド*/
.articles {
	background: #FFF;
}
.articles .articles_box {
}

/*お知らせ*/
.notice {
	background: #E5EFD6 url(images/common/dots_bg.png) repeat;
	margin-bottom: -140px;
	padding: 90px 0 140px;
}
.notice ul.notice_list {
	overflow-y: scroll;
	max-height: 180px;
	padding-right: 30px;
	margin-top: 60px;
}

/*スクロールバー*/
.notice ul.notice_list::-webkit-scrollbar {
	width: 16px;
}
.notice ul.notice_list::-webkit-scrollbar-track {
	background: #fafafa;
	border-radius: 30px;
}
.notice ul.notice_list::-webkit-scrollbar-thumb {
	background: #96bd55;
	border-radius: 30px;
}

@media screen and (max-width: 559px) {
	.notice {
		padding: 60px 0 120px;
	}
	.notice ul.notice_list {
		margin-top: 60px;
	}
}
@media screen and (max-width: 480px) {
	.notice {
		padding: 45px 0 120px;
	}
	.notice ul.notice_list {
		margin-top: 45px;
		padding-right: 20px;
	}
}
@media screen and (max-width: 430px) {
	.notice {
		padding: 45px 0;
		margin-bottom: 0;
	}
}
@media screen and (max-width: 380px) {
	
}
@media screen and (max-width: 320px) {
	
}

/****************************************
 * 固定ページ・投稿ページ共通
*****************************************/

/* 画像 */
figure {
	display: block;
	margin: 2em;
}
@media screen and (max-width: 768px) {
	figure {
		display: block;
		margin: 1em;
	}
}
@media screen and (max-width: 480px) {
	figure {
		display: block;
		margin: 1em;
	}
}

/* 相続ガイド */
#page ul#articles_list li {
	border-bottom: 2px solid #FFF;
}

/* 一覧へ戻る */
.tolist {
	text-align: center;
	margin:30px 0;
}
.tolist a {
	background: #E8DBD2;
	color: #6B5141;
	padding: 10px 30px;
	border: none;
	border-radius: 3px;
}

/*おすすめ記事へのリンク*/
.recommend-articles {
	position: relative;
	border: 3px solid #ededed;
	padding: 30px 30px 20px 30px;
	margin-bottom: 30px;
	font-size: .9em !important;
}
.recommend-articles p.title {
	position: absolute;
	top: -18px;
	left: 22px;
	margin: 0;
	background: #ededed;
	border-radius: 30px;
    padding: 3px 10px;
}
.recommend-articles dl {
	display: table !important;
	border: none !important;
	font-size: 1em !important;
}
.recommend-articles dl dt {
	display: table-cell !important;
    width: 22% !important;
    background: none !important;
	vertical-align: top !important;
	padding: 0 !important;
}
.recommend-articles dl dt:after {
	content: "\f0c1";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	color: #ededed;
	margin-left: 5px;
}
.recommend-articles dl dd {
	display: table-cell !important;
	color: #333 !important;
	vertical-align: top !important;
	padding: 0 !important;
}
@media screen and (max-width: 480px) {
	.recommend-articles dl,
	.recommend-articles dl dt,
	.recommend-articles dl dd {
		display: block !important;
		width: 100% !important;
		margin: 0 !important;
	}
}


/****************************************
 * 取扱業務
*****************************************/

#service .service_box {
	margin-top: 30px;
}
#service .service_inbox {
	margin-top: 30px;
}

#service dl.price_dl {
	display: table;
	margin: 30px 0 0;
	padding: 12px 0;
	border-radius: 12px;
	font-size: 1.3em;
	font-weight: 700;
	width: 100%;
	background: #ffeae2;
	position: relative;
}
#service dl.price_dl:before {
	content: "";
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 3px;
	border-radius: 5px;
	display: inline-block;
}
#service dl.price_dl dt {
	display: table-cell;
	width: 340px;
	border-right: 3px solid #FF8C63;
	text-align: center;
	vertical-align: middle;
}
#service dl.price_dl dd {
	display: table-cell;
	text-align: center;
}
#service dl.price_dl dd span {
	display: block;
	font-size: .8em;
}

#service ol.process {
	background: #FFF;
	margin-top: -2px;
}
#service ol.process li {
	margin-top: 2px;
}

#service .charge_box {
	background: #ffeae2;
	padding: 30px;
	border-radius: 12px;
}
#service ul.charge {
	list-style: inside;
	margin-top: -2px;
}
#service ul.charge li {
	margin-top: 2px;
	text-indent: -23px;
	padding-left: 24px;
}

#service ul.actual_cost {
	list-style: inside;
	margin-top: -2px;
}
#service ul.actual_cost li {
	margin-top: 2px;
	text-indent: -23px;
	padding-left: 24px;
}

#service .request {
	background: #f1f6e7;
	padding: 30px;
	border-radius: 12px;
}
#service .request dt {
	padding-bottom: 6px;
	border-bottom: 2px solid #95bf54;
}
#service .request dd {
	padding-top: 6px;
}

#service table.price_table,
#service table.price_table th,
#service table.price_table td {
	border-collapse: collapse;
	border: 2px solid #fafafa;
	padding: 8px 0;
}
#service table.price_table {
	width: 100%;
	margin-top: 30px;
}
#service table.price_table th {
	background: #ffeae2;
}
#service table.price_table td {
	text-align: center;
}
#service table.price_table td.each-price {
	font-weight: bold;
}
#service p.memo {
	color: #FF8C63;
	position: relative;
	padding-left: 23px;
	margin-top: 4px;
}
#service p.memo:before {
	content: "※";
	display: inline-block;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	color: #FF8C63;
}
#service .service_text {
	background: #fafafa;
	border: 1px solid #bbb;
	margin: 2em 0;
	padding: 2em;
	position: relative;
}

@media screen and (max-width: 768px) {
	#service dl.price_dl dt {
		width: 300px;
	}
}
@media screen and (max-width: 560px) {
	#service dl.price_dl,
	#service dl.price_dl dt,
	#service dl.price_dl dd {
		display: block;
		width: 100%;
	}
	#service dl.price_dl dt {
		border-right: none;
		border-bottom: 2px solid #FF8C63;
	}
}
@media screen and (max-width: 430px) {
	#service .charge_box,
	#service .request {
		padding: 20px;
	}
}

/****************************************
 * 事務所紹介
*****************************************/

#office .office_box {
	clear: both;
	margin-top: 60px;
}
#office .office_inbox {
	margin-top: 30px;
}
#office .photo_box {
	display: flex;
	justify-content: space-evenly;
	align-items: center;
	margin-top: 30px;
}
#office .photo_box p.name_box {
	width: 440px;
	font-size: 1.2em;
}
#office table.office_table {
	width: 100%;
}
#office .greeting {
	width: 600px;
	margin: 30px auto 0;
	float: right;
}
#office table.office_table th,
#office table.office_table td {
	border-bottom: 1px solid #74b0bf;
	padding: 20px;
}
#office table.office_table th {
	width: 200px;
}
#office ul.office_contact li span {
	margin-right: 10px;
}
#office ul.works {
	list-style: inside;
}
#office ul.works li {
	width: 100%;
}
#office ul.web span {
	margin-right: 10px;
}
#office .office_address {
	text-align: center;
	font-size: 1.2em;
}
#office .office_map,
#office .office_access {
	margin-top: 30px;
}
#office img.map {
	border-radius: 12px;
	border: 6px solid #c95a5e;
}
#office .office_access_box {
	margin: 30px 0;
	flex-wrap: wrap;
	align-items: flex-start;
	flex-direction: column;
}
#office .office_access_box dl {
	width: 100%;
	margin-top: 30px;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
}
#office .office_access_box dt {
	position: relative;
	width: 320px;
}
#office .office_access_box dt span.number {
	display: inline-block;
	width: 40px;
	height: 40px;
	position: absolute;
	top: 12px;
	left: 12px;
	background: #95bf54;
	border-radius: 50px;
	text-align: center;
	line-height: 40px;
	color: #FFF;
}
#office .office_access_box dt img {
	border-radius: 6px;
}
#office .office_access_box dd {
	width: 100%;
	padding: 0 0 0 30px;
}
#office .print_box {
	background: #F3DCDD;
	padding: 30px;
	margin-top: 30px;
	border-radius: 12px;
}

@media screen and (max-width: 1024px) {
	#office .photo_box img {
		width: 200px;
	}
	#office table.office_table th {
		width: 160px;
	}
}
@media screen and (max-width: 768px) {
	#office table.office_table th {
		width: 180px;
	}
}
@media screen and (max-width: 559px) {
	#office .office_box {
		margin-top: 45px;
	}
	#office .photo_box img {
		width: 140px;
	}
	#office .photo_box p.name {
		padding-left: 15px;
	}
	#office .photo_box p.name span {
		font-size: 1.1em;
	}
	#office .greeting {
		width: 100%;
	}
	#office table.office_table th {
		width: 120px;
	}
	#office .office_address {
		font-size: 1em;
	}
	#office .office_access_box dl {
		display: flex;
		flex-wrap: nowrap;
		align-items: flex-start;
	}
	#office .office_access_box dd {
		padding: 0 0 0 20px;
	}
}
@media screen and (max-width: 480px) {
	#office .office_box {
		margin-top: 30px;
	}
	#office table.office_table th,
	#office table.office_table td {
		padding: 20px 10px;
	}
}
@media screen and (max-width: 430px) {
	#office table.office_table,
	#office table.office_table th,
	#office table.office_table td {
		display: block;
		width: 100%;
		text-align: left;
	}
	#office table.office_table th {
		padding: 10px 10px 0;
		border: none;
	}
	#office table.office_table td {
		padding: 5px 10px 10px;
	}
	#office .office_address {
		font-weight: bold;
	}
	#office .office_access_box {
		display: block;
	}
	#office .office_access_box dl {
		display: flex;
		flex-wrap: nowrap;
		align-items: flex-start;
		flex-direction: column;
	}
	#office .office_access_box dt {
		width: 100%;
	}
	#office .office_access_box dd {
		width: 100%;
		padding: 15px 0 0;
	}
	#office .print_box {
		padding: 20px;
	}
}
@media screen and (max-width: 320px) {
	#office .office_access_box dl dd {
		padding: 15px 0;
	}
}


/****************************************
 * プロフィール
*****************************************/
#profile .profile_photo {
	padding-left: 60px;
	margin-bottom: 30px;
}
#profile .profile_photo img {
	border-radius: 12px;
}
#profile .greeting {
	
}
#profile .greeting p.greeting_top {
	
}
#profile .middle {
	margin-top: 60px;
}
#profile .middle table {
	width: 100%;
}
#profile .middle table tr {
	display: block;
	margin-top: 10px;
}
#profile .middle table tr:first-child {
	margin-top: 0;
}
#profile .middle table th {
	width: 160px;
	background: #95bf54;
	color: #FFF;
	padding: 15px;
	border-radius: 12px;
}
#profile .middle table td {
	padding: 15px 15px 15px 30px;
}
#profile .bottom {
	margin-top: 60px;
}
#profile .bottom table {
	width: 100%;
}
#profile .bottom table th {
	display: block;
	width: 100%;
	background: #95bf54;
	color: #FFF;
	padding: 15px;
	text-align: left;
	border-radius: 12px;
}
#profile .bottom table td {
	display: block;
	width: 100%;
	padding: 15px;
}

/****************************************
 * 料金表
*****************************************/

#price .price_jump {
	margin-top: 30px;
}
#price .price_jump ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	align-content: space-around;
	margin-top: -8px;
}
#price .price_jump ul li {
	width: calc(100%/3 - 8px);
	margin-top: 8px;
}
#price .price_jump ul li a {
	display: block;
	padding: 8px 15px;
	background: #73B1BF;
	border-left: 20px solid #dcebee;
	color: #FFF;
	border-radius: 6px;
	text-align: center;
}

#price .price_list {
	margin-top: 30px;
}
#price .price_box {
	margin-top: 30px;
}

#price .amendment_price {
	padding: 30px;
	margin-bottom: -30px;
}
#price .amendment_price ul {
	list-style: inside;
}
#price .amendment_price ul li {
	text-indent: -27px;
	padding-left: 27px;
}

#price .detail {
	margin-top: 30px;
	background: #f5eaec;
}
#price .detail table,
#price .detail table th,
#price .detail table td {
	border-collapse: collapse;
	border: 1px solid #fafafa;
}
#price .detail table {
	width: 100%;
}
#price .detail table th {
	display: block;
	text-align: left;
	padding: 8px 30px;
}
#price .detail table td {
	display: block;
	padding: 8px 30px;
}

#price .process {
	margin-top: 30px;
	background: #FFF;
}
#price .process table,
#price .process table th,
#price .process table td {
	border-collapse: collapse;
	border: 1px solid #fafafa;
}
#price .process table {
	width: 100%;
}
#price .process table th {
	display: block;
	text-align: left;
	padding: 8px 30px;
}
#price .process table td {
	display: block;
	padding: 8px 30px;
}

#price .request {
	margin-top: 30px;
	background: #DCEBEE;
}
#price .request table,
#price .request table th,
#price .request table td {
	border-collapse: collapse;
	border: 1px solid #fafafa;
}
#price .request table {
	width: 100%;
}
#price .request table th {
	display: block;
	text-align: left;
	padding: 8px 30px;
}
#price .request table td {
	display: block;
	padding: 8px 30px;
}

#price table.price_table,
#price table.price_table th,
#price table.price_table td {
	border-collapse: collapse;
	border: 2px solid #fafafa;
	padding: 8px 0;
}
#price table.price_table {
	width: 100%;
	margin-top: 30px;
	font-size: 1.3em;
	background: #F5EAEC;
}
#price table.price_table th {
	
}
#price table.price_table td {
	text-align: center;
}
#price table.price_table td.each-price {
	color: #ED9394;
	font-weight: 700;
}

#price .example {
	margin-top: 30px;
	background: #ededed;
}
#price .example table,
#price .example table th,
#price .example table td {
	border-collapse: collapse;
	border: 1px solid #fafafa;
}
#price .example table {
	width: 100%;
}
#price .example table th {
	display: block;
	text-align: left;
	padding: 8px 30px;
}
#price .example table td {
	display: block;
	padding: 8px 30px;
}

#price p.memo {
	text-align: center;
	font-weight: 700;
	color: #ED9394;
	margin-bottom: 10px;
}
#price span.price {
    color: #ED9394;
    font-weight: 700;
}

@media screen and (max-width: 1024px) {
	#price .promise .box {
		padding: 20px 20px 60px;
	}
}
@media screen and (max-width: 559px) {
	#price dl.price_dl,
	#price dl.price_dl dt,
	#price dl.price_dl dd {
		display: block;
		width: 100%;
	}
	#price .amendment_price {
		padding: 30px 15px;
	}
	#price .detail table,
	#price .detail table th,
	#price .detail table td,
	#price .process table,
	#price .process table th,
	#price .process table td,
	#price .request table,
	#price .request table th,
	#price .request table td,
	#price .example table,
	#price .example table th,
	#price .example table td {
		padding: 8px 20px;
	}
	#price dl.price_dl,
	#price table.price_table {
		font-size: 1em;
	}
}
@media screen and (max-width: 430px) {
	#price dl.price_dl {
		margin: 10px 0 0;
	}
}

/****************************************
相談の流れ flow
*****************************************/
#flow ul li {
	position: relative;
	background: #FFF6E5;
	padding: 30px;
	margin-bottom: 60px;
}
#flow ul li:after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 50px 65px 0 65px;
	border-color: #FFF6E5 transparent transparent transparent;
	position: absolute;
	left: 0;
	right: 0;
	bottom: -40px;
	margin: auto;
}
#flow ul li:last-child:after {
	content: none;
}
#flow ul li dl {
	margin: 0;
	display: table;
}
#flow ul li dt,
#flow ul li dd {
	display: table-cell;
}
#flow ul li dt {
	font-size: 1.2em;
	width: 170px;
	border-right: 1px dotted #ededed;
	text-align: center;
	padding-right: 30px;
	font-weight: 400;
}
#flow ul li:first-child dt {
	background: url(images/flow/step_bg_01.jpg) no-repeat;
	background-size: 140px;
	background-position: left top 40px;
}
#flow ul li:nth-child(2) dt {
	background: url(images/flow/step_bg_02.jpg) no-repeat;
	background-size: 140px;
	background-position: left top 40px;
}
#flow ul li:last-child dt {
	background: url(images/flow/step_bg_03.jpg) no-repeat;
	background-size: 140px;
	background-position: left top 40px;
}
#flow ul li dd {
	padding-left: 30px;
}
#flow ul li dd .contact-box {
	position: relative;
	background: #FFF;
	border-radius: 5px;
	padding: 10px;
}
#flow ul li dd .contact-box i {
	color: #FFB000;
}
#flow ul li dd .contact-box p.number {
	font-size: 1.8em;
}
#flow ul li dd .contact-box p.number span {
	display: block;
	font-size: .5em;
	text-align: center;
}
#flow ul li dd .contact-box p.mail {
	position: absolute;
	right: 10px;
	top: 20px;
}
#flow ul li dd .contact-box p.mail a {
	background: linear-gradient(to bottom, #FF7066, #FF1500);
	display: block;
	color: #fff;
	font-size: .9em;
	padding: 5px 10px;
	border-radius: 5px;
	text-align: center;
	width: 210px;
}
#flow ul li dd .contact-box p.mail a:after {
	content: "\f054";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin-left: 10px;
}

@media screen and (max-width: 1024px) {
	#flow ul li dd .contact-box {
		height: 150px;
	}
	#flow ul li dd .contact-box p.number {
		text-align: center;
		font-size: 1.5em;
	}
	#flow ul li dd .contact-box p.number span {
		margin-top: 40px;
	}
	#flow ul li dd .contact-box p.mail {
		position: absolute;
		right: 0;
		top: 55px;
		left: 0;
		margin: auto;
		width: 10.5em;
	}
}
@media screen and (max-width: 768px) {
	#flow ul li dd .contact-box {
		height: 180px;
	}
	#flow ul li dd .contact-box p.mail {
		width: 12em;
	}
	#flow ul li dd .contact-box p.mail a {
		width: auto;
	}
	#flow ul li dd .contact-box p.number span {
		margin-top: 50px;
	}
}
@media screen and (max-width: 480px) {
	#flow ul li {
		padding: 15px;
	}
	#flow ul li dl,
	#flow ul li dt,
	#flow ul li dd {
		display: block;
	}
	#flow ul li dt {
		width: 100%;
		padding: 40px 0;
	}
	#flow ul li:first-child dt {
		background: url(images/flow/step_bg_sp_01.jpg) no-repeat;
		background-size: 100%;
		background-position: center;
		height: 100px;
	}
	#flow ul li:nth-child(2) dt {
		background: url(images/flow/step_bg_sp_02.jpg) no-repeat;
		background-size: 100%;
		background-position: center;
		height: 100px;
	}
	#flow ul li:nth-child(3) dt {
		background: url(images/flow/step_bg_sp_03.jpg) no-repeat;
		background-size: 100%;
		background-position: center;
		height: 100px;
	}
	#flow ul li dd {
		margin: 0;
		padding: 0;
	}
	#flow ul li dd .contact-box {
		height: 160px;
	}
}

/****************************************
アクセス access
*****************************************/
#access dl.aroundmap {
	width: 100%;
	display: table;
}
#access dl.aroundmap dt,
#access dl.aroundmap dd {
	display: table-cell;
	vertical-align: top;
}
#access dl.aroundmap dt {
	width: 60%;
}
#access dl.aroundmap dd {
	padding-left: 20px;
}
#access .route {
	background: url(images/access/route_bg.png) repeat;
	padding: 10px 20px;
}
#access .route .box {
	
}
#access .route dl {
	width: 100%;
	display: table;
	margin-bottom: 20px;
}
#access .route dl dt,
#access .route dl dd {
	display: table-cell;
	vertical-align: top;
}
#access .route dl dt {
	width: 63%;
	padding-right: 20px;
	padding-left: 20px;
}
#access .route dl dt .ribbon-box {
	display: block;
	position: relative;
	margin: 0 auto;
	width: 100%;
}
#access .route dl dt .ribbon-box h4.ribbon {
	display: inline-block;
	position: absolute;
	box-sizing: border-box;
	padding: 5px 10px 5px 15px;
	margin: 0 0 0 -20px;
	width: 4.5em;
	color: #fff;
	background: #74b902;
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
	bottom: 30px;
	border-radius: 0 30px 30px 0;
}
#access .route dl dt .ribbon-box h4.ribbon:before {
	position: absolute;
	content: '';
	top: 100%;
	left: 0;
	border: none;
	border-bottom: solid 15px transparent;
	border-right: solid 20px #659E03;
}
#access .route dl dd {
	padding-left: 20px;
	background: #FFF;
	border-radius: 5px;
	padding: 30px;
}
#access dl.googlemap {
	width: 100%;
	margin: 30px auto 10px;
}
#access dl.googlemap dt {
	padding: 20px;
	background: #FFFCF9;
}
#access dl.googlemap i {
	color: #FF9A16;
	margin-right: 10px;
	font-size: 2em;
	vertical-align: middle;
}
#access dl.googlemap dd {
	width:100%;
	margin: 0;
}

@media screen and (max-width: 1024px) {
	#access .route {
		padding: 20px;
	}
	#access .route dl dt {
		width: 50%;
	}
	#access .route dl dd {
		padding: 15px 20px;
	}
}
@media screen and (max-width: 480px) {
	#access dl.aroundmap,
	#access dl.aroundmap dt,
	#access dl.aroundmap dd {
		display: block;
		width: 100%;
		margin: 0;
		padding: 0;
	}
	#access dl.aroundmap dt {
		margin-bottom: 15px;
	}
	#access .route dl,
	#access .route dl dt,
	#access .route dl dd {
		display: block;
		width: 100%;
		margin: 0;
		padding: 0;
	}
	#access .route dl dd {
		padding: 15px !important;
	}
}

/****************************************
お問い合わせ
*****************************************/
#contact .tel-box {
	background: url(images/contact/tel-box_bg.gif) repeat;
	width: 800px;
	margin: 50px auto;
	padding: 20px;
	border-radius: 5px;
	box-shadow: 0 1px 5px rgba(0, 0, 0, 0.22);
}
#contact .tel-box .box {
	background: #FFF;
	text-align: center;
	padding: 30px;
}
#contact .tel-box .box .tel-btn p.number {
	font-size: 2em;
	margin-bottom: 0;
	color: #FFB000;
}
#contact .tel-box .box .tel-btn span {
	color: #FF1650;
	font-weight: 400;
	margin-right: 10px;
}
#contact .msg {
	width: 800px;
	margin: 0 auto 30px;
	text-align: center;
}
#contact table {
	width: 100%;
	table-layout: fixed;
	margin-bottom: 50px;
}
#contact table tr {
	width: 100%;
	display: table;
	border-bottom: 1px solid #ededed;
}
#contact table th,
#contact table td {
	display: table-cell;
	text-align: left;
	padding: 20px;
}
#contact table th {
	width: 30%;
	font-weight: normal;
}
#contact table th.hissu {
	position: relative;
	background: #FFFCF9;
}
#contact table th span {
	float: right;
	color: #FFB000;
	font-size: .8em;
	margin-right: 10px;
	vertical-align: middle;
}
#contact table td.hissu {
	background: #FFFCF9;
}
#contact table td p.memo {
	font-size: .8em;
}
#contact input.name,
#contact input.mail,
#contact input.tel {
	width: 60%;
}
#contact input.contact {
	width: 30px;
	height: 30px;
	vertical-align: middle;
}
#contact textarea.consultation {
	width: 100%;
	height: 200px;
}
#contact .information {
	text-align: center;
}
#contact .information p {
	margin: 0;
}
#contact .btn {text-align:center;margin:30px auto;}
#contact .btn input.send,
#contact .btn input.back {
	width: 40%;
	padding: 20px;
	margin: 0;
	font-weight: normal;
	-webkit-appearance: none;
	-webkit-transition: all .3s;
	transition: all .3s;
}

@media screen and (max-width: 880px) {
	#contact .tel-box,
	#contact .msg {
		width: 94%;
	}
}
@media screen and (max-width: 480px) {
	#contact .msg {
		text-align: left;
	}
	#contact .tel-box .box {
		padding: 15px;
	}
	#contact .tel-box .box .tel-btn p.number {
		font-size: 1.8em;
	}
	#contact table th,
	#contact table td {
		display: block;
		width: 100%;
	}
	#contact table td {
		padding: 0 20px 20px;
	}
	#contact input.name,
	#contact input.mail,
	#contact input.tel {
		width: 100%;
	}
}



/****************************************
 * よくある質問
*****************************************/

#faq .faq_item {
	margin-top: 60px;
}
.faq_item .set {
	position: relative;
	margin-top: 30px;
}
.faq_item .set .question {
	color: #FFF;
	background: #95bf54;
	padding: 15px 15px 15px 50px;
	border-radius: 12px;
	position: relative;
}
.faq_item .set .question:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 15px;
	top: 50%;
	transform: translateY(-50%);
	background: url(images/common/icon100_q.png) no-repeat;
	background-size: 100%;
	width: 22px;
	height: 22px;
}
.faq_item .set .answer {
	padding: 15px;
	border-radius: 12px;
}

@media screen and (max-width: 768px) {
	.front-page .faq_box .faq_item {
		margin-top: 15px;
	}
	.front-page .faq_box .faq_item.Afaq {
		margin-top: 0;
	}
	.front-page .faq_box .faq_item.Bfaq {
		margin-top: 15px;
	}
	.faq_item .set {
		margin-top: 15px;
	}
}
@media screen and (max-width: 559px) {
	#faq .faq_item {
		margin-top: 45px;
	}
	.front-page .faq_box .faq_item,
	.front-page .faq_box .faq_item.Bfaq {
		margin-top: 0;
	}
}
@media screen and (max-width: 480px) {
	#faq .faq_item,
	.front-page .faq_box {
		margin-top: 30px;
	}
}
@media screen and (max-width: 430px) {
	#faq .faq_item,
	.front-page .faq_box {
		margin-top: 20px;
	}
	.faq_item label.set-q {
		padding: 0 38px;
	}
	.faq_item input[type=checkbox]:checked ~ .set-a {
		padding: 15px 20px;
	}
	.faq_item .set-a {
		margin: 15px 0 0 0;
	}
}

/****************************************
 * 掲載メディア
*****************************************/

#publicationmedia .media_box {
	margin-top: 45px;
}
#publicationmedia .media_inbox {
	margin-top: 45px;
}

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

#privacy-policy .policy_box {
	margin-top: 60px;
}
#privacy-policy .policy_inbox {
	margin-top: 30px;
}
#privacy-policy ul.policy_list {
	list-style: inside;
	margin-left: .6em;
	margin-top: -10px;
}
#privacy-policy ul.policy_list li {
	padding-left: 34px;
	text-indent: -26px;
	margin-top: 10px;
}

@media screen and (max-width: 559px) {
	#privacy-policy .policy_box {
		margin-top: 45px;
	}
}
@media screen and (max-width: 480px) {
	#privacy-policy .policy_box {
		margin-top: 30px;
	}
}
@media screen and (max-width: 430px) {
	#privacy-policy .policy_box {
		margin-top: 20px;
	}
}

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

#sitemaps .sitemaps_pages {
	
}

#sitemaps .sitemaps_posts {
	margin-top: 30px;
}
#sitemaps a {
	display: block;
	padding: 6px 20px 6px 30px;
}

#sitemaps ul {
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
}
#sitemaps ul li {
	position: relative;
}
#sitemaps ul li:before{
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%) translateX(0);
	left: 0;
	width: 0;
	height: 0;
	border: 8px solid transparent;
	border-left: 8px solid #95bf54;
}
#sitemaps ul ul {
	margin: 0;
}
#sitemaps ul ul li {
	padding-left: 20px;
}

@media screen and (max-width: 559px) {
	#sitemaps a {
		padding: 6px 20px;
	}
}

/****************************************
 * 検索結果
 * search.php
*****************************************/

#search .result .number {margin-bottom: 3%;}
#search .result .box {box-shadow: 1px 1px 4px 0px rgba(0,0,0,0.3);width: 95%;margin-bottom: 2%;border-left: 1px solid #ededed;padding: 1% 2%;}
#search .result .box h3 {font-weight: bold;}
#search .result .box p {font-size: 90%;}
#search .result .divorce .box,#search .result .registration .box {border:none;box-shadow: none;}
#s {padding: 10px 19% 10px 5%;width: 75%;-webkit-border-radius: 25px;-moz-border-radius: 25px;border-radius: 25px; font-size: 10px;}
#searchsubmit {position: absolute;top: 0;right: 0;width: 45px;height: 33px;border: none;background: url(images/search.png) no-repeat 50% 50%;}



/****************************************
 * 相続ガイド
 * home.php
 * archive.php
 * single.php
*****************************************/

/* single.php
*****************************************/
#single-home table,
#single-home table th,
#single-home table td {
	border-collapse: collapse;
	border: 1px solid;
}
#single-home table th,
#single-home table td {
	padding: 15px;
}
#single-home table th {
	background: #fafafa;
}

/* home.php
*****************************************/
ul#category_list {
	margin-top: 0;
}
ul#category_list li {
	padding: 0;
	border-bottom: 1px solid #95bf54;
	position: relative;
}
ul#category_list li:first-child {
	border-top: 1px solid #95bf54;
}
ul#category_list li:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%) translateX(0);
	left: 35px;
	width: 0;
	height: 0;
	border: 8px solid transparent; 
	border-left: 8px solid #95bf54;
}
ul#category_list li a {
	display: block;
	padding: 20px 20px 20px 60px;
	text-decoration: none;
}
ul#category_list li a:hover {
	background: #F1F6E8;
}
ul#category_list li dt {
	width: auto;
}
ul#category_list li dd {
	width: 830px;
}
ul#category_list li dd span.date {
}
ul.home_list a.category_link {
	position: absolute;
	right: 20px;
	top: 20px;
}

/* 関連記事 */
.related {
	margin-top: 60px;
}
.related a {
	display: block;
	padding: 30px;
	text-decoration: none;
}
.related .related_title {
	text-align: center !important;
	border-top: 3px solid !important;
	border-bottom: 3px solid !important;
	padding: 20px 0 !important;
}
.related ul#related_list li {
	border-bottom: 1px solid #96bd55;
}
.related ul#related_list li:first-child {
	border-top: 1px solid #96bd55;
}
.related ul#related_list li .excerpt {
	font-size: .8em;
}

/* archive.php
*****************************************/

/*当事務所の相続手続きについて*/
/*当事務所の遺言書作成について*/
#archive-home .souzoku_text,
#archive-home .yuigon_text {
	margin: 0 0 30px;
}
/*当事務所の相続放棄について*/
#archive-home .souzokuhouki_text {
	border: 1px solid #578184;
	background: #EEF4F6;
	padding: 60px 30px 30px;
	margin: 105px auto 30px;
	position: relative;
}
#archive-home .souzokuhouki_text img.clip {
	position: absolute;
	top: -82px;
	left: 0;
	right: 0;
	margin: auto;
}
#archive-home .souzokuhouki_text ul {
	border: none !important;
}
#archive-home .souzokuhouki_text ul li {
	line-height: 1.8 !important;
	border: none !important;
}
#archive-home .souzokuhouki_text ul li ul li {
	line-height: 1.3 !important;
	border: none !important;
}

#archive-home ul#articles_list {
	margin-top: 20px;
}
#archive-home ul#articles_list li {
	border-bottom: 1px solid #96bd55;
}
#archive-home ul#articles_list li:first-child {
	border-top: 1px solid #96bd55;
}
#archive-home ul#articles_list li dt {
    width: 180px;
	margin-right: 30px;
}
#archive-home ul#articles_list li dd {
	width: 100%;
}

@media screen and (max-width: 1024px) {
	.related ul#articles_list li dt {
		width: 140px;
	}
	.related ul#articles_list li dd {
		width: 455px;
	}
	#archive-home ul#articles_list li dt {
		width: 220px;
	}
	#archive-home ul#articles_list li dd {
		width: 430px;
	}
}
@media screen and (max-width: 960px) {
	.related ul#articles_list li dd {
		width: 395px;
	}
	#archive-home ul#articles_list li dt {
		width: 200px;
	}
	#archive-home ul#articles_list li dd {
		width: 395px;
	}
}
@media screen and (max-width: 768px) {
	#archive-home .souzokuhouki_text {
		margin: 60px auto 30px;
	}
	#archive-home .souzokuhouki_text img.clip {
		width: 90px;
		top: -42px;
	}
	.related ul#articles_list li dd {
		width: 485px;
	}
	#archive-home ul#articles_list li dt {
		width: 260px;
	}
	#archive-home ul#articles_list li dd {
		width: 415px;
	}
}
@media screen and (max-width: 559px) {
	ul.home_list li {
		margin-top: 45px;
	}
	.related ul#articles_list li dt {
		width: 140px;
	}
	.related ul#articles_list li dd {
		width: 275px;
	}
	#archive-home ul#articles_list li dt {
		width: 120px;
	}
	#archive-home ul#articles_list li dd {
		width: 355px;
	}
}
@media screen and (max-width: 480px) {
	ul.home_list li {
		margin-top: 30px;
	}
	.related {
		padding: 0 30px;
	}
	.related ul#articles_list li dt {
		width: 100px;
	}
	.related ul#articles_list li dd {
		width: 240px;
	}
	#archive-home ul#articles_list {
		margin: 30px !important;
	}
	#archive-home ul#articles_list li dd {
		width: 270px;
	}
}
@media screen and (max-width: 430px) {
	#archive-home .souzokuhouki_text {
		padding: 45px 20px 20px;
		margin: 45px auto 30px;
	}
	ul.home_list li {
		margin-top: 20px;
	}
	.related {
		margin-top: 45px;
		padding: 30px 20px 0;
	}
	.related a {
		padding: 20px;
	}
	.related ul#articles_list li dt {
		width: 90px;
	}
	.related ul#articles_list li dd {
		width: 240px;
	}
	#archive-home ul#articles_list {
		margin: 20px !important;
	}
	#archive-home ul#articles_list li dt,
	#archive-home ul#articles_list li dd {
		width: 270px;
	}
}
@media screen and (max-width: 420px) {
	.related ul#articles_list li dd {
		width: 230px;
	}
	#archive-home ul#articles_list li dt {
		width: 100px;
	}
	#archive-home ul#articles_list li dd {
		width: 255px;
	}
}
@media screen and (max-width: 380px) {
	.related ul#articles_list li dt {
		width: 80px;
	}
	.related ul#articles_list li dd {
		width: 200px;
	}
	#archive-home ul#articles_list li dt {
		width: 90px;
	}
	#archive-home ul#articles_list li dd {
		width: 225px;
	}
}
@media screen and (max-width: 320px) {
	#archive-home .souzokuhouki_text {
		padding: 30px 20px 20px;
		margin: 30px auto 30px;
	}
	#archive-home .souzokuhouki_text img.clip {
		width: 60px;
		top: -27px;
	}
	
	.related ul li {
		padding: 15px 0 !important;
	}
	.related ul#articles_list li dt {
		width: 70px;
	}
	.related ul#articles_list li dd {
		width: 160px;
	}
	#archive-home ul#articles_list li dt {
		width: 80px;
	}
	#archive-home ul#articles_list li dd {
		width: 180px;
	}
}

/* 感染症対策
*****************************************/

.covid19_box ul.implement {
	list-style: none !important;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	margin-top: -30px;
	margin-bottom: 60px;
	padding: 0 !important;
}
.covid19_box ul.implement li {
	width: 100%;
	display: flex;
	align-items: center;
	margin-top: 30px;
}
.covid19_box ul.implement li img {
	margin-right: 45px;
}

@media screen and (max-width: 1024px) {
	.covid19_box ul.implement li img {
		width: 180px;
	}
}
@media screen and (max-width: 768px) {
	
}
@media screen and (max-width: 559px) {
	.covid19_box ul.implement li img {
		width: 120px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 430px) {
	.covid19_box ul.implement li img {
		width: 120px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 320px) {
}


/****************************************
 * 相続ガイド 記事内
*****************************************/

/*タグ*/
.single_tags {
	margin: 45px 0;
}
ul.tag_items {
	width: 100%;
	display: block;
	padding: 0 !important;
	margin-top: -15px;
}
ul.tag_items li {
	display: inline-block;
	margin-right: 15px;
	margin-top: 15px;
}
ul.tag_items li a {
	display: block;
	color: #000;
	background: #F8F7EC;
	text-decoration: none;
	padding: 4px 15px;
	border-radius: 30px;
}

/*条文*/
p.jobun {
	padding: 30px;
	background: #F7F7F6;
	border-radius: 12px;
}

/*リスト*/
#single .content ul {
	margin-bottom: 30px;
	padding: 0 0 0 1.2em;
	list-style: disc;
}

@media screen and (max-width: 559px) {
	.single_tags {
		margin: 30px 0;
	}
}
@media screen and (max-width: 430px) {
	p.jobun {
		padding: 20px;
	}
}

/****************************************
 * 検索結果
 * serch.php
*****************************************/

/*検索フォーム*/
.search_box {
	overflow: hidden;
	margin-top: 30px;
}
.search_box p {
	font-size: .9em;
	margin-bottom: 10px;
}
.search_box form {
	position: relative;
	height: 50px;
	max-width: 400px;
	margin: 0 auto;
}
.search_box #s {
	width: 100%;
	height: 50px;
	background: #FFF;
	position:absolute;
	left: 0;
	top: 0;
	outline: 0;
	padding:0 10px;
	border-radius: 6px;
	font-size: 1em;
}
.search_box #s:focus{
	background: #F1F6E8 !important;
	border: 1px solid #95bf54;
}
.search_box #search_button {
	width: 70px;
	height: 50px;
	padding: 0;
	position: absolute;
	right: -2px;
	top: 0;
	background: #95bf54;
	border: none;
	color: #fff;
	font-weight: bold;
	border-radius: 0 6px 6px 0;
	box-shadow: none;
}
.search_box #search_button:hover{
	color: #666;
}

/*検索結果：空白*/
.blank {
	text-align: center;
}

/*検索結果：該当あり*/
.result {
	text-align: left;
	margin-bottom: 30px;
}
.result span.search-hit {
	font-size: 1.3em;
	margin: 0 3px 0 0;
}

/*検索結果：該当なし*/
.notincluded {
	
}

/****************************************
 * お知らせ
 * archive-notice.php
 * single-notice.php
*****************************************/

/* archive-news.php
*****************************************/
ul.notice_list a {
	display: block;
	padding: 12px 30px;
	color: #000;
	text-decoration: none;
}
ul.notice_list li {
	border-bottom: 1px solid #ededed;
}
ul.notice_list li:first-child {
	border-top: 1px solid #ededed;
}
ul.notice_list dl {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: center;
	align-content: space-around;
}
ul.notice_list dt {
	width: 180px;
}
ul.notice_list dd {
	
}

@media screen and (max-width: 559px) {
	ul.notice_list dl,
	ul.notice_list dt,
	ul.notice_list dd {
		display: block;
		width: 100%;
	}
}
@media screen and (max-width: 430px) {
	ul.notice_list a {
		padding: 12px 20px;
	}
}

/* single-notice.php
*****************************************/
#single-notice .content_title {
	position: relative;
}
#single-notice .content_title span.date {
	position: absolute;
	right: 45px;
	top: 30px;
	font-size: .5em;
}

/*新着*/
.newarrivals {
	margin-top: 30px;
	padding: 30px;
	background: #F8F7EC;
	border-radius: 6px;
}
.newarrivals a {
	text-decoration: none;
	color: #000;
}
.newarrivals ul#notice_list li {
	padding: 20px 0 !important;
	border-bottom: 1px solid #fafafa !important;
}
.newarrivals ul#notice_list li:last-child {
	border-bottom: none;
}
.newarrivals ul#notice_list li dt {
	width: 120px;
}
.newarrivals ul#notice_list li dd {
	width: 570px;
	margin: 0 0 10px;
}

@media screen and (max-width: 430px) {
	#single-notice .content_title span.date {
		top: 20px;
		right: 20px;
	}
}

/****************************************
 * お知らせ　ナビゲーション
*****************************************/

.single_nav a {
	display: block;
	font-size: .9em;
	padding: 8px 20px;
}
.single_nav a#next {
	border-bottom: 1px solid #ededed;
}
p.next_title {
	
}
p.next_title span {
	margin-right: 15px;
}
.single_nav a#prev {
	border-top: 1px solid #ededed;
	border-bottom: 1px solid #ededed;
}
p.prev_title {
	
}
p.prev_title span {
	margin-right: 15px;
}


/****************************************
archive-glossary.php(アーカイブ)
*****************************************/
#archive-glossary-contents .content {
	margin: 50px 0 0;
    overflow: hidden;
    padding: 0 0 50px;
    color: #454545;
}
#archive-glossary-contents .content ul {
	width: 100%;
}
#archive-glossary-contents .content ul li {
	float: left;
	width: 50%;
}
#archive-glossary-contents .content ul li dl,
#archive-glossary-contents .content ul li dt,
#archive-glossary-contents .content ul li dd {
	display: block;
	width: 100%;
	margin: 0;
}
#archive-glossary-contents .content ul li dl {
	padding-left: 15px;
    border-left: 1px solid;
	margin-bottom: 30px;
}
#archive-glossary-contents .content ul li dt {
	font-size: 1.6em;
}
#archive-glossary-contents .content ul li dd{
	font-size: .7em;
}
#archive-glossary-contents .content ul li dd a {
	color: #454545;
}

@media screen and (max-width: 420px) {
	#archive-glossary-contents .content {
		padding: 0 0 30px;
	}
	#archive-glossary-contents .content ul li {
		float: none;
		width: 100%;
	}
	#archive-glossary-contents .content ul li dl {
		margin-bottom: 15px;
	}
	#archive-glossary-contents .content ul li dd {
		font-size: .8em;
	}
}

/****************************************
archive-news.php(アーカイブ)
*****************************************/
#archive #archive-news-contents .content {
	margin: 50px 0 0;
    overflow: hidden;
    position: relative;
    background: #fafafa;
    padding: 50px 50px 70px;
    color: #454545;
}
#archive #archive-news-contents .content:after{
    position: absolute;
    content: '';
    right: 0;
    top: 0;
    border-width: 0 35px 35px 0;
    border-style: solid;
    border-color: #EDEDED #fff #EDEDED;
}
#archive #archive-news-contents .content dl {
	display: table;
	width: 100%;
	margin-bottom: 15px;
    border-bottom: 1px solid #ededed;
    padding-bottom: 15px;
}
#archive #archive-news-contents .content dt,
#archive #archive-news-contents .content dd {
	display: table-cell;
}
#archive #archive-news-contents .content dt {
	width: 20%;
}
#archive #archive-news-contents .content dd {
	
}
#archive #archive-news-contents .content dd span {
	float: right;
}
#archive #archive-news-contents .content dd span a:after {
	content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-left: 10px;
}

@media screen and (max-width: 768px) {
	#archive #archive-news-contents .content {
		padding: 30px 30px 50px;
	}
}
@media screen and (max-width: 480px) {
	#archive #archive-news-contents .content {
		padding: 25px 25px 50px;
	}
	#archive #archive-news-contents .content dl,
	#archive #archive-news-contents .content dt,
	#archive #archive-news-contents .content dd {
		display: block;
		width: 100%;
	}
	#archive #archive-news-contents .content dd {
		margin: 0;
		padding-right: 50px;
		position: relative;
	}
	#archive #archive-news-contents .content dd span {
		float: none;
		position: absolute;
		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;
}
.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;
}

/*埋め込み*/
.wp-block-embed iframe {
	width: 100% !important;
}


@media screen and (max-width: 420px) {
	.wp-block-group {
		margin-top: 30px;
	}
}


/****************************************
 * 404 error
*****************************************/

#error {
	text-align: center;
}

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

footer {
	clear: both;
	overflow: hidden;
	background: #FFF;
	padding: 90px 0 0;
}
footer .totop img.icon {
	position: fixed;
	bottom: 30px;
	right: 30px;
	z-index: 999;
	transition: all 0.5s;
	-webkit-transition: all 0.5s;
}

footer .footer_box {
	display: flex;
	justify-content: space-between;
	padding-bottom: 60px;
}
footer .footer_logo {
	width: 45%;
	text-align: center;
}
footer .footer_logo a.info {
	margin-right: 30px;
}
footer .footer_logo p.number {
	color: #96be55;
}
footer .footer_logo span.map {
	text-align: center;
	display: block;
	font-size: .6em;
}

footer .footer_nav_box {
	width: 52%;
}
footer .footer_nav {
	margin-bottom: 30px;
}
footer ul#menu-footer-nav {
	text-align: center;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	margin-top: -6px;
}
footer ul#menu-footer-nav li {
	margin: 6px 25px 0 0;
}



footer .footer_must {
	margin-bottom: 60px;
}
footer ul#menu-footer-must {
	margin-top: 12px;
}
footer ul#menu-footer-must li {
	display: inline-block;
	margin-right: 10px;
	font-size: .8em;
}

footer .footer_bottom {
	text-align: center;
	padding: 30px 0;
	background: #96bd55;
	color: #FFF;
}
footer .footer_bottom a {
	color: #FFF;
	margin-left: 10px;
}


/*QR*/
footer .qr {
	margin-top: 30px;
	text-align: center;
}

/*バナー*/
.banner {
	width: 100%;
	padding: 0 0 60px;
	text-align: center;
}
.banner a {
	display: block;
}
.banner ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
}
.banner ul li {
	overflow: hidden;
	width: calc(100%/5 - 10px);
	border-radius: 6px;
}

@media screen and (max-width: 768px) {
	footer .footer_logo {
		width: 65%;
	}
	footer .footer_nav_box {
		width: 35%;
	}
}
@media screen and (max-width: 559px) {
	footer {
		padding: 45px 0 0;
	}
	footer .totop img.icon {
		width: 60px;
		bottom: 20px;
		right: 20px;
	}
	footer .footer_box {
		padding-bottom: 45px;
	}
	footer .footer_logo {
		display: none;
	}
	footer .footer_nav_box {
		width: 100%;
	}
	
	/*バナー*/
	.banner {
		padding: 0 0 45px;
	}
	.banner ul {
		display: flex;
		justify-content: space-evenly;
		flex-wrap: wrap;
		align-items: center;
		margin-top: -8px;
	}
	.banner ul li {
		width: calc(100%/3 - 10px);
		margin-top: 8px;
	}
}
@media screen and (max-width: 480px) {
	
}
@media screen and (max-width: 430px) {
	footer .totop img.icon {
		width: 50px;
		bottom: 10px;
		right: 10px;
	}
	
}
@media screen and (max-width: 320px) {
	
}

/****************************************
画像キャプション
*****************************************/
.wp-caption {text-align: right;}
.wp-caption-text, .gallery-caption{font-size: 10px;margin: 0;color: #6d4c37;}
.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;}

figcaption {font-size: 10px;line-height: 1.5;text-align: center;margin-top:3px;}
