@charset "utf-8";

/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;

	font-size: 1em;
}

body {
	font-size: 62.5%;
}

body,
table,
input,
textarea,
select,
option {
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, メイリオ, sans-serif;
}

article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary {
	display: block;
}

ol,
ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

:focus {
	outline: 0;
}

ins {
	text-decoration: none;
}

del {
	text-decoration: line-through;
}

img {
	vertical-align: top;
}

a,
a:link {
	color: #333;
	text-decoration: none;
}

a:visited {
	color: #333;
}

a:hover {
	color: #333;
}

a:active {
	color: #333;
}

/*------------------------------------------------------------
	書式設定
------------------------------------------------------------*/
/* テキストの位置 */
.taLeft {
	text-align: left !important;
}

.taCenter {
	text-align: center !important;
}

.taRight {
	text-align: right !important;
}

@media all and (max-width: 767px) {
	.tLsp {
		text-align: left !important;
	}
}

/* フォントの大きさ（プラス） */
.fsP1 {
	font-size: 1.08em !important;
}

.fsP2 {
	font-size: 1.16em !important;
}

.fsP3 {
	font-size: 1.24em !important;
}

.fsP4 {
	font-size: 1.32em !important;
}

.fsP5 {
	font-size: 1.4em !important;
}

/* フォントの大きさ（マイナス） */
.fsM1 {
	font-size: 0.92em !important;
}

.fsM2 {
	font-size: 0.84em !important;
}

.fsM3 {
	font-size: 0.76em !important;
}

.fsM4 {
	font-size: 0.68em !important;
}

.fsM5 {
	font-size: 0.6em !important;
}

/* フォントの太さ */
.fwNormal {
	font-weight: normal !important;
}

.fwBold {
	font-weight: bold !important;
}

/*------------------------------------------------------------
	微調整用クラス（※多用しないこと）
------------------------------------------------------------*/
.mt0 {
	margin-top: 0 !important;
}

.mb0 {
	margin-bottom: 0 !important;
}

/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
* html .clearfix {
	zoom: 1;
}

*+html .clearfix {
	zoom: 1;
}

.clearfix:after {
	height: 0;
	visibility: hidden;
	content: ".";
	display: block;
	clear: both;
}

.new-red {
	color: #D72E3D;
}

.h2_icon01 {
	background: url(../img/common/h2_icon01.png) no-repeat left center;
	padding-left: 20px;
	font-weight: bold;
	font-size: 24px;
	margin-bottom: 24px;
}

h2.h2_icon02 {
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	font-size: 24px;
	margin-bottom: 24px;
}

span.h2_l {
	font-size: 38px;
	color: #d72f3d;
}

h2.h2_icon02 span.h2_inner {
	position: relative;
	display: inline-block;
}

h2.h2_icon02 span.h2_inner::before {
	content: "";
	position: absolute;
	left: -28px;
	background-image: url(../img/common/h2_icon02_before.png);
	background-repeat: no-repeat;
	width: 24px;
	height: 24px;
	background-size: contain;
}

h2.h2_icon02 span.h2_inner::after {
	content: "";
	position: absolute;
	right: -30px;
	background-image: url(../img/common/h2_icon02_after.png);
	background-repeat: no-repeat;
	width: 24px;
	height: 24px;
	background-size: contain;
}

h2.h2_red {
	background: #d72f3d;
	text-align: center;
	color: #fff;
	font-size: 22px;
	padding: 10px 0;
	margin-bottom: 0;
	z-index: 2;
	position: relative;
}

h2.h2_b {
	background-color: #0B1F44;
	text-align: center;
	color: #fff;
	font-size: 24px;
	padding: 10px 0;
	font-weight: bold;
	margin-bottom: 60px;
}

a.btn_new_red {
	background-color: #D72E3D;
	background-image: url(../img/common/btn_arrow.png);
	background-repeat: no-repeat;
	background-position: 96% center;
	width: 300px;
	display: block;
	text-align: center;
	color: #fff;
	height: 50px;
	line-height: 50px;
	font-weight: bold;
	letter-spacing: 2px;
	margin: 30px 0;
	transition-duration: .2s;
}

a.btn_new_red:hover {
	color: #fff;
	text-decoration: none;
	opacity: 0.6;
}

@media all and (max-width: 767px) {

	a.btn_new_red {
		width: 100%;
		max-width: 300px;
		margin: 40px auto;
	}


	h2.h2_b {
		margin-bottom: 24px;
		font-size: 20px;
	}


	h2.h2_icon02 {
		font-size: 18px;
		margin: 20px auto 40px;
	}


	h2.h2_icon02 span.h2_inner::before {
		width: 18px;
		height: 18px;
		left: -22px;
	}

	h2.h2_icon02 span.h2_inner::after {
		width: 18px;
		height: 18px;
		right: -22px;
	}
}

.cta_s {
	background: #172244;
	padding: 20px 0;
	margin: 40px 0 60px;
}

.cta_s a:hover {
	opacity: 0.7;
}

.faq {
	margin-top: 60px;
}

.faq a.btn_new_red {
	margin: 40px auto;
}

.difference {
	padding: 50px 0 0;
	background-color: #0D2248;
}

.difference p {
	text-align: left !important;
}

.difference .diff-msg {
	font-size: 18px;
	margin-bottom: 15px;
}

.difference .diff-msg span {
	font-size: 24px;
}

.difference .diff-inner {
	display: flex;
	/* gap: 20px; */
	padding-bottom: 100px;
	align-items: end;
	justify-content: space-between;
}

.difference .diff-inner a.btn_new_red {
	position: relative;
	left: 30px;
	margin-bottom: 0;
	z-index: 1;
}

.difference .diff-inner iframe {
	width: 48%;
}

.difference .content {
	position: relative;
	padding-bottom: 40px;
}

.caseBox .difference .content {
	width: 1120px;
	padding: 0;
	padding-left: 50px;
}

.difference .h2_icon01 {
	position: relative;
	color: #fff;
}

.difference .h2_icon01::after {
	content: "";
	position: absolute;
	width: calc(100% - 176px);
	height: 1px;
	background-color: #fff;
	top: calc(50% - 1px);
	right: 0;
}

.difference .diff-msg-wrp {
	color: #fff;
	max-width: 750px;
}

.difference .diff-msg {
	font-weight: bold;
	font-size: 20px;
	line-height: 1.8;
}

.difference .diff-msg span {
	color: #FFD800;
	font-size: 30px;
	margin-left: 5px;
	margin-right: 5px;
	letter-spacing: 2px;
}

.difference .diff-msg-content {
	line-height: 1.8;
}

.difference .imgList li:nth-child(3n) {
	padding-right: 0;
}

.difference .txt {
	margin-bottom: 23px;
	line-height: 1.75;
	text-align: center;
}

.difference.content {
	position: relative;
	padding-bottom: 40px;
}

.difference.content::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	width: 300px;
	height: 100%;
	background-image: url(../img/index/about_bg.png);
	background-repeat: no-repeat;
	background-size: contain;
}

.difference.h2_icon01 {
	position: relative;
	color: #fff;
}

.difference.h2_icon01::after {
	content: "";
	position: absolute;
	width: calc(100% - 176px);
	height: 1px;
	background-color: #fff;
	top: calc(50% - 1px);
	right: 0;
}

.difference.diff-msg-wrp {
	color: #fff;
}

.difference.diff-msg {
	font-weight: bold;
	font-size: 22px;
	line-height: 1.8;
}

.difference.diff-msg span {
	color: #FFD800;
	font-size: 30px;
	margin-right: 7px;
	letter-spacing: 2px;
}

.difference.diff-msg-content {
	line-height: 1.8;
}

.difference.imgList li:nth-child(3n) {
	padding-right: 0;
}

.difference.txt {
	margin-bottom: 23px;
	line-height: 1.75;
	text-align: center;
}


.h2_new {
	background-image: url(../img/common/h2_bg.png);
	background-repeat: no-repeat;
	height: 336px;
	background-size: 1300px;
}

.h2_new span.h2_new_inner {
	background-color: #0B1F44;
	color: #fff;
	display: block;
	position: relative;
	right: -40%;
	top: 40%;
	height: 130px;
	line-height: 100px;
	padding: 15px 0 0 30px;
	font-weight: bold;
}

.h2_new_inner span {
	height: 100px;
	display: block;
	border-right: 1px solid #fff;
	width: 320px;
	font-size: 28px;
	letter-spacing: 2px;
}

@media all and (max-width: 767px) {


	.faq {
		padding: 40px 16px;
		margin-top: 0;
	}

	.difference {
		padding: 21px 7px 28px;
	}

	.difference.h2_icon01::after {
		width: calc(100% - 136px);
	}

	.difference.content {
		padding: 20px 0 40px;
	}

	.differenceh2 {
		margin: 10px 0 20px;
		font-size: 18px;
	}

	.difference.diff-inner {
		display: block;
	}

	.difference.diff-inner iframe {
		width: 100%;
		height: 50vw;
	}

	.difference.content::after {
		content: none;
	}

	.difference {
		padding: 20px 16px 0;
	}

	.difference .content::after {
		content: none;
	}

	.caseBox .difference .content {
		padding-left: 0;
	}

	.caseBox .difference .content {
		width: 100%;
	}

	.difference .diff-msg {
		font-size: clamp(15px, 3.5vw, 20px);
	}

	.difference .diff-inner {
		display: block;
		padding-bottom: 10px;
	}

	.difference .diff-msg span {
		font-size: clamp(20px, 4.5vw, 30px);
	}

	.difference .diff-inner a.btn_new_red {
		margin: 30px auto;
		left: 0;
	}

	.cta_s {
		padding: 16px;
	}

	.h2_new {
		height: 200px;
		background-size: cover;
		margin-bottom: 0;
	}

	.h2_new span.h2_new_inner {
		top: 68px;
		height: 132px;
	}

	.h2_new_inner span {
		font-size: 18px;
	}

}

/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
	min-width: 1040px;
	color: #333;
	font-size: 16px;
	line-height: 1.5;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	background-color: #FFF;
	overflow-x: hidden;
}

#container {
	text-align: left;
	min-width: 1040px;
	overflow: hidden;
}

#main {}

a[href^="tel:"] {
	cursor: default;
	pointer-events: none;
	text-decoration: none !important;
}

.sp {
	display: none !important;
}

img {
	max-width: 100%;
	height: auto;
}

.fb {
	font-weight: bold;
}

.cb {
	clear: both;
}

.pr {
	position: relative;
}

.oh {
	overflow: hidden;
}

.font-min {
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
}

@media all and (max-width: 767px) {

	body {
		min-width: inherit;
		font-size: 15px;
		min-width: 100%;
	}

	#container {
		min-width: 100%;
	}

	a:hover,
	a:hover img {
		opacity: 1 !important;
	}

	.sp {
		display: block !important;
	}

	.pc {
		display: none !important;
	}

	a[href^="tel:"] {
		cursor: pointer;
		pointer-events: auto;
	}

	#main {
		overflow: hidden;
	}

	.w94sp {
		overflow: hidden;
		width: 94%;
		margin-left: auto;
		margin-right: auto;
	}

}

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

	/*-----------------------------*/
	.no320,
	.sp.no320 {
		display: none !important;
	}
}

/*-----------------------------*/

/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
#gHeader {
	width: 1100px;
	left: 50%;
	position: fixed;
	transform: translateX(-50%);
	top: 20px;
	background: #fff;
	box-shadow: 3px 2px 10px #aaa;
	border-radius: 12px;
	z-index: 9;
}

#gHeader * {
	box-sizing: border-box;
}

#gHeader h1 {
	display: none;
}

#gHeader .hInner {
	flex-wrap: wrap;
}

#gHeader .lBox {
	float: left;
	margin-right: 10px;
}

#gHeader .logo {
	background: #0b2044;
	padding: 13px 20px;
	width: 193px;
	border-radius: 10px 0 0 10px;
}

#gHeader .lBox h1 {
	padding: 2px 0 1px;
	color: #fff;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
	font-size: 12px;
	letter-spacing: 1.5px;
}

#gHeader .lBox .logo img {
	margin-left: -1px;
}

#gHeader .rBox {
	float: right;
}

#gHeader .rBox .tel {
	float: left;
	position: relative;
	padding-right: 15px;
	display: flex;
	align-items: center;
}

#gHeader .rBox .tel img {
	max-width: 150px;
}

#gHeader .rBox .tel .fb {
	position: absolute;
	bottom: 2px;
	right: 0;
}

#gHeader .rBox .tel a:hover .fb {
	opacity: .8;
	-webkit-transition: all .4s linear;
	transition: all .4s linear;
}


#gHeader .rBox .linkList {
	float: right;
	display: flex;
	margin: 0;
}

#gHeader .rBox .linkList li {
	padding: 6px 0px 6px 8px;
}

#gHeader .rBox .linkList li a {}


#gHeader .rBox .linkList li a:hover {
	opacity: 1;
	background: #455675;
	-webkit-transition: all .4s linear;
	transition: all .4s linear;
}

#gHeader .rBox .linkList li:first-child a:hover {
	opacity: 1;
	background: #498a4b;
}

#gHeader .rBox .linkList li img {
	float: left;
}

#gHeader .rBox .linkList li span {
	display: block;
	padding-left: 33px;
}

@media all and (min-width: 768px) {
	.spBox {
		display: none !important;
	}
}

@media all and (max-width: 767px) {
	#gHeader .hInner {
		width: auto;
		position: relative;
		background: #0a2144;
	}

	#gHeader .lBox {
		width: auto;
	}

	#gHeader .lBox h1 {
		margin-right: -20px;
		font-size: 11px;
		padding: 0 0 10px;
		letter-spacing: 0;
	}

	#gHeader .lBox .logo {
		width: 116px;
		border-radius: 0;
		height: 66px;
		padding: 16px 0 16px 10px;
	}

	#gHeader .rBox {
		/*display: none;*/
	}

	#gHeader .rBox .tel {
		margin-right: 50px;
		margin-top: 7px;
	}


	#gHeader .spLinkUl {
		border-top: 1px solid #fff;
	}

	.menu {
		/* float: right;
  margin-top: 17px;
  z-index: 999999;*/
	}

	#spNav .menu .closeImg {
		display: none;
	}

	#spNav .menu.on .menuImg {
		display: none;
	}

	#spNav .menu.on .closeImg {
		display: block;
	}

	#spNav {
		display: none;
		position: fixed;
		top: 0px;
		left: 0;
		right: 0;
		width: 100%;
		overflow: visible;
		z-index: 999999;
	}


	#spNav .menu {
		position: relative;
		z-index: 999999;
		width: 52px;
		height: 52px;
		display: block;
		content: "";
		position: absolute;
		top: 7px;
		right: 4px;
		display: inline-block;
	}

	#spNav .menu img {
		display: block;
	}

	#spNav.fixed .menu {
		position: fixed;
	}

	#gHeader {
		width: 100%;
		top: 0;
		border-radius: 0;
	}

	#gHeader .spLinkUl li {
		float: left;
		width: 33.33333%;
	}

	#gHeader .spLinkUl li a {
		padding: 10px 2px 8px 12px;
		color: #fff;
		font-size: 12px;
		display: block;
		font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
		border-right: 1px solid #fff;
	}

	#gHeader .spLinkUl li:last-child a {
		border-right: none;
		background: #147118;
	}

	#gHeader .spLinkUl li img {
		padding-top: 5px;
		float: left;
	}

	#gHeader .spLinkUl li .info {
		max-width: 110px;
		margin: 0 auto;
		display: block;
	}

	#gHeader .spLinkUl li .info span {
		padding-left: 34px;
		display: block;
	}

	.spBox {
		/*display: none;*/
		position: absolute;
		padding-top: 92px;
		top: 0;
		width: 100%;
		z-index: 10000;
		height: 91vh;
		overflow-y: scroll;
		padding-bottom: 40px;

	}

	#spNav.fixed .spBox {
		padding-top: 82px;
		background-color: #162244;
	}

	.spBox .infoSp {
		padding-bottom: 80px;
		background-color: #162244;
	}

	.spBox .spNavi {
		margin-bottom: 15px;
		border-bottom: 1px solid #fff;
	}

	.spBox .spNavi li {
		float: left;
		width: 52%;
	}


	.spBox .spNavi li a {
		padding: 14px 5px 14px 30px;
		display: block;
		color: #fff;
		font-size: 14px;
		border-top: 1px solid #fff;
		background: url(../img/common/sp_icon06.png) no-repeat left 8px center;
		background-size: 20px auto;
	}

	.spBox .spNavi li:nth-child(2n) {
		width: 48%;
		float: right;
	}

	.spBox .spNavi li:last-child {
		width: 100%;
	}

	.spBox .spUl {
		margin: 0 8px;
	}

	.spBox .spUl li {
		margin-bottom: 13px;
		float: left;
		width: 100%;
	}

	.spBox .spUl li:last-child {
		margin: 0;
	}

	.spBox .spUl li:nth-child(2) {
		margin-bottom: 9px;
	}

	.spBox .spUl li:nth-child(3) {
		margin-bottom: 8px;
	}

	.spBox .spUl img {
		width: 100%;
	}
}

/*------------------------------------------------------------
	gNavi
------------------------------------------------------------*/
#gNavi {
	background-color: #fff;
	float: left;
	margin-top: 24px;
}

#gNavi ul {
	margin: 0;
}

#gNavi ul li {
	float: left;
	text-align: center;
}

#gNavi li a {
	padding: 6px;
	font-weight: bold;
	font-size: 13px;
}

#gNavi li a:hover {
	color: #fff;
	background-color: #A82224;
	-webkit-transition: all .4s linear;
	transition: all .4s linear;
}

@media all and (max-width: 767px) {
	#gNavi {
		display: none;
	}
}

/*------------------------------------------------------------
	パンクズリスト
------------------------------------------------------------*/
#pagePath {
	width: 1000px;
	margin: 1px auto 5px;
}

#pagePath li {
	display: inline;
	color: #333;
	font-size: 12px;
}

#pagePath li a:hover {
	text-decoration: underline;
}

@media all and (max-width: 767px) {
	#pagePath {
		width: auto;
		padding: 4px 7px 0;
		margin: 0 auto 4px;
	}

	#pagePath li a:hover {
		text-decoration: none;
	}

}

/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#gFooter {
	padding-top: 12px;
	border-top: 1px solid #CBCBCB;
}

#gFooter .fNavi {
	margin-bottom: 14px;
	padding-bottom: 15px;
	text-align: center;
	border-bottom: 1px solid #CBCBCB;
}

#gFooter .fNavi li {
	margin-right: 5px;
	color: #221815;
	font-size: 14px;
	line-height: 1.6;
	display: inline-block;
}

#gFooter .fNavi li a {
	margin-right: 8px;
	color: #221815;
}

#gFooter .fNavi li a:hover {
	text-decoration: underline;
}

#gFooter .fLogo {
	margin-bottom: 13px;
	text-align: center;
}

#gFooter .content p {
	margin-bottom: 12px;
	line-height: 1.7;
	text-align: center;
}

#gFooter .content .txt01 {
	font-size: 14px;
}

#gFooter .content .txt01 span {
	margin-bottom: 1px;
	display: block;
	font-size: 16px;
}

#gFooter .content .txt02 {
	margin-bottom: 15px;
	font-size: 14px;
}

#gFooter .fLink {
	margin-bottom: 16px;
	text-align: center;
}

#gFooter .fLink a {
	display: inline-block;
}

#gFooter .fLink a:hover {
	opacity: 0.7;
}

#gFooter .copyright {
	padding: 5px 0;
	color: #fff;
	text-align: center;
	background-color: #162244;
}

#gFooter .copyright p {
	font-size: 12px;
	letter-spacing: 1px;
}

.fixedImg {
	position: fixed;
	right: 0;
	top: 60px;
	z-index: 1000;
}

@media all and (max-width: 767px) {
	#gFooter {
		padding-top: 0;
		border: none;
	}

	#gFooter .fNavi {
		padding: 0;
		margin: 0 0 26px;
		overflow: hidden;
		border: none;
		border-top: 1px solid #CBCBCB;
	}

	#gFooter .fNavi li {
		margin-right: 5px;
		font-size: 17px;
		line-height: 1.6;
		float: left;
		width: 100%;
		text-align: left;
	}

	#gFooter .fNavi li a {
		display: block;
		padding: 11px 10px 11px 48px;
		margin: 0;
		background: url(../img/common/sp_icon05.png) no-repeat left 22px center;
		background-size: 7.5px auto;
		border-bottom: 1px solid #CBCBCB;
	}

	#gFooter .fNavi li a:hover {
		text-decoration: none;
	}

	#gFooter .fLogo {
		margin-bottom: 26px;
	}

	#gFooter .fLogo a {
		display: block;
		width: 176px;
		margin: 0 auto;
	}

	#gFooter .fLogo img {
		margin: 0 auto;
	}

	#gFooter .content {
		padding: 0;
	}

	#gFooter .content p {
		margin-bottom: 12px;
		line-height: 1.7;
	}

	#gFooter .content .txt01 {
		margin: 0 30px 23px;
		font-size: 15px;
		line-height: 1.65;
		text-align: left;
	}

	#gFooter .content .txt01 .sp {
		margin: -3px 0 0 7px;
		display: inline-block !important;
		vertical-align: middle;
	}

	#gFooter .content .txt01 span {
		margin-bottom: -2px;
		font-size: 19px;
	}

	#gFooter .content .txt02 {
		margin: 0 8px 6px;
		font-size: 13px;
		line-height: 1.55;
		text-align: left;
	}

	#gFooter .fLink {
		display: none;
	}

	#gFooter .copyright {
		padding: 4px 0 60px;
		color: #221815;
		background: none;
		border-top: 2px solid #162244;
	}

	#gFooter .copyright p {
		font-size: 12px;
	}

	.fixedImg {
		display: none;
	}

	.fixedImg.fixed_btn {
		display: block;
		margin-top: auto;
		position: fixed;
		right: 0;
		left: 0;
		top: auto;
		bottom: 0;
		z-index: 1000;
	}

	.fixedImg ul {
		border-top: 1px solid #fff;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-justify-content: space-between;
		-ms-flex-pack: space-between;
		justify-content: space-between;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		margin-bottom: 0;
	}

	.fixedImg li {
		width: 100%;
		background: #0b1f44;
		border-left: 1px solid #fff;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}

	.fixedImg li:first-child {
		border-left: 0;
	}

	.fixedImg li:nth-child(3) {
		background: #248c1d;
	}

	.fixedImg li:last-child {
		background: #a41818;
	}


}

/*------------------------------------------------------------
	content
------------------------------------------------------------*/
.content {
	margin: 0 auto;
	width: 1000px;
	box-sizing: border-box;
}

.page-top .content,
.page-estimate .content,
.page-case .content,
.page-voice .content,
.comContact .content {
	width: 1100px;
}


/*------------------------------------------------------------
	comLink
------------------------------------------------------------*/
.comLink a {
	margin: 0 auto;
	padding: 12px 25px 12px 0;
	width: 310px;
	color: #fff;
	font-weight: bold;
	font-size: 18px;
	display: block;
	text-align: center;
	background: #A82223 url(../img/common/icon01.png) no-repeat right 20px center;
	border-radius: 3px;
	box-sizing: border-box;
}

.comLink a:hover {
	opacity: 0.7;
}

/*------------------------------------------------------------
	headLine01
------------------------------------------------------------*/
.headLine01 {
	margin-bottom: 19px;
	padding: 13px 10px;
	color: #fff;
	font-size: 24px;
	text-align: center;
	letter-spacing: 1px;
	background-color: #162244;
}

/*------------------------------------------------------------
	headLine02
------------------------------------------------------------*/
.headLine02 {
	margin-bottom: 24px;
	padding: 31px 10px 27px;
	color: #fff;
	font-size: 24px;
	text-align: center;
	letter-spacing: 4px;
	background: url(../img/common/head_line02_bg.gif) repeat left top;
}

@media all and (max-width: 767px) {

	/*------------------------------------------------------------
		content
	------------------------------------------------------------*/
	.page-top .content,
	.page-estimate .content,
	.page-case .content,
	.comContact .content,
	.content {
		width: auto;
		padding: 0 8px;
	}

	/*------------------------------------------------------------
		comLink
	------------------------------------------------------------*/
	.comLink a {
		padding: 10px 25px 10px 0;
		letter-spacing: 1.4px;
		width: 316px;
		font-size: 19px;
		background: #A82223 url(../img/common/sp_icon01.png) no-repeat right 20px center;
		background-size: 19px auto;
	}

	/*------------------------------------------------------------
		headLine01
	------------------------------------------------------------*/
	.headLine01 {
		margin-bottom: 19px;
		padding: 6px 10px;
		font-size: 19px;
	}

	/*------------------------------------------------------------
		headLine02
	------------------------------------------------------------*/
	.headLine02 {
		margin-bottom: 16px;
		padding: 18px 10px 16px;
		font-size: 19px;
		letter-spacing: 3px;
		background: url(../img/common/head_line02_bg.gif) repeat left top;
		background-size: 37px auto;
	}
}


/*------------------------------------------------------------
	mainVisual
------------------------------------------------------------*/
.mainVisual {
	background: url(../img/index/fv_bg.png) no-repeat left bottom;
}

.mainVisual .info {
	margin: 0 auto;
	width: 1001px;
	padding-right: 4px;
}

.mainVisual .linkBox {
	padding: 17px 0 16px;
	background-color: #162244;
}

.mainVisual .infoBox {
	width: 1000px;
	margin: 0 auto;
}

.mainVisual .infoBox li {
	float: left;
}

.mainVisual .infoBox li a {
	display: block;
}

.mainVisual .infoBox li:last-child {
	float: right;
}

.mainVisual .infoBox li a:hover {
	opacity: 0.7;
}

.indexBox .sec01 .imgBox {
	margin-bottom: 34px;
	text-align: center;
}

.indexBox .sec01 .txtImg {
	margin-left: 89px;
}

.indexBox .sec02 {
	padding: 50px 0;
}

.indexBox .sec02 h2 {
	margin-bottom: 50px;
	text-align: center;
}

.indexBox .sec02 .btn_new_red {
	margin: 40px auto;
}



/*------------------------------------------------------------
	mainVisual
------------------------------------------------------------*/
.mainVisual {
	background: url(../img/index/fv_bg.png) no-repeat right bottom;
	padding-top: 160px;
	padding-bottom: 100px;
	background-size: 35%;
}

.mainVisual .topBox {
	position: relative;
}

.mainVisual .msg {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	width: 56vw;
}

.mainVisual .msg .msg_upper {
	display: flex;
	background: #0D2248;
	color: #fff;
	padding: 16px 22px;
	align-items: center;
}

.mainVisual .msg .msg_upper .msg_content {
	font-size: 27px;
	font-weight: bold;
	letter-spacing: 2px;
	margin-bottom: 0;
	border-right: 1px solid #fff;
	padding-right: 20px;
	margin-right: 15px;
}

.mainVisual .msg .msg_upper .msg_sub ul {
	margin-bottom: 0;
}

.mainVisual .msg .msg_upper .msg_sub ul li {
	position: relative;
	padding-left: 20px;
	font-weight: bold;
	font-size: 15px;
	margin-bottom: 6px;
}

.mainVisual .msg .msg_upper .msg_sub ul li:last-child {
	margin-bottom: 0;
}

.mainVisual .msg .msg_upper .msg_sub ul li::before {
	content: "■";
	left: 0;
	position: absolute;
}

.mainVisual .msg .msg_lower {
	background-color: rgb(255 255 255 / 70%);
	padding: 6px 22px;
}

.mainVisual .msg .msg_lower p {
	margin-bottom: 0;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.1em;
}

.mainVisual .info {
	margin: 0 auto;
	width: 1200px;
	padding-right: 4px;
}

.mainVisual .linkBox {
	padding: 17px 0 16px;
	background-color: #162244;
}

.mainVisual .infoBox {
	width: 1000px;
	margin: 0 auto;
}

.mainVisual .infoBox li {
	float: left;
}

.mainVisual .infoBox li a {
	display: block;
}


.mainVisual .infoBox li:last-child {
	float: right;
}

.mainVisual .infoBox li a:hover {
	opacity: 0.7;
}

.indexBox .sec01 {
	position: relative;
	background-color: #0D2248;
}

.indexBox .sec01::before {
	content: "";
	position: absolute;
	background-color: #fff;
	width: 40vw;
	top: -60px;
	height: 100%;
}

.indexBox .sec01 .content {
	background-color: #fff;
	top: -60px;
	position: relative;
	padding: 40px 50px;
}

.indexBox .sec01 .content .problems {
	display: flex;
	align-items: center;
}

