/*--------------------------
共通項目
----------------------------*/
@media(min-width:600px) {
	.sp {
		display: none !important;
	}
}

@media(max-width:600px) {
	.pc {
		display: none !important;
	}
}

@media(min-width:1000px) {
	.sp2 {
		display: none !important;
	}
}

@media(max-width:1000px) {
	.pc2 {
		display: none !important;
	}
}

div,
h1,
h2,
h3,
a,
select,
tr,
td,
li {
	font-family: 'Noto Sans JP', sans-serif, Hiragino Kaku Gothic ProN, "ヒラギノ角ゴ ProN W3", Hiragino Sans, "ヒラギノ角ゴシック", sans-serif, Meiryo;
}

body {
	margin: 0;
}

div.section {
	padding: 50px 0;
	position: relative;
}


div.wrap {
	width: 90%;
	max-width: 1200px;
	margin: auto;
}

div.wrap2 {
	width: 90%;
	max-width: 700px;
	margin: auto;
}

header#header-business div.wrap {
	width: 90%;
	max-width: 1200px;
	margin: auto;
}

div.column-2 {
	display: flex;
	gap: 2%;
}

div.column-2>div {
	width: 49%;
}

div.column-3 {
	display: flex;
	gap: 2%;
}

div.column-3>div {
	width: 32%;
}

div.column-4 {
	display: flex;
	gap: 2%;
}

div.column-4>div {
	width: 23%;
}

@media(max-width:800px) {

	div.column-2,
	div.column-3 {
		flex-direction: column;
	}

	div.column-2>div,
	div.column-3>div {
		width: 100%;
	}

	div.column-4 {
		flex-wrap: wrap;
		justify-content: space-between;
	}

	div.column-4>div {
		width: 48%;
	}
}

h1 {
	font-size: 38px;
	font-weight: bold;
	line-height: 1.4;
	margin: 0;
	text-align: center;
}

@media(max-width:600px) {
	h1 {
		font-size: 32px;
	}
}

h2 {
	font-size: 30px;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
	margin: 0;
}

@media(max-width:600px) {
	h2 {
		font-size: 26px;
	}
}


h3 {
	font-size: 26px;
	line-height: 1.4;
	margin: 0;
}

@media(max-width:600px) {
	h3 {
		font-size: 18px;
	}
}

h4 {
	font-size: 24px;
	line-height: 1.4;
	margin: 0;
}

@media(max-width:600px) {
	h4 {
		font-size: 16px;
	}
}

h5 {
	font-size: 26px;
	line-height: 1.4;
	margin: 0;
}

@media(max-width:600px) {
	h5 {
		font-size: 18px;
	}
}


p {
	font-size: 16px;
	line-height: 1.8;
	text-align: justify;
	color: #043465;
}

@media(max-width:600px) {
	p {
		font-size: 14px;
	}
}

img {
	width: 100%;
}


/*ボタン系*/
a {
	text-decoration: none;
}

.wpcf7-list-item {
	margin: 0 !important;
	display: block !important;
}



/*--------------------------
ヘッダー
----------------------------*/
header#header-business {
	background-color: #212121;
	position: sticky;
	top: 0;
	width: 100%;
	z-index: 100;
}

header#header-business p {
	margin: 0;
}

header#header-business .wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 70px;
}

@media(max-width:800px) {
	header#header-business .wrap {
		align-items: flex-start;
		flex-direction: column;
		height: 100px;
		padding: 8px 0;
	}
}

.top-left {
	width: 35%;
}

.top-left p {
	font-size: 11px;
}

.top-right {
	width: 65%;
	display: flex;
	gap: 10px;
	justify-content: right;
	align-items: center;
}

@media(max-width:800px) {
	.top-left p {
		text-align: center;
	}

	.top-left,
	.top-right {
		width: 100%;
		text-align: center;
		justify-content: center;
		gap: 2%;
	}
}

header#header-business a {
	display: block;
	color: #fff;
}

header#header-business p {
	color: #fff;
}

.top-left p {
	color: #CEA841;
}

header#header-business img {
	width: 100%;
	max-width: 290px;
}

.header#header-business-top p {
	font-size: 11px;
}

header#header-business .cv-button {
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 150px;
	height: 34px;
	font-size: 15px;
	font-weight: bold;
	border-radius: 5px;
	box-sizing: border-box;
}

@media(max-width:800px) {
	header#header-business .cv-button {
		width: 49%;
	}
}

.cv-button-download {
	background: #CD334F;
}

.cv-button-contact {
	background: #2F9BFF;
}


/*--------------------------
フッター
----------------------------*/
footer {
	padding-top: 40px;
	padding-bottom: 140px;
	position: relative;
	background: #fff !important;
}

.l-footer-logo {
	text-align: center
}

.l-footer-logo a {
	display: block
}

.l-footer-logo a img {
	margin-top: 30px;
	margin-bottom: 10px;
	width: 90%;
	max-width: 400px;
}

.l-footer-menu {
	padding: 30px 0;
	font-size: 16px
}

.l-footer-menu ul {
	display: flex;
	justify-content: center;
	margin: 0;
	padding: 0
}

.l-footer-menu ul li {
	list-style: none;
	padding: 0 10px
}

.l-footer-menu ul li a {
	color: #333;
	text-decoration: none
}

.l-footer-menu ul li:not(:first-child) {
	border-left: 1px solid #000
}

.l-footer-copy p {
	text-align: center;
	font-size: 12px
}


/*--------------------------
TOPページ
----------------------------*/
/*TOP画像*/
.top {
	top: 0;
	width: 100%;
	height: 640px;
	background-image: url(./content/top.webp);
	background-size: cover;
	background-position: center;
	padding: 40px 0;
	box-sizing: border-box;
	position: relative;
	overflow: hidden;
}

@media(max-width:600px) {
	.top {
		height: 140vw;
		max-height: 700px;
	}
}

.top .top-wrap {
	padding-left: 4%;
	width: 96%;
	min-width: 1500px;
	display: flex;
	margin: auto;
}

@media(max-width:800px) {
	.top .top-wrap {
		flex-direction: column;
		gap: 36px;
		width: 100%;
		min-width: 100%;
		padding: 0;
	}
}

.top-title {
	width: 33%;
	margin-top: 20px;

}

@media(max-width:800px) {
	.top-title {
		width: 84%;
		max-height: 100%;
		max-width: 400px;
		margin: 0 auto;
	}
}


.swiper {
	width: 70%;
	margin-left: -3% !important;
	height: 90%;
}

@media(max-width:800px) {
	.swiper {
		width: 100%;
		height: auto;
		margin: 0 !important;
	}
}

.swiper-slide {
	height: 100%;
	box-sizing: border-box;
	transform: scale(0.8 1);
	transition: 0.3s;
}


.swiper-slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top left;
}

@media(max-width:100vh) {
	.swiper-slide img {
		height: auto;
		object-fit: contain;
		object-position: center;
	}
}


#top-actual {
	width: 36%;
	max-width: 240px;
	max-height: 35%;
	position: absolute;
	object-position: left;
	bottom: 0;
	left: 7%;
	margin-bottom: 80px;
	object-fit: contain;
	z-index: 50;
}

@media(max-width:800px) {
	#top-actual {
		position: relative;
		margin-top: -22%;
		width: 35%;
		left: 4%;
		max-width: 160px;
	}
}

.add-path {
	fill: #FFEFD7;
	width: 100%;
	margin-top: -4vh;
	position: relative;
	filter: drop-shadow(0px -20px 20px rgba(0, 0, 0, 0.25));
}


/*section1*/

/*section2*/
.section2 {
	background: #F8F8F8;
}

.section2 h2 {
	color: #0154AB;
	margin-bottom: 40px;
	line-height: 1.6;
	font-size: 22px;
}

.section2 .column-3-child {
	position: relative;
	margin-bottom: 1vw;
	cursor: pointer;
	height: 200px;
}

@media (max-width: 1100px) {
	.section2 .column-3-child {
		height: 240px;
	}
}

@media (max-width: 600px) {
	.section2 .column-3-child {
		margin-bottom: 12px;
		height: 140px;
	}
}

.section2 .column-3-child p {
	padding: 30px 20px 0 20px;
	font-weight: bold;
	font-size: 20px;
	line-height: 1.6;
	margin: 0;
}

@media (max-width: 600px) {
	.section2 .column-3-child p {
		padding-top: 20px;
		font-size: 16px;
	}
}

.section2 .column-3-child> :first-child {
	filter: drop-shadow(6px 6px 3px rgba(160, 160, 160, 0.4));
	z-index: 2;
	position: relative;
	transition: 0.5s;
	height: calc(100% - 60px);
	pointer-events: none;
}

@media (max-width: 1100px) {
	.section2 .column-3-child> :first-child {
		height: calc(100% - 40px);
	}
}

@media (max-width: 800px) {
	.section2 .column-3-child> :first-child {
		height: calc(100% - 9vw);
	}
}

.section2 .column-3-child> :first-child:after {
	content: '';
	display: block;
	width: 100%;
	height: 70px;
	background-repeat: no-repeat;
	background-size: 100%;
	position: absolute;
	left: 0;
	bottom: -60px;
	filter: drop-shadow(6px 6px 3px rgba(160, 160, 160, 0.4));
}