.indexBox .sec01 .content .problems .problems_text {
	margin-left: 40px;
}

.indexBox .sec01 .content .problems .problems_text p {
	line-height: 1.8;
}

.indexBox .sec01 .content .problems .problems_text p .new-red {
	font-weight: bold;
}

.indexBox .sec01 .content .problems .problems_text .problems_msg {
	font-size: 20px;
	line-height: 1.8;
	font-weight: bold;
}

.indexBox .sec01 .imgBox {
	margin-bottom: 34px;
	text-align: center;
}

.indexBox .sec01 .txtImg {
	margin-left: 89px;
}

.indexBox .sec03 {
	padding: 60px 0 0;
	background-color: #0D2248;
}

.indexBox .sec03 .about-msg {
	font-size: 18px;
	margin-bottom: 10px;
}

.indexBox .sec03 .about-msg span {
	font-size: 24px;
}

.indexBox .sec03 .about-inner {
	display: flex;
	gap: 20px;
}

.indexBox .sec03 .about-inner iframe {
	width: 40%;
}

.indexBox .content {
	padding: 0 50px;
	box-sizing: border-box;
}

.indexBox .conten::after {
	content: "";
	background-image: url(../img/index/sec04_bg.gif);
}

.indexBox .sec03 .content {
	position: relative;
	padding-bottom: 40px;
}

.indexBox .sec03 .content::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	width: 300px;
	height: 100%;
	background-image: url(../img/index/about_bg.png);
	background-repeat: no-repeat;
	background-size: contain;
}

.indexBox .sec03 .h2_icon01 {
	position: relative;
	color: #fff;
}

.indexBox .sec03 .h2_icon01::after {
	content: "";
	position: absolute;
	width: calc(100% - 176px);
	height: 1px;
	background-color: #fff;
	top: calc(50% - 1px);
	right: 0;
}

.indexBox .sec03 .about-msg-wrp {
	color: #fff;
}

.indexBox .sec03 .about-msg {
	font-weight: bold;
	font-size: 22px;
	line-height: 1.8;
}

.indexBox .sec03 .about-msg span {
	color: #FFD800;
	font-size: 30px;
	margin-right: 7px;
	letter-spacing: 2px;
}

.indexBox .sec03 .about-msg-content {
	line-height: 1.8;
}

.indexBox .sec03 .imgList li:nth-child(3n) {
	padding-right: 0;
}

.indexBox .sec03 .txt {
	margin-bottom: 23px;
	line-height: 1.75;
	text-align: center;
}

.indexBox .sec04 {
	padding: 60px 0 60px;
}

.person {
	display: flex;
	align-items: flex-start;
	gap: 30px;
}

.person .image {
	max-width: 50%;
}

.person_content {
	flex: 1;
}

.person_content p {
	line-height: 1.8;
	font-size: 14px;
}

.person_content .name {
	border-bottom: 1px solid #0B1F44;
	margin-bottom: 10px;
}

.person_content .name p {
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 2px;
}

.person_content .name p span {
	font-size: 14px;
	margin-right: 6px;
}

.indexBox .sec05 {
	padding: 0 0 50px;
}

.indexBox .sec05 .person {
	margin-bottom: 40px;
}

.indexBox .sec05 .person:nth-child(2n - 1) {
	flex-direction: row-reverse;
}

.indexBox .sec05 a.btn_new_red {
	margin: 60px auto 30px;
}

.indexBox .sec06 {
	padding-bottom: 64px;
}

.indexBox .sec06 .top {
	margin-bottom: 17px;
	text-align: center;
}

.indexBox .sec06 a.btn_new_red {
	margin: 0 auto 40px;
}

.indexBox .sec07 {
	padding-bottom: 56px;
}

.indexBox .sec07 .headLine01 {
	margin: 0;
}

.indexBox .sec08 {
	padding-bottom: 42px;
}

.indexBox .sec08 .headLine01 {
	margin: 0;
}

.indexBox .sec08 .photoImg {
	margin-bottom: 30px;
}

.indexBox .sec08 .photoImg img {
	width: 100%;
}

.indexBox .sec08 p {
	margin: 0 0 26px 33px;
	line-height: 1.8;
}

.indexBox .sec09 .headLine01 {
	margin: 0;
}

.indexBox .sec09 .linkList li {
	float: left;
	width: 50%;
}

.indexBox .sec09 .linkList li a {
	display: block;
	position: relative;
}

.indexBox .sec09 .linkList li img {
	width: 100%;
}

.indexBox .sec09 .linkList li .txtBox {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

.indexBox .sec09 .linkList li .txtBox .info {
	display: table;
	width: 100%;
	height: 100%;
	text-align: center;
}

.indexBox .sec09 .linkList li .txtBox .infoTxt {
	color: #fff;
	display: table-cell;
	vertical-align: middle;
}

.indexBox .sec09 .linkList li .txtBox .top {
	margin-bottom: 70px;
	font-size: 28px;
	display: inline-block;
	font-weight: bold;
	border-bottom: 1px solid #fff;
}

.indexBox .sec09 .linkList li .txtBox .txt {
	display: block;
}

.indexBox .sec09 .linkList01 li {
	width: 33.3333%;
}

.indexBox .sec09 .linkList01 li .txtBox .top {
	margin-bottom: 37px;
}

.indexBox .sec09 .linkList li a {
	display: block;
	position: relative;
}

.indexBox .sec09 .linkList li a .imgBox {
	position: relative;
	overflow: hidden;
	z-index: -1;
	display: block;
}

.indexBox .sec09 .linkList li a .imgBox:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	background-postion: center center;
	background-repeat: no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
	-webkit-transition: all 400ms cubic-bezier(0.19, 1, 0.22, 1);
	-moz-transition: all 400ms cubic-bezier(0.19, 1, 0.22, 1);
	-o-transition: all 400ms cubic-bezier(0.19, 1, 0.22, 1);
	transition: all 400ms cubic-bezier(0.19, 1, 0.22, 1);
	-webkit-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
	-moz-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
	-o-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
	-webkit-transform: scale(1.15);
	-moz-transform: scale(1.15);
	-ms-transform: scale(1.15);
	transform: scale(1.15);
}

.indexBox .sec09 .linkList li a .imgBox img {
	opacity: 0;
	visibility: hidden;
}

.indexBox .sec09 .linkList li a .bg01:before {
	background-image: url(../img/index/sec09_photo01.jpg);
}

.indexBox .sec09 .linkList li a .bg02:before {
	background-image: url(../img/index/sec09_photo02.jpg);
}

.indexBox .sec09 .linkList li a .bg03:before {
	background-image: url(../img/index/sec09_photo03.jpg);
}

.indexBox .sec09 .linkList li a .bg04:before {
	background-image: url(../img/index/sec09_photo04.jpg);
}

.indexBox .sec09 .linkList li a .bg05:before {
	background-image: url(../img/index/sec09_photo05.jpg);
}


.indexBox .sec09 .linkList li a:hover .imgBox:before {
	-webkit-transform: scale(1.05);
	-moz-transform: scale(1.05);
	-ms-transform: scale(1.05);
	transform: scale(1.05);
}

@media (max-width: 767px) {
	/*---------------------------------*/

	.indexBox .content {
		padding: 0 20px;
	}

	.indexBox .sec09 .linkList li a:hover .imgBox:before,
	.indexBox .sec09 .linkList li a .imgBox:before {
		-webkit-transform: scale(1.05);
		-moz-transform: scale(1.05);
		-ms-transform: scale(1.05);
		transform: scale(1.05);
	}


}

/*---------------------------------*/
.indexBox .sec09 .linkList li a .borders-lt:before {
	border-left: 5px solid #fff;
	content: '';
	position: absolute;
	width: 90%;
	height: 0;
	left: 5%;
	bottom: 5%;
	-webkit-transition: all 600ms cubic-bezier(1, 0, 0, 1);
	-moz-transition: all 600ms cubic-bezier(1, 0, 0, 1);
	-o-transition: all 600ms cubic-bezier(1, 0, 0, 1);
	transition: all 600ms cubic-bezier(1, 0, 0, 1);
	-webkit-transition-timing-function: cubic-bezier(1, 0, 0, 1);
	-moz-transition-timing-function: cubic-bezier(1, 0, 0, 1);
	-o-transition-timing-function: cubic-bezier(1, 0, 0, 1);
	transition-timing-function: cubic-bezier(1, 0, 0, 1);
	box-sizing: border-box;
}

@media (max-width: 767px) {

	/*---------------------------------*/
	.indexBox .sec09 .linkList li a .borders-lt:before {
		border-width: 2px;
		left: 2%;
		bottom: 4%;
		width: 96%;
	}
}

/*---------------------------------*/
.indexBox .sec09 .linkList li a .borders-lt:after {
	border-top: 5px solid #fff;
	content: '';
	position: absolute;
	width: 0;
	height: 90%;
	left: 5%;
	top: 5%;
	-webkit-transition: all 600ms cubic-bezier(1, 0, 0, 1);
	-moz-transition: all 600ms cubic-bezier(1, 0, 0, 1);
	-o-transition: all 600ms cubic-bezier(1, 0, 0, 1);
	transition: all 600ms cubic-bezier(1, 0, 0, 1);
	-webkit-transition-timing-function: cubic-bezier(1, 0, 0, 1);
	-moz-transition-timing-function: cubic-bezier(1, 0, 0, 1);
	-o-transition-timing-function: cubic-bezier(1, 0, 0, 1);
	transition-timing-function: cubic-bezier(1, 0, 0, 1);
	box-sizing: border-box;
}

@media (max-width: 767px) {

	/*---------------------------------*/
	.indexBox .sec09 .linkList li a .borders-lt:after {
		border-width: 2px;
		left: 2%;
		top: 4%;
		height: 92%;
	}
}

/*---------------------------------*/
.indexBox .sec09 .linkList li a .borders-rb:before {
	border-right: 5px solid #fff;
	content: '';
	position: absolute;
	width: 90%;
	height: 0;
	left: 5%;
	top: 5%;
	-webkit-transition: all 600ms cubic-bezier(1, 0, 0, 1);
	-moz-transition: all 600ms cubic-bezier(1, 0, 0, 1);
	-o-transition: all 600ms cubic-bezier(1, 0, 0, 1);
	transition: all 600ms cubic-bezier(1, 0, 0, 1);
	-webkit-transition-timing-function: cubic-bezier(1, 0, 0, 1);
	-moz-transition-timing-function: cubic-bezier(1, 0, 0, 1);
	-o-transition-timing-function: cubic-bezier(1, 0, 0, 1);
	transition-timing-function: cubic-bezier(1, 0, 0, 1);
	box-sizing: border-box;
}

@media (max-width: 767px) {

	/*---------------------------------*/
	.indexBox .sec09 .linkList li a .borders-rb:before {
		border-width: 2px;
		width: 96%;
		left: 2%;
		top: 4%;
	}
}

/*---------------------------------*/
.indexBox .sec09 .linkList li a .borders-rb:after {
	border-bottom: 5px solid #fff;
	content: '';
	position: absolute;
	width: 0;
	height: 90%;
	right: 5%;
	top: 5%;
	-webkit-transition: all 600ms cubic-bezier(1, 0, 0, 1);
	-moz-transition: all 600ms cubic-bezier(1, 0, 0, 1);
	-o-transition: all 600ms cubic-bezier(1, 0, 0, 1);
	transition: all 600ms cubic-bezier(1, 0, 0, 1);
	-webkit-transition-timing-function: cubic-bezier(1, 0, 0, 1);
	-moz-transition-timing-function: cubic-bezier(1, 0, 0, 1);
	-o-transition-timing-function: cubic-bezier(1, 0, 0, 1);
	transition-timing-function: cubic-bezier(1, 0, 0, 1);
	box-sizing: border-box;
}

@media (max-width: 767px) {

	/*---------------------------------*/
	.indexBox .sec09 .linkList li a .borders-rb:after {
		border-width: 2px;
		right: 2%;
		top: 4%;
		height: 92%;
	}
}

/*---------------------------------*/
.indexBox .sec09 .linkList li a:hover .borders-lt:before {
	height: 90%
}

.indexBox .sec09 .linkList li a:hover .borders-lt:after {
	width: 90%
}

.indexBox .sec09 .linkList li a:hover .borders-rb:before {
	height: 90%
}

.indexBox .sec09 .linkList li a:hover .borders-rb:after {
	width: 90%
}

@media (max-width: 767px) {

	/*---------------------------------*/
	.indexBox .sec09 .linkList li a:hover .borders-lt:before,
	.indexBox .sec09 .linkList li a .borders-lt:before,
	.indexBox .sec09 .linkList li a:hover .borders-rb:before,
	.indexBox .sec09 .linkList li a .borders-rb:before {
		height: 92%;
	}

	.indexBox .sec09 .linkList li a:hover .borders-lt:after,
	.indexBox .sec09 .linkList li a .borders-lt:after,
	.indexBox .sec09 .linkList li a:hover .borders-rb:after,
	.indexBox .sec09 .linkList li a .borders-rb:after {
		width: 96%;
	}

}

/*---------------------------------*/

@media all and (max-width: 767px) {
	/*---------------------------------*/

	.mainVisual {
		padding-top: 96px;
		padding-bottom: 0;
		background-image: url(../img/index/fv_bg_sp.png);
		background-size: 48%;
		background-position: 120% bottom;
	}

	.mainVisual .msg {
		position: relative;
		width: 76%;
		top: unset;
		transform: unset;
		margin-top: 10px;
		min-width: 280px;
	}

	.mainVisual .msg .msg_upper {
		display: block;
	}

	.mainVisual .msg .msg_upper .msg_content {
		margin-right: 0;
		border: none;
		border-bottom: 1px solid #fff;
		padding: 0 0 10px;
		margin-bottom: 10px;
		font-size: 20px;
	}

	.mainVisual .msg .msg_lower p {
		font-size: 15px;
	}

	.mainVisual .info {
		margin: 0 auto;
		width: auto;
		padding-right: 0;
	}

	.mainVisual img {
		width: 100%;
	}

	.mainVisual .linkBox {
		padding: 0;
		background: none;
	}

	.mainVisual .infoBox {
		width: auto;
	}

	.mainVisual .infoBox li {
		width: 49.7%;
	}

	.mainVisual .infoBox li img {
		width: 100%;
	}

	.indexBox .sec01 {
		padding-bottom: 37px;
		background-size: cover;
		padding: 20px 0 40px;
	}

	.indexBox .sec01::before {
		content: none;
	}

	.indexBox .sec01 .content {
		padding: 30px 16px;
		top: 0;
	}

	.indexBox .sec01 .content .problems {
		display: block;
	}

	.indexBox .sec01 .content .problems .problems_text {
		margin: 10px;
	}

	.indexBox .sec01 h2 {
		font-size: 20px;
		padding: 20px 10px 17px 15px;
		margin-bottom: 0;
	}

	.indexBox .sec01 .imgBox {
		margin-bottom: 36px;
	}

	.indexBox .sec01 .imgBox img {
		margin: 0 auto;
	}

	.indexBox .sec01 .txtImg {
		margin: 0 18px 0 10px;
		text-align: center;
	}

	.indexBox .sec01 .txtImg img {
		margin: 0 auto;
	}

	.indexBox .sec02 {
		padding: 28px 0 0;
	}

	.indexBox .sec02 h2 {
		margin-bottom: 40px;
		font-size: 18px;
	}

	.indexBox .sec02 h2.h2_icon02 span.h2_inner::after,
	.indexBox .sec02 h2.h2_icon02 span.h2_inner::before {
		content: none;
	}

	.indexBox .sec02 h2 img {
		margin: 0 auto;
	}

	.indexBox .sec02 .topTxt {
		margin-bottom: 10px;
		font-size: 20px;
	}

	.indexBox .sec02 .topTxt span {
		margin-top: 0;
		font-size: 16.5px;
	}

	.indexBox .sec02 .inner {
		padding: 0 8px 34px;
		display: block;
		box-sizing: border-box;
		background: none;
	}

	.indexBox .sec02 .inner .photoBox {
		margin-bottom: 23px;
		width: 100%;
		display: block;
	}

	.indexBox .sec02 .inner .photoBox img {
		width: 100%;
	}

	.indexBox .sec02 .inner .textBox {
		display: block;
		width: 100%;
	}

	.indexBox .sec02 .inner .textBox .title {
		margin-bottom: -1px;
		font-size: 16px;
	}

	.indexBox .sec02 .inner .textBox .info {
		width: auto;
		padding-left: 0;
	}

	.indexBox .sec02 .inner .textBox p {
		line-height: 1.6;
	}

	.indexBox .sec02 .inner01 {
		padding-bottom: 30px;
	}

	.indexBox .sec02 .inner01 .textBox .info {
		padding: 0;
		float: none;
	}

	.indexBox .sec03 {
		padding: 21px 7px 28px;
	}

	.indexBox .sec03 .h2_icon01::after {
		width: calc(100% - 136px);
	}

	.indexBox .sec03 .content {
		padding: 20px 0 40px;
	}

	.indexBox .sec03 h2 {
		margin: 10px 0 20px;
		font-size: 18px;
	}

	.indexBox .sec03 .about-inner {
		display: block;
	}

	.indexBox .sec03 .about-inner iframe {
		width: 81%;
		height: 134vw;
		margin: 0 auto 20px;
		display: block;
	}

	.indexBox .sec03 .content::after {
		content: none;
	}

	.indexBox .sec03 {
		padding: 20px 16px 0;
	}

	.sec03 a.btn_new_red {
		margin-bottom: 0;
	}

	.indexBox .sec04 {
		padding: 30px 0 0;
	}

	.indexBox .sec04 .content {
		padding: 0;
	}

	.person {
		display: block;
	}

	.person .image {
		max-width: 100%;
	}

	.person img {
		max-width: 100%;
	}

	.person_content {
		padding: 0 16px;
	}

	.indexBox .sec05 .person:nth-child(2n - 1) {
		flex-direction: unset;
	}

	.indexBox .sec05 {
		padding: 41px 0 43px;
		background-size: 44px auto;
	}

	.indexBox .sec05 .content {
		padding: 0;
	}

	.indexBox .sec05 .imgBox {
		margin-bottom: 26px;
	}

	.indexBox .sec05 .imgBox .photoBox {
		float: none;
		margin-bottom: 16px;
		text-align: center;
	}

	.indexBox .sec05 .imgBox .photoBox img {
		width: 84.5%;
		margin: 0 auto;
	}

	.indexBox .sec05 .imgBox .textBox {
		padding-top: 0;
		float: none;
		width: auto;
		margin: 0 7px;
	}

	.indexBox .sec05 .imgBox .title {
		margin: 0 3px 14px 0;
		text-align: center;
	}

	.indexBox .sec05 .imgBox .title img {
		margin: 0 auto;
		display: block;
		max-width: 100%;
	}

	.indexBox .sec05 .imgBox .textBox .txt01 {
		margin: 0 10px 13px 0;
		line-height: 1.6;
		font-size: 15px;
		letter-spacing: 1px;
	}

	.indexBox .sec05 .imgBox .textBox .txt02 {
		margin-bottom: 19px;
		line-height: 1.6;
		font-size: 15px;
	}

	.indexBox .sec05 .imgBox .textBox .txt03 {
		margin: 0;
		font-size: 16.5px;
		line-height: 1.7;
	}

	.indexBox .sec06 {
		padding: 40px 0 70px;
	}

	.indexBox .sec06 .content {
		padding: 0 7px;
	}

	.indexBox .sec06 .top {
		margin-bottom: 22px;
		text-align: left;
	}

	.indexBox .sec06 a.btn_new_red {
		margin: 40px auto 0;
	}

	.indexBox .sec07 {
		padding-bottom: 30px;
	}

	.indexBox .sec07 .content {
		padding: 0;
	}

	.indexBox .sec07 .headLine01 {
		margin: 0;
	}

	.indexBox .sec08 {
		padding-bottom: 1px;
	}

	.indexBox .sec08 .content {
		padding: 0;
	}

	.indexBox .sec08 .headLine01 {
		margin: 0;
	}

	.indexBox .sec08 .photoImg {
		margin-bottom: 15px;
	}

	.indexBox .sec08 .photoImg img {
		width: 100%;
	}

	.indexBox .sec08 p {
		margin: 0 5px 24px 8px;
		line-height: 1.6;
	}

	.indexBox .sec09 .headLine01 {
		margin: 0;
	}

	.indexBox .sec09 .linkList li {
		width: 100%;
	}

	.indexBox .sec09 .linkList li a {
		display: block;
		position: relative;
	}

	.indexBox .sec09 .linkList li img {
		width: 100%;
	}

	.indexBox .sec09 .linkList li .txtBox {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		padding-top: 30px;
		box-sizing: border-box;
	}

	.indexBox .sec09 .linkList li .txtBox .info {
		display: table;
		width: 100%;
		height: 100%;
		text-align: center;
	}

	.indexBox .sec09 .linkList li .txtBox .infoTxt {
		color: #fff;
		display: table-cell;
		vertical-align: middle;
	}

	.indexBox .sec09 .linkList li .txtBox .top {
		margin: 0 10px 26px;
		font-size: 18px;
		line-height: 1.3;
	}

	.indexBox .sec09 .linkList li .txtBox .txt {
		margin: 0 10px;
		font-size: 12px;
		line-height: 1.7;
	}

	.indexBox .sec09 .linkList01 li {
		width: 100%;
	}

	.indexBox .sec09 .linkList01 li .txtBox .top {
		margin-bottom: 26px;
	}

	.indexBox .spBtnLink {
		padding: 30px 8px 28px;
	}

	.indexBox .spBtnLink li {
		float: left;
		width: 100%;
	}

	.indexBox .spBtnLink li img {
		width: 100%;
	}

	.indexBox .spBtnLink li:last-child {
		margin-top: 20px;
	}
}

/*---------------------------------*/


/*------------------------------------------------------------
	campaign
------------------------------------------------------------*/


#campaign .bnr2020 {
	text-align: center;
	margin: 25px auto 30px;
}


#campaign .main_content .content {
	width: 936px;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}

#campaign .main_img {
	background: url(/img/campaign/bg01.jpg) no-repeat center 50%;
	background-size: cover;
	height: 527px;
	position: relative;
}

#campaign .main_img:before {
	display: block;
	content: "";
	width: 100%;
	height: 158px;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	position: absolute;
	background: #a41818;
}

#campaign .main_img .content {
	height: 527px;
	overflow-y: visible;
}

#campaign .main_img .content img {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	max-width: none;
}

#campaign .cam_bnr {
	background: url(/img/campaign/bg_campaign.png) no-repeat center 50%;
	height: 472px;
	margin: 24px auto 40px;
}

#campaign .cam_bnr ul {
	margin: 0 auto;
	padding-top: 232px;
	width: 728px;
	font-size: 0;
}

#campaign .cam_bnr ul li {
	display: inline-block;
}

#campaign .cam_bnr ul li.btn_line {
	margin-left: 20px;
}

a.op:hover {
	opacity: .8;
	-webkit-transition: all .4s linear;
	transition: all .4s linear;
}

@media all and (max-width: 767px) {
	/*-----------------------------*/

	#campaign .bnr2020 {
		margin: 12px auto;
	}

	#campaign .main_img {
		background: none;
		height: auto;
		width: 100%;
	}

	#campaign .main_img:before {
		display: none;
	}

	#campaign .main_img .content {
		height: auto;
		overflow-y: hidden;
		margin: 0;
		padding: 0;
	}

	#campaign .main_img .content img {
		position: static;
		max-width: 100%;
		width: 100%;
	}

	#campaign .cam_bnr {
		background: url(/img/campaign/sp/bg_campaign.png) no-repeat center top;
		background-size: 100% auto;
		height: 0;
		padding-top: 123.3%;
		margin: 0px auto 15px;
		position: relative;
	}

	#campaign .cam_bnr.mb0 {
		margin-bottom: 0;
	}

	#campaign .cam_bnr ul {
		margin: 0 auto;
		top: 53%;
		padding-top: 0;
		max-width: 85%;
		position: absolute;
		left: 0;
		right: 0;
		margin: auto;
	}

	#campaign .cam_bnr ul li {
		display: block;
		margin-bottom: 10px;
		background: #fff;
		padding: 0;
	}

	#campaign .cam_bnr ul li.btn_line {
		margin: 0 auto 10px;
	}

	#campaign .cam_bnr ul li a img {
		display: block;
		width: 100%;
	}

}

/*-----------------------------*/


#campaign .reason_box .box01 {
	padding-bottom: 36px;
	background: url(/img/index/sec01_bg.jpg) no-repeat center top;
	background-size: cover;
}

#campaign .fuki_box {
	background: url(/img/campaign/bg02.jpg);
	overflow: hidden;
	padding-top: 30px;
	margin-bottom: 20px;
}

#campaign .fuki_box h4 {
	font-size: 32px;
	border: 3px solid #a41818;
	background: #fff;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
	width: 783px;
	padding: 20px;
	text-align: center;
	margin: 0 auto 30px;
}

#campaign .fuki_box h4:after {
	border: solid transparent;
	content: '';
	height: 0;
	width: 0;
	pointer-events: none;
	position: absolute;
	border-color: rgba(200, 78, 89, 0);
	border-top-width: 20px;
	border-bottom-width: 20px;
	border-left-width: 12px;
	border-right-width: 12px;
	margin-left: -12px;
	border-top-color: #a41818;
	top: 100%;
	left: 50%;
}

@media all and (max-width: 767px) {
	/*-----------------------------*/

	#campaign .reason_box .box01 img {
		width: 100%;
	}

	#campaign .reason_box .box01 {
		padding-bottom: 0px;
		background: none;
		padding-top: 10px;
	}

	#campaign .reason_box .box01 h3 {}

	#campaign .main_content .content {
		padding: 0;
	}

	#campaign .fuki_box {
		padding-top: 14px;
		margin-bottom: 20px;
	}

	#campaign .fuki_box h4 {
		font-size: 15.5px;
		letter-spacing: -0.2px;
		border: 3px solid #a41818;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		border-radius: 5px;
		width: 91%;
		padding: 14px 2px;
		line-height: 1.9;
		margin: 0 auto 15px;
	}

	#campaign .fuki_box h4:after {
		border-top-width: 12px;
		border-bottom-width: 12px;
		border-left-width: 7px;
		border-right-width: 7px;
		margin-left: -7px;
	}

}

/*-----------------------------*/

@media all and (max-width: 320px) {
	/*-----------------------------*/

	#campaign .fuki_box h4 {
		font-size: 14px;
		width: 92%;
	}

}

/*-----------------------------*/

#campaign .featureBox .h3Ttl01 {
	margin-top: 0;
}

#campaign .featureBox .comBox_btm {
	margin-bottom: 55px;
	overflow: hidden;
}

#campaign .featureBox .comBox_btm .img img {
	float: left;
	padding-right: 56px;
}

#campaign .featureBox .comBox_btm h3 {
	margin-bottom: 18px;
}

#campaign .featureBox .comBox_btm p {
	line-height: 1.8;
}

#campaign .priceBox .borderBox {
	border: 0;
}

#campaign .priceBox .borderBox .title {
	margin: 0 0 32px;
}

#campaign .priceBox .sec01 .content {
	width: 1000px;
	max-width: 100%;
}

.indexBox .sec01 .content .problems .problems_text .problems_msg {
	line-height: 1.6;
	font-size: 18px;
}

#campaign .priceBox .sec01 {
	padding: 58px 0 38px;
	background: none;
}

#campaign .priceBox .sec01 li {
	clear: both;
}

#campaign .priceBox .sec01 img {
	float: left;
	padding-top: 5px;
	width: 310px;
	max-width: 100%;
}

#campaign .priceBox .sec01 .txt_box {
	float: right;
	width: 630px;
	padding-right: 30px;
	margin-bottom: 30px;
}

#campaign .priceBox .sec01 h5 {
	font-size: 24px;
	margin-bottom: 7px;
}

#campaign .priceBox .sec01 h5 span {
	color: #a41818;
}

#campaign .priceBox .sec01 p.fb {
	margin-bottom: 10px;
}

#campaign .priceBox .sec01 table {
	margin: 0 0 15px
}

#campaign .priceBox .sec01 th {
	text-align: left;
	background: #fffee2;
	width: 7em;
	padding: 10px 20px;
	border-right: none;
}

#campaign .priceBox .sec01 td {
	border-left: none;
}

@media all and (max-width: 767px) {
	/*-----------------------------*/

	#campaign .featureBox .comBox {
		margin: 0 9px 10px;
	}

	#campaign .featureBox .comBox.comBox02,
	#campaign .featureBox .comBox.comBox04 {
		margin: 0 9px 27px;
	}

	#campaign .featureBox .comBox01 .imgBoxR .photoBox p {
		margin: 3px 0 0 0;
		text-align: right;
	}

	#campaign .featureBox .comBox_btm {
		padding: 20px 9px 0px;
		margin-bottom: 30px;
	}

	#campaign .featureBox .comBox_btm .img {
		text-align: center;

		display: block;
	}

	#campaign .featureBox .comBox_btm .img img {
		float: none;
		padding-right: 0;
		padding-bottom: 15px;
		height: 150px;
		width: auto;
	}

	#campaign .featureBox .comBox_btm h3 img {
		width: auto;
		height: 26px;
	}

	#campaign .priceBox .borderBox .title {
		margin: 0 0 20px;
	}

	.priceBox .sec02 h2 {
		padding: 0 10px;
	}


	#campaign .priceBox .sec01 {
		padding: 0;
		background: none;
	}

	#campaign .priceBox .sec01 li {
		clear: both;
	}

	#campaign .priceBox .sec01 .borderBox .title {
		background-color: #162244;
	}

	#campaign .priceBox .sec01 .borderBox .title:before {
		margin-left: -6.5px;
		width: 13px;
		height: 8px;
		background: url(../img/common/icon02.gif) no-repeat;
		position: absolute;
		left: 50%;
		bottom: -7px;
		content: "";
	}

	#campaign .priceBox .sec01 .w94sp {
		width: 90%;
	}

	#campaign .priceBox .sec01 img {
		float: none;
		width: auto;
		padding-top: 0;
		padding-bottom: 10px;
		max-width: 100%;
		width: 100%;
		height: 195px;
		object-fit: cover;
	}

	#campaign .priceBox .sec01 .txt_box {
		float: none;
		width: 100%;
		padding-right: 0px;
		margin-bottom: 30px;
	}

	#campaign .priceBox .sec01 h5 {
		font-size: 18px;
		margin-bottom: 4px;
	}

	#campaign .priceBox .sec01 p.fb {
		margin-bottom: 5px;
	}

	#campaign .priceBox .sec01 table {
		margin: 0 0 10px
	}

	#campaign .priceBox .sec01 th {
		text-align: center;
		width: 5em;
		padding: 5px 6px;
	}

	#campaign .priceBox .sec01 .borderBox {
		padding-bottom: 0;
	}

}

/*-----------------------------*/

#campaign .main_img2 {
	background: url(/img/campaign/bg03.jpg) no-repeat center 50%;
	background-size: cover;
	height: 890px;
	position: relative;
}

#campaign .main_img2 .content {
	width: 936px;
	height: 890px;
	overflow-x: visible;
	padding-top: 323px;
}

#campaign .main_img2 .content h3 img {
	position: absolute;
	height: 323px;
	top: 0;
	right: 0;
	margin: auto;
	max-width: none;
}

#campaign .hosho_box {
	background: #efefef;
	padding: 30px 0;
}

#campaign .stit_fuki {
	font-size: 26px;
	letter-spacing: 1.3px;
	height: 76px;
	text-align: center;
	line-height: 76px;
	margin-bottom: 10px;
	color: #fff;
	background: #0b1f44;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
}

#campaign .stit_fuki span {
	color: #faf0c3;
}

#campaign .stit_fuki:after {
	border: solid transparent;
	content: '';
	height: 0;
	width: 0;
	pointer-events: none;
	position: absolute;
	border-color: rgba(200, 78, 89, 0);
	border-top-width: 19px;
	border-bottom-width: 19px;
	border-left-width: 15px;
	border-right-width: 15px;
	margin-left: -15px;
	border-top-color: #0b1f44;
	top: 100%;
	left: 50%;
}

#campaign .hosho_box .txt_box {
	height: 251px;
	background: url(/img/campaign/img_hosho.jpg) no-repeat right 50% #fff;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	padding: 32px 400px 20px 45px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

#campaign .hosho_box .txt_box .txt18 {
	font-size: 18px;
	color: #a41818;
	margin-bottom: 8px;
}

@media all and (max-width: 767px) {
	/*-----------------------------*/

	#campaign .main_img2 {
		background: none;
		height: auto;
		position: relative;
	}

	#campaign .main_img2 .content {
		width: 100%;
		height: auto;
		overflow-x: hidden;
		padding-top: 0;
	}

	#campaign .main_img2 .content h3 img {
		position: static;
		height: auto;
		width: 100%;
	}

	#campaign .hosho_box {
		padding: 16px 10px;
	}

	#campaign .stit_fuki {
		font-size: 18px;
		letter-spacing: 0.5px;
		height: auto;
		padding: 8px 0;
		line-height: 1.5;
		margin-bottom: 10px;
		-webkit-border-radius: 4px;
		-moz-border-radius: 4px;
		border-radius: 4px;
	}

	#campaign .stit_fuki:after {
		border-top-width: 12px;
		border-bottom-width: 12px;
		border-left-width: 12px;
		border-left-width: 7px;
		border-right-width: 7px;
		margin-left: -7px;
	}

	#campaign .hosho_box .txt_box {
		height: auto;
		background: url(/img/first/sec04_photo04.jpg) no-repeat 50% 7px #fff;
		background-size: 96% auto;
		-webkit-border-radius: 0;
		-moz-border-radius: 0;
		border-radius: 0;
		padding: 68% 8px 12px;
	}

	#campaign .hosho_box .txt_box .txt18 {
		font-size: 18px;
		color: #a41818;
		margin-bottom: 8px;
	}
}

/*-----------------------------*/


#campaign .voice_box {
	margin: 34px auto;
}

#campaign .voice_box .stit_voice {
	margin: 30px auto 10px;
	text-align: center;
}

#campaign .voice_box .img img {
	float: left;
	width: 368px;
}

#campaign .voice_wrap li {
	padding-top: 40px;
	clear: both;
	overflow: hidden;
}

#campaign .voice_box .txt_box {
	float: right;
	width: 542px;
	padding-top: 20px;
	line-height: 1.7;
}

#campaign .flow_box {
	background: #efefef;
	padding: 32px 0;
}

#campaign .flow_box .img {
	margin: 30px auto 20px;
}

#campaign .promise_box {
	padding: 58px 0 38px;
	background: url(../img/price/sec01_bg.gif);
}

#campaign .promise_box .content {
	width: 1000px;
}

#campaign .promise_box .txt_box {
	background: #fff;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	padding: 30px;
	line-height: 1.7;
	margin-top: 30px;
	margin-bottom: 32px;
}

#campaign .promise_box .txt_box dt {
	font-size: 18px;
	color: #a41818;
	font-weight: bold;
}

#campaign .promise_box .txt_box dd {
	margin-bottom: 33px;
}

#campaign .promise_box .txt_box dd.mb0 {
	margin-bottom: 0;
}

#campaign .promise_box .bnr_btm {
	background: url(/img/campaign/bnr_btm.png) 50% 50% no-repeat;
	height: 285px;
	padding: 146px 73px 10px 278px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

#campaign .promise_box .bnr_btm p.fb {
	color: #0b1f44;
	font-size: 19px;
	margin-bottom: 3px;
}

#campaign .promise_box .bnr_btm p span {
	color: #a41818;
}

@media all and (max-width: 767px) {
	/*-----------------------------*/

	#campaign .voice_box {
		margin: 0 auto;
	}

	#campaign .voice_box .stit_voice {
		margin: 30px auto 10px;
		text-align: center;
	}

	#campaign .voice_box .stit_voice img {
		height: 40px;
	}

	#campaign .voice_box .img img {
		float: none;
		width: 100%;
	}

	#campaign .voice_wrap li {
		padding-top: 30px;
		clear: both;
		overflow: hidden;
	}

	#campaign .voice_box .txt_box {
		float: none;
		width: 100%;
		padding-top: 20px;
		line-height: 1.7;
	}

	#campaign .flow_box {
		padding: 20px 4%;
		margin: 30px auto 0;
	}

	#campaign .flow_box .img {
		margin: 14px auto 20px;
	}

	#campaign .flow_box p {
		line-height: 1.75;
	}

	#campaign .promise_box {
		padding: 20px 0 10px;
		background: url(/img/price/sp/sec01_bg.png);
		background-size: 44px auto;
	}

	#campaign .promise_box .content {
		width: 94%;
		padding: 10px 0;
	}

	#campaign .promise_box .txt_box {
		padding: 18px 10px;
		margin-top: 0px;
		margin-bottom: 20px;
	}

	#campaign .promise_box .txt_box dt {
		font-size: 17px;
		text-indent: -1em;
		padding-left: 1em;
		line-height: 1.4;
		margin-bottom: 4px;
	}

	#campaign .promise_box .txt_box dd {
		margin-bottom: 20px;
	}

	#campaign .promise_box .bnr_btm {
		background: url(/img/campaign/sp/bnr_btm.png) 50% 50% no-repeat;
		background-size: 100% auto;
		height: 0;
		padding: 0;
		padding-top: 74%;
	}

	#campaign .promise_box .bnr_btm p {
		display: none;
	}

}

/*-----------------------------*/
/*------------------------------------------------------------
	comPhotoList
------------------------------------------------------------*/
.comPhotoList {
	margin-bottom: 38px;
	display: flex;
	gap: calc(4% / 3);
	flex-wrap: wrap;
	justify-content: space-between;
}

.comPhotoList>li {
	margin: 0 0 20px;
	position: relative;
	width: 24%;
}

.comPhotoList>li a {
	display: block;
}


.comPhotoList>li .photo {
	margin-bottom: 4px;
	display: block;
	height: 172px;
}

.comPhotoList>li .photo img {
	max-width: 100%;
	width: 100%;
	height: 172px;
	object-fit: cover;
	object-position: top;
}

.comPhotoList>li .txt {
	margin: 0;
	display: block;
	font-size: 14px;
	line-height: 1.7;
	background: #eeeeee;
	padding: 4px 10px;
}

.comPhotoList>li .btn {
	padding: 1px 0 3px 5px;
	width: 80px;
	float: right;
	color: #fff;
	font-size: 11.5px;
	box-sizing: border-box;
	background: #A82223 url(../img/common/icon04.gif) no-repeat right 7px center;
}

.comPhotoList>li a:hover {
	opacity: 0.7;
}

.comPhotoList>li li {
	position: relative;
}

.comPhotoList>li li p {
	margin-bottom: 0;
}

.comPhotoList .case_before {
	position: absolute;
	top: 0;
	left: 0;
	background: #4a4a4a;
	color: #fff;
	font-size: 14px;
	padding: 0 20px;
	z-index: 8;
}

.comPhotoList .case_after {
	position: absolute;
	top: 0;
	left: 0;
	background: #d72f3d;
	color: #fff;
	font-size: 14px;
	padding: 0 20px;
	z-index: 8;
}


img.prev_icon.slick-arrow,
img.next_icon.slick-arrow {
	top: 44%;
	position: absolute;
	z-index: 2;
}

img.prev_icon.slick-arrow {
	left: 6px;
}

img.next_icon.slick-arrow {
	right: 6px;
}

/*------------------------------------------------------------
	comContact
------------------------------------------------------------*/
.comContact {
	padding: 40px 0 50px;
	background-color: #0B1F44;
}


.comContact .content {
	padding: 0 50px;
}


.comContact a:hover {
	opacity: 0.7;
}

.comContact .title {
	margin: 0 5px -1px 0;
	text-align: center;
}

.comContact .imgBox .lBox {
	float: left;
	max-width: 50%;
}

.comContact .imgBox .lBox ul {
	margin-left: -1px;
	margin-bottom: 30px;
}

.comContact.fb_right .imgBox .lBox ul {
	margin-bottom: 17px;
}

.comContact .imgBox .lBox li {
	margin-right: 23px;
	float: left;
}

.comContact .imgBox .lBox li:last-child {
	margin: 0;
	padding-top: 6px;
}

.comContact .imgBox .lBox .btn img {
	margin-left: -2px;
}

.comContact .imgBox .lBox .btn a {
	display: block;
}

.comContact .imgBox .lBox .btn_est {
	padding-top: 17px;
}

.comContact .imgBox .rBox {
	width: 500px;
	max-width: 50%;
	padding-top: 23px;
	float: right;
}

.comContact.fb_right .imgBox .rBox {
	padding-top: 21px;
}

.comContact .imgBox .rBox a {
	display: block;
}

.comContact .cta-title {
	border-bottom: 1px solid #fff;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	padding-bottom: 7px;
}

.comContact .cta-title .cta-yellow {
	color: #FFD800;
	font-size: 28px;
}

.comContact .cta-title .cta-small {
	font-size: 14px;
}

.comContact.comContact_s .content {
	background: #0B1F44 url(../img/common/co_bg.png) no-repeat top center;
	padding-top: 40px;
	margin-top: -1px;
	z-index: 0;
	position: relative;

}

.comContact.comContact_s .rBox {
	padding-top: 72px;
}

.comContact.comContact_s .imgBox .rBox {
	max-width: 100%;
}


.comContact.comContact_s {
	padding-top: 0;
	margin-top: 60px;
	padding-bottom: 0px;
}

.comContact.comContact_s {
	padding-top: 0;
	padding-bottom: 40px;
}

@media all and (max-width: 767px) {
	/*-------------------------*/

	.comContact.fb_right .imgBox .rBox {
		padding-top: 10px;
		max-width: 100%;
	}

	.comContact .content {
		padding: 0 30px;
		padding-top: 20px !important;
	}
}

/*-------------------------*/

/*------------------------------------------------------------
	comNews
------------------------------------------------------------*/
.comNews {
	margin-bottom: 14px;
}

.comNews li {
	float: left;
	width: 100%;
	border-bottom: 1px dotted #363636;
}

.comNews li dl {
	width: 1000px;
	padding: 16px 0;
	margin: 0 auto;
}

.comNews li dt {
	float: left;
	width: 354px;
	font-size: 13px;
}

.comNews li dt .lTxt {
	padding: 2px 0 0 0;
	width: 107px;
	margin-left: 150px;
	float: left;
	letter-spacing: -0.5px;
}

.comNews li dt .catgSpan {
	width: 82px;
	float: right;
	padding: 2px 0;
	font-size: 11px;
	border: 1px solid #23378C;
	text-align: center;
	display: inline-block;
	white-space: nowrap;
}

/* .comNews li dt .catgSpan.cat-news {
	background-color: #E7EBF4;
}
.comNews li dt .catgSpan.cat-column {
	background-color: #F7FDE6;
}
.comNews li dt .catgSpan.cat-blog {
	background-color: #F6E7E7;
} */

.comNews li dd {
	margin-left: 379px;
	margin-bottom: 0;
}

.comNews li dd a {
	padding-left: 20px;
	display: inline-block;
	background: url(../img/common/icon03.gif) no-repeat left center;
}

.comNews li dd a:hover {
	text-decoration: underline;
}

@media all and (max-width: 767px) {

	/*------------------------------------------------------------
		comPhotoList
	------------------------------------------------------------*/
	.comPhotoList {
		margin-bottom: 0px;
	}

	.comPhotoList>li {
		margin: 0 0 10px;
		width: 48%;
	}

	.comPhotoList>li .photo {
		height: 33vw;
		margin-bottom: 8px;
	}

	.comPhotoList>li .photo img {
		height: 33vw;
	}

	.comPhotoList li img {
		width: 100%;
		height: auto;
	}

	.comPhotoList li a {
		display: block;
	}

	.comPhotoList>li:nth-child(2n) {}

	.comPhotoList li .txt {
		margin: 0 0 20px;
		font-size: 15px;
		line-height: 1.6;
		min-height: 22vw;
	}

	.comPhotoList li .btn {
		padding: 1px 0 2px 6px;
		width: 75px;
		margin-right: 10px;
		font-size: 10.5px;
		letter-spacing: -0.5px;
		background: #A82223 url(../img/common/sp_icon04.png) no-repeat right 7px center;
		background-size: 5px auto;
	}

	/*------------------------------------------------------------
		comContact
	------------------------------------------------------------*/
	.comContact {
		padding: 24px 0 26px;
	}

	.comContact .title {
		margin: 0 3px 19px 0;
		text-align: center;
	}

	.comContact .title img {
		width: 300px;
		margin: 0 auto;
	}

	.comContact .imgBox .lBox {
		margin-bottom: 10px;
		float: none;
		max-width: 100%;
	}

	.comContact .imgBox .lBox ul {
		margin-left: 0;
		margin-bottom: 13px;
		max-width: 100%;
	}

	.comContact .imgBox .lBox li {
		margin-right: 0;
		float: none;
	}

	.comContact .imgBox .lBox li img {
		width: 100%;
	}

	.comContact .imgBox .lBox .btn img {
		margin-left: 0;
		width: 100%;
	}

	.comContact .imgBox .lBox .btn_est .sp {
		margin-bottom: 14px;
	}

	.comContact .imgBox .rBox {
		width: 100%;
		padding-top: 5px;
		float: none;
	}



	.comContact .imgBox .rBox img {
		width: 100%;
	}

	.comContact .imgBox .rBox span {
		display: block;
		margin-bottom: 7px;
	}

	.fb-page.fb_iframe_widget {
		max-width: 100%;
	}

	.fb-page.fb_iframe_widget iframe {
		width: 100% !important
	}

	/*------------------------------------------------------------
		comNews
	------------------------------------------------------------*/
	.comNews {
		margin-bottom: 16px;
	}

	.comNews li dl {
		width: auto;
		padding: 16px 14px 11px;
		margin: 0 auto;
	}

	.comNews li:last-child {
		border-bottom: none;
	}

	.comNews li dt {
		margin-bottom: 4px;
		width: 100%;
		font-size: 13px;
		overflow: hidden;
	}

	.comNews li dt .lTxt {
		padding: 2px 0 0 0;
		width: auto;
		float: none;
		letter-spacing: -0.5px;
	}

	.comNews li dt .catgSpan {
		margin-left: 8px;
		width: auto;
		float: none;
		padding: 0 5px;
		font-size: 13px;
		border: 1px solid #23378C;
		text-align: center;
		display: inline-block;
	}

	.comNews li dd {
		margin-left: 0;
	}

	.comNews li dd a {
		padding-left: 27px;
		background: url(../img/common/sp_icon03.png) no-repeat left center;
		background-size: 19px auto;
	}

	.comNews li dd a:hover {
		text-decoration: none;
	}
}

/*------------------------------------------------------------
	wp-pagenavi
------------------------------------------------------------*/
.wp-pagenavi {
	margin-bottom: 50px;
	clear: both;
	text-align: center;
}

.wp-pagenavi a,
.wp-pagenavi span {
	display: inline-block;
	text-decoration: none;
	border: 2px solid #162244;
	padding: 5px 11px;
	margin: 0 4px;
	color: #0b1f44;
	font-size: 16px;
	font-weight: bold;
}

.wp-pagenavi a:hover,
.wp-pagenavi span.current {
	border-color: #162244;
	color: #fff;
	background-color: #162244;
}

.wp-pagenavi .first,
.wp-pagenavi .last,
.wp-pagenavi .pages {
	display: none;
}

.wp-pagenavi .extend {
	display: none;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
	display: none;
}

@media all and (max-width: 767px) {
	.wp-pagenavi {
		margin-bottom: 30px;
	}

	.wp-pagenavi a,
	.wp-pagenavi span {
		border: 1px solid #162244;
		padding: 5px 12px;
	}

	.wp-pagenavi a:hover {
		border-color: #0b1f44;
		color: #0b1f44;
		background-color: #fff;
	}
}

/*------------------------------------------------------------
	headLine03
------------------------------------------------------------*/
.headLine03 {
	margin-bottom: 22px;
	padding-bottom: 14px;
	font-size: 27px;
	color: #0b1f44;
	border-bottom: 1px solid #CBCBCB;
}

/*------------------------------------------------------------
	comBorderBox
------------------------------------------------------------*/
.comBorderBox {
	margin: 17px 32px 51px;
	padding: 40px 71px 84px;
	border: 1px solid #CBCBCB;
}

.comBorderBox p {
	margin: 0 0 27px 15px;
	color: #0b1f44;
	line-height: 1.75;
}

.comBorderBox .photoImg {
	margin-bottom: 40px;
	text-align: center;
}

.comBorderBox .photoImg img {
	max-width: 100%;
}

.comBorderBox .comLink a {
	padding-right: 30px;
	font-size: 20px;
}

@media all and (max-width: 767px) {

	/*------------------------------------------------------------
		headLine03
	------------------------------------------------------------*/
	.headLine03 {
		margin: 0 -13px 18px;
		padding: 0 28px 12px;
		font-size: 19px;
		line-height: 1.4;
	}

	/*------------------------------------------------------------
		comBorderBox
	------------------------------------------------------------*/
	.comBorderBox {
		margin: 0 -8px;
		padding: 14px 13px 75px;
		border: none;
		border-top: 1px solid #CBCBCB;
	}

	.comBorderBox p {
		margin: 0 0 23px 2px;
		line-height: 1.6;
		color: #333;
	}

	.comBorderBox .photoImg {
		margin: 0 17px 20px;
	}

	.comBorderBox .comLink a {
		padding-right: 30px;
		font-size: 20px;
	}
}

/*------------------------------------------------------------
	comTable
------------------------------------------------------------*/
.comTable {
	width: 100%;
	border-collapse: collapse;
}

.comTable th,
.comTable td {
	padding: 10px;
	color: #0b1f44;
	text-align: left;
	vertical-align: middle;
	border: 1px solid #CBCBCB;
}

.comTable th .must {
	font-size: 12px;
	color: #fff;
	background: #fe0000;
	line-height: 17px;
	display: inline-block;
	margin-left: 10px;
	padding: 0 5px 0px;
	height: 17px;
	margin-top: -1px;
	margin-bottom: 1px;
}

.comTable th {
	vertical-align: middle;
	width: 19.5%;
	font-weight: normal;
	text-align: center;
	background-color: #F3F3F3;
}

.comTable td {
	padding-left: 20px;
}

@media all and (max-width: 767px) {

	.comTable th,
	.comTable td {
		padding: 7px 3px;
		color: #333;
		line-height: 1.55;
	}

	.comTable th {
		width: 24.5%;
	}

	.comTable td {
		padding-left: 8px;
	}

	.comTable th .must {
		font-size: 12px;
		width: 4em;
		text-align: center;
		line-height: 17px;
		display: block;
		margin-left: 0px;
		padding: 0 5px 0px;
		height: 17px;
		margin-top: 0;
	}
}

/*------------------------------------------------------------
	comImgBoxL
------------------------------------------------------------*/
.comImgBoxL {
	margin-bottom: 24px;
}

.comImgBoxL .photoBox {
	position: relative;
	float: left;
	width: 375px;
	overflow-x: visible;
	height: 385px;
}

.comImgBoxL .photoBox img {
	position: absolute;
	max-width: none;
	height: 385px;
	right: 0;
	top: 0;
	margin: auto;
	z-index: -1;
}