@media (max-width: 600px) {
	.section2 .column-3-child> :first-child:after {
		height: 60px;
	}
}

.section2 .column-3-child.column-3-green> :first-child:after {
	background-image: url('./content/issue1.svg');
}

@media (max-width: 600px) {
	.section2 .column-3-child.column-3-green> :first-child:after {
		background-image: url('./content/issue1-1.svg');
	}
}

.section2 .column-3-child.column-3-blue> :first-child:after {
	background-image: url('./content/issue2.svg');
}

@media (max-width: 600px) {
	.section2 .column-3-child.column-3-blue> :first-child:after {
		background-image: url('./content/issue2-1.svg');
	}
}

.section2 .column-3-child.column-3-green> :first-child {
	background: #006993;
}

.section2 .column-3-child.column-3-blue> :first-child {
	background: #0154AB;
}

.section2 .column-3-child> :first-child p {
	color: #fff;
}

.section2 .column-3-child> :first-child p span {
	color: #F2DB11;
}

.section2 .column-3-child> :last-child {
	background: #ffffff;
	margin-bottom: 30px;
	transition: 0.5s;
	width: 100%;
	height: 100%;
}

@media(max-width:600px) {
	.section2 .column-3-child> :last-child p {
		line-height: 1.4;
	}
}

.section2 .column-3-child> :last-child p:before {
	content: '';
	display: block;
	width: 40px;
	height: 40px;
	margin: -10px auto 10px auto;
	background-image: url('./content/light.svg');
}

@media(max-width:600px) {
	.section2 .column-3-child> :last-child p:before {
		width: 30px;
		height: 30px;
	}
}

.section2 .column-3-child> :last-child p span {
	color: #F21111;
}

.section2 .column-3-child> :last-child {
	position: absolute;
	top: 0;
}

/* デスクトップにおけるホバー時の動作 */
@media(min-width:500px) {
	.section2 .column-3-child:hover> :first-child {
		transform: translateY(-50px);
		height: 50%;
		opacity: 0;
		visibility: hidden;
	}

	.section2 .column-3-child:hover> :last-child {
		background: #ffffff;
		box-shadow: 0px 4px 8px rgba(120, 120, 120, 0.4);
	}
}

/* スマホにおけるタップ時の動作 */
@media(max-width:500px) {
	.section2 .column-3-child.active> :first-child {
		transform: translateY(-260px);
		transform: translateY(-50px);
		height: 50%;
		opacity: 0;
		visibility: hidden;
	}

	.section2 .column-3-child.active {
		background: #ffffff;
		box-shadow: 0px 4px 8px rgba(120, 120, 120, 0.4);
	}
}

.section2>.wrap>p.tap {
	text-align: center;
	font-weight: bold;
	margin-top: -35px;
	margin-bottom: 25px;
}

.section2>.wrap>p.add {
	font-size: 24px;
	font-weight: bold;
	color: #0154AB;
	text-align: center;
}

@media(max-width:800px) {
	.section2>.wrap>p.add {
		font-size: 19px;
		letter-spacing: -0.6px;
	}
}


/*section3*/
.section3 .wrap>img:first-child {
	max-width: 560px;
	display: block;
	margin: auto;
}

.section3 .wrap>img:nth-child(2) {
	margin: 30px 0;
}