.comImgBoxL .textBox {
	width: 536px;
	margin-top: -2px;
	float: right;
	min-height: 355px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.comImgBoxL .textBox h3 {
	margin-bottom: 29px;
}

.comImgBoxL .textBox p {
	line-height: 1.75;
}

.comImgBoxL .textBox p:not(:last-child) {
	margin-bottom: 28px;
}

/*------------------------------------------------------------
	comImgBoxR
------------------------------------------------------------*/
.comImgBoxR {
	margin-bottom: 40px;
}

.comImgBoxR .photoBox {
	float: right;
	position: relative;
	width: 375px;
	overflow-x: visible;
	height: 385px;
}

.comImgBoxR .photoBox img {
	position: absolute;
	max-width: none;
	height: 385px;
	left: 0;
	top: 0;
	margin: auto;
	z-index: -1;
}

.comImgBoxR .textBox {
	min-height: 355px;
	width: 536px;
	margin-top: 2px;
	float: left;
}

.comImgBoxR .textBox h3 {
	margin-bottom: 10px;
}

.comImgBoxR .textBox p {
	line-height: 1.75;
}

.comImgBoxR .textBox p:not(:last-child) {
	margin-bottom: 28px;
}

.comImgBoxR .textBox p .txt {
	font-weight: bold;
}

.comImgBoxR .textBox p .cor {
	color: #a41818;
}

@media all and (max-width: 767px) {

	/*------------------------------------------------------------
		comImgBoxL
	------------------------------------------------------------*/
	.comImgBoxL {
		margin-bottom: 12px;
	}

	.comImgBoxL .photoBox {
		margin: 0 -9px 10px;
		float: none;
		height: auto;
		width: auto;
	}

	.comImgBoxL .photoBox img {
		width: 100%;
		margin-left: 0;
		max-width: 100%;
		height: auto;
		position: static;
	}

	.comImgBoxL .textBox {
		width: auto;
		margin: 0 9px;
		float: none;
		min-height: inherit;
	}

	.comImgBoxL h3 {
		width: 300px;
		margin: 0 auto 10px;
	}

	.comImgBoxL h3 img {
		width: 100%;
	}

	.comImgBoxL .textBox p {
		font-size: 15px;
		line-height: 1.6;
	}

	.comImgBoxL .textBox p:not(:last-child) {
		margin-bottom: 25px;
	}

	/*------------------------------------------------------------
		comImgBoxR
	------------------------------------------------------------*/
	.comImgBoxR {
		margin-bottom: 28px;
	}

	.comImgBoxR .photoBox {
		margin: 0 -8px 10px;
		float: none;
		height: auto;
		width: auto;
	}

	.comImgBoxR .photoBox img {
		width: 100%;
		margin-left: 0;
		max-width: 100%;
		height: auto;
		position: static;
	}

	.comImgBoxR .textBox {
		width: auto;
		margin: 0 9px;
		float: none;
		min-height: inherit;
	}

	.comImgBoxR h3 {
		width: 272px;
		margin: 0 auto 10px;
	}

	.comImgBoxR h3 img {
		width: 100%;
	}

	.comImgBoxR .textBox p {
		font-size: 15px;
		line-height: 1.6;
	}

	.comImgBoxR .textBox p:not(:last-child) {
		margin-bottom: 24px;
	}
}

/*------------------------------------------------------------
	topVisual
------------------------------------------------------------*/
.comTopVisual {
	margin-bottom: 17px;
	min-height: 380px;
	background: url(../img/flow/top_visual_bg.jpg) no-repeat center top;
	background-size: cover;
}

.comTopVisual p {
	height: 380px;
	display: table;
	float: right;
	color: #0b1f44;
	font-size: 28px;
	line-height: 2.1;
	font-weight: bold;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
}

.comTopVisual p span {
	display: table-cell;
	vertical-align: middle;
	line-height: 1.6;
}


.comTopVisual p span em {
	display: inline-block;
	font-style: normal;
}


@media all and (max-width: 767px) {

	/*---------------------------------*/
	/*------------------------------------------------------------
		topVisual
	------------------------------------------------------------*/
	.comTopVisual {
		margin-bottom: 15px;
		min-height: 257px;
		position: relative;
		background: url(../img/flow/sp_top_visual_bg.jpg) no-repeat center center;
		background-size: cover;
	}

	.comTopVisual p {
		position: absolute;
		left: 22px;
		bottom: 32px;
		height: auto;
		float: none;
		font-size: 18px;
		line-height: 1.6;
		text-shadow: 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff;
		letter-spacing: 1px;
	}

	.comTopVisual p span {
		display: block;
	}
}

/*---------------------------------*/

/*------------------------------------------------------------
	comBox
------------------------------------------------------------*/
.comBox {
	margin-bottom: 17px;
	border: 1px solid #0B1F44;
	border-radius: 7px;
}

.comBox .ttl {
	padding: 11px 0 13px;
	text-align: center;
	color: #FFF;
	font-size: 20px;
	font-weight: bold;
	border-radius: 6px 6px 0 0;
	background-color: #0B1F44;
}

.comBox .ttl span {
	padding: 0 9px 0 31px;
	display: inline-block;
	background: url(../img/common/icon06.png) no-repeat left center;
}

@media all and (max-width: 767px) {

	/*---------------------------------*/
	/*------------------------------------------------------------
		comBox
	------------------------------------------------------------*/
	.comBox {
		margin-bottom: 9px;
		border-radius: 4px;
	}

	.comBox .ttl {
		padding: 6px 15px 5px;
		font-size: 17px;
		border-radius: 3px 3px 0 0;
	}

	.comBox .ttl span {
		padding: 0 1px 0 21px;
		background-size: 12px auto;
	}
}

/*---------------------------------*/



/*------------------------------------------------------------
	case
------------------------------------------------------------*/
.caseBox p {
	margin-bottom: 18px;
	text-align: center;
}

.caseBox .content {
	padding: 0 50px;
}

.caseBox .voice {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
	padding: 40px 0px 50px;
}

.caseBox .voice p {
	font-weight: bold;
	text-align: left;
	line-height: 1.8;
	font-size: 17px;
}

@media all and (max-width: 767px) {

	.caseBox .voice {
		display: block;
		padding: 20px 16px;
	}

	.caseBox p {
		margin: 0 7px 14px;
		text-align: left;
		line-height: 1.6;
	}

	.caseBox .content {
		padding: 0;
	}

	.caseBox .comPhotoList {
		padding: 0 16px;
	}

}


.s_box {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 20px;
}

.s_box_inner {
	display: flex;
	background: #fff;
	/* padding: 0 20px; */
}

.s_box input {
	border: none;
}

.s_box input[type="text"] {
	width: 300px;
	padding: 9px 10px;
}

.s_box input[type="submit"] {
	background: #fff;
	width: 40px;
	background-image: url(../img/common/search.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	cursor: pointer;
	z-index: 7;
	display: block;

}

@media all and (max-width: 767px) {
	.s_box {
		display: block;
		padding: 0 10px 14px;
		margin-bottom: 0;
	}
}

/*------------------------------------------------------------
	case/detail.html
------------------------------------------------------------*/

.caseBox .bg_aqua {
	background: #eff3fa;
	line-height: 2.4;
	font-size: 18px;
	text-align: center;
	margin-bottom: 20px;
}

.case_cate_box {

	padding: 40px 0 30px;
	background: #eff3fa;
	text-align: center;
	margin-bottom: 50px;
}


.case_cate_box h3.bm {
	position: relative;
	text-align: center;
	margin-bottom: 20px;
}

.case_cate_box h3.bm:before {
	display: block;
	content: "";
	width: 100%;
	height: 1px;
	top: 49%;
	left: 0;
	right: 0;
	margin: auto;
	position: absolute;
	background: #ccc;
	z-index: 1;
}

.case_cate_box h3.bm span {
	background: #eff3fa;
	display: inline-block;
	padding: 0 12px;
	position: relative;
	z-index: 2;
	font-size: 18px;
	letter-spacing: 1.4px;
}

.case_cate_box li {
	display: inline-block;
	padding: 0 8px 10px;
}



.case_cate_box li a {
	background: #fff;
	min-width: 10em;
	display: inline-block;
	text-align: center;
	line-height: 26px;
	border: 1px solid #0b1f44;
	border-radius: 130px;
	font-weight: bold;
}

.case_cate_box li a:hover {
	opacity: .8;
	-webkit-transition: all .4s linear;
	transition: all .4s linear;
	text-decoration: underline;
}

ul.cate_list.case_cate.op {
	margin-bottom: 0;
}

.comPhotoList .cate a {
	font-size: 12px;
	color: #fff;
	display: inline-block;
	background: #0b1f44;
	line-height: 20px;
	padding: 0 7px;
	margin-right: 4px;
	vertical-align: middle;
	margin-top: 0px;
	margin-bottom: 2px;
}

.caseDetail .tit_wrap {
	background: #0b1f44;
	color: #fff;
	padding: 8px 10px;
	vertical-align: middle;
	margin-bottom: 28px;
}

.caseDetail .tit_wrap .cate a {
	font-size: 12px;
	color: #333;
	display: inline-block;
	background: #fff;
	line-height: 24px;
	padding: 0 10px;
	margin-right: 10px;
	vertical-align: middle;
}

.caseDetail .tit_wrap .post_tit {
	display: inline-block;
	font-size: 20px;
	vertical-align: middle;
}

.caseDetail .head_photo {
	margin: 0 auto 20px;
	overflow: hidden;
}

.caseDetail .head_photo li {
	width: 48%;
	margin-bottom: 20px;
}

.caseDetail .head_photo li:nth-child(odd) {
	clear: both;
	float: left;
}

.caseDetail .head_photo li:nth-child(even) {
	float: right;
}

.caseDetail .head_photo .stit {
	color: #fff;
	background: #4a4a4a;
	line-height: 30px;
	padding: 0 15px;
	display: inline-block;
	margin-bottom: 8px;
}

.caseDetail .head_photo .stit.after {
	background: #a41818;
}

.caseDetail .head_photo span.img {
	display: block;
}

.caseDetail .gaiyo_group {
	margin: 0 auto;
	width: 1000px;
	max-width: 100%;
}

.caseDetail .comTable {
	margin: 8px auto 45px;
	width: 100%;
	border-top: 1px solid #ccc;
	border-collapse: collapse;
}

.caseDetail .comTable th {
	width: 14em;
	padding: 10px 10px 10px 15px;
	border-left: none;
	border-right: none;
	text-align: left;
	font-weight: bold;
	line-height: 30px;
	background: #f6f6f6;
	border-bottom: 1px solid #ccc;
}

.caseDetail .comTable td {
	border-left: none;
	border-right: none;
	border-bottom: 1px solid #ccc;
	padding: 10px 10px 10px 20px;
}


.caseDetail .comTable td .txts {
	display: block;
	font-size: 90%;
}

.caseDetail .stit_navy {
	display: block;
	width: 100%;
	max-width: 100%;
	background: #0b1f44;
	color: #fff;
	text-align: center;
	line-height: 42px;
	font-size: 20px;
	margin-bottom: 18px;
}

.caseDetail .gallery_box {
	overflow: hidden;
	min-height: 400px;
	padding-bottom: 30px;
}

.caseDetail .gallery_box img {
	max-width: 100%;
}

.caseDetail .gallery_box .main_photo {
	width: 480px;
	float: left;
	text-align: center;
}

.caseDetail .gallery_box .main_photo img {
	background: #e5e5e5;
	max-height: 400px;
	-webkit-transition: all .4s linear;
	transition: all .4s linear;
}

.caseDetail .gallery_box .main_photo p {
	text-align: left;
	padding-top: 10px;
}

.caseDetail .gallery_box .photo_list {
	width: 510px;
	float: right;
}

.caseDetail .gallery_box.before .photo_list {
	width: 507px;
}

.caseDetail .gallery_box .photo_list .fb {
	font-weight: bold;
	padding: 4px 10px 10px;
}

.caseDetail .gallery_box .thumb li {
	float: left;
	width: 160px;
	margin-left: 10px;
	margin-bottom: 10px;
}

.caseDetail .gallery_box.before .thumb li {
	width: 120px;
	margin-left: 6px;
	margin-bottom: 6px;
}

.caseDetail .gallery_box .thumb li img {
	cursor: pointer;
}

.caseDetail .gallery_box .thumb li img:hover {
	opacity: .8;
	-webkit-transition: all .4s linear;
	transition: all .4s linear;
}

.caseDetail .gallery_box .thumb li p {
	display: none;
}

.caseDetail .box_comment h3.txt18 {
	background: url(/img/case/i_fuki.png) 14px 50% no-repeat #f0f4fc;
	background-size: 30px auto;
	border: 1px solid #b2bed3;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	font-size: 18px;
	line-height: 50px;
	padding: 0 10px 0 52px;
	letter-spacing: 1.8;
}

.caseDetail .box_comment h1 {
	font-size: 160%;
}

.caseDetail .box_comment h2 {
	font-size: 140%;
}

.caseDetail .box_comment h3 {
	font-size: 120%;
}

.caseDetail .box_comment h4 {
	font-size: 110%;
}

.caseDetail .box_comment .txt_box {
	padding: 30px;
}

.caseDetail .box_comment .txt_box p {
	line-height: 1.8;
	margin-bottom: 1em
}

.caseDetail .comLink {
	margin: 50px auto 70px;
}

.related_post .warning_txt {
	display: none;
}

@media all and (max-width: 767px) {
	/*-----------------------------*/


	.caseBox .bg_aqua {
		line-height: 2.4;
		font-size: 16px;
		margin-bottom: 20px;
	}

	.caseBox .voice p {
		font-size: 14px;
		line-height: 1.6;
	}

	.caseBox .voice p .sp {
		display: inline !important;
	}

	.case_cate_box {
		padding: 30px 0 0px;
	}

	.caseBox h2.h2_icon02 {
		margin-bottom: 40px;
		font-size: 18px;
		margin-top: 0;
	}

	.caseBox.tax_list {
		margin-top: 36px;
	}

	.case_cate_box.mb20 {
		margin-bottom: 20px;
	}

	.case_cate_box h3.bm {
		margin-bottom: 12px;
	}

	.case_cate_box h3.bm span {
		background: #eff3fa;
		display: inline-block;
		padding: 0 8px;
		position: relative;
		z-index: 2;
		font-size: 16px;
		letter-spacing: 1.4px;
	}

	.cate_list.case_cate.op {
		margin-bottom: 0;
		padding-bottom: 10px;
	}

	.case_cate_box li {
		display: inline-block;
		padding: 0 4px 10px;
	}

	.case_cate_box li a {
		font-size: 15px;
		min-width: 6em;
		line-height: 1.6;
	}

	.case_cate_box li a:hover {
		opacity: .8;
		-webkit-transition: all .4s linear;
		transition: all .4s linear;
		text-decoration: underline;
	}

	.comPhotoList .cate a {
		font-size: 12px;
		line-height: 18px;
		padding: 0 6px;
		margin-right: 6px;
		margin-top: 0;
		margin-bottom: 6px;
	}

	.caseDetail .tit_wrap {
		padding: 8px 10px;
		margin-bottom: 28px;
	}

	.caseDetail .tit_wrap .cate a {
		font-size: 12px;
		line-height: 20px;
		padding: 0 8px;
		margin-right: 10px;
		vertical-align: middle;
	}

	.caseDetail .tit_wrap .cate {
		padding-bottom: 5px;
		display: block;
	}

	.caseDetail .tit_wrap .post_tit {
		display: inline-block;
		font-size: 18px;
		vertical-align: middle;
	}

	.caseDetail .head_photo {
		margin: 0 auto;
		overflow: hidden;
	}

	.caseDetail .head_photo li {
		width: 100%;
		margin-bottom: 20px;
	}

	.caseDetail .head_photo li:nth-child(even),
	.caseDetail .head_photo li:nth-child(odd) {
		clear: both;
		float: none;
	}

	.caseDetail .head_photo .stit {
		line-height: 24px;
		padding: 0 10px;
		margin-bottom: 8px;
	}

	.caseDetail .gaiyo_group h3 {
		padding: 0 10px;
	}

	.caseDetail .comTable {
		margin: 8px auto 25px;
	}

	.caseDetail .comTable th {
		width: 8.3em;
		padding: 10px 5px 10px 10px;
		background: #f0f4fd;
	}

	.caseDetail .stit_navy {
		line-height: 36px;
		font-size: 18px;
		margin-bottom: 14px;
	}

	.caseDetail .gallery_box {
		overflow: hidden;
		min-height: auto;
		padding-bottom: 20px;
	}

	.caseDetail .gallery_box img {
		max-width: 100%;
	}

	.caseDetail .gallery_box .main_photo {
		width: 100%;
		float: none;
		text-align: center;
	}

	.caseDetail .gallery_box .main_photo img {
		max-height: auto;
	}

	.caseDetail .gallery_box .main_photo p {
		text-align: left;
		padding-top: 5px;
	}

	.caseDetail .gallery_box .photo_list {
		width: 100%;
		float: none;
	}

	.caseDetail .gallery_box.before .photo_list {
		width: 100%;
	}

	.caseDetail .gallery_box .photo_list .fb {
		font-weight: bold;
		padding: 10px 0 5px;
		font-size: 12px;
	}

	.caseDetail .gallery_box .thumb {
		margin-left: -2.1%;
	}

	.caseDetail .gallery_box .thumb li {
		float: left;
		width: 31%;
		margin-left: 2.2%;
		margin-bottom: 10px;
	}

	.caseDetail .gallery_box.before .thumb {
		margin-left: -1.5%;
	}

	.caseDetail .gallery_box.before .thumb li {
		width: 18.5%;
		margin-left: 1.5%;
		margin-bottom: 8px;
	}

	.caseDetail .box_comment h3.txt18 {
		background: url(/img/case/i_fuki.png) 10px 50% no-repeat #f0f4fc;
		background-size: 26px auto;
		font-size: 16px;
		line-height: 42px;
		padding: 0 10px 0 46px;
		letter-spacing: 1.8;
	}

	.caseDetail .box_comment .txt_box {
		padding: 20px 14px;
	}

	.caseDetail .comLink {
		margin: 20px auto 40px;
	}

}

/*-----------------------------*/


.popupModal1 {
	display: inline-block;
	vertical-align: top;
}

.popupModal1>input {
	/* ラジオボックス非表示 */
	display: none;
}

.popupModal1>input:nth-child(1)+label {
	cursor: pointer;
}

.modalPopup2 {
	/* 初期設定 ポップアップ非表示 */
	display: none;
}

.popupModal1>input:nth-child(1):checked+label+input:nth-child(3)+label+input:nth-child(5)+label+.modalPopup2 {
	/* ラジオ１ チェックでポップアップ表示 */
	display: block;
	z-index: 998;
	/*position: fixed;*/
	position: absolute;
	width: 440px;
	min-height: 6em;
	border-radius: 10px;
	left: 0;
	right: 0;
	margin: 0 auto;
	margin-top: -30px;
	/*top: 50%;

    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);*/
	background: #f6f6f6;
	padding: 10px 20px;
	overflow: hidden;
	border: 2px solid #d13131;
}

@media all and (max-width: 767px) {

	/*-----------------------------*/
	.popupModal1>input:nth-child(1):checked+label+input:nth-child(3)+label+input:nth-child(5)+label+.modalPopup2 {
		position: fixed;
		top: 150px;
		margin-top: 0px;
		width: 94%;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}

}

/*-----------------------------*/

.popupModal1>input:nth-child(1):checked+label+input:nth-child(3)+label+input:nth-child(5)+label+.modalPopup2>div {
	/* */
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	display: inline-block;
	width: 100%;
	height: 100%;
}

.popupModal1>input:nth-child(1):checked+label+input:nth-child(3)+label+input:nth-child(5)+label+.modalPopup2>div>iframe {
	width: 100%;
	height: 100%;
	border: none;
	display: block;
}

.popupModal1>input:nth-child(1):checked+label+input:nth-child(3)+label+input:nth-child(5)+label+.modalPopup2>div>img {
	/* ポップアップの中の要素 */
	max-width: 100%;
}

.popupModal1>input:nth-child(1)+label~label {
	display: none;
	/* ラジオ１ 以外のラベルを初期は非表示 */

}

.popupModal1>input:nth-child(1):checked+label+input:nth-child(3)+label {
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.40);
	display: block;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 997;
	text-indent: -999999px;
	overflow: hidden;
}

.popupModal1>input:nth-child(1):checked+label+input:nth-child(3)+label+input:nth-child(5)+label {
	/*background: rgba(255, 255, 255, 0.5);*/
	display: inline-block;

	position: absolute;
	width: 420px;
	min-height: 6em;
	border-radius: 10px;
	left: 400px;
	right: 0;
	margin: auto;
	margin-top: -30px;

	/*position: fixed;
    left: 10px;
    bottom: 20px;*/
	z-index: 999;
	width: 44pt;
	height: 44pt;
	font-size: 40px;
	border-radius: 40%;
	line-height: 44pt;
	text-align: center;
	color: #d13131;
	cursor: pointer;
	font-weight: normal;
}

@media all and (max-width: 767px) {

	/*-----------------------------*/
	.popupModal1>input:nth-child(1):checked+label+input:nth-child(3)+label+input:nth-child(5)+label {
		position: fixed;
		top: 144px;
		left: auto;
		right: 10px;
		margin: auto;

		/*   left: 50% !important;
     top: 50% !important;
     margin-left: 180px;
     margin-top: -90px;*/
	}
}

/*-----------------------------*/

.popupModal1>input:nth-child(1)+label+input:nth-child(3):checked+label+input:nth-child(5)+label+.modalPopup2,
.popupModal1>input:nth-child(1)+label+input:nth-child(3)+label+input:nth-child(5):checked+label+.modalPopup2 {
	/* ラジオ２と３ どっちかチェックでポップアップ非表示 */
	display: none;
}


.modalPopup2 {
	animation: fadeIn 1s ease 0s 1 normal;
	-webkit-animation: fadeIn 1s ease 0s 1 normal;
}

@keyframes fadeIn {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}

@-webkit-keyframes fadeIn {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}

.popupModal1 .modalTitle {
	font-size: 18px;
	line-height: 30px;
	text-align: left;
	background: url(/img/case/i_q.png) left 0 no-repeat;
	padding-left: 40px;
	padding-bottom: .5em;
	margin: .5em 0;
	font-weight: bold;
}

.popupModal1 .modalMain {
	color: #333;
	font-weight: normal;
	animation-delay:
		text-align: left;
	font-size: 16px;
	line-height: 1.8em;
}


/*------------------------------------------------------------
	古いcss/記事
------------------------------------------------------------*/


.caseDetail {
	margin-top: 80px;
}

.caseDetail .title {
	margin: 0 0 20px 3px;
}

.caseDetail .post_content h3,
.caseDetail .post_content .title span {
	padding: 3px 28px;
	display: inline-block;
	font-size: 27px;
	color: #fff;
	line-height: 1.5;
	letter-spacing: 1px;
	font-weight: bold;
	background-color: #162244;
}

.caseDetail .post_content h3 {
	width: 100%;
	max-width: 784px;
	box-sizing: border-box;
	margin-bottom: 1em;
}

.caseDetail .title01 span {
	padding: 4px 28px;
	font-size: 25px;
}

.caseDetail .text01 {
	margin-bottom: 60px;
}

.caseDetail .text02 {
	margin-bottom: 34px;
}

.caseDetail .text03 {
	margin-bottom: 86px;
}

.caseDetail .photoList {
	margin: 0 0 5px 4px;
}

.caseDetail .photoList li {
	padding: 0 25px 25px 0;
	float: left;
	width: 244px;
}

.caseDetail .photoList li:nth-child(3n) {
	padding-right: 0;
}

.caseDetail .photoList li span {
	margin: 3px 0 0 11px;
	display: block;
	color: #0b1f44;
}

.caseDetail .tabBox {
	margin: 0 4px 43px;
}

.caseBox.tax_list {
	margin-top: 80px;
}

@media all and (max-width: 767px) {

	.caseDetail {
		margin-top: 40px;
	}

	.caseDetail .title {
		margin: 0 0 10px 3px;
	}

	.caseDetail .title span {
		padding: 5px 14px;
		font-size: 16px;
		line-height: 1.5;
	}

	.caseDetail .title01 {
		margin-bottom: 20px;
	}

	.caseDetail .title01 span {
		padding: 7px 12px;
		font-size: 16px;
	}

	.caseDetail .text01 {
		margin-bottom: 24px;
	}

	.caseDetail .text02 {
		margin-bottom: 51px;
	}

	.caseDetail .text03 {
		margin-bottom: 56px;
	}

	.caseDetail .photoList {
		margin: 0 17px 15px;
	}

	.caseDetail .photoList li {
		padding: 0 0 20px 0;
		width: 100%;
	}

	.caseDetail .photoList li img {
		width: 100%;
	}

	.caseDetail .photoList li span {
		color: #333;
		margin: 10px 0 0 0;
	}

	.caseDetail .tabBox {
		margin: 0 -5px 32px;
	}
}

/*------------------------------------------------------------
	column
------------------------------------------------------------*/
.columnBox {
	margin-bottom: 115px;
}

.columnBox .headLine02 {
	margin-bottom: 66px;
}

.columnBox .topUl {
	margin-bottom: 44px;
	text-align: center;
}

.columnBox .topUl li {
	margin: 0 18px;
	display: inline-block;
	vertical-align: top;
}

.columnBox .topUl li a {
	padding: 1px 5px;
	width: 236px;
	display: block;
	font-size: 26px;
	line-height: 1.4;
	box-sizing: border-box;
	border: 1px solid #7D7D7D;
	background-color: #E7EBF4;
}

.columnBox .topUl li a:hover {
	opacity: 0.7;
}

.columnBox .topUl .liStyle01 a {
	background-color: #F7FDE6;
}

.columnBox .topUl .liStyle02 a {
	background-color: #F6E7E7;
}

.columnBox .comNews {
	margin-bottom: 77px;
}

.columnBox .comNews dt {
	font-size: 21px;
	width: 378px;
}

.columnBox .comNews li dt .lTxt {
	margin-top: -3px;
	padding: 0 0 0 33px;
	width: 220px;
	letter-spacing: 1px;
}

.columnBox .comNews li dt .catgSpan {
	width: 140px;
	font-size: 15px;
	line-height: 1.3;
	letter-spacing: 1px;
	border: 1px solid #7D7D7D;
	background-color: #E7EBF4;
	text-shadow: 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff;
	white-space: nowrap;
}

.columnBox .comNews li dt .catgSpan.cat-news {
	background-color: #E7EBF4;
}

.columnBox .comNews li dt .catgSpan.cat-column {
	background-color: #F7FDE6;
}

.columnBox .comNews li dt .catgSpan.cat-blog {
	background-color: #F6E7E7;
}

.columnDetail .headLine03 .topSpan.cat-news {
	background-color: #E7EBF4;
}

.columnDetail .headLine03 .topSpan.cat-column {
	background-color: #F7FDE6;
}

.columnDetail .headLine03 .topSpan.cat-blog {
	background-color: #F6E7E7;
}

/* .columnBox .comNews li dt .catgSpan02 {
	background-color: #F7FDE6;
}

.columnBox .comNews li dt .catgSpan03 {
	background-color: #F6E7E7;
} */

.columnBox .comNews li dl {
	padding: 18px 0 12px;
}

.columnBox .comNews li dd {
	margin: -4px 0 0 411px;
	font-size: 22px;
}

.columnBox .comNews li dd a {
	padding-left: 33px;
	background: url(../img/common/icon05.png) no-repeat left center;
}

@media all and (max-width: 767px) {
	.columnBox {
		margin-bottom: 38px;
	}

	.columnBox .headLine02 {
		margin-bottom: 35px;
	}

	.columnBox .topUl {
		margin: 0 0 10px;
		overflow: hidden;
	}

	.columnBox .topUl li {
		margin: 0 2% 0 0;
		float: left;
		width: 32%;
	}

	.columnBox .topUl li:last-child {
		margin: 0;
	}

	.columnBox .topUl li a {
		padding: 3px 5px;
		width: auto;
		font-size: 13px;
		line-height: 1.4;
	}

	.columnBox .comNews {
		margin: 0 -8px 47px;
	}

	.columnBox .comNews li {
		padding: 0 14px;
	}

	.columnBox .comNews dt {
		font-size: 12px;
		width: 100%;
	}

	.columnBox .comNews li dt .lTxt {
		display: inline-block;
		margin-top: 0px;
		padding: 0;
		width: 10em;
		letter-spacing: 1px;
	}

	.columnBox .comNews li dt .catgSpan {
		margin-left: 5px;
		min-width: 51px;
		width: auto;
		padding: 1px 5px;
		font-size: 12px;
		line-height: 1.3;
	}

	.columnBox .comNews li dl {
		padding: 17px 0 11px;
	}

	.columnBox .comNews li dd {
		margin: 0;
		font-size: 16px;
	}

	.columnBox .comNews li dd a {
		padding-left: 27px;
		background: url(../img/common/sp_icon03.png) no-repeat left center;
		background-size: 20px auto;
	}

	/*.columnBox .wp-pagenavi a,
	.columnBox .wp-pagenavi span {
		margin: 0 6px;
		padding: 5px 15px;
		font-size: 23px;
		border-width: 2px;
	}*/
}

/*------------------------------------------------------------
	column/detail.html
------------------------------------------------------------*/
.columnDetail .headLine03 {
	margin-bottom: 35px;
	font-size: 28px;
}

.columnDetail .headLine03 .topSpan {
	padding: 2px 24px;
	margin: 0 0 8px 3px;
	color: #333;
	display: inline-block;
	font-size: 19px;
	font-weight: normal;
	border: 1px solid #7D7D7D;
	background-color: #E7EBF4;
}

.columnDetail .comBorderBox {
	margin: 14px 32px 43px;
	padding: 20px 71px 37px;
}

.columnDetail .comBorderBox p {
	margin: 0 3px 27px 3px;
}

.columnDetail .comBorderBox .text01 {
	margin-bottom: 82px;
}

@media all and (max-width: 767px) {
	.columnDetail .headLine03 {
		margin: 0 -13px 20px;
		font-size: 19px;
		padding-bottom: 15px;
	}

	.columnDetail .headLine03 .topSpan {
		padding: 0px 5px;
		margin: 0 0 9px -12px;
		color: #333;
		font-size: 13px;
		border: 1px solid #7D7D7D;
		background-color: #E7EBF4;
	}

	.columnDetail .comBorderBox {
		margin: 0 -8px;
		padding: 14px 13px 52px;
	}

	.columnDetail .comBorderBox p {
		margin: 0 3px 24px 3px;
	}

	.columnDetail .comBorderBox .photoImg {
		margin-bottom: 15px;
	}

	.columnDetail .comBorderBox .text01 {
		margin-bottom: 53px;
	}
}

/*------------------------------------------------------------
	flow
------------------------------------------------------------*/
.flowBox {
	margin-bottom: 17px;
	margin-top: 80px;
}

.flowBox .headLine02 {
	margin: 0;
}

.flowBox .content {
	width: 936px;
}

.flowBox .top {
	margin-bottom: 35px;
	line-height: 1.75;
}

.flowBox .listUl {
	margin: 0 -4px 0 0;
	overflow: hidden;
	display: flex;
	flex-wrap: wrap;
}

.flowBox .listUl li {
	position: relative;
	margin: 0 30px 34px 0;
	width: 293px;
	box-sizing: border-box;
	background: #f2f2f2;
}

.flowBox .listUl li::before {
	content: "";
	position: absolute;
	top: 50%;
	/* 縦軸をセンタリングする */
	left: 0;
	transform: translateY(-50%);
	/* 縦軸をセンタリングする */
	border: 10px solid transparent;
	border-left: 16px solid #D72E3D;
	/* 好みで色を変えてください */
}

.flowBox .listUl li::before {
	content: "";
	position: absolute;
	top: 38%;
	left: unset;
	right: -43px;
	transform: translateY(-50%);
	border: 20px solid transparent;
	border-left: 15px solid #D72E3D;
}

.flowBox .listUl li:last-child::before {
	content: none;
}

.flowBox .listUl li:nth-child(3n) {
	margin-right: 0;
}

.flowBox .listUl li p {
	margin-bottom: 9px;
	padding: 8px 9px 7px;
	color: #fff;
	display: table;
	width: 100%;
	font-size: 18px;
	font-weight: bold;
	background-color: #162146;
	border-radius: 3px;
	box-sizing: border-box;
}

.flowBox .listUl li p.flow-caption {
	background: none;
	color: initial;
	font-weight: normal;
	font-size: 14px;
}

.flowBox .listUl li p .lImg {
	padding-right: 11px;
	width: 46px;
	display: table-cell;
	vertical-align: middle;
}

.flowBox .listUl li p .rTxt {
	display: table-cell;
	vertical-align: middle;
}

@media all and (max-width: 767px) {
	.flowBox {
		margin-bottom: 22px;
		margin-top: 30px;
	}

	.flowBox .headLine02 {
		margin: 0;
	}

	.flowBox .content {
		width: auto;
		padding: 0 15px;
	}

	.flowBox .top {
		margin-bottom: 17px;
		line-height: 1.6;
	}

	.flowBox .listUl {
		margin: 0;
		overflow: hidden;
	}

	.flowBox .listUl li {
		margin: 0 0 28px 0;
		width: 100%;
	}

	.flowBox .listUl li:last-child {
		margin-bottom: 0;
	}

	.flowBox .listUl li:nth-child(3n) {
		margin-right: 0;
	}

	.flowBox .listUl li p {
		margin-bottom: 5px;
		padding: 8px 9px 7px;
		font-size: 16.5px;
		font-weight: bold;
		border-radius: 3px;
	}

	.flowBox .listUl li p .lImg {
		padding-right: 14px;
		width: 43px;
	}

	.flowBox .listUl li p .lImg img {
		width: 100%;
	}

	.flowBox .listUl li img {
		width: 100%;
	}

	.flowBox .listUl li::before {
		transform: translate3d(90deg);
		right: unset;
		bottom: 30px;
	}

	.flowBox .listUl li::before,
	.flowBox .listUl li:last-child::before {
		transform: rotate(90deg);
		right: unset;
		bottom: -82px;
		top: unset;
		left: calc(50% - 30px);
		border: 44px solid transparent;
		border-left: 18px solid #D72E3D;
		padding: 0;
	}
}

/*------------------------------------------------------------
	about
------------------------------------------------------------*/
.aboutBox {
	margin-bottom: 48px;
}

.aboutBox .headLine02 {
	margin: 0;
}

.aboutBox .comTopVisual {
	background: #E1E3EB url(../img/about/top_visual_bg.jpg) no-repeat center center;
	background-size: cover;
}

.aboutBox .top {
	margin: 0 0 40px 32px;
	line-height: 1.75;
}

.aboutBox .headLine01 {
	margin: 0;
	padding: 11px 0 8px;
	font-size: 22px;
}

.aboutBox .comImgBoxL {
	margin: 0 30px 42px 32px;
}

.aboutBox .comImgBoxL .textBox {
	padding: 30px 0 0 0;
}

.aboutBox .comImgBoxL .textBox .topImg {
	margin: 0 0 13px 0px;
}

.aboutBox .comImgBoxL .textBox p span {
	font-weight: bold;
}

.aboutBox .comImgBoxR {
	margin: 0 31px 22px 0;
}

.aboutBox .comImgBoxR .textBox {
	padding-top: 32px;
}

.aboutBox .comImgBoxR .textBox .topImg {
	margin-bottom: 18px;
}

.aboutBox .border {
	border-top: 1px solid #CBCBCB;
}

.aboutBox .border01 {
	margin-bottom: 50px;
	padding-bottom: 38px;
	border-bottom: 1px solid #CBCBCB;
}

.aboutBox .comImgBoxL01 {
	margin-bottom: 39px;
}

.aboutBox .comImgBoxL01 .textBox {
	padding-top: 35px;
}

.aboutBox .comImgBoxL01 .textBox .topImg {
	margin-bottom: 19px;
}

.aboutBox .comImgBoxR01 {
	margin-bottom: 50px;
}

.aboutBox .comLink a {
	padding-right: 16px;
}

@media all and (max-width: 767px)
/*----------------------*/
	{
	.aboutBox .comTopVisual {
		background: #E1E3EB url(../img/about/sp_top_visual_bg.jpg) no-repeat center top;
		background-size: 100% auto;
		height: 0;
		min-height: auto;
		padding-top: 65%;
	}

	.aboutBox .comTopVisual p {
		letter-spacing: -0.5px;
		bottom: 22px;
	}

	.aboutBox .top {
		margin: 0 0 13px 6px;
		line-height: 1.6;
	}

	.aboutBox .headLine01 {
		margin: 0 0 20px;
		padding: 6px 10px;
		font-size: 19px;
	}

	.aboutBox .comImgBoxL {
		margin: 0 0 35px;
	}

	.aboutBox .comImgBoxL .photoBox {
		margin: 0 8px;
	}

	.aboutBox .comImgBoxL .textBox {
		padding: 15px 0 0;
	}

	.aboutBox .comImgBoxL .textBox .topImg {
		margin: 0 0 8px 0px;
	}

	.aboutBox .comImgBoxL .textBox .topImg img {
		height: 25px;
	}

	.aboutBox .comImgBoxL .textBox p span {
		font-weight: bold;
	}

	.aboutBox .comImgBoxR {
		margin: 0 0 18px;
	}

	.aboutBox .comImgBoxR .photoBox {
		margin: 0 8px;
	}

	.aboutBox .comImgBoxR .textBox {
		padding-top: 14px;
	}

	.aboutBox .comImgBoxR .textBox .topImg {
		margin-bottom: 9px;
	}

	.aboutBox .comImgBoxR .textBox .topImg img {
		height: 25px;
	}

	.aboutBox .border {
		padding-top: 18px;
	}

	.aboutBox .border01 {
		margin-bottom: 23px;
		padding-bottom: 5px;
	}

	.aboutBox .comImgBoxL01 {
		margin-bottom: 20px;
	}

	.aboutBox .comImgBoxL01 .textBox {
		padding-top: 15px;
	}

	.aboutBox .comImgBoxL01 .textBox .topImg {
		margin-bottom: 9px;
	}

	.aboutBox .comImgBoxR01 {
		margin-bottom: 28px;
		padding-top: 21px;
	}
}

/*----------------------*/

/*------------------------------------------------------------
	faq
------------------------------------------------------------*/
.faqBox {
	margin: 60px 50px;
}


.faqBox .headLine02 {
	margin: 0;
}

.faqBox .comTopVisual {
	background: url(../img/faq/top_visual_bg.jpg) no-repeat center center;
	background-size: cover;
}

.faqBox .comTopVisual p {
	padding-right: 60px;
}

.faqBox .top {
	line-height: 1.75;
	margin: 0 0 22px 33px;
}

.faqBox dl {
	margin: 0 32px 0 31px;
}

.faqBox dt:first-child {
	margin: 0;
}

.faqBox dt {
	margin-top: 14px;
	cursor: pointer;
	padding: 0px 10px 2px 0px;
	overflow: hidden;
	font-weight: bold;
	font-size: 16px;
	position: relative;
	border-bottom: 1px solid #0D2248;
}

.faqBox dt:before {
	margin-top: -15px;
	width: 18px;
	height: 18px;
	background: url(../img/faq/icon02.png) no-repeat;
	background-size: 18px 18px;
	position: absolute;
	top: 60%;
	right: 6px;
	content: "";
}

.faqBox dt.on:before {
	margin-top: -15px;
	width: 18px;
	height: 2px;
	background: url(../img/faq/icon01.png) no-repeat;
	background-size: 18px 2px;
	position: absolute;
	top: 78%;
	right: 6px;
	content: "";
}


.faqBox dt .qTxt {
	margin-top: -3px;
	color: #a31818;
	float: left;
	font-weight: bold;
	font-size: 24px;
}

.faqBox dt .rTxt {
	display: block;
	padding: 2px 0 0 35px;
}

.faqBox dd {
	display: none;
	padding: 16px 20px;
	line-height: 1.75;
	background: #DBDBDB;
	margin: 14px 20px 30px;
}

@media all and (max-width: 767px) {
	.faqBox {
		margin: 0;
	}

	.faqBox .headLine02 {
		margin: 0;
	}

	.faqBox .comTopVisual {
		background: url(../img/faq/sp_top_visual_bg.jpg) no-repeat center center;
		background-size: cover;
	}

	.faqBox .comTopVisual p {
		padding: 0;
		bottom: 22px;
	}

	.faqBox .top {
		line-height: 1.6;
		margin: 0 0 25px 6px;
	}

	.faqBox dl {
		margin: 0;
	}

	.faqBox dt:first-child {
		margin: 0;
	}

	.faqBox dt {
		padding: 2px 50px 0px 2px;
		font-size: 15px;
		line-height: 1.55;
	}

	.faqBox dt:before {}

	.faqBox dt.on:before {}


	.faqBox dt .qTxt {
		margin-top: -2px;
		font-weight: bold;
		font-size: 21px;
	}

	.faqBox dt .rTxt {
		padding: 2px 0 0 31px;
	}

	.faqBox dd {
		font-size: 14px;
		padding: 19px 7px 13px;
		line-height: 1.7;
	}
}

/*------------------------------------------------------------
	company
------------------------------------------------------------*/
.companyBox .headLine02 {
	margin: 0;
}

.companyBox .comTopVisual {
	background: #E1E3EB url(../img/company/top_visual_bg.jpg) no-repeat center center;
	background-size: cover;
}

.companyBox.rec .comTopVisual {
	background: #E1E3EB url(../img/recruit/top_visual_bg.jpg) no-repeat center center;
	background-size: cover;
}

.companyBox .comTopVisual p {
	padding-right: 37px;
}

.companyBox .top {
	margin: 0 0 35px 32px;
	line-height: 1.75;
}

.companyBox .headLine01 {
	margin: 0 0 20px;
	padding: 11px 0 8px;
	font-size: 22px;
}

.companyBox .tabBox {
	margin: 0 32px 36px;
}

.companyBox .comTable th,
.companyBox .comTable td {
	padding: 11px 10px 9px 44px;
	font-size: 15px;
	color: #333;
	line-height: 2;
}

.companyBox .comTable th {
	background-color: #EFF3FC;
	border-left: none;
	border-right: none;
	text-align: left;
	width: 23.5%;
}

.companyBox .comTable td {
	border-left: none;
	border-right: none;
}

.companyBox .comLink {
	margin-bottom: 48px;
}

.companyBox .h3Ttl {
	margin-bottom: 0;
}

.companyBox .mapBox iframe {
	vertical-align: top;
}

@media all and (max-width: 767px) {
	.companyBox .headLine02 {
		margin: 0;
	}

	.companyBox .comTopVisual {
		background: #E1E3EB url(../img/company/sp_top_visual_bg.jpg) no-repeat center top;
		background-size: 100% auto;
		height: 0;
		min-height: auto;
		padding-top: 65%;
	}

	.companyBox.rec .comTopVisual {
		background: #E1E3EB url(../img/recruit/sp_top_visual_bg.jpg) no-repeat center center;
		background-size: 100% auto;
	}

	.companyBox .comTopVisual p {
		padding: 0;
		bottom: 12px;
	}

	.companyBox .top {
		margin: 0 6px 32px;
		line-height: 1.6;
	}

	.companyBox .headLine01 {
		margin: 0 0 10px;
		padding: 6px 10px;
		font-size: 19px;
	}

	.companyBox .h3Ttl {
		margin: 0;
	}

	.companyBox .mapBox {
		display: block;
		height: 0;
		padding-top: 90%;
		position: relative;
		overflow: hidden;
	}

	.companyBox .mapBox iframe {
		display: block;
		height: 100%;
		width: 100%;
		top: 0;
		left: 0;
		position: absolute;
	}

	.companyBox .tabBox {
		margin: 0 0 16px;
	}

	.companyBox.rec .tabBox p {
		padding: 10px;
	}

	.companyBox .comTable th,
	.companyBox .comTable td {
		padding: 11px 10px 11px 12px;
		line-height: 1.6;
		border: 1px solid #CBCBCB;
	}

	.companyBox .comTable th {
		padding-left: 8px;
		background-color: #F3F3F3;
		width: 24.5%;
		font-weight: bold;
	}

	.companyBox .comLink {
		margin-bottom: 38px;
	}

	.companyBox .comLink a {
		font-size: 19px;
	}
}

/*------------------------------------------------------------
	404
------------------------------------------------------------*/
.errorBox {
	margin-bottom: 94px;
}

.errorBox h2 {
	margin-bottom: 52px;
	padding: 79px 0 7px;
	text-align: center;
	border-bottom: 1px dotted #363636;
}

.errorBox h2 span {
	color: #333;
	position: relative;
	font-weight: normal;
	font-size: 26px;
	display: inline-block;
}

.errorBox h2 span:before {
	width: 411px;
	height: 3px;
	background: #0C4476;
	position: absolute;
	left: -10px;
	bottom: -9px;

	content: "";
}

.errorBox .top {
	margin-bottom: 76px;
	line-height: 1.75;
	text-align: center;
}

.errorBox .borderBox {
	padding-bottom: 37px;
	margin: 0 109px 0 111px;
	border: 3px solid #162244;
	background-color: #EEF1FA;
}

.errorBox .borderBox .topImg {
	margin-bottom: 17px;
	text-align: center;
}

.errorBox .borderBox .topImg img {
	width: 59px;
	margin-top: -31px;
}

.errorBox .borderBox .title {
	margin-bottom: 35px;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	letter-spacing: 2px;
}

.errorBox .borderBox .linkUl {
	margin: 0 0 0 175px;
}

.errorBox .borderBox .linkUl>li {
	float: left;
	font-size: 14px;
	width: 261px;
}

.errorBox .borderBox .linkUl>li ul li {
	padding-bottom: 13px;
}

.errorBox .borderBox .linkUl>li ul li a:hover {
	text-decoration: underline;
}

@media all and (max-width: 767px) {
	.errorBox {
		margin-bottom: 87px;
	}

	.errorBox h2 {
		margin-bottom: 17px;
		padding: 50px 0 2px;
	}

	.errorBox h2 span {
		font-size: 19px;
	}

	.errorBox h2 span:before {
		width: 315px;
		height: 2px;
		background: #0C4476;
		position: absolute;
		left: -15px;
		bottom: -3px;

		content: "";
	}

	.errorBox .top {
		margin: 0 30px 90px;
		line-height: 1.75;
	}

	.errorBox .borderBox {
		padding-bottom: 24px;
		margin: 0 -1px;
		border: 2px solid #162244;
	}

	.errorBox .borderBox .topImg {
		margin-bottom: -2px;
	}

	.errorBox .borderBox .topImg img {
		width: 65px;
		margin-top: -35px;
	}

	.errorBox .borderBox .title {
		margin-bottom: 16px;
		font-size: 20px;
		letter-spacing: 1px;
	}

	.errorBox .borderBox .linkUl {
		margin: 0 10px 0 20px;
	}

	.errorBox .borderBox .linkUl>li {
		float: left;
		font-size: 13.5px;
		width: 47%;
	}

	.errorBox .borderBox .linkUl>li:nth-child(2n) {
		float: right;
		width: 51.6%;
	}

	.errorBox .borderBox .linkUl>li ul li {
		padding-bottom: 14px;
	}

	.errorBox .borderBox .linkUl>li ul li a:hover {
		text-decoration: none;
	}

	.errorBox .borderBox .ulBox {
		max-width: 358px;
		margin: 0 auto;
	}
}

/*------------------------------------------------------------
	contact
------------------------------------------------------------*/
.contactBox {
	padding-bottom: 75px;
}

.contactBox.thanks {
	padding-bottom: 40px;
}

.contactBox .headLine02 {
	margin: 0;
}

.contactBox .comTopVisual {
	background: url(../img/contact/top_visual_bg.jpg) no-repeat center center;
	background-size: cover;
}

.contactBox .comTopVisual p {
	padding-right: 65px;
}

.contactBox .top {
	margin: 0 0 18px 32px;
	line-height: 1.75;
}

.contactBox .top span {
	font-weight: bold;
}

.contactBox .borderBox {
	margin: 0 32px 40px;
	padding-bottom: 28px;
	border: 1px solid #162244;
}

.contactBox .borderBox .title {
	margin-bottom: 20px;
	padding: 17px 0 6px;
	font-size: 28px;
	font-weight: bold;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
	text-align: center;
	background-color: #EFF3FC;
}

.contactBox .borderBox .textUl {
	margin: 0 127px 0 157px;
	font-size: 24px;
}

.contactBox .borderBox .textUl li {
	margin-bottom: 10px;
	padding: 0 0 0 32px;
	font-weight: bold;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
	background: url(../img/contact/icon.gif) no-repeat left center;
}

.contactBox .borderBox .textUl li span {
	color: #a31818;
}

.contactBox .borderBox .btm {
	margin: 0 100px 0 157px;
}

.contactBox .ttl {
	margin-bottom: 27px;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}

.contactBox .txt01 {
	margin-bottom: 15px;
	line-height: 1.75;
	text-align: center;
}

.contactBox .link {
	margin-bottom: 68px;
	text-align: center;
}

.contactBox .link a {
	display: inline-block;
}

.contactBox .link a:hover {
	opacity: 0.7;
}

.contactBox .headLine01 {
	margin-bottom: 21px;
	padding: 11px 0 8px;
	font-size: 22px;
}

.contactBox .listUl {
	width: 557px;
	margin: -9px auto 67px;
}

.contactBox .listUl li {
	float: left;
	width: 100%;
}

.contactBox .listUl li:last-child {
	margin-top: 25px;
}

.contactBox .listUl li:last-child a {
	padding: 18px 0 15px 112px;
	display: block;
	color: #0b1f44;
	font-size: 21px;
	font-weight: bold;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
	border: 1px solid #162244;
	letter-spacing: 1px;
}

.contactBox .listUl li:last-child a:hover {
	opacity: 0.7;
}

.contactBox .listUl li:last-child img {
	margin-top: -3px;
	display: inline-block;
	vertical-align: middle;
	padding-right: 5px;
}

.contactBox .txt02 {
	margin-bottom: 30px;
	padding-top: 13px;
	font-size: 13px;
	line-height: 1.55;
	letter-spacing: 1px;
}

.contactBox .tabBox {
	margin: 0 32px 20px;
}

.contactBox .tabBox th,
.contactBox .tabBox td {
	padding: 14px 10px 14px 20px;
	color: #333;
	font-size: 15px;
	border-left: none;
	border-right: none;
}

#estimate .contactBox.thanks,
#estimate .contactBox.confirm {
	padding-top: 30px;
}