/*section4*/
.section4 {
	background: linear-gradient(270deg, #0050AB 0%, #007CA4 50%, #004492 100%);
	;
}

.section4 .wrap>h2 {
	color: #fff;
	margin-bottom: 40px;
}

.section4 .wrap>p {
	color: #fff;
}

.section4 .column-2 {
	margin-top: 30px;
}

@media (max-width: 600px) {
	.section4 .column-2 {
		gap: 15px;
	}
}

.section4 .column-2>div {
	padding: 20px 0;
	background: #fff;
	color: #106CC2;
	text-align: center;
	border-radius: 10px;
	font-weight: 600;
	box-sizing: border-box;
}

.section4 .column-2>div p {
	color: #106CC2;
}


.section4 .column-2>div p {
	text-align: center;
}

/*section5*/
.section5 h2 {
	margin-bottom: 10px;
	color: #ff0000;
	font-size: 36px;
}

@media (max-width: 600px) {
	.section5 h2 {
		font-size: 16px;
	}
}

.section5 h1 {
	margin: 0;
	font-size: 34px;
	letter-spacing: 2px;
	color: #043465;
}

@media (max-width: 600px) {
	.section5 h1 {
		font-size: 28px;
	}
}

.section5 .wrap>img {
	display: block;
	margin: auto;
	margin-top: 20px;
	margin-bottom: 40px;
	max-width: 900px;
}

.section5 .buttons {
	display: flex;
	gap: 2%;
	margin-top: 60px;
}

.section5 .column-2 img {
	max-width: 250px;
	margin: auto;
	display: block;
}

.section5 .column-2 h3 {
	color: #0F6CC2;
	text-align: center;
	margin-top: 20px;
}

@media (max-width: 600px) {
	.section5 .column-2 h3 {
		font-size: 20px;
	}
}

.section5 .column-2 p {
	line-height: 1.6;
}

.section5 .column-2>div {
	padding: 40px;
	box-sizing: border-box;
	border-radius: 10px;
	box-shadow: 0px 2px 15px 0px rgba(0, 0, 0, 0.15);
	margin-bottom: 20px;
}

@media (max-width: 600px) {
	.section5 .column-2>div {
		padding: 20px;
	}

	.section5 .column-2>div img {
		width: 180px;
		margin: auto;
		display: block;
	}
}


/*section6*/
.section6 {
	background: #DDF0FF;
}

.section6 h1 {
	color: #043465;
}

.section6 .wrap>p {
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 40px;
}

@media(max-width:600px) {
	.section6 .wrap>p {
		text-align: left;
		font-size: 16px;
	}
}

.section6 .column-4>div {
	background: #fff;
	padding: 20px 2%;
	margin-bottom: 10px;
	box-sizing: border-box;
	border-radius: 10px;
	box-shadow: 0px 2px 15px 0px rgba(0, 0, 0, 0.15);
}

.section6 .column-4>div h5 {
	text-align: center;
	color: #0C5FBE;
	margin-bottom: 10px;
}

.section6 .column-4>div p {
	line-height: 1.5;
}


/*section7*/

.section7 h1 {
	color: #043465;
}

.section7 .wrap>p {
	text-align: center;
	font-size: 20px;
	font-weight: bold;
}

@media(max-width:600px) {
	.section7 .wrap>p {
		font-size: 16px;
		text-align: left;
		margin-bottom: -10px;
	}
}

.sample {
	max-width: 1200px;
	margin: 60px auto;
	font-weight: 600;
}

@media(max-width:600px) {
	.sample {
		margin: 40px auto;
	}
}

.sample-title {
	display: flex;
	align-items: stretch;
	color: #fff;
	background-color: #848484;
}

@media(max-width:600px) {
	.sample-title {
		flex-direction: column;
	}
}

.sample-title p {
	color: #fff;
}

.sample-title>div {
	display: flex;
	align-items: center;
	padding: 0 4%;
	box-sizing: border-box;
}

.sample-title>div:nth-child(1) {
	background-color: #3a4488;
	width: 35%;
	clip-path: polygon(0 0, 100% 0%, 95% 100%, 0% 100%);
}

@media(max-width:600px) {
	.sample-title>div:nth-child(1) {
		width: 100%;
		height: 50px;
		clip-path: none;
	}
}

.sample-title>div:nth-child(2) {
	width: 65%;
}

@media(max-width:600px) {
	.sample-title>div:nth-child(2) {
		width: 100%;
	}
}

.sample-title p {
	font-size: 16px;
	line-height: 1.6;
}

@media(max-width:800px) {
	.sample-title p {
		font-size: 13px;
	}
}

.sample-content {
	position: relative;
	padding: 10px 5% 30px;
	background: #f4f4f4;
	display: flex;
	border: solid 2px #848484;
}

@media(max-width:600px) {
	.sample-content {
		flex-direction: column;
		padding: 30px 5% 20px;
	}
}

.sample-content>p {
	color: #999;
	margin-top: 6px;
}

.sample-content>a {
	position: relative;
	display: block;
	width: 80%;
	max-width: 800px;
	margin: auto;
}

@media(max-width:600px) {
	.sample-content>a {
		width: 100%;
	}
}

.sample-content img {
	width: 100%;
	display: block;
}


.sample-content .balloon {
	color: #043465;
	background: #f3e861;
	position: absolute;
	top: 76px;
	right: -20px;
	width: 60%;
	max-width: 450px;
	padding: 15px 2%;
	border-radius: 10px;
	box-shadow: 5px 5px 5px #3333;
}

@media(max-width:600px) {
	.sample-content .balloon {
		top: 10px;
	}
}

.sample-content .balloon p {
	font-size: 17px;
	line-height: 1.6;
	margin: 0;
}

@media(max-width:800px) {
	.sample-content .balloon p {
		font-size: 12px;
	}
}

.section7 .wrap>.sample:last-child .balloon {
	top: 110px !important;
}

@media(max-width:800px) {
	.section7 .wrap>.sample:last-child .balloon {
		top: 80px !important;
	}
}

.sample-content .position {
	width: 50%;
	max-width: 400px;
	bottom: 0;
	right: 0;
	position: absolute;
}

.sample-content .zoom {
	width: 25px;
	bottom: 0;
	right: 0;
	position: absolute;
}

.sample-content .zoom2 {
	width: 25px;
	bottom: 0;
	left: 0;
	position: absolute;
}

.lb-data .lb-close {
	position: absolute;
	top: -30px;
	right: 20px;
}

/*section8*/
.section8 {
	background: #0C6DC7;
}

.section8 .wrap>h3:nth-child(1) {
	text-align: center;
	color: #f3e861;
	line-height: 1.8;
	margin-bottom: 10px;
}

.section8 .wrap>h3:nth-child(1) a {
	text-decoration: underline;
	color: #f3e861;
}

.section8 .wrap>h3:nth-child(2) {
	text-align: center;
	color: #fff;
	line-height: 1.8;
	margin-bottom: 30px;
}

.section8 .column-2 {
	text-align: center;
	margin: 20px 0;
}

.section8 .column-2>div {
	background: #fff;
	padding: 20px;
	padding-bottom: 40px;
	margin: 8px 0;
	border-radius: 10px;
	position: relative;
	box-sizing: border-box;
}

.section8 .column-2>div h3 {
	font-size: 22px;
	position: absolute;
	width: 100%;
	bottom: 20px;
	left: 0;
	text-align: center;
	color: #043465;
}

.section8 .actual {
	padding: 1px 20px;
	border-radius: 10px;
	color: #fff;
	background: rgba(255, 255, 255, 0.20);
}

/*section9*/
.section9 {
	background: #333;
}

.section9 h5 {
	text-align: center;
	color: #fff;
	margin-bottom: 35px;
}

.section8 p {
	color: #fff;
}

.section9 .buttons a {
	width: 100%;
	line-height: 70px;
	border-radius: 35px;
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	color: #fff;
	position: relative;
	margin-bottom: 10px;
}

@media(max-width:800px) {
	.section9 .buttons a {
		font-size: 18px;
	}
}

.section9 .buttons a:after {
	content: '';
	background-image: url(./content/arrow.svg);
	background-repeat: no-repeat;
	background-size: contain;
	width: 20px;
	height: 20px;
	display: block;
	position: absolute;
	top: 25px;
	right: 8px;
}

.section9 .phones {
	background: #fff;
	border-radius: 10px;
	margin-top: 40px;
	padding: 20px;
	display: block;
}

.section9 .phones img {
	width: 80%;
	max-width: 360px;
	margin: auto;
	display: block;
}

.section9 .phones p {
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	color: #000;
	margin-bottom: 0;
}



#download {
	position: fixed;
	width: 14%;
	max-width: 55px;
	bottom: 20px;
	right: 0;
	z-index: 200;
}