#estimate .price_item {
	display: none;
}

#estimate .price_item.is_show {
	display: block;
}

.compare .content {
	padding: 40px 50px 0;
}

.contactBox.confirm .tabBox td {
	font-weight: bold;
}

.contactBox .tabBox th {
	text-align: left;
	width: 29%;
	background-color: #F0F3FC;
}

.contactBox .tabBox td input[type="text"],
.contactBox .tabBox td input[type="tel"],
.contactBox .tabBox td input[type="email"] {
	width: 238px;
	padding: 5px;
	height: 40px;
	font-size: 14px;
	box-sizing: border-box;
	border: 1px solid #CBCBCB;
	border-radius: 0;
	-webkit-appearance: none;
}

.contactBox .tabBox td .radioList {
	padding: 0 0;
}

.contactBox .tabBox td .radioList li {
	padding: 4px 0 4px;
}

.contactBox .tabBox td .radioList li.ib {
	display: inline-block;
	padding-right: 60px;
}

.contactBox .tabBox td .radioList li input {
	vertical-align: middle;
	margin-top: -3px;
}

.contactBox .tabBox td textarea {
	padding: 5px;
	width: 572px;
	height: 110px;
	font-size: 14px;
	box-sizing: border-box;
	border: 1px solid #CBCBCB;
	border-radius: 0;
	-webkit-appearance: none;
}

.contactBox .tabBox td .notes {
	margin-left: 8px;
}

.contactBox .txt03 {
	margin-bottom: 19px;
}

.contactBox .privacyBox {
	width: 780px;
	height: 126px;
	overflow-y: scroll;
	padding: 16px;
	margin: 0 auto 36px;
	box-sizing: border-box;
	border: 1px solid #CBCBCB;
}

.contactBox .privacyBox p {
	font-size: 14px;
	line-height: 1.6;
}

.contactBox .privacyBox .topTxt {
	margin-bottom: 5px;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
}

.contactBox .submit {
	text-align: center;
}

.contactBox.confirm .submit {
	padding-top: 20px;
}

.contactBox .submit li {
	margin: 0 3px;
	display: inline-block;
}

.contactBox .submit li input,
.contactBox .submit li a {
	display: inline-block;
	padding: 15px 0;
	color: #fff;
	cursor: pointer;
	width: 306px;
	font-size: 18px;
	border: none;
	border-radius: 3px;
	background-color: #A72224;
	letter-spacing: 1px;
	-webkit-appearance: none;
}

.contactBox .submit li.back input,
.contactBox .submit li.back a {
	background-color: #999;
	width: 250px;
}

.contactBox .submit li input:hover,
.contactBox .submit li a:hover {
	opacity: 0.7;
}

.contactBox_e {
	background-color: #0B1F44;
	padding: 60px 50px;
}

.contactBox_e .content {
	background: #fff;
	padding: 50px;
}

@media all and (max-width: 767px) {
	.contactBox {
		padding: 40px 16px 60px;
		border-bottom: none;
	}

	#estimate .contactBox.thanks,
	#estimate .contactBox.confirm {
		padding-top: 15px;
	}

	.contactBox .comTopVisual {
		background: url(../img/contact/sp_top_visual_bg.jpg) no-repeat center center;
		background-size: cover;
	}

	.contactBox .comTopVisual p {
		padding: 0;
		bottom: 23px;
	}

	.contactBox .top {
		margin: 0 6px 18px;
		line-height: 1.6;
	}

	.contactBox .borderBox {
		margin: 0 0 17px;
		padding-bottom: 16px;
	}

	.contactBox .borderBox .title {
		margin-bottom: 14px;
		padding: 13px 0 10px;
		font-size: 18px;
	}

	.contactBox .borderBox .textUl {
		margin: 0 30px 6px 50px;
		font-size: 18px;
	}

	.contactBox .borderBox .ulBox {
		margin: 0 auto;
		max-width: 377px;
	}

	.contactBox .borderBox .textUl li {
		margin-bottom: 8px;
		padding: 0 0 0 25px;
		line-height: 1.45;
		background: url(../img/contact/sp_icon.gif) no-repeat left 6px;
		background-size: 18px auto;
	}

	.contactBox .borderBox .textUl li span {
		display: block;
	}

	.contactBox .borderBox .btm {
		margin: 0 20px;
		line-height: 1.45;
		font-size: 13px;
	}

	.contactBox .ttl {
		margin-bottom: 12px;
		font-size: 15px;
		color: #0b1f44;
	}

	.contactBox .txt01 {
		margin-bottom: 15px;
		font-size: 14px;
		line-height: 1.7;
	}

	.contactBox .link {
		margin: 0 -8px 10px;
	}

	.contactBox .link a {
		display: block;
	}

	.contactBox .link img {
		width: 100%;
	}

	.contactBox .headLine01 {
		margin-bottom: 11px;
		padding: 6px 10px;
		font-size: 19px;
	}

	.contactBox .spTxt01 {
		margin-bottom: 12px;
		font-size: 16px;
		line-height: 1.45;
		letter-spacing: 1px;
	}

	.contactBox .listUl {
		width: auto;
		margin: 0 auto 33px;
	}

	.contactBox .listUl li img {
		width: 100%;
	}

	.contactBox .listUl li:last-child {
		margin-top: 20px;
	}

	.contactBox .listUl li:last-child a {
		padding: 0;
		border: none;
	}

	.contactBox .listUl li:last-child img {
		margin-top: -3px;
		display: inline-block;
		vertical-align: middle;
		padding-right: 5px;
	}

	.contactBox .spTxt02 {
		margin: 0 6px 11px;
		font-size: 16px;
		line-height: 1.5;
		font-weight: bold;
		text-align: left;
	}

	#estimate .contactBox .spTxt02 {
		font-weight: normal;
		margin: 20px 6px 11px;
	}

	.contactBox .txt02 {
		margin: 0 0 15px;
		padding-top: 13px;
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 1px;
		text-align: left;
	}

	.contactBox .txt02 span {
		margin-bottom: 12px;
		display: block;
		padding-left: 1.2em;
		text-indent: -1.2em;
	}

	.contactBox .tabBox {
		margin: 0 -8px 15px;
	}

	.contactBox .tabBox th,
	.contactBox .tabBox td {
		padding: 12px 5px 12px 8px;
		color: #333;
		font-size: 15px;
		line-height: 1.7;
	}

	.contactBox .tabBox th {
		text-align: left;
		width: 6em;
		background-color: #EFF3FC;
	}

	.contactBox .tabBox td input[type="text"],
	.contactBox .tabBox td input[type="tel"],
	.contactBox .tabBox td input[type="email"] {
		width: 100%;
		height: 40px;
	}

	.contactBox .tabBox td .radioList {
		padding: 0;
	}

	.contactBox .tabBox td .radioList li {
		padding: 2px 0 2px;
	}

	.contactBox .tabBox td .radioList li.ib {
		display: block;
		padding-right: 0;
	}

	.contactBox .tabBox td textarea {
		height: 168px;
		width: 100%;
		font-size: 14px;
	}

	.contactBox .tabBox td .notes {
		margin: 9px 0 0;
		display: block;
		line-height: 1.35;
		font-size: 14px;
	}

	.contactBox .tabBox td {
		padding: 12px 15px 12px 12px;
	}

	.contactBox .txt03 {
		margin: 0 6px 8px;
		text-align: left;
		line-height: 1.7;
	}

	.contactBox .privacyBox {
		width: auto;
		height: 180px;
		padding: 13px 8px;
		margin: 0 auto 27px;
	}

	.contactBox .privacyBox p {
		font-size: 14px;
		line-height: 1.6;
	}

	.contactBox .privacyBox .topTxt {
		margin-bottom: 4px;
		font-size: 18px;
	}

	.contactBox .submit li {
		margin: 0 0 10px;
		display: block;
		width: 100%;
	}

	.contactBox .submit li:last-child {
		margin-bottom: 0;
	}

	.contactBox .submit li input,
	.contactBox .submit li a {
		padding: 6px 0;
		width: 224px;
		font-size: 17.5px;
	}

	.contactBox .submit li.back input,
	.contactBox .submit li.back a {
		background-color: #999;
		width: 180px;
		margin-bottom: 5px;
	}

	.contactBox .submit li input:hover,
	.contactBox .submit li a:hover {
		opacity: 1;
	}

	.compare .content {
		padding: 20px 10px 0;
	}

	.contactBox_e .content {
		padding: 40px 10px;
	}
}

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

	/*-----------------------------*/
	.contactBox .tabBox th {
		font-size: 14px;
	}

}

/*-----------------------------*/

/*------------------------------------------------------------
	color
------------------------------------------------------------*/
.colorBox {
	margin-bottom: 68px;
}

.colorBox .headLine02 {
	margin: 0;
}

.colorBox .comTopVisual {
	margin-bottom: 27px;
	background: #E2E5EC url(../img/color/top_visual_bg.jpg) no-repeat center center;
	background-size: cover;
}

.colorBox .comTopVisual .content {
	position: relative;
	min-height: 380px;
}

.colorBox .comTopVisual p {
	height: auto;
	line-height: 1.6;
	float: none;
	padding: 28px 55px 28px 34px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	position: absolute;
	top: 50%;
	right: 0;
	margin: auto;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	display: inline-block;
	background: rgba(255, 255, 255, 0.86);
}

.colorBox .comTopVisual p span {
	display: inline-block;
}

.colorBox .comTopVisual p span.fsP2 {
	letter-spacing: 2px;
}

.colorBox .txt01 {
	margin-bottom: 23px;
	text-align: center;
	line-height: 1.75;
}

.colorBox .txt02 {
	margin-bottom: 28px;
}

.colorBox .txt03 {
	margin-bottom: 43px;
}

.colorBox .txt01 span {
	font-weight: bold;
}

.colorBox .photoList {
	margin: 0 31px 27px;
}

.colorBox .photoList li {
	float: left;
	width: 233px;
	position: relative;
}

.colorBox .photoList li span {
	position: absolute;
	width: 100%;
	bottom: 0;
	left: 0;
	font-size: 14px;
	font-weight: bold;
	bottom: 5px;
	color: #fff;
	text-align: center;
}

.colorBox .comBox {
	margin: 0 32px 28px;
}

.colorBox .comBox .ttl {
	padding: 14px 10px 10px;
}

.colorBox .comBox .ttl span {
	padding-left: 43px;
	background: url(../img/color/img.png) no-repeat left 1px;
}

.colorBox .comBox .info {
	padding: 35px 20px;
}

.colorBox .comBox .txt01 {
	margin-bottom: 29px;
}

.colorBox .comBox .info .title {
	font-size: 16px;
}

.colorBox .comBox .imgList {
	margin: 0 0 29px 103px;
}

.colorBox .comBox .imgList li {
	margin-right: 16px;
	float: left;
}

.colorBox .comBox .imgList01 {
	margin: 0 0 21px 103px;
}

.colorBox .comBox .ttlImg {
	margin-bottom: 47px;
	text-align: center;
}

.colorBox .txtImg01 {
	margin-bottom: 18px;
	text-align: center;
}

.colorBox .headLine01 {
	margin-bottom: 22px;
	padding: 11px 10px 8px;
	font-size: 22px;
}

.colorBox .title {
	margin-bottom: 6px;
	color: #a31818;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}

.colorBox .textP {
	margin: 0 107px 17px;
	line-height: 1.75;
}

.colorBox .imgBox {
	margin: 0 auto 35px;
	width: 630px;
	padding-right: 7px;
}

.colorBox .imgBox span {
	margin: 11px 24px 0 0;
	display: block;
	font-size: 12px;
	text-align: right;
}

.colorBox .imgBox01 {
	margin: 0;
	width: auto;
	text-align: center;
}

@media all and (max-width: 767px) {
	.colorBox {
		margin-bottom: 54px;
	}

	.colorBox .headLine02 {
		margin: 0;
	}

	.colorBox .comTopVisual {
		margin-bottom: 12px;
		background: #E2E5EC url(../img/color/sp_top_visual_bg.jpg) no-repeat center top;
		background-size: 100% auto;
		min-height: auto;
	}

	.colorBox .comTopVisual .content {
		position: relative;
		min-height: auto;
		height: 0;
		padding-top: 66%;
	}

	.colorBox .comTopVisual p {
		line-height: 1.6;
		padding: 14px 30px 14px 15px;
		top: auto;
		right: auto;
		bottom: 10px;
		left: 10px;
		margin: auto;
		-webkit-transform: translateY(0%);
		-ms-transform: translateY(0%);
		transform: translateY(0%);
	}

	.colorBox .comTopVisual p span {
		display: inline-block;
	}

	.colorBox .comTopVisual p span.fsP2 {
		letter-spacing: 2px;
	}


	/*
	.colorBox .comTopVisual p {
		padding-right: 0;
		bottom: 21px;
	}*/

	.colorBox .txt01 {
		margin: 0 6px 16px;
		text-align: left;
		line-height: 1.6;
	}

	.colorBox .txt02 {
		margin: 0 0 23px 6px;
	}

	.colorBox .txt03 {
		margin-bottom: 17px;
	}

	.colorBox .txt01 span {
		font-weight: bold;
	}

	.colorBox .photoList {
		margin: 0 -8px 20px;
	}

	.colorBox .photoList li {
		width: 50%;
	}

	.colorBox .photoList li img {
		width: 100%;
	}

	.colorBox .photoList li span {
		position: absolute;
		width: 100%;
		bottom: 0;
		left: 0;
		font-size: 11px;
		bottom: 5px;
	}

	.colorBox .comBox {
		margin: 0 0 28px;
	}

	.colorBox .comBox .ttl {
		padding: 6px 10px 5px;
	}

	.colorBox .comBox .ttl span {
		padding-left: 30px;
		background: url(../img/color/sp_img.png) no-repeat left 3px;
		background-size: 25px auto;
	}

	.colorBox .comBox .info {
		padding: 20px 20px 27px;
	}

	.colorBox .comBox .txt01 {
		margin: 0 0 27px;
	}

	.colorBox .comBox .info .title {
		margin-bottom: 11px;
		font-size: 15px;
		text-align: left;
		line-height: 1.6;
		letter-spacing: -0.5px;
	}

	.colorBox .comBox .imgList {
		margin: 0 -8px 11px -12px;
	}

	.colorBox .comBox .imgList li {
		margin-right: 0;
		width: 48.5%;
	}

	.colorBox .comBox .imgList li:last-child {
		float: right;
	}

	.colorBox .comBox .imgList li img {
		width: 100%;
	}

	.colorBox .comBox .imgList01 {
		margin: 0 -8px 25px -12px;
	}

	.colorBox .comBox .ttlImg {
		margin-bottom: 12px;
	}

	.colorBox .comBox .ttlImg img {
		margin: 0 auto;
	}

	.colorBox .txtImg01 {
		margin-bottom: 10px;
	}

	.colorBox .txtImg01 img {
		margin: 0 auto;
	}

	.colorBox .headLine01 {
		margin-bottom: 12px;
		padding: 6px 10px;
		font-size: 19px;
	}

	.colorBox .title {
		margin: 0 7px 0px;
		font-size: 15px;
		text-align: left;
		line-height: 1.7;
	}

	.colorBox .textP {
		margin: 0 7px 21px;
		font-size: 14px;
		line-height: 1.6;
	}

	.colorBox .imgBox {
		margin: 0 -3px 22px;
		width: auto;
		padding-right: 0;
	}

	.colorBox .imgBox img {
		max-width: 100%;
	}

	.colorBox .imgBox span {
		margin: 8px 10px 0 0;
		font-size: 7px;
	}

	.colorBox .imgBox01 {
		margin: 0;
	}

	.colorBox .imgBox01 img {
		width: 259px;
		margin: 0 auto;
	}

	.colorBox .comBox .title {
		margin: 0 0 6px;
		line-height: 1.5;
	}
}

/*------------------------------------------------------------
	first
------------------------------------------------------------*/
.firstBox .h2Ttl {
	padding: 13px 0 17px;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
	font-size: 27px;
	text-align: center;
}

.firstBox .h2Ttl span {
	margin-top: -1px;
	color: #a41818;
	display: block;
	font-size: 33px;
}

.firstBox .sec01 {
	padding: 67px 0 50px;
	background: url(../img/first/sec01_bg.jpg) no-repeat center top;
	background-size: cover;
}

.firstBox .sec01 .h3Ttl {
	margin-bottom: 37px;
	text-align: center;
}

.firstBox .sec01 .photoList {
	margin: 0 0 34px -1px;
}

.firstBox .sec01 .photoList li {
	margin-right: 19px;
	padding: 5px;
	float: left;
	width: 236px;
	text-align: center;
	background-color: #fff;
	box-sizing: border-box;
}

.firstBox .sec01 .photoList li:last-child {
	margin: 0;
}

.firstBox .sec01 .photoList li .photo {
	margin-bottom: 8px;
	display: block;
}

.firstBox .sec01 .photoList li .txt {
	padding-bottom: 1px;
	display: table;
	width: 100%;
	font-size: 18px;
	color: #a31818;
	font-weight: bold;
	line-height: 1.6;
}

.firstBox .sec01 .photoList li .txt .info {
	display: table-cell;
	vertical-align: middle;
	height: 58px;
}

.firstBox .sec01 .textP {
	font-size: 20px;
	font-weight: bold;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
	color: #fff;
	text-align: center;
	line-height: 1.95;
	letter-spacing: 1px;
}

.firstBox .sec01 .textP span {
	margin: -4px 0 -3px;
	font-size: 25px;
	color: #e2c98f;
	display: block;
}

.firstBox .sec02 {
	padding: 37px 0 43px;
	background: url(../img/first/sec02_bg.jpg) no-repeat center center;
	background-size: cover;
}

.firstBox .sec02 h3 {
	margin-bottom: 40px;
	text-align: center;
}

.firstBox .sec02 .infoBox {
	padding: 50px 0 50px;
	background-color: rgba(255, 255, 255, 0.75);
}

.firstBox .sec02 .top {
	width: 576px;
	margin: 0 auto 33px;
	padding: 15px 0 14px;
	text-align: center;
	color: #FFF;
	font-size: 23px;
	font-weight: bold;
	background-color: #A72323;
	letter-spacing: 1px;
}

.firstBox .sec02 .txtUl {
	width: 756px;
	margin: 0 auto;
}

.firstBox .sec02 .txtUl li {
	margin-bottom: 9px;
	padding-left: 34px;
	font-size: 24px;
	font-weight: bold;
	background: url(../img/first/sec02_icon.png) no-repeat left top 5px;
}

.firstBox .sec02 .txtUl li:last-child {
	margin-bottom: 0;
}

.firstBox .sec02 .txtUl li span {
	color: #a31818;
}

.firstBox .sec03 {
	margin-bottom: 42px;
	padding: 54px 0 30px;
	position: relative;
	background: url(../img/first/sec03_bg.gif) repeat left top;
}

.firstBox .sec03 .photo {
	position: absolute;
	bottom: 0;
	right: 17.4%;
}

.firstBox .sec03 p {
	color: #FFF;
	text-align: center;
}

.firstBox .sec03 .title {
	margin-left: 32px;
}

.firstBox .sec03 .ttl {
	margin-bottom: 15px;
	font-size: 23px;
	font-weight: bold;
	letter-spacing: 2px;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
}

.firstBox .sec03 .ttl span {
	color: #e2c98f;
}

.firstBox .sec03 .text01 {
	margin-bottom: 33px;
	line-height: 1.75;
}

.firstBox .sec03 .text02 {
	position: relative;
	z-index: 10;
}

.firstBox .sec03 .priceDl {
	width: 646px;
	margin: 0 auto 45px;
	color: #FFF;
}

.firstBox .sec03 .priceDl dt {
	width: 122px;
	float: left;
}

.firstBox .sec03 .priceDl dt {
	padding-top: 7px;
}

.firstBox .sec03 .priceDl .ttl {
	padding-top: 16px;
}

.firstBox .sec03 .priceDl dd {
	margin-bottom: 20px;
	position: relative;
}

.firstBox .sec03 .priceDl dd .mark {
	position: absolute;
	right: -4px;
	top: -50px;
}

.firstBox .sec03 .priceDl .price {
	width: 324px;
	padding: 17px 5px 15px;
	float: left;
	font-size: 20px;
	box-sizing: border-box;
	background-color: rgba(255, 255, 255, 0.23)
}

.firstBox .sec03 .priceDl .btn a {
	width: 147px;
	margin-left: 2px;
	padding: 17px 5px 15px;
	display: inline-block;
	text-align: center;
	color: #FFF;
	font-size: 21px;
	box-sizing: border-box;
	background-color: #7A222B;
}

.firstBox .sec03 .priceDl dd span {
	margin-left: 125px;
	clear: both;
	display: block;
	font-size: 13px;
}

.firstBox .sec04 h3 {
	margin-bottom: 26px;
	text-align: center;
}

.firstBox .sec04 h4 {
	text-align: center;
}

.firstBox .sec04 .content {
	width: 935px;
}

.firstBox .sec04 .comImgBoxL {
	margin-bottom: 0;
	/*margin-bottom: 46px;*/
}

.firstBox .sec04 .comImgBoxL .photoBox img {
	margin: -67px 0 0 -215px;
}

.firstBox .sec04 .comImgBoxL .textBox {
	margin-top: 27px;
}

.firstBox .sec04 .imgBox .textBox p {
	line-height: 1.75;
}

.firstBox .sec04 .imgBox .textBox p:not(:last-child) {
	margin-bottom: 14px;
}

.firstBox .sec04 .imgBox .textBox p span {
	font-weight: bold;
}

.firstBox .sec04 .comImgBoxR {
	margin-bottom: 0;
	/*margin-bottom: 54px;*/
}

.firstBox .sec04 .comImgBoxR .photoBox img {
	margin: -67px -216px 0 0;
}

.firstBox .sec04 .comImgBoxR .textBox {
	margin-top: 27px;
}

.firstBox .sec04 .imgArea {
	margin: 20px 0 44px;
	padding: 20px 13px 16px;
	border: 1px solid #CBCBCB;
}

.firstBox .sec04 .imgArea .photo {
	float: left;
}

.firstBox .sec04 .imgArea .textArea {
	width: 745px;
	float: right;
}

.firstBox .sec04 .imgArea .textArea p {
	line-height: 1.75;
	letter-spacing: 1px;
}

.firstBox .sec04 .imgArea .textArea .txt01 {
	display: block;
	font-weight: bold;
}

.firstBox .sec04 .imgArea .textArea p a {
	text-decoration: underline;
}

.firstBox .sec04 .imgArea .textArea p a:hover {
	text-decoration: none;
}

.firstBox .headLine01 {
	font-weight: bold;
}

.firstBox .sec05 {
	margin-bottom: 41px;
}

.firstBox .sec05 .content {
	width: 935px;
}

.firstBox .sec05 .imgBox {
	margin-right: 42px;
}

.firstBox .sec05 .imgBox .photoBox {
	float: right;
}

.firstBox .sec05 .imgBox .textBox {
	width: 560px;
	float: left;
}

.firstBox .sec05 .imgBox .textBox p {
	line-height: 1.75;
}

.firstBox .sec05 .imgBox .textBox span {
	display: block;
	color: #a31818;
	font-weight: bold;
}

.firstBox .headLine01 {
	margin-bottom: 30px;
	padding: 16px 10px;
	font-size: 20px;
}

@media all and (max-width: 767px) {
	.firstBox .h2Ttl {
		padding: 9px 0;
		font-size: 19px;
	}

	.firstBox .h2Ttl span {
		font-size: 23px;
	}

	.firstBox .sec01 {
		padding: 33px 9px 18px;
		background: url(../img/first/sp_sec01_bg.jpg) no-repeat center top;
		background-size: cover;
	}

	.firstBox .sec01 .h3Ttl {
		margin-bottom: -2px;
	}

	.firstBox .sec01 .h3Ttl img {
		margin: 0 auto;
	}

	.firstBox .sec01 .photoList {
		margin-bottom: 22px;
	}

	.firstBox .sec01 .photoList li {
		margin: 15px 0 0;
		padding: 2px;
		width: 48.3%;
	}

	.firstBox .sec01 .photoList li img {
		width: 100%;
	}

	.firstBox .sec01 .photoList li:nth-child(2n) {
		float: right;
	}

	.firstBox .sec01 .photoList li:last-child {
		margin: 15px 0 0;
	}

	.firstBox .sec01 .photoList li .photo {
		margin-bottom: 5px;
	}

	.firstBox .sec01 .photoList li .txt {
		min-height: 38px;
		font-size: 13px;
		line-height: 1.6;
	}

	.firstBox .sec01 .photoList li .txt .info {
		height: auto;
	}

	.firstBox .sec01 .textP {
		font-size: 16px;
		line-height: 1.8;
	}

	.firstBox .sec01 .textP span {
		margin: -1px 0 1px;
		font-size: 19px;
		line-height: 1.5;
	}

	.firstBox .sec02 {
		padding: 19px 0px 32px;
		background: url(../img/first/sp_sec02_bg.jpg) no-repeat center center;
		background-size: cover;
	}

	img.prev_icon.slick-arrow,
	img.next_icon.slick-arrow {
		width: 20px;
	}

	.firstBox .sec02 .content {
		margin: 0 -8px;
	}

	.firstBox .sec02 h3 {
		margin-bottom: 11px;
	}

	.firstBox .sec02 h3 img {
		width: 192px;
		margin: 0 auto;
	}

	.firstBox .sec02 .infoBox {
		padding: 25px 0 21px;
	}

	.firstBox .sec02 .top {
		width: 344px;
		margin: 0 auto 12px;
		padding: 7px 0 5px;
		font-size: 15px;
	}

	.firstBox .sec02 .txtUl {
		width: auto;
		margin: 0 15px;
	}

	.firstBox .sec02 .txtUl li {
		margin-bottom: 7px;
		padding-left: 20px;
		font-size: 15px;
		letter-spacing: -2px;
		line-height: 1.35;
		background: url(../img/first/sp_sec02_icon.png) no-repeat left top 3px;
		background-size: 14px auto;
	}

	.firstBox .sec02 .txtUl li:last-child {
		margin-bottom: 0;
	}

	.firstBox .sec03 {
		margin-bottom: 26px;
		padding: 25px 0 22px;
		background: url(../img/first/sec03_bg.gif) repeat left top;
		background-size: 45px auto;
	}

	.firstBox .sec04 h3 {
		margin-bottom: 10px;
	}

	.firstBox .sec04 h3 img {
		width: 195px;
		margin: 0 auto;
	}

	.firstBox .sec04 h4 {
		margin-bottom: 7px;
	}

	.firstBox .sec04 h4 img {
		width: 100%;
	}

	.firstBox .sec04 .content {
		width: auto;
	}

	.firstBox .sec04 .comImgBoxL {
		margin-bottom: 32px;
	}

	.firstBox .sec04 .comImgBoxL .photoBox img {
		margin: 0;
	}

	.firstBox .sec04 .imgBox .photoBox {
		margin: 0 8px 12px;
	}

	.firstBox .sec04 .comImgBoxL .textBox {
		margin-top: 0;
	}

	.firstBox .sec04 .imgBox .textBox p {
		line-height: 1.6;
		text-align: justify;
	}

	.firstBox .sec04 .imgBox .textBox p:not(:last-child) {
		margin-bottom: 24px;
	}

	.firstBox .sec04 .imgBox .textBox p span {
		font-weight: bold;
	}

	.firstBox .sec04 .imgBox .textBox .txt {
		display: block;
	}

	.firstBox .sec04 .imgBox .textBox .txt01 {
		display: inline;
	}

	.firstBox .sec04 .comImgBoxR {
		margin-bottom: 27px;
	}

	.firstBox .sec04 .comImgBoxR .photoBox img {
		margin: 0;
	}

	.firstBox .sec04 .comImgBoxR .textBox {
		margin-top: 0;
	}

	.firstBox .sec04 .imgArea {
		margin: -15px 0 8px;
		padding: 14px 7px 15px;
	}

	.firstBox .sec04 .imgArea .photo {
		width: 71px;
		margin: 0 auto 7px;
		float: none;
	}

	.firstBox .sec04 .imgArea .photo img {
		width: 100%;
	}

	.firstBox .sec04 .imgArea .textArea {
		width: auto;
		float: none;
		font-size: 14px;
	}

	.firstBox .sec04 .imgArea .textArea p a:hover {
		text-decoration: underline;
	}

	.firstBox .sec04 .imgArea .textArea p {
		line-height: 1.6;
		letter-spacing: 0;
	}

	.firstBox .sec05 {
		margin-bottom: 22px;
	}

	.firstBox .sec05 .content {
		width: auto;
	}

	.firstBox .sec05 .imgBox {
		margin-right: 0;
	}

	.firstBox .sec05 .imgBox .photoBox {
		margin: -4px 0 13px;
		float: none;
		text-align: center;
	}

	.firstBox .sec05 .imgBox .photoBox img {
		width: 31.5%;
	}

	.firstBox .sec05 .imgBox .textBox {
		width: auto;
		margin-left: 7px;
		float: none;
		font-size: 15px;
	}

	.firstBox .sec05 .imgBox .textBox p {
		line-height: 1.6;
	}

	.firstBox .headLine01 {
		margin-bottom: 19px;
		font-size: 19px;
		padding: 7px 10px;
		line-height: 1.4;
	}
}

/*------------------------------------------------------------
	featureBox
------------------------------------------------------------*/
.featureBox .featureVisual {
	min-height: 448px;
	position: relative;
	background: url(../img/feature/page_title_bg.jpg) no-repeat center center;
	background-size: cover;
}

.featureBox .featureVisual .people01 {
	position: absolute;
	top: 0;
	left: 0;
}

.featureBox .featureVisual .people02 {
	position: absolute;
	bottom: 0;
	right: 0;
}

.featureBox .featureVisual h2 {
	margin-bottom: 22px;
	padding-top: 50px;
	text-align: center;
}

.featureBox .featureVisual p {
	text-align: center;
	color: #FFF;
	font-size: 20px;
	line-height: 2;
	letter-spacing: 1.5px;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
}

.featureBox .featureVisual p span {
	margin-top: -7px;
	display: block;
	color: #e2c98f;
	font-size: 25px;
}

.featureBox .h3Ttl01 {
	margin-top: -44px;
	position: relative;
	text-align: center;
}

.featureBox .titleBox {
	width: 784px;
	margin: 0 auto 39px;
	padding: 20px 0 16px;
	position: relative;
	box-sizing: border-box;
	background: url(../img/feature/bg01.jpg) repeat-x left top;
}

.featureBox .titleBox:before {
	width: 100%;
	height: 5px;
	background: url(../img/feature/bg02.jpg) repeat-x;
	position: absolute;
	bottom: 0;
	left: 0;

	content: "";
}

.featureBox .titleBox ul {
	margin: 0 0 0 113px;
	box-sizing: border-box;
}

.featureBox .titleBox li {
	width: 100%;
	margin-bottom: 8px;
	display: table;
	table-layout: fixed;
	color: #0b1f44;
	font-size: 27px;
	font-weight: bold;
	letter-spacing: -1.5px;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
}

.featureBox .titleBox li a:hover {
	opacity: 0.7;
}

.featureBox .titleBox li .mark {
	width: 51px;
	display: table-cell;
}

.featureBox .titleBox li .txt {
	width: auto;
	padding-left: 10px;
	display: table-cell;
	vertical-align: middle;
}

.featureBox .titleBox li .txt span {
	color: #a31818;
}

.featureBox .content {
	width: 938px;
}

.featureBox .text {
	margin-bottom: 21px;
	line-height: 1.75;
}

.featureBox .text span {
	display: block;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.5;
}

.featureBox .comBox .imgBox {
	padding: 24px 0 23px 27px;
}

.featureBox .comBox .imgBox .photoBox {
	float: left;
}

.featureBox .comBox .imgBox .textBox {
	width: 550px;
	margin-top: -6px;
	float: right;
}

.featureBox .comBox .imgBox .textBox p {
	line-height: 1.73;
}

.featureBox .comBox .imgBox .textBox li {
	margin: 0 0 1px 1.4em;
	font-weight: bold;
	line-height: 1.73;
	text-indent: -1.4em;
}

.featureBox .comBox01 .ttl {
	padding: 14px 0 10px;
}

.featureBox .comBox01 .ttl span {
	background: url(../img/common/icon07.png) no-repeat left top -1px;
}

.featureBox .comBox01 .imgBoxR {
	padding: 14px 25px 24px 76px;
}

.featureBox .comBox01 .imgBoxR .photoBox {
	margin-top: 11px;
	float: right;
}

.featureBox .comBox01 .imgBoxR .photoBox p {
	margin-top: 5px;
	font-size: 12px;
}

.featureBox .comBox01 .imgBoxR .textBox {
	width: 470px;
	float: left;
}

.featureBox .comBox01 .imgBoxR .textBox p {
	line-height: 1.75;
}

.featureBox .comBox01 .imgBoxR .textBox p:not(:last-child) {
	margin-bottom: 14px;
}

.featureBox .comBox01 .imgBoxR .textBox p span {
	font-weight: bold;
	line-height: 1.7;
}

.featureBox .comBox02 {
	margin-bottom: 71px;
}

.featureBox .comBox02 .ttl span {
	background: url(../img/common/icon08.png) no-repeat left top 5px;
}

.featureBox .comBox02 .textArea {
	padding: 19px 75px 17px;
}

.featureBox .comBox02 .textArea ul {
	margin-bottom: 17px;
}

.featureBox .comBox02 .textArea li {
	margin: 0 0 4px 1em;
	font-weight: bold;
	text-indent: -1em;
}

.featureBox .comBox02 .textArea li:last-child {
	margin-bottom: 0;
}

.featureBox .comBox02 .textArea p {
	line-height: 1.75;
}

.featureBox .comBox03 {
	margin-bottom: 20px;
}

.featureBox .comBox03 .ttl .txt {
	background: url(../img/common/icon09.png) no-repeat left top 4px;
}

.featureBox .comBox .ttl .wrap {
	display: none;
}

.featureBox .comBox03 .imgArea {
	padding: 20px 60px 26px 27px;
}

.featureBox .comBox03 .imgArea .photoBox {
	margin: 0 17px 0px 0;
	float: left;
}

.featureBox .comBox03 .imgArea .textBox {
	margin: -6px 0 0 50px;
}

.featureBox .comBox03 .imgArea .textBox p {
	line-height: 1.75;
}

.featureBox .comBox03 .imgArea .textBox p:not(:last-child) {
	margin-bottom: 28px;
}

.featureBox .comBox03 .imgArea .textBox p span {
	font-weight: bold;
}

.featureBox .comBox03 .imgArea .textBox p .txt {
	display: block;
	font-weight: normal;
}

.featureBox .comBox04 {
	margin-bottom: 85px;
}

.featureBox .comBox04 .ttl span {
	background: url(../img/common/icon09.png) no-repeat left top 3px;
}

.featureBox .comBox04 .imgAreaR {
	margin: 20px 24px 23px 75px;
}

.featureBox .comBox04 .imgAreaR .photoBox {
	margin: 4px 0 0 24px;
	float: right;
}

.featureBox .comBox04 .imgAreaR .textBox {
	margin: -5px 50px 0 0;
	padding-bottom: 21px;
	border-bottom: 1px solid #0B1F44;
}

.featureBox .comBox04 .imgAreaR .textBox p {
	line-height: 1.75;
}

.featureBox .comBox04 .imgAreaR .textBox p:not(:last-child) {
	margin-bottom: 14px;
}

.featureBox .comBox04 .imgArea .textBox p span {
	font-weight: bold;
}

.featureBox .comBox04 .innerBox {
	width: 786px;
	margin: 0 auto 33px;
}

.featureBox .comBox04 .innerBox .photo {
	margin-top: 10px;
	float: left;
}

.featureBox .comBox04 .innerBox .textArea {
	width: 640px;
	float: right;
}

.featureBox .comBox04 .innerBox .textArea p {
	line-height: 1.75;
}

.featureBox .comBox04 .innerBox .textArea .txt01 {
	display: block;
	font-weight: bold;
}

.featureBox .comBox04 .innerBox .textArea p a {
	text-decoration: underline;
}

.featureBox .comBox04 .innerBox .textArea p a:hover {
	text-decoration: none;
}

.featureBox .comBox .textBox p span {
	font-weight: bold;
}

.featureBox .comBox05 {
	margin-bottom: 56px;
}

.featureBox .comImgBoxR .textBox p .txt {
	display: block;
}

.featureBox .comImgBoxL01 {
	margin-bottom: 31px;
}

@media all and (max-width: 767px) {
	.featureBox .featureVisual {
		min-height: 501px;
		position: relative;
		background: url(../img/feature/sp_page_title_bg.jpg) no-repeat center center;
		background-size: cover;
	}

	.featureBox .featureVisual .people02 {
		position: absolute;
		bottom: 0;
		left: 0;
	}

	.featureBox .featureVisual .people02 img {
		width: 100%;
	}

	.featureBox .featureVisual h2 {
		width: 352px;
		margin: 0 auto 14px;
		padding-top: 33px;
	}

	.featureBox .featureVisual h2 img {
		width: 100%;
	}

	.featureBox .featureVisual p {
		position: relative;
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 1px;
		z-index: 10;
	}

	.featureBox .featureVisual p span {
		margin-top: -1px;
		font-size: 20px;
		line-height: 1.45;
	}

	.featureBox .h3Ttl01 {
		margin: -20px 6px 0;
	}

	.featureBox .h3Ttl01 img {
		width: 100%;
	}

	.featureBox .titleBox {
		width: auto;
		margin: 0 8px 15px;
		padding: 23px 9px 18px;
		background-image: url(../img/feature/sp_bg01.png);
		background-size: 14px auto;
	}

	.featureBox .titleBox ul {
		width: auto;
		margin: 0;
	}

	.featureBox .titleBox:before {
		background: url(../img/feature/sp_bg02.png) repeat-x;
		background-size: 17px auto;
	}


	.featureBox .titleBox li {
		margin-bottom: 4px;
		font-size: 17px;
	}

	.featureBox .titleBox li .mark {
		width: 31px;
	}

	.featureBox .titleBox li .mark img {
		width: 100%;
	}

	.featureBox .titleBox li .txt {
		padding: 1px 0 0 5px;
		letter-spacing: -2px;
	}


	.featureBox .content {
		width: auto;
	}

	.featureBox .text {
		margin: 0 9px 15px;
		line-height: 1.6;
	}

	.featureBox .comBox .imgBox {
		padding: 15px 17px;
	}

	.featureBox .comBox .imgBox .photoBox {
		width: 72%;
		margin: 0 auto 20px;
		float: none;
		text-align: center;
	}

	.featureBox .comBox .imgBox .photoBox img {
		max-width: 100%;
	}

	.featureBox .comBox .imgBox .textBox {
		width: auto;
		float: none;
	}

	.featureBox .comBox .imgBox .textBox li {
		line-height: 1.59;
	}

	.featureBox .comBox01 .ttl {
		padding: 6px 0 5px;
	}

	.featureBox .comBox01 .ttl span {
		padding-left: 25px;
		background: url(../img/common/icon07.png) no-repeat left top 2px;
		background-size: 20px auto;
	}

	.featureBox .comBox01 .imgBoxR {
		padding: 14px 17px;
	}

	.featureBox .comBox01 .imgBoxR .photoBox {
		margin: 0 0 13px;
		float: none;
		text-align: center;
	}

	.featureBox .comBox01 .imgBoxR .photoBox img {
		width: 72%;
	}

	.featureBox .comBox01 .imgBoxR .photoBox p {
		margin: 2px 0 0 22px;
	}

	.featureBox .comBox01 .imgBoxR .textBox {
		width: auto;
		float: none;
	}

	.featureBox .comBox01 .imgBoxR .textBox p {
		line-height: 1.6;
	}

	.featureBox .comBox01 .imgBoxR .textBox p:not(:last-child) {
		margin-bottom: 24px;
	}

	.featureBox .comBox01 .imgBoxR .textBox p span {
		line-height: 1.6;
	}

	.featureBox .comBox02 {
		margin-bottom: 30px;
	}

	.featureBox .comBox02 .ttl span {
		padding-left: 28px;
		background: url(../img/common/icon08.png) no-repeat left top 2px;
	}

	.featureBox .comBox02 .textArea {
		padding: 27px 20px 18px;
		font-size: 15px;
	}

	.featureBox .comBox02 .textArea ul {
		margin-bottom: 24px;
	}

	.featureBox .comBox02 .textArea li {
		margin-bottom: 0;
		font-weight: bold;
		line-height: 1.6;
	}

	.featureBox .comBox02 .textArea li:last-child {
		margin-bottom: 0;
	}

	.featureBox .comBox02 .textArea p {
		line-height: 1.6;
	}

	.featureBox .comBox03 {
		margin-bottom: 10px;
	}

	.featureBox .comBox03 .ttl .txt {
		padding-left: 31px;
		background: url(../img/common/icon09.png) no-repeat left top 5px;
		background-size: 23px auto;
		line-height: 1.4;
	}

	.featureBox .comBox .ttl .wrap {
		display: inline;
	}

	.featureBox .comBox03 .imgArea {
		padding: 10px 20px 18px;
	}

	.featureBox .comBox03 .imgArea .photoBox {
		width: 74%;
		margin: 0 auto 19px;
		float: none;
		text-align: center;
	}

	.featureBox .comBox03 .imgArea .photoBox img {
		max-width: 100%;
	}

	.featureBox .comBox03 .imgArea .textBox {
		margin: -6px 0 0;
	}

	.featureBox .comBox03 .imgArea .textBox p {
		line-height: 1.6;
	}

	.featureBox .comBox03 .imgArea .textBox p:not(:last-child) {
		margin-bottom: 24px;
	}

	.featureBox .comBox03 .imgArea .textBox p span {
		font-weight: bold;
	}

	.featureBox .comBox03 .imgArea .textBox p .txt {
		display: block;
		font-weight: normal;
	}

	.featureBox .comBox04 {
		margin-bottom: 25px;
	}

	.featureBox .comBox04 .ttl span {
		padding-left: 24px;
		background: url(../img/common/icon09.png) no-repeat left top 3px;
		background-size: 23px auto;
		line-height: 1.4;
		letter-spacing: -0.5px;
	}

	.featureBox .comBox04 .imgAreaR {
		margin: 10px 20px;
	}

	.featureBox .comBox04 .imgAreaR .photoBox {
		width: 74%;
		margin: 0 auto 20px;
		text-align: center;
		float: none;
	}

	.featureBox .comBox04 .imgAreaR .photoBox img {
		max-width: 100%;
	}

	.featureBox .comBox04 .imgAreaR .textBox {
		margin: -5px 0 0 0;
	}

	.featureBox .comBox04 .imgAreaR .textBox p {
		line-height: 1.6;
	}

	.featureBox .comBox04 .imgAreaR .textBox p span {
		font-weight: bold;
	}

	.featureBox .comBox04 .imgAreaR .textBox p:not(:last-child) {
		margin-bottom: 24px;
	}

	.featureBox .comBox04 .imgArea .textBox p span {
		font-weight: bold;
	}

	.featureBox .comBox04 .innerBox {
		width: auto;
		margin: 0 20px 20px;
	}

	.featureBox .comBox04 .innerBox .photo {
		margin: 0 0 8px;
		float: none;
		text-align: center;
	}

	.featureBox .comBox04 .innerBox .photo img {
		width: 22.5%;
	}

	.featureBox .comBox04 .innerBox .textArea {
		width: auto;
		float: none;
		font-size: 14px;
	}

	.featureBox .comBox04 .innerBox .textArea p {
		line-height: 1.6;
	}

	.featureBox .comBox04 .innerBox .textArea p a:hover {
		text-decoration: underline;
	}

	.featureBox .comBox04 .innerBox .textArea .txt01 {
		display: block;
		font-weight: bold;
	}

	.featureBox .comBox04 .innerBox .textArea .txt02 {
		text-decoration: underline;
	}

	.featureBox .comImgBoxL01 h3 {
		width: 236px;
	}

	.featureBox .comBox05 {
		margin-bottom: 24px;
	}

	.featureBox .comBox05 .imgBox {
		margin-bottom: 0;
		padding: 10px 20px 23px;
	}

	.featureBox .comBox05 .imgBox .photoBox {
		width: 73.5%;
		margin-bottom: 17px;
	}

	.featureBox .comBox05 .imgBox .textBox p {
		line-height: 1.6;
	}

	.featureBox .comBox05 .ttl {
		line-height: 1.4;
	}

	.featureBox .comBox05 .ttl span {
		background-position: left 5px;
	}

	.featureBox .comImgBoxL01 {
		margin-bottom: 12px;
	}
}

/*------------------------------------------------------------
	price
------------------------------------------------------------*/
.priceBox .sec01 {
	padding: 58px 0 38px;
	background: url(../img/price/sec01_bg.gif) repeat-x left top;
}

#estimate .priceBox .sec01 {
	padding: 58px 0 38px;
	background: #fff;
}