@media(max-width:600px) {
	#download {
		width: 12%;
	}
}

/*ここまでTOPページ*/
/*--------------------------
固定ページ
----------------------------*/
.page-title {
	display: flex;
	align-items: center;
	color: #fff;
	background: linear-gradient(270deg, #0B5DBD 0%, #147CC7 100%);
	padding-bottom: 20px;
	height: 160px;
}

/*--------------------------
サンクスページ
----------------------------*/
.thanks h4 {
	text-align: center;
}

.thanks p {
	width: 90%;
	max-width: 600px;
	margin: 40px auto;
}


/*--------------------------
資料ダウンロードページ
----------------------------*/
.hidden-fields-container {
	display: none;
}

.download {
	display: flex;
}

.download>div {
	width: 50%;
}

.download>div>* {
	padding: 50px 40px !important;
}

.download>div:nth-child(2) {
	background: #f4f4f4;
}

.download>div:nth-child(2) td {
	position: relative;
	padding-bottom: 18px;
	vertical-align: top;
	width: 50%;
}

.download>div:nth-child(2) td p {
	margin: 6px 0;
}

@media(max-width:800px) {
	.download {
		flex-direction: column;
	}

	.download>div {
		width: 100%;
	}

	.download>div>* {
		padding: 10px !important;
	}

	.download>div:nth-child(2) td {
		display: block;
		width: 100%;
	}

	.download>div:nth-child(2) tr>td:first-child {
		padding-bottom: 0;
	}
}


.bb-archive {
	margin-top: 50px;
	margin-bottom: 20px;
	display: flex;
	flex-wrap: wrap;
	gap: 2%;
	border: none;
}

.bb-archive>* {
	width: 31%;
	border: none;
	position: relative;
	margin-bottom: 40px;
}

@media only screen and (max-width: 1000px) {
	.bb-archive>* {
		width: 49%;
		margin-bottom: 25px;
	}
}

@media only screen and (max-width: 600px) {
	.bb-archive>* {
		width: 100%;
		margin-bottom: 25px;
	}
}

.bb-card,
.bb-card h3 {
	color: #000;
}

.bb-card {
	display: block;
	position: relative;
	align-items: stretch;
	min-height: min(380px, 45vw);
	border-radius: 12px;
	background-color: #fff;
	box-shadow: 0 0 25px rgba(0, 0, 0, 0.1);
	overflow: hidden;
}

.bb-card::after {
	content: '';
	display: block;
	background-image: url('./content/arrow-right.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 1.5em;
	height: 1.5em;
	position: absolute;
	right: 1em;
	bottom: 1em;
}


.bb-card figure {
	margin: 0;
	overflow: hidden;
}

.bb-card figure img {
	width: 100%;
	height: 200px;
	object-fit: cover;
	object-position: center;
	transition: 0.8s;
}

.bb-card:hover figure img {
	scale: 1.1;
}

.bb-card .bb-meta {
	padding: 10px;
}

.bb-card time {
	font-size: 14px;
	text-decoration: none;
	color: #999;
	margin-top: 10px;
	margin-bottom: 10px;
}

.bb-card h3 {
	font-size: 18px;
	color: #000;
	text-decoration: none;
	display: block;
	margin-top: 10px;
	margin-bottom: 40px;
}

.bb-more {
	background: #0B5DBD;
	color: #fff;
	display: block;
	line-height: 50px;
	padding: 0 10px;
	margin: auto;
	width: 250px;
	text-align: center;
	border-radius: 25px;
	margin-bottom: 40px;
	font-size: 1.2em;
}

/*single-business*/
#business-content p#business-breadcrumbs {
	font-size: 0.9em;
}

#business-breadcrumbs a {
	color: #999;
	display: inline-block;
	margin-right: 5px;
}