.priceBox .sec01 .borderBox {
	padding-bottom: 30px;
	border: 1px solid #CBCBCB;
	background-color: #fff;
}

#estimate .priceBox .sec01 .borderBox {
	border: none;
}

.infoWhite01_wrap {
	padding: 0 27px;
}

.infoWhite01_wrap .infoWhite01 {
	width: 306px;
	float: left;
	margin: 0 4px;
}

.infoWhite01_wrap .infoWhite01 img {
	width: 306px;
	height: auto;
}

.priceBox .sec01 .borderBox .topImg {
	margin-bottom: 8px;
	text-align: center;
}

.priceBox .sec01 .borderBox .topImg img {
	margin-top: -37px;
}

.priceBox .sec01 .borderBox .ttl {
	margin: 0 16px 11px 0;
	text-align: center;
}

.priceBox .sec01 .borderBox .textP {
	margin-bottom: 22px;
	text-align: center;
}

.priceBox .sec01 .borderBox .linkBox {
	margin-bottom: 41px;
	text-align: center;
}

.priceBox .sec01 .borderBox .linkBox a {
	display: inline-block;
}

.priceBox .sec01 .borderBox .linkBox a:hover {
	opacity: 0.7;
}

/* .priceBox .sec01 .borderBox .title {
	margin: 0 0 16px;
	padding: 12px 10px 11px;
	color: #fff;
	position: relative;
	font-weight: bold;
	font-size: 20px;
	text-align: center;
	background-color: #162244;
} */

/* .priceBox .sec01 .borderBox .title:before {
	margin-left: -6.5px;
	width: 13px;
	height: 8px;
	background: url(../img/common/icon02.gif) no-repeat;
	position: absolute;
	left: 50%;
	bottom: -7px;
	content: "";
} */

.priceBox .sec01 .borderBox .txtImg {
	margin-bottom: 6px;
	text-align: center;
}

.priceBox .sec01 .borderBox .photoList {
	/*margin: 0 30px 37px 32px;*/
}

#estimate .priceBox .sec01 .borderBox .photoList {
	margin: 0 30px 10px 32px;
}

.priceBox .sec01 .borderBox .photoList01 {
	margin-bottom: 0;
}

.priceBox .sec01 .borderBox .photoList li {
	/*margin-right: 9px;
	float: left;*/
	width: 306px;
}

#estimate .priceBox .sec01 .borderBox .photoList li {
	display: inline-block;
}

.priceBox .sec01 .borderBox .photoList li img {
	max-width: 100%;
}

.priceBox .sec01 .borderBox .photoList li a {
	display: block;
}

.priceBox .sec01 .borderBox .photoList li a:hover {
	opacity: 0.7;
}

.priceBox .sec01 .borderBox .photoList li:last-child {
	margin: 0;
}

.priceBox .sec02 h2 {
	margin-bottom: 25px;
	text-align: center;
}

.priceBox .sec02 .topTxt {
	margin-bottom: 21px;
	color: #a41818;
	font-size: 23px;
	font-weight: bold;
	text-align: center;
}

.priceBox .sec02 .topTxt span {
	margin-top: 1px;
	display: block;
	font-size: 20px;
}

.priceBox .sec02 .inner {
	display: table;
	width: 100%;
	height: 100%;
	background-color: #EEF1F6;
}

.priceBox .sec02 .inner .photoBox {
	position: relative;
	width: 50%;
	display: table-cell;
	vertical-align: middle;
}

.priceBox .sec02 .inner .photoBox img {
	width: 100%;
}

.priceBox .sec02 .inner .photoBox span {
	margin-top: -83px;
	position: absolute;
	left: 0;
	top: 50%;
	width: 100%;
	text-align: center;
}

.priceBox .sec02 .inner .photoBox span img {
	width: auto;
}

.priceBox .sec02 .inner .textBox {
	width: 50%;
	overflow: hidden;
	display: table-cell;
	vertical-align: middle;
}

.priceBox .sec02 .inner .textBox .title {
	margin-bottom: 5px;
	font-size: 18px;
	color: #0b1f44;
	font-weight: bold;
}

.priceBox .sec02 .inner .textBox .info {
	width: 460px;
	padding-left: 40px;
}

.priceBox .sec02 .inner .textBox p {
	line-height: 1.75;
}

.priceBox .sec02 .inner01 {
	background-color: #fff;
}

.priceBox .sec02 .inner01 .textBox .info {
	padding: 0 40px 0 0;
	float: right;
}

.priceBox .sec03 {
	padding: 57px 0 50px;
}

.priceBox .sec03 h2 {
	margin-bottom: 17px;
	text-align: center;
}

.priceBox .sec03 .imgBox {
	margin: 0 32px 20px;
	padding: 25px 0 19px;
	border: 3px solid #162244;
	border-radius: 7px;
	text-align: center;
}

.priceBox .sec03 p {
	margin: 0 32px 0;
	line-height: 1.75;
}

.priceBox .sec03 p span {
	color: #a41818;
	font-weight: bold;
}

@media all and (max-width: 767px)
/*-------------------*/
	{
	.priceBox .sec01 {
		padding: 83px 0 0;
		background: url(../img/price/sp_sec01_bg.gif) repeat-x left top;
		background-size: 38px auto;
	}

	#estimate .priceBox .sec01 {
		padding: 0px 0 38px;
	}

	.priceBox .sec01 .content {
		padding: 0;
	}

	.priceBox .sec01 .borderBox {
		padding-bottom: 19px;
		position: relative;
		border: none;
		background: none;
	}

	.priceBox .sec01 .borderBox .topImg {
		position: absolute;
		margin: 0;
		width: 100%;
		top: -58px;
	}

	.infoWhite01_wrap {
		padding: 0;
	}

	.infoWhite01_wrap .infoWhite01 {
		width: auto;
		float: none;
		margin: 0 auto;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}

	.infoWhite01_wrap .infoWhite01 .photoList li img {
		max-width: 100%;
		height: 195px;
		object-fit: cover;
	}

	.priceBox .sec01 .borderBox .topImg img {
		margin: 0 auto;
		padding-right: 17px;
	}

	.priceBox .sec01 .borderBox .ttl {
		margin: 0 0 24px;
		padding-top: 43px;
	}

	.priceBox .sec01 .borderBox .ttl img {
		margin: 0 auto;
		max-width: 100%;
	}

	.priceBox .sec01 .borderBox .textP {
		margin: 0 20px 0;
		text-align: left;
		font-size: 14px;
		line-height: 1.7;
	}

	.priceBox .sec01 .borderBox .infoBgBox {
		padding-top: 13px;
		padding-bottom: 8px;
		background-color: #162244;
	}

	.priceBox .sec01 .borderBox .whiteBox {
		padding: 0;
		position: relative;
		background: none;
	}

	.priceBox .sec01 .borderBox .infoWhite {
		margin: 0 8px 10px;
		padding-bottom: 10px;
		background-color: #fff;
	}

	#estimate .priceBox .sec01 .borderBox .infoWhite {
		margin: 0 0 10px;
	}

	.priceBox .sec01 .borderBox .infoWhite01 {
		padding: 8px;
	}

	#estimate .priceBox .sec01 .borderBox .infoWhite01 {
		padding: 0;
	}

	.priceBox .sec01 .borderBox .linkBox {
		margin: 0 0 15px;
	}

	.priceBox .sec01 .borderBox .linkBox a {
		display: block;
	}

	.priceBox .sec01 .borderBox .linkBox img {
		width: 100%;
	}

	/* .priceBox .sec01 .borderBox .title {
		margin: 0 0 10px;
		padding: 4px 10px 5px;
		color: #fff;
		position: relative;
		font-weight: bold;
		font-size: 16px;
		text-align: center;
		background-color: #A82224;
	} */

	#estimate .priceBox .sec01 .borderBox .title {
		padding: 4px 10px 5px;
		background-color: #0b1f44;
		font-size: 19px;
	}

	/* .priceBox .sec01 .borderBox .title:before {
		margin-left: -10px;
		width: 18px;
		height: 10px;
		background: url(../img/common/sp_icon02.jpg) no-repeat;
		background-size: 18px 10px;
		position: absolute;
		left: 50%;
		bottom: -10px;
		content: "";
	} */

	#estimate .priceBox .sec01 .borderBox .title:before {
		background: url(../img/common/icon02.gif) no-repeat;
		background-size: 18px 10px;
		bottom: -9px;
	}

	.priceBox .sec01 .borderBox .spTit {
		margin-bottom: 13px;
	}

	.priceBox .sec01 .borderBox .spTit img {
		margin: 0 auto;
		display: block;
	}

	.priceBox .sec01 .borderBox .txtImg {
		margin-bottom: 6px;
	}

	.priceBox .sec01 .borderBox .txtImg img {
		margin: 0 auto;
	}

	.priceBox .sec01 .borderBox .photoList {
		padding: 0 0 4px;
		margin: 0 3px;
		position: relative;
	}

	#estimate .priceBox .sec01 .borderBox .photoList {
		padding: 0 4% 4px;
		margin: 0;
	}

	.priceBox .sec01 .borderBox .photoList li {
		margin-right: 0;
		width: 100%;
	}

	#estimate .priceBox .sec01 .borderBox .photoList li {
		margin: 3px auto 8px;
	}

	.priceBox .sec01 .borderBox .photoList li img {
		width: 100%;
	}

	.priceBox .sec01 .borderBox .photoList li:last-child {
		margin: 0;
	}

	.priceBox .sec01 .borderBox .photoList .slick-prev,
	.priceBox .sec01 .borderBox .photoList .slick-next {
		margin-top: -5px;
		font-size: 0;
		line-height: 0;
		position: absolute;
		top: 50%;
		display: block;
		width: 22px;
		height: 22px;
		padding: 0;
		cursor: pointer;
		color: transparent;
		border: none;
		outline: none;
	}

	.priceBox .sec01 .borderBox .photoList .slick-prev {
		left: -6px;
		background: url(../img/common/sp_arrow01.png) no-repeat;
		background-size: 22px 22px;
		z-index: 1100;
	}

	.priceBox .sec01 .borderBox .photoList .slick-next {
		right: -6px;
		background: url(../img/common/sp_arrow02.png) no-repeat;
		background-size: 22px 22px;
		z-index: 1000;
	}

	.priceBox .sec02 h2 {
		margin-bottom: 18px;
	}

	.priceBox .sec02 h2 img {
		margin: 0 auto;
	}

	.priceBox .sec02 .topTxt {
		margin-bottom: 10px;
		font-size: 20px;
	}

	.priceBox .sec02 .topTxt span {
		margin-top: 0;
		font-size: 16.5px;
	}

	.priceBox .sec02 .inner {
		padding: 0 8px 34px;
		display: block;
		box-sizing: border-box;
		background: none;
	}

	.priceBox .sec02 .inner .photoBox {
		margin-bottom: 23px;
		width: 100%;
		display: block;
	}

	.priceBox .sec02 .inner .photoBox img {
		width: 100%;
	}

	.priceBox .sec02 .inner .textBox {
		display: block;
		width: 100%;
	}

	.priceBox .sec02 .inner .textBox .title {
		margin-bottom: -1px;
		font-size: 16px;
	}

	.priceBox .sec02 .inner .textBox .info {
		width: auto;
		padding-left: 0;
	}

	.priceBox .sec02 .inner .textBox p {
		line-height: 1.6;
	}

	.priceBox .sec02 .inner01 {
		padding-bottom: 30px;
	}

	.priceBox .sec02 .inner01 .textBox .info {
		padding: 0;
		float: none;
	}

	.priceBox .sec03 {
		padding: 27px 0 36px;
	}

	.priceBox .sec03 h2 {
		margin-bottom: 21px;
	}

	.priceBox .sec03 h2 img {
		margin: 0 auto;
	}

	.priceBox .sec03 .imgBox {
		width: 100%;
		margin: 0 0 20px;
		padding: 21px 0 15px;
		border: 2px solid #162244;
		border-radius: 5px;
	}

	.priceBox .sec03 .imgBox img {
		margin: 0 auto;
	}

	.priceBox .sec03 p {
		margin: 0 6px 0;
		line-height: 1.6;
		letter-spacing: 1px;
	}
}

@media all and (max-width: 374px) {
	#gHeader .spLinkUl li a {
		padding-left: 6px;
		font-size: 11px;
	}

	#gHeader .spLinkUl li img {
		width: 25px !important;
	}

	#gHeader .spLinkUl li .info span {
		padding-left: 28px;
	}

	.spBox .spNavi li a {
		padding: 14px 1px 14px 30px;
		font-size: 12px;
		background: url(../img/common/sp_icon06.png) no-repeat left 6px center;
		background-size: 20px auto;
	}

	.indexBox .sec02 h2 img {
		width: 300px;
	}

	.indexBox .sec01 .txtImg {
		margin: 0 10px;
	}

	.indexBox .sec01 .txtImg img {
		width: 300px;
	}

	.comLink a {
		width: 300px;
	}

	.indexBox .sec04 .whiteBox .ttl img {
		width: 280px;
	}

	.indexBox .sec04 .whiteBox .txtImg img {
		width: 280px;
		margin: 0 auto;
	}

	.indexBox .sec05 .imgBox .title img {
		width: 290px;
	}

	.columnBox .topUl li a {
		padding: 3px 2px;
	}

	.columnBox .wp-pagenavi a,
	.columnBox .wp-pagenavi span {
		padding: 5px 14px;
		margin: 0 2px;
	}

	.errorBox .borderBox .linkUl {
		margin: 0 10px;
	}

	.errorBox .borderBox .linkUl>li {
		font-size: 12px;
	}

	.errorBox h2 span:before {
		width: 300px;
		height: 2px;
		background: #0C4476;
		position: absolute;
		left: -6px;
		bottom: -3px;

		content: "";
	}

	.errorBox .borderBox .ulBox {
		max-width: 300px;
		margin: 0 auto;
	}

	.colorBox .txtImg01 img {
		width: 290px;
	}

	.priceBox .sec01 .borderBox .ttl img {
		width: 280px;
	}

	.priceBox .sec01 .borderBox .txtImg img {
		width: 280px;
		margin: 0 auto;
	}

	.priceBox .sec02 h2 img {
		width: 300px;
	}

	.priceBox .sec03 .imgBox img {
		width: 290px;
	}

	.contactBox .borderBox .textUl {
		margin: 0 20px 6px;
	}

	.contactBox .headLine01 {
		font-size: 18px;
	}

	.firstBox .sec01 .photoList li .txt {
		font-size: 12px;
	}

	.firstBox .sec02 .top {
		width: 300px;
		font-size: 14px;
	}

	.firstBox .sec03 .text01 {
		font-size: 14px;
		letter-spacing: -0.5px;
	}

	.firstBox .headLine01 {
		font-size: 18px;
	}

	.firstBox .sec03 .priceDl .ttl img {
		width: 55px;
	}

	.firstBox .sec03 .ttl {
		letter-spacing: -0.5px;
	}

	.featureBox .featureVisual h2 {
		width: 300px;
	}

	.aboutBox .comImgBoxL .textBox .topImg01 img {
		height: auto;
		width: 290px;
	}
}

@media all and (-ms-high-contrast:none) {
	.columnBox .topUl li a {
		padding: 7px 5px 0;
		line-height: 1.2;
	}

	.columnBox .comNews li dt .catgSpan {
		line-height: 1.2;
		padding: 4px 0 1px;
	}

	.columnBox .comNews li dt .lTxt {
		margin-top: -2px;
	}

	.columnBox .comNews li dd a {
		background-position: left 5px;
	}

	.caseDetail .title span {
		padding: 7px 28px 3px;
	}

	.caseDetail .title01 span {
		padding: 7px 28px 3px;
	}

	.comLink a {
		padding: 14px 25px 10px 0;
	}

	.columnDetail .headLine03 .topSpan {
		padding: 4px 24px 0px;
	}

	.wp-pagenavi a,
	.wp-pagenavi span {
		padding: 7px 11px 3px;
	}

	.comPhotoList li .btn {
		padding: 3px 0 1px 5px
	}

	.comNews li dt .catgSpan {
		padding: 4px 0 1px;
		line-height: 1.2;
	}

	.comNews li dd a {
		background-position: left 4px;
	}

	#gHeader .rBox .linkList li a {
		padding: 12px 5px 8px 20px;
	}

	#gNavi li a {
		padding: 15px 10px 10px;
	}

	.indexBox .sec04 .whiteBox .title {
		padding: 14px 10px 10px;
	}

	.headLine01 {
		padding: 15px 10px 10px;
	}

	.caseBox .comPhotoList li .btn {
		padding: 2px 0 2px 5px
	}


	.firstBox .sec02 .top {
		padding: 18px 0 10px;
	}

	.firstBox .sec03 .priceDl .price {
		padding: 18px 5px 12px;
	}

	.priceBox .sec01 .borderBox .title {
		padding: 15px 10px 10px;
	}

	.contactBox .submit li input {
		padding: 17px 0 15px;
	}

	.comBox .ttl {
		padding: 14px 0 11px;
	}

	.comBox .ttl span {
		background-position: left top 0px !important;
	}

	.featureBox .comBox02 .ttl span {
		background-position: left top 3px !important;
	}

	.featureBox .comBox01 .ttl span {
		background-position: left top -3px !important;
	}
}


/*------------------------------------------------------------
	estimate
------------------------------------------------------------*/

#estimate .headLine02 {
	margin-bottom: 0px;
}

.estimateBox {
	margin-bottom: 80px;
}

.esti01 {
	width: 100%;
	position: relative;
	background-color: #fff;
}

.esti01 .content {
	margin: 0 auto;
	height: 260px;
	text-align: center;
	padding-top: 120px;
	padding-bottom: 40px;
	overflow: hidden;
	background: url(/img/estimate/bg02.png) 50% 50% no-repeat;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.esti01 h3 {
	display: none;
}

.esti01 .select_box {
	width: 700px;
	height: 110px;
	background: #0b1f44;
	margin: 0 auto;
	font-size: 18px;
	color: #fff;
	font-weight: bold;
}

.esti01 .select_box p {
	display: inline-block;
	line-height: 110px;
	padding-right: 10px;
}

#estimate select {
	margin: -2px auto 0;
	cursor: pointer;
	position: relative;
	font-size: 18px;
	padding: 3px 10px;
	height: 36px;
	line-height: 30px;
	vertical-align: middle;
	border: 1px solid #ccc;
	font-weight: bold;
}

#estimate td select {
	font-size: 16px;
}

.estimateBox .bg_navy {
	background: #0b1f44;
	color: #fff;
	font-size: 22px;
	line-height: 54px;
	text-align: center;
	margin: 20px auto 30px;
	letter-spacing: 1px;
}

.estimateBox h3.table_stit {
	letter-spacing: 1.2px;
	font-size: 16px;
}

.estimateBox .price caption {
	background: #0b1f44;
	color: #fff;
	line-height: 42px;
	text-align: center;
	caption-side: unset;
}

.estimateBox .price {
	text-align: center;
	width: 100%;
	font-size: 16px;
	border-collapse: collapse;
	margin: 5px auto 30px;
}

.estimateBox .price th {
	background: #e3eaf7;
	padding: 10px 20px;
	border: 1px solid #ccc;
	vertical-align: middle;
	line-height: 1.8;
}

.estimateBox .price td {
	padding: 12px 20px;
	border: 1px solid #ccc;
}

.estimateBox .price .txt_red td {
	color: #bd1818;
}

#estimate p.txt02 {
	padding: 0 32px;
}

#estimate p.txt02 .txt15 {
	font-size: 15px;
}

@media all and (max-width: 767px) {
	/*-------------*/

	.estimateBox {
		margin-bottom: 30px;
	}

	.esti01 {
		background: none;
		height: auto;
		padding-top: 0;
	}

	.esti01:before {
		display: none;
	}

	.esti01 .content {
		margin: 0 auto 20px;
		height: auto;
		padding-top: 100px;
		padding-bottom: 20px;
		background: url(/img/estimate/sp/bg01.png) repeat-x;
		background-size: 100%;
	}

	.esti01 .select_box {
		width: 72%;
		height: 104px;
		margin: 0 auto;
		padding: 20px 14px;
		font-size: 16px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}

	#estimate select {
		margin: -2px auto 0;
		cursor: pointer;
		position: relative;
		font-size: 18px;
		height: 30px;
		line-height: 30px;
		vertical-align: middle;
		padding: 5px 30px;
		border: 1px solid #ccc;
		font-weight: bold;
	}

	#estimate td select {
		width: 240px;
	}

	.esti01 .select_box p {
		display: block;
		line-height: 1.5;
		padding-right: 0px;
	}

	#estimate select {
		max-width: 100%;
		display: block;
		margin: 10px auto 0;
		font-size: 15px;
		height: 30px;
		line-height: 30px;
		vertical-align: middle;
		padding: 2px 6px;
		border: 1px solid #ccc;
	}

	@media all and (max-width: 374px) {

		#estimate select {
			font-size: 14px !important;
		}

		#estimate td select {
			width: 210px;
		}
	}


	.estimateBox .bg_navy {
		padding: 10px;
		font-size: 19px;
		line-height: 1.5;
		margin: 0px auto 30px;
	}

	.estimateBox .price {
		border: 1px solid #ccc;
		border-bottom: none;
	}

	.estimateBox .price caption {
		line-height: 52px;
		font-size: 16px;
	}

	.estimateBox .price th {
		display: none;
	}

	.estimateBox .price tr.material {
		display: inline-block;
		width: 60%;
		text-align: left;
	}

	.estimateBox .price tr.txt_red {
		display: inline-block;
		width: 40%;
		line-height: 45px;
		text-align: right;
	}

	.estimateBox .price td {
		height: 62px;
		display: block;
		font-size: 15px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
		padding: 8px 15px;
		border: none;
		border-bottom: 1px solid #ccc;
	}

	#estimate p.txt02 {
		padding: 0 2%;
	}

}

/*----------------*/


#estimate .form_head h4 span {
	display: inline-block;
	position: relative;
	font-size: 35px;
	color: #0b1f44;
	z-index: 99;
	letter-spacing: 3px;
}

#estimate .form_head h4 span::before {
	display: block;
	content: "";
	width: 96%;
	height: 26px;
	right: 15px;
	left: 10px;
	bottom: 0;
	margin: auto;
	position: absolute;
	background: #f7eec2;
	z-index: -1;
}

#estimate .form_head .txt_navy {
	letter-spacing: 1.4px;
	font-size: 19px;
	color: #0b1f44;
	margin: 16px auto;
}

#estimate .form_head ul {
	width: 670px;
	max-width: 100%;
	margin: 0 auto 32px;
}

#estimate .form_head ul li {
	display: inline-block;
}

#estimate .form_head ul li.btn_line {
	margin-left: 40px;
}

#estimate .thanks {
	text-align: center;
}

/* 2022/12/6追加 */
p.estimate.title {
	background-color: #A82224 !important;
}

p.estimate.title::before {
	background: url(../img/common/icon02_red.gif) no-repeat !important;
}

@media (max-width: 767px) {
	p.estimate.title::before {
		background: url(../img/common/sp_icon02.jpg) no-repeat !important;
		background-size: 18px 10px !important;
	}
}

/* 2022/12/6追加 ここまで */

.thanks .complete_txt {
	font-size: 22px;
	margin: 40px auto 30px;
	text-align: center;
}

.thanks .inq_tel {
	text-align: center;
	margin: 30px auto;
}

.thanks .inq_tel img {
	height: 70px;
}

.thanks_txt01 {
	text-align: center;
}

@media all and (max-width: 767px) {
	/*-------------*/

	#estimate .form_head {
		background: url(/img/common/com_bg01.gif);
		overflow: hidden;
	}

	#estimate .form_head h4 span {
		margin: 15px auto 0;
		font-size: 19px;
		color: #fff;
		letter-spacing: 1.5px;
	}

	#estimate .form_head h4 span::before {
		background: #15233e;
		height: 16px;
	}

	#estimate .form_head .txt_navy {
		letter-spacing: 1px;
		font-size: 16px;
		color: #fff;
		margin: 8px auto 10px;
	}

	#estimate .form_head ul li {
		display: block;
	}

	#estimate .form_head ul li.btn_line {
		margin: 10px auto 0px;
		margin-left: 0;
	}

	#estimate .thanks {
		text-align: left;
	}

	#estimate .inq_tel {
		text-align: center;
	}

	.inq_tel img.sp {
		display: inline-block !important;
	}

	.thanks .inq_tel img {
		height: 80px;
	}

	.thanks .complete_txt {
		font-size: 20px;
	}

	.thanks_txt01 {
		text-align: left;
		padding: 0 10px;
	}

}