#business-breadcrumbs>*:not(:first-child) {
	margin-left: 5px;
}

.cps-post-header {
	padding-bottom: 20px;
	margin-top: 20px;
}

#business-content div {
	max-width: 100%;
}

#business-content img {
	height: auto;
}


#business-content h1 {
	text-align: left;

}

#business-content h2 {
	text-align: left;
	position: relative;
	border-bottom: 3px solid #ff9a9e;
	font-size: 1.65rem;
	line-height: 2rem;
	padding: 15px;
	padding-left: 24px;
	margin-top: 2.6rem;
	margin-bottom: 1.6rem;
}

#business-content h2::before {
	content: "";
	position: absolute;
	background: #fff;
	border: 1px solid;
	border-color: #ff9a9e;
	top: 0;
	left: 0.4em;
	height: 12px;
	width: 12px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

#business-content h2::after {
	content: "";
	position: absolute;
	background-color: #ff9a9e;
	top: 0.8em;
	left: 0.1em;
	height: 8px;
	width: 8px;
	-webkit-transform: rotate(15deg);
	transform: rotate(15deg);
}

#business-content h3 {
	position: relative;
	font-size: 1.4rem;
	line-height: 2rem;
	padding: 4px 8px;
	padding-top: 0;
	padding-bottom: 0.5em;
	margin-top: 2.3rem;
	margin-bottom: 1rem;
	border-bottom: solid 2px #a1c4fd;
}

#business-content h3.entry-title {
	margin-top: 20px;
	margin-bottom: 20px;
	font-size: 26px;
	padding: 0;
	border: none;
}

#business-content h5 {
	font-size: 1.1rem;
	line-height: 1.6rem;
	padding: 4px 0px;
	margin-top: 0rem;
	margin-bottom: 0.8rem;
	font-weight: 700;
}

#business-content p {
	padding-bottom: 2rem;
	padding-top: 0;
	margin-top: 0;
	margin-bottom: 0;
	font-size: 1em;
	color: #333;
}

#business-content blockquote {
	margin: 0;
}

#business-content .wp-caption-text {
	display: block;
	font-size: 0.75rem;
	color: #888;
	margin-top: 5px;
	margin-bottom: 10px;
	line-height: 1.2rem;
	text-align: center;
	padding-bottom: 0 !important;
}

#business-content .cps-post-thumb img {
	border-radius: 10px;
}

/*ページネーション*/
.screen-reader-text {
	display: none;
}

.nav-links {
	text-align: center;
}

.nav-links .page-numbers {
	display: inline-block;
	width: 30px;
	line-height: 30px;
	border-radius: 15px;
	text-align: center;
	background: #ddd;
	color: #000;
	margin: 2px;
}

.nav-links .page-numbers.current {
	background: #000;
	color: #fff;
}

.nav-links .page-numbers.next,
.nav-links .page-numbers.prev {
	width: auto;
	padding: 0 15px;
}


/*--------------------------
フォーム
----------------------------*/
/*フォーム領域*/
.form-wrap {
	box-sizing: border-box;
	border-radius: 20px;
	background-color: #fff;
	filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.1));
	width: 94%;
	max-width: 1100px;
	margin: -30px auto 0;
	overflow: hidden;
	z-index: 1;
    position: relative;
}

.form-wrap.contact>div {
	padding: 30px 10px;
	max-width: 600px;
	margin: auto;
}

.form-wrap.form-confirm {
	padding: 50px 10px;
}

.form-wrap .contact-title,
.form-wrap .contact-title p {
	text-align: center;
}

@media(max-width:600px) {
	.form-wrap .contact-title p {
		text-align: left;
	}
}

.form-wrap .contact-title h4 {
	margin-bottom: 40px;
}

/*入力フォーム設定*/
.contact-table p {
	margin: 0;
}

.contact-table,
.contact-table2 {
	width: 100%;
}

.contact-table tr td {
	position: relative;
	padding-bottom: 15px;
}

.contact-table tr td:first-child {
	width: 220px;
	font-weight: bold;
	vertical-align: top;
	color: #000000;
	margin: 0;
	padding: 8px 0;
	box-sizing: border-box;
	line-height: 1.5;
}

.contact-table tr td:first-child p {
	display: flex;
	font-size: 15px;
	margin: 0;
	align-items: center;
}

@media(max-width:600px) {
	.contact-table tr td:first-child p {
		margin-bottom: 10px;
	}
}



.contact-table tr td:last-child {
	width: calc(100% - 220px);
}

@media(max-width:800px) {

	.contact-table tr,
	.contact-table td {
		display: block;
	}

	.contact-table td {
		padding-top: 5px;
		padding-bottom: 0;
	}

	.contact-table tr td:first-child {
		width: 100%;
		padding-bottom: 0;
	}

	.contact-table tr td:last-child {
		width: 100%;
		padding-top: 0;
	}
}


.contact-table2 tr {
	height: 60px;

}



input[type="text"],
input[type="number"],
input[type="email"],
input[type="url"],
form input[type="tel"],
input[type="password"],
input[type="search"],
textarea {
	color: #000000;
	width: 100%;
	margin: 0;
	padding: 8px 10px;
	box-sizing: border-box;
	font-size: 15px;
	line-height: 1.5;
}

input,
textarea {
	border: 1px solid #999;
	border-radius: 2px;
}

input::placeholder {
	color: #aaaaaa;
}


/* チェックボックス(プライバシーポリシー) */
.wpcf7-acceptance input {
	display: none;
}

.wpcf7-acceptance {
	position: relative;
	display: block;
	text-align: center;
	line-height: 60px;
	border-radius: 6px;
	transition: 0.3s;
	width: 90%;
	max-width: 360px;
	margin: auto;
	background: #f4f4f4;
}

.download .wpcf7-acceptance{
	background: #fff;
}

.wpcf7-acceptance input+span {
	position: relative;
	color: #000;
	transition: 0.3s;
	display: block;
	cursor: pointer;
}

.wpcf7-acceptance input+span a {
	text-decoration: underline;
}

.wpcf7-acceptance input+span::before,
.wpcf7-acceptance input+span::after {
	content: "";
	display: block;
	position: absolute;
}

.wpcf7-acceptance input+span::before {
	width: 22px;
	height: 22px;
	top: calc(50% - 12px);
	left: 4%;
	background-color: #fff;
	border: solid 1px #666;
}

.wpcf7-acceptance input+span::after {
	border-bottom: 3px solid #333333;
	border-left: 3px solid #333333;
	opacity: 0;
	height: 8px;
	width: 20px;
	transform: rotate(-45deg);
	top: calc(50% - 9px);
	left: 4%;
}

.wpcf7-acceptance input:checked+span::after {
	opacity: 1;
}



/*必須、任意ラベル*/
.required,
.not-required {
	display: flex;
	align-items: center;
}

.required::before,
.not-required::before {
	color: #ffffff;
	width: 40px;
	height: 25px;
	line-height: 25px;
	margin-right: 8px;
	font-size: 11px;
	text-align: center;
	font-weight: normal;
	display: block;
}

.required::before {
	content: '必須';
	background-color: #EB5757;
}