/*----------------*/

.validate-error {
	color: #f00;
	font-size: .8em;
}

.contactBox .tabBox td input.width-full {
	width: 100%;
}

.contactBox .tabBox td textarea+p,
.contactBox .tabBox td input+p {
	margin-top: .5em;
}


.priceBox {
	margin-top: 80px;
}

.featureBox {
	padding-top: 80px;
}

#pagePath {
	opacity: 0;
}

.colorBox,
.contactBox,
.columnBox,
.companyBox,
.aboutBox,
.firstBox {
	padding-top: 80px;
}



p.flowmsg {
	margin: 30px 0;
	font-weight: bold;
}

p.flow_head {
	font-weight: bold;
	background: #162146;
	color: #fff;
	padding: 4px 10px;
}

@media (max-width: 767px) {

	.colorBox,
	.contactBox,
	.columnBox,
	.companyBox,
	.aboutBox,
	.firstBox {
		padding-top: 36px;
	}

	p.flowmsg {
		margin-top: 16px;
	}
}



/*------------------------------------------------------------
	追加
------------------------------------------------------------*/
h2.h2_icon02 span.h2_inner::after {
	background-image: url(../img/common/h2_icon02_before.png);
}

h2.h2_icon02 span.h2_inner::before {
	left: -30px;
}

h2.h2_icon02 span.h2_inner::before,
h2.h2_icon02 span.h2_inner::after {
	top: 50%;
	transform: translateY(-50%);
}

/* お客様の声 */
.page-voice .h2_new {
	background-image: url(../img/voice/mv_bg.jpg);
}

.page-voice .h2_icon02 {
	font-size: 30px;
	letter-spacing: 0.05em;
}

.page-voice h2.h2_icon02 span.h2_inner::before,
.page-voice h2.h2_icon02 span.h2_inner::after {
	top: 50%;
	transform: translateY(-50%);
}

.page-voice .voice_title-box {
	background: #EFF3FA;
	padding: 51px 0 43px;
}

.page-voice .voice_title-box h2 {
	margin-bottom: 30px;
}

.page-voice .voice_title-box p {
	font-size: 20px;
	font-weight: bold;
	margin: 0;
}

.questionnaire__items {
	max-width: 1136px;
	margin: 0 auto;
	padding: 54px 20px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 110px 98px;
}

.questionnaire__items span {
	background: #0D2248;
	color: #fff;
	font-size: 15px;
	padding: 5.5px 10px;
}

.page-voice .difference,
.page-case .difference {
	position: relative;
}

.page-voice .difference::before,
.page-case .difference::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background-image: url(../img/voice/feature_bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
}

.page-voice .difference .content::after {
	display: none;
}

.page-voice .cta_s {
	margin: 0;
}

.page-voice .contactBox {
	padding: 100px 0;
}

.page-voice .faq {
	margin-bottom: 60px;
}

@media (max-width: 767px) {

	.page-voice .difference::before,
	.page-case .difference::before {
		display: none;
	}

	.page-voice .difference .diff-msg-wrp .sp,
	.page-case .difference .diff-msg-wrp .sp {
		width: 100%;
	}

	.page-voice .voice_title-box p {
		font-size: clamp(14px, 3vw, 20px);
		text-align: center;
	}

	.page-voice .contactBox {
		padding: 60px 16px;
	}

	.page-voice .content {
		width: 100%;
		padding: 0 16px;
	}

	.questionnaire__items {
		grid-template-columns: repeat(2, 1fr);
		gap: 40px 16px;
		padding: 54px 16px;
	}

	.page-voice .faq {
		margin: 30px 0 0;
	}

	.questionnaire__items span {
		font-size: clamp(10px, 3vw, 15px);
	}
}

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

	.page-voice .difference::before,
	.page-case .difference::before {
		width: 150%;
	}
}

/* 私たちが選ばれる理由 */
.featureBox {
	padding-top: 0;
}

.feature_title-box {
	margin-top: 60px;
}

.page-feature .h2_new {
	background-image: url(../img/feature/mv_bg.jpg);
}

.page-feature .feature_title-box h2,
.page-price .feature_title-box h2 {
	font-size: 39px;
	margin-bottom: 15px;
}

.page-price .sec03 .feature_title-box h2 {
	font-size: 45px;
}

.page-price .sec03 .feature_title-box p {
	font-size: 24.4px;
	font-weight: 500;
	line-height: 1.5;
}

.page-price .sec03 .feature_title-box p span {
	font-size: 26.7px;
	font-weight: 500;
	color: #333;
}

.feature_title-box .big {
	font-size: 65px;
}

.feature_title-box .accent {
	color: #A41818;
}

.page-feature .feature_title-box span.h2_inner::before,
.page-price .feature_title-box span.h2_inner::before {
	left: -40px;
}

.page-feature .feature_title-box span.h2_inner::after,
.page-price .feature_title-box span.h2_inner::after {
	right: -40px;
}

.page-feature .indexBox .sec02 h2 span.h2_inner::before,
.page-feature .indexBox .sec02 h2 span.h2_inner::after .page-price .indexBox .sec02 h2 span.h2_inner::before,
.page-price .indexBox .sec02 h2 span.h2_inner::after {
	top: 50%;
	transform: translateY(-50%);
}

.feature_title-box p {
	font-size: 25px;
	font-weight: bold;
	line-height: 1.6;
	text-align: center;
}

.feature_title-box p span {
	color: #A41818;
}

.feature_items {
	margin-top: 60px;
}

.feature_item h3 {
	width: 100%;
	max-width: 662px;
	margin: 0 auto;
	font-size: 35.7px;
	font-weight: bold;
	line-height: 1;
	border: 3.6px solid #A41818;
	padding: 8px 14px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.feature_item h3 p {
	width: calc(100% - 133px);
	color: #A41818;
	text-align: center;
	margin-bottom: 0;
}

.feature_item:not(:first-of-type) {
	margin-top: 60px;
}

.feature_item:nth-of-type(even) .contents {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}

.feature_item:nth-of-type(even) .left {
	margin-right: 0;
	margin-left: -80px;
}

.feature_item h3 span {
	min-width: 133px;
	display: inline-block;
	font-size: 26px;
	color: #fff;
	background: #A41818;
	padding: 8px 10px;
	text-align: center;
}

.feature_item .contents {
	position: relative;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	margin-top: 35px;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.feature_item .left {
	width: calc(50% + 80px);
	background: #EEF1F6;
	padding: 23px 38px;
	margin-right: -80px;
	z-index: 1;
}

.feature_item .right {
	width: calc(58% + 80px);
	z-index: 0;
}

.right img {
	width: 100%;
	aspect-ratio: 579 / 434;
	object-fit: cover;
}

.feature_item .title {
	font-size: 21px;
	font-weight: bold;
}

.feature_item .sub-title {
	font-size: 18px;
	font-weight: bold;
}

.feature_item .text {
	font-size: 15px;
	line-height: 1.5;
	margin-top: 17px;
	margin-bottom: 0;
}

.feature_item .small {
	font-size: 13px;
	margin-top: 13px;
}

.page-feature .indexBox .sec02,
.page-price .indexBox .sec02 {
	padding: 80px 0;
}

@media (max-width: 767px) {

	.feature_inner,
	.price_inner {
		padding: 0 16px;
	}

	.page-feature .feature_title-box h2 {
		font-size: 32px;
		font-size: clamp(24px, 4vw, 32px);
	}

	.feature_title-box .big {
		font-size: clamp(35px, 5vw, 50px);
	}

	.feature_title-box p {
		font-size: 20px;
		font-size: clamp(15.5px, 3.5vw, 20px);
	}

	.feature_item .contents {
		margin-top: 20px;
	}

	.feature_item .contents,
	.feature_item:nth-of-type(even) .contents {
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		-ms-flex-direction: column-reverse;
		flex-direction: column-reverse;
	}

	.feature_item:nth-of-type(even) .left {
		margin-left: 0;
	}

	.feature_item .right {
		width: 100%;
	}

	.feature_item .left {
		width: calc(100% - 16px);
		margin: 0 auto;
		margin-top: -12%;
		box-sizing: border-box;
		padding: 20px 5%;
	}

	.feature_item h3 {
		max-width: 100%;
		font-size: clamp(20px, 4vw, 30px);
		box-sizing: border-box;
		padding: 10px;
	}

	.feature_item h3 p {
		width: calc(100% - 86px);
	}

	.feature_item h3 span {
		min-width: 86px;
		font-size: clamp(16px, 3vw, 22px);
	}

	.feature_item .title {
		font-size: clamp(17px, 3vw, 24px);
	}

	.feature_item .sub-title {
		font-size: clamp(15px, 3vw, 18px);
	}

	.featureBox .text {
		margin: 0;
		margin-top: 20px;
	}

	.page-feature .indexBox .sec02,
	.page-price .indexBox .sec02 {
		padding: 50px 0;
	}
}

/* 料金について */
.page-price {
	padding-top: 35px;
}

.page-price .feature_item h3 p {
	margin-bottom: 0;
}

.priceBox .sec01 {
	padding: 65px 0 0;
}

.page-price .sec01 .content {
	width: 1090px;
}

.page-price .price_contents {
	background: #E2E9F2;
	padding: 25px 25px 18px;
}

.priceBox .sec01 .borderBox {
	position: relative;
	border: 5px solid #707070;
	padding: 55px 30px 30px;
}

.page-price .priceBox .row {
	margin: 0 !important;
}

.page-price .priceBox .pl-5,
.page-price .priceBox .px-5 {
	padding: 0 !important;
	margin: 0 !important;
}

.priceBox .sec01 .borderBox .head {
	position: absolute;
	top: -40px;
	left: 50%;
	transform: translateX(-50%);
	font-size: 35px;
	font-weight: bold;
	color: #fff;
	background: #172244;
	padding: 10px 20px;
	display: inline-block;
}

.priceBox .head span {
	color: #CCA01F;
}

.priceBox .sec01 .borderBox .catch span {
	text-align: center;
}

.priceBox .price_contents .catch span {
	display: block;
	font-size: 31px;
	font-weight: bold;
}

.priceBox .price_contents .catch .accent {
	font-size: 44px;
	font-weight: 900;
	line-height: 1;
	color: #A41818;
	margin: 10px 0;
}

.priceBox .sec01 .borderBox .textP {
	margin-top: 20px;
	margin-bottom: 0;
}

.page-price .infoBgBox {
	margin-top: 24px;
}

.page-price .feature_item h3 span {
	font-family: "Noto Sans JP", sans-serif;
}

.page-price .feature_title-box {
	margin-top: 0;
}

.priceBox .sec03 {
	padding: 60px 0 0;
}

.priceBox .sec03 .imgBox {
	margin-top: 16px;
}

.page-price .cta_s {
	margin: 60px 0;
}

.page-price .wall,
.page-price .roof {
	margin-top: 30px;
}

.wall .plan_items,
.roof .plan_items {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
}

.wall .plan_item,
.roof .plan_item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.wall .plan_item h3,
.roof .plan_item h3 {
	font-size: 14px;
	font-weight: bold;
	color: #fff;
	background: #0F2042;
	padding: 12px 5px;
	margin-bottom: 0;
	text-align: center;
}

.roof .plan_item h3 {
	background: #19420F;
}

.wall .plan_item .price,
.roof .plan_item .price {
	padding: 20px 7px 10px;
}

.wall .plan_item .accent,
.roof .plan_item .accent {
	color: #D72E3D;
}

.wall .plan_item .bright,
.roof .plan_item .bright {
	color: #FF0000;
}

.wall .plan_item .list .small,
.roof .plan_item .list .small {
	position: relative;
	top: -10px;
	left: 10px;
	font-size: 10px;
	display: inline-block;
}

.wall .plan_item .list .adjustment,
.roof .plan_item .list .adjustment {
	position: relative;
	top: -10px;
	display: inline-block;
}

.wall .plan_item:last-of-type .catch,
.roof .plan_item:last-of-type .catch {
	margin-top: 0;
}

.wall .plan_item .price>p,
.roof .plan_item .price>p {
	font-size: 18px;
	font-weight: 800;
	margin-bottom: 0;
}

.wall .plan_item .flex,
.roof .plan_item .flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-top: 5px;
}

.wall .price span,
.roof .price span {
	font-size: 18px;
	font-weight: bold;
}

.wall .price .up,
.roof .price .up {
	margin-top: -10px;
}

.wall .plan_item .big,
.roof .plan_item .big {
	font-size: 50px;
	font-weight: 800;
	line-height: 1;
}

.wall .plan_item .flex .column span,
.roof .plan_item .flex .column span {
	display: block;
	font-size: 22px;
	text-align: center;
	font-weight: bold;
	line-height: 1;
}

.wall .plan_item .flex .column .small,
.roof .plan_item .flex .column .small {
	font-size: 13px;
	margin-top: 3px;
}

.wall .contents {
	background: #0F2042;
	padding: 12px 8px;
	flex: 1;
}

.wall .contents .title {
	font-size: 18px;
	font-weight: bold;
	color: #fff;
	margin-bottom: 0;
	padding-left: 5px;
}

.plan_item:not(:last-of-type) .contents .body .catch {
	margin-top: 26px;
}

.wall .contents .body {
	background: #fff;
	padding: 12px 8px;
	margin-top: 12px;
}

.wall .contents .list {
	font-size: 15px;
	font-weight: 300;
	line-height: 1.75;
	margin-bottom: 0;
}

.wall .contents .catch {
	font-size: 18px;
	font-weight: bold;
	margin-top: 10px;
	margin-bottom: 0;
}

.wall .contents .text {
	font-size: 13px;
	font-weight: 500;
	color: #fff;
	margin-top: 12px;
	padding: 0 10px;
}

.roof .body {
	background: #19420F;
	padding: 30px 36px;
}

.roof .body p {
	font-size: 30px;
	font-weight: bold;
	color: #fff;
	text-align: center;
}

.roof .body .accent {
	font-size: 48px;
	color: #D72E3D;
	display: inline-block;
	padding-left: 10px;
}

@media (max-width: 767px) {
	.page-price {
		padding-top: 0;
	}

	.page-price .sec01 .content {
		width: 100%;
	}

	.priceBox .sec01 .borderBox .head {
		top: -25px;
		width: 100%;
		max-width: 250px;
		font-size: clamp(20px, 3.5vw, 25px);
		text-align: center;
		padding: 5px 10px;
	}

	.page-price .priceBox .row .col-12 {
		padding: 0;
	}

	.priceBox .sec01 .borderBox {
		border: 2.5px solid #707070;
		padding: 40px 16px 30px;
	}

	.page-price .price_contents {
		padding: 15px 10px;
	}

	.priceBox .price_contents .catch span {
		font-size: clamp(17px, 3.5vw, 25px);
	}

	.priceBox .price_contents .catch .accent {
		font-size: clamp(25px, 4.5vw, 35px);
		line-height: 1.2;
	}

	.priceBox .sec01 .borderBox .textP {
		max-width: 500px;
		margin: 0 auto;
		margin-top: 15px;
	}

	.page-price .sec03 .feature_title-box h2 {
		font-size: clamp(25px, 5vw, 40px);
	}

	.page-price .sec03 .feature_title-box p {
		font-size: clamp(16px, 3vw, 21px);
	}

	.page-price .sec03 .feature_title-box p span {
		font-size: clamp(17.5px, 3vw, 22.5px);
	}

	.page-price .infoBgBox {
		margin-top: 16px;
	}

	.priceBox .sec01 {
		background-size: 21px auto;
	}

	.page-price .content {
		padding: 0;
	}

	.page-price .feature_title-box h2 {
		font-size: 32px;
		font-size: clamp(24px, 4vw, 32px);
	}

	.priceBox .sec03 p {
		margin: 0;
	}

	.wall h2.h2_icon02,
	.roof h2.h2_icon02 {
		margin: 20px auto 20px;
	}

	.wall .plan_items,
	.roof .plan_items {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.wall .plan_item .flex,
	.roof .plan_item .flex {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		gap: 3px;
	}

	.wall .plan_item .price,
	.roof .plan_item .price {
		padding: 10px;
		text-align: center;
	}

	.wall .plan_item .big,
	.roof .plan_item .big {
		font-size: 40px;
	}

	.roof .plan_items {
		gap: 0;
	}

	.plan_item:not(:last-of-type) .contents .body .catch {
		margin-top: 10px;
	}

	.roof .body {
		padding: 20px 10px;
	}

	.roof .body p {
		font-size: clamp(18px, 3.5vw, 25px);
	}

	.roof .body .accent {
		font-size: clamp(27px, 5vw, 38px);
		padding-left: clamp(5px, 1.5vw, 10px);
	}

	.priceBox .sec03 {
		padding: 30px 0 0;
	}

	.wall .plan_item .list .small,
	.roof .plan_item .list .small {
		top: 0;
		left: 0;
		display: block;
	}

	.wall .plan_item .list .adjustment,
	.roof .plan_item .list .adjustment {
		top: 0;
	}

	.wall .plan_item:last-of-type .catch,
	.roof .plan_item:last-of-type .catch {
		margin-top: 10px;
	}
}

/* はじめての方へ */
.firstBox .h2Ttl {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 27px;
	font-weight: bold;
	line-height: 1.5;
}

.firstBox .h2Ttl span {
	color: #A41818;
	font-size: 27px;
}

.firstBox .sec01 .h3Ttl {
	font-size: 30px;
	font-weight: bold;
	color: #fff;
}

.page-first .firstBox {
	padding-top: 115px;
}

.firstBox .sec01 .textP {
	font-size: 25px;
	font-family: "Noto Sans JP", sans-serif;
	line-height: 1.6;
}

.firstBox .sec01 .textP span {
	font-size: 30px;
	font-weight: bold;
	color: #FCDC54;
	display: block;
	margin: 5px 0;
}

.repaint_items {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px 48px;
}

.repaint_item {
	background: rgba(255, 255, 255, 0.63);
	padding: 10px 12px;
}

.page-first .sec02 h3 {
	font-size: 35.7px;
	font-weight: bold;
}

.page-first .sec02 h3 .accent {
	color: #A31818;
}

.firstBox .sec02 .txtUl {
	width: 614px;
	margin: 0 auto;
}

.repaint_image {
	position: relative;
}

.repaint_tag {
	position: absolute;
	bottom: 0;
	right: 0;
	font-size: 20px;
	font-weight: bold;
	color: #A82B2E;
	background: rgba(255, 255, 255, 0.65);
	padding: 5px;
}

.firstBox .sec01 .textP {
	margin-top: 32px;
}

.first-promise {
	margin-top: 100px;
}

.first-promise_items {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	margin-top: 64px;
}

.first-promise_item:not(:first-child) {
	margin-top: 100px;
}

.first-promise .head {
	width: 64.1%;
	margin-left: auto;
	margin-right: 0;
	font-size: 35px;
	font-weight: bold;
	background: #0D1627;
	color: #fff;
	padding: 25px 45px;
}

.page-first .first-promise_item h2.h2_icon02 {
	font-size: 35px;
}

.first-promise_item .contents {
	display: flex;
	justify-self: center;
	gap: 45px;
}

.first-promise_item .contents .image {
	width: 46.8%;
}

.first-promise_item .contents .image img {
	width: 100%;
	aspect-ratio: 471 / 314;
	object-fit: cover;
}

/* .first-promise_item .contents .image .aspect {
	aspect-ratio: 471 / 471;
} */

.first-promise_item .contents .text {
	width: 48.1%;
	line-height: 1.8;
}

.firstBox .sec04 .imgArea {
	margin: 50px 0 44px;
}

.page-first .indexBox .sec02 {
	padding: 80px 0;
	background: none;
}

@media (max-width: 767px) {

	.firstBox .h2Ttl,
	.firstBox .h2Ttl span {
		font-size: clamp(18px, 3.5vw, 23px);
	}

	.firstBox .sec01 .h3Ttl {
		margin-bottom: 20px;
		font-size: clamp(20px, 4vw, 28px);
	}

	.page-first .firstBox {
		padding-top: 80px;
	}

	.firstBox .sec01 {
		padding: 50px 8px 18px;
	}

	.repaint_items {
		grid-template-columns: repeat(2, 1fr);
		gap: clamp(5px, 1.5vw, 10px);
	}

	.repaint_item {
		padding: clamp(5px, 1.5vw, 10px);
	}

	.firstBox .sec01 .textP {
		font-size: clamp(18px, 4vw, 24px);
	}

	.firstBox .sec01 .textP span {
		font-size: clamp(20px, 4.5vw, 28px);
	}

	.page-first .indexBox .sec02 {
		padding: 50px 0;
	}

	.page-first .sec02 h3 {
		font-size: clamp(20px, 4.5vw, 30px);
	}

	.page-first .firstBox .sec02 .top {
		width: 100%;
		max-width: max-content;
		margin: 0 auto 12px;
		padding: 5px;
		font-size: clamp(13px, 3vw, 20px);
	}

	.repaint_tag {
		font-size: clamp(11px, 3vw, 18px);
		padding: 3px;
	}

	.firstBox .sec02 .txtUl {
		width: 100%;
		width: 70%;
		max-width: 440px;
		min-width: 320px;
		margin: 0 auto;
	}

	.firstBox .sec02 .txtUl li {
		font-size: clamp(14px, 3vw, 18px);
	}

	.firstBox .sec02 .infoBox {
		padding: 25px 10px 21px;
	}

	.first-promise {
		margin-top: 50px;
	}

	.first-promise .head {
		width: 70%;
		min-width: 280px;
		font-size: clamp(18px, 4vw, 28px);
		padding: 2vw 5vw;
	}

	.first-promise_items {
		padding: 0 16px;
		box-sizing: border-box;
		margin-top: 30px;
	}

	.first-promise_item:not(:first-child) {
		margin-top: 60px;
	}

	.page-first .first-promise_item h2.h2_icon02 {
		font-size: clamp(18px, 4vw, 28px);
	}

	.page-first h2.h2_icon02 {
		margin: 30px auto 20px;
	}

	.first-promise_item .contents {
		gap: 20px;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}

	.first-promise_item .contents .image,
	.first-promise_item .contents .text {
		width: 100%;
	}

	/* 共通パーツ */
	.comContact {
		padding: 24px 16px 26px;
	}

	.comContact .content {
		padding: 0 16px;
	}

	.comContact .cta-title {
		max-width: 700px;
		margin: 0 auto;
		padding-bottom: 7px;
	}

	.cta_s .content .sp {
		width: 100%;
	}

	.cta_s .content {
		padding: 0;
	}

	.comContact.fb_right .imgBox {
		text-align: center;
		margin-top: 10px;
	}

	.comContact .imgBox .lBox li img {
		width: 100%;
		max-width: 700px;
	}
}

/* TOPページ */
.slick-slide img {
	width: 100%;
	max-width: 908px;
	aspect-ratio: 908 / 553;
}

.sns_lists {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	gap: 40px;
	margin-top: 20px;
	margin-bottom: 20px;
}

.sns_lists img {
	width: 40px;
	height: 40px;
	object-fit: contain;
}

.page-top .repaint_wrap h3 {
	font-size: 30px;
	font-weight: bold;
	color: #212529;
	margin-bottom: 20px;
	text-align: center;
}

.page-top .repaint_items {
	max-width: 560px;
	gap: 10px;
}

.page-top .repaint_item {
	background: #B0B3B8;
	padding: 5px;
}

.page-top .repaint_tag {
	font-size: 14px;
}

@media screen and (max-width: 767px) {
	.page-top .indexBox .sec01 h2 {
		max-width: 560px;
		margin: 0 auto;
	}

	.page-top .repaint_wrap h3 {
		font-size: clamp(20px, 4vw, 28px);
	}

	.page-top .repaint_item {
		padding: clamp(5px, 1.5vw, 10px);
	}

	.page-top .repaint_tag {
		font-size: clamp(11px, 3vw, 18px);
	}

	.page-top .indexBox .sec01 .content .problems .problems_text {
		max-width: 560px;
		margin: 0 auto;
		margin-top: 20px;
	}

	.person .image {
		text-align: center;
	}

	.person .image img {
		width: 100%;
		max-width: 600px;
	}

	.sns_lists {
		margin-top: 20px;
		gap: 20px;
	}
}

/* 施工事例 */
@media (max-width: 767px) {
	.page-case .faq {
		padding: 40px 16px 0;
	}
}

/* 施工の流れページ */
.page-flow .comTopVisual p,
.page-about .comTopVisual p {
	font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, メイリオ, sans-serif;
}

.flowBox .listUl .photo img {
	width: 100%;
	aspect-ratio: 293 / 198;
	object-fit: cover;
}

/* 私たちについて */
.page-about .photoBox .aspect {
	aspect-ratio: 583 / 385;
	object-fit: cover;
	object-position: top;
}

.page-about .staff_name {
	font-size: 20px;
	letter-spacing: 0.05em;
	font-weight: bold;
}

.page-about .staff_name span {
	display: inline-block;
	font-size: 28px;
	padding-left: 30px;
}

@media screen and (max-width: 767px) {
	.page-about .staff_name {
		font-size: 14px;
	}

	.page-about .staff_name span {
		font-size: 20px;
		padding-left: 20px;
	}
}

/* かんたん見積もり */
.estimateBox .price caption,
.estimateBox .price td,
.estimateBox .price .txt_red td {
	font-weight: bold;
}

.estimateBox .price td {
	width: 25%;
}

.estimateBox .price .material td {
	padding: 25px 20px;
}

.page-estimate .roof {
	margin-top: 30px;
}

@media screen and (max-width: 767px) {
	.esti01 .content {
		padding-top: 22vw;
	}

	.esti01 .select_box p {
		margin-bottom: clamp(5px, 1.5vw, 10px);
	}

	.esti01 .select_box {
		width: 100%;
		max-width: 450px;
	}

	.estimateBox .price td {
		width: 100%;
		font-size: 14px;
	}

	.estimateBox .price .material td,
	.estimateBox .price td {
		padding: 20px 0;
		padding-left: clamp(5px, 2vw, 15px);
		padding-right: clamp(5px, 2vw, 15px);
	}

	.estimateBox .price tr.material {
		width: 65%;
	}

	.estimateBox .price tr.txt_red {
		width: 35%;
		line-height: inherit;
	}

	.page-estimate .compare .content {
		padding-top: 0;
	}
}

/* お客様の声 */
.no-modal {
	pointer-events: none;
}

.questionnaire__item .image {
	border: 1px solid #333;
}

.questionnaire__item .image img {
	width: 100%;
	object-fit: contain;
	aspect-ratio: 298 / 422;
}

.questionnaire__items .tag_flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 5px;
}

.default-image {
	pointer-events: none;
	background: #0D2248;
	padding: 10px;
}

.default-image img {
	width: 100%;
}

/* Instagram埋め込み */
.instagram-container {
	position: relative;
	width: 100%;
	padding-bottom: 77.6%;
	overflow-y: scroll;
	padding-bottom: 77.6%;
	height: 0;
	overflow-y: scroll;
}

.instagram-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.instagram-media-reel {
	width: 100% !important;
	max-height: 720px;
	max-width: 500px !important;
	margin: 0 auto !important;
}

@media screen and (max-width: 767px) {
	.comContact .content {
		padding: 0;
	}

	.instagram-media {
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 auto !important;
		aspect-ratio: 500 / 388 !important;
	}

	.comContact .imgBox .lBox li img {
		width: 100%;
		max-width: 600px;
	}

	.comContact .imgBox .lBox img {
		width: 100%;
		max-width: 600px;
	}

	.comContact.fb_right .imgBox .rBox {
		max-width: 600px;
		margin: 0 auto;
	}

	.instagram-media-reel {
		width: 100% !important;
		max-height: 100%;
		max-width: 570px !important;
		margin: 0 auto !important;
	}
}

/* ページネーション */
.page-voice .wp-pagenavi a,
.page-voice .wp-pagenavi span {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

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

	.wp-pagenavi a,
	.wp-pagenavi span {
		padding: 8px;
	}
}

/* TOPブログ・コラム */
.top-column .btn_new_red {
	margin: 30px auto 60px;
}

@media (max-width: 767px) {
	.top-column h2.h2_b {
		margin-bottom: 24px;
	}

	.top-column .comNews li dt .lTxt {
		margin-left: 0;
	}

	.indexBox .sec05 {
		padding: 0 0 43px;
	}
}

#main .columnDetail {
	padding-top: 100px;
}

@media (max-width: 767px) {
	#main .columnDetail {
		padding-top: 80px;
	}
}