.not-required::before {
	content: '任意';
	background-color: #666666;
}

/*プライバシーポリシーに同意ボタン*/
.privacy_policy {
	position: relative;
	display: block;
	width: 90%;
	max-width: 320px;
	padding-left: 30px;
	margin: 30px auto;
	font-size: 16px;
	text-align: center;
	cursor: pointer;
	background: #f8f8f8;
}

/*アノテーション*/
.annotation {
	font-size: 12px;
	margin-top: 5px;
	margin-bottom: 5px;
}

/*エラーメッセージ*/
.wpcf7-not-valid-tip {
	font-size: 11px !important;
	line-height: 1.4;
	font-weight: bold;
	margin-top: 4px;
}


/*確認フォーム設定*/
.confirm-table table{
	width: 100%;
	border-collapse: separate;
	border-spacing: 0px 4px;
	    padding: 30px 10px;
    max-width: 600px;
    margin: auto;
}

.confirm-table table tr td {
	padding: 10px;
	font-size: 15px;
}

.confirm-table table tr td p{
	margin: 0;
}


.confirm-table table tr td:first-child {
	width: 220px;
	font-weight: bold;
	vertical-align: top;
	color: #000000;
	margin: 0;
	padding: 8px 0;
	box-sizing: border-box;
	line-height: 1.5;
}

.confirm-table table tr td:last-child {
	width: calc(100% - 220px);
	background-color: #f4f4f4;
}


@media(max-width:600px) {
	.confirm-table table tr td:first-child {
		width: 120px;
	}

	.confirm-table table tr td:last-child {
		width: calc(100% - 120px);
	}
}



/*送信ボタン*/
input.wpcf7-submit,
.wpcf7-previous,
a.business-button {
	display: block;
	width: 90%;
	line-height: 60px;
	max-width: 360px;
	margin: 40px auto;
	border: none;
	border-radius: 4px;
	font-size: 16px;
	text-align: center;
	text-decoration: none;
	text-shadow: none;
	cursor: pointer;
}

input.wpcf7-submit:not(:disabled),
a.business-button {
	color: #ffffff;
	background: linear-gradient(90deg, #F25769 0%, #CA4050 100%);
}

.wpcf7-previous {
	color: #ffffff;
	background: #666;
	margin-bottom: 10px;
	display: inline-block;
	margin-right: 10px;
}

.submit-area > p {
	text-align: center;
}

.submit-area > p input.wpcf7-submit{
	display: inline-block;
	margin-left: 10px;
}

@media(max-width:800px){
	.wpcf7-previous{
		margin-right: 0;
		margin-bottom: 16px;
	}
	.submit-area > p input.wpcf7-submit{
		margin: 0;
	}
}

.submit-area .wpcf7-spinner{
	display: block;
}

/*--------------------------
チェックボックスとラジオボタン
----------------------------*/

/* チェックボックス(大きいチェックボックス) */
.check-big label input {
	display: none;
}

.check-big input+span {
	position: relative;
	display: block;
	cursor: pointer;
	line-height: 1.5;
	padding: 6px 0 6px 40px;
}

.check-big input+span::before,
.check-big input+span::after {
	content: "";
	display: block;
	position: absolute;
}

.check-big input+span::before {
	background-color: #fff;
	width: 22px;
	height: 22px;
	top: calc(50% - 11px);
	left: 0;
	border: solid 1px #000;
}

.check-big input+span::after {
	border-bottom: 3px solid #333333;
	border-left: 3px solid #333333;
	opacity: 0;
	height: 7px;
	width: 18px;
	transform: rotate(-45deg);
	top: calc(50% - 7px);
	left: 2px;
}

.check-big input:checked+span::after {
	opacity: 1;
	transition: 0.3s;
}

/* ラジオボタン(大きいラジオボタン) */
.radio-big label input {
	display: none;
}

.radio-big input+span {
	position: relative;
	display: block;
	cursor: pointer;
	line-height: 2.5;
	padding-left: 30px;
}

.radio-big input+span::before,
.radio-big input+span::after {
	content: "";
	display: block;
	position: absolute;
}

.radio-big input+span::before {
	background-color: #fff;
	width: 22px;
	height: 22px;
	border-radius: 12px;
	top: calc(50% - 11px);
	left: 0;
	border: solid 1px #333;
}

.radio-big input+span::after {
	opacity: 0;
	height: 12px;
	width: 12px;
	border-radius: 11px;
	background-color: #333;
	border: solid 4px #fff;
	top: calc(50% - 9px);
	left: 2px;
}

.radio-big input:checked+span::after {
	opacity: 1;
	transition: 0.3s;
}