@charset "utf-8";

/*固定ページ用（サービス・サポート関連除く）*/

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

p {
	line-height: 1.6em;
	font-size: 16px;
}

.pc_hid {
	display: none;
}

.sp_hid {
	display: block;
}

/*事業内容
-------------------------------------------------------*/

.business_top .full {
	position: relative;
	min-height: 200px;
	background: url(/wp-content/uploads/2025/07/business_top.jpg) center / cover;
	margin-left: calc(-50vw + 50%);
	margin-right: calc(-50vw + 50%);
}

.top_inner {
	position: absolute;
	max-width: 1100px;
	top: 4em;
	left: 0;
	right: 0;
	margin: auto;
}

.business_top p {
	text-align: center;
	font-size: 50px;
	font-weight: 500;
	text-shadow: #fff 0 0 6px;
	padding: 0 1em;
}

.post_content .business_lead {
	text-align: center;
	width: 80%;
	margin: 0 auto;
}

.post_content .business-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 0 6em 0;
}

.business-list li {
	width: 29%;
	margin: 60px 2% 20px 0;
	list-style: none;
	box-sizing: border-box;
}

.business-list li:nth-of-type(3),
.business-list li:nth-of-type(6) {
	margin: 60px 0 20px 0;
}

.business-list li a {
	color: #000;
	overflow: hidden;
	display: block;
	position: relative;
	line-height: 0;
}

.business-list li a img {
	object-fit: cover;
	transition: transform 0.3s ease-out;
	display: block;
	padding: 0;
}

.business-list li img {
	margin: 0 0 20px 0;
	width: 100%;
	height: auto;
}

.business-list li a img:hover {
	transform: scale(1.05);
}

.post_content .business-list h2 {
	font-weight: 600;
	font-size: 138%;
}

.post_content .contact_link {
	font-size: 26px;
	font-weight: 600;
	padding: 10px 20px;
	width: 50%;
	margin: 0 auto;
	display: block;
	background: #067E8E;
	border-radius: 50vh;
	text-align: center;
	border-top: #F9F9F9 6px solid;
	border-bottom: #F9F9F9 2px solid;
	margin: 0.5em auto 1em;
	box-shadow: 0px 2px 2px 0px #a9acad;
	transition: all 0.3s ease-out;
}

.post_content .contact_link:hover {
	background: #007180;
}

.post_content .contact_link p {
	font-weight: 600;
	padding-top: 4px;
	color: #fff;
}

.contact_link img {
	vertical-align: middle;
	padding: 0 20px 5px 0;
}


.business_banner img {
	box-shadow: 0px 1px 3px 1px rgb(0 0 0 / 25%);
	transition: all 0.3s ease-out;
}

.business_banner {
	width: 80%;
	margin: 6em auto 3em;
}

.business_banner img:hover {
	filter: brightness(0.7);
}

.business_transceiver_link {
	width: 80%;
	margin: 0 auto;
	min-height: 120px;
	background: repeating-conic-gradient(rgba(242, 232, 32, 1) 0deg 5deg, rgba(242, 232, 32, 0.4) 5deg 10deg);
	box-shadow: 2px 2px 2px 2px rgb(0 0 0 / 25%);
	transition: all 0.3s ease-out;
}

.business_transceiver_link:hover {
	filter: brightness(0.9);
}

.business_transceiver_link a {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 10px 25px;
}

.business_transceiver_link p {
	font-size: 32px;
	font-weight: 800;
	margin: 5px 0 0 0;
	line-height: 1.4;
}

.business_transceiver_link img {
	margin: 0 0 0 20px;
}

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

.post_content .policy_h2 {
	font-size: 160%;
	font-weight: 700;
	border-left-width: 6px;
	border-left: solid 6px #222;
	padding: 0 0 2px 16px;
	margin: 2.2em 0 12px 0;
}

.post_content .list-policy {
	margin: 1em 0 0 2em;
	list-style: none;
	counter-reset: policy-counter;
}

.list-policy>li {
	margin: 0 0 8px 0;
	counter-increment: policy-counter;
	position: relative;
	padding-left: 2em;
}

.list-policy>li::before {
	content: "（" counter(policy-counter) "） ";
	position: absolute;
	left: 0;
}

.post_content .list-process {
	margin: 1em 0 0 1.5em;
}

.post_content .list-process>li {
	margin: 0 0 8px 0;
}

.post_content .list-policy ul {
	list-style: none;
}

.post_content .list-policy ul>li {
	margin: 5px 0;
}

.post_content .list-policy ol {
	list-style: none;
	counter-reset: sublist-counter;
}

.list-policy ol>li {
	counter-increment: sublist-counter;
	position: relative;
	padding-left: 2em;
}

.list-policy ol>li::before {
	content: "\2460";
	position: absolute;
	left: 0;
}

.post_content .policy strong {
	font-weight: 500;
}

.post_content .policy address {
	font-style: normal;
	margin: 0 0 0 1.6em;
}

.post_content .policy address.spacer-top {
	margin: 1.2em 0 0 1.6em;
}

.post_content .policy address p {
	margin: 0;
}

.revision-date {
	display: block;
	text-align: right;
	font-size: 0.9em;
	color: #666;
	margin-top: 2rem;
}

/*カレンダー
--------------------------------------------------------------*/
.xo-event-calendar table.xo-month button span.nav-next {
	border-right: 2px solid #ddd;
	border-top: 2px solid #ddd;
}

.xo-event-calendar table.xo-month button span.nav-prev {
	border-bottom: 2px solid #999;
	border-left: 2px solid #999;
}

.xo-event-calendar table.xo-month .month-header {
	color: #ddd;
	font-size: 15px;
	line-height: 24px;
}

/*タブレット
-------------------------------------------------------*/

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

	/* 
事業内容
 */

	.business_top .full {
		min-height: 180px;
		background: url(/wp-content/uploads/2025/07/business_top.jpg) 80% / cover;
	}

	.business_top p {
		font-size: 40px;
	}

	.business_banner,
	.business_transceiver_link {
		width: 95%;
	}


	.business_transceiver_link p {
		font-size: 26px;
	}

}

/*スマートフォン
-------------------------------------------------------*/

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

	/* 
共通
 */
	p {
		font-size: 14px;
	}

	.pc_hid {
		display: block;
	}

	.sp_hid {
		display: none;
	}

	/* 
事業内容
 */
	.business_top .full {
		min-height: 180px;
	}

	.top_inner {
		max-width: none;
		top: 3em;
	}

	.business_top p {
		font-size: 36px;
		padding: 0;
	}

	.post_content .business_lead {
		width: 100%;
	}

	.business-list li {
		width: 100%;
		margin: 30px 0 20px 0;
	}

	.business-list li img {
		margin: 0;
	}

	.post_content .contact_link {
		width: 94%;
		font-size: 18px;
		box-sizing: border-box;
	}

	.post_content .contact_link p {
		margin: 0 0 0 0;
		padding-top: 0;
	}

	.contact_link img {
		width: 50px;
	}

	.business_banner {
		width: 100%;
		margin: 3.5em auto 3em;
	}

	.business_transceiver_link {
		width: 100%;
	}

	.business_transceiver_link p {
		font-size: 19px;
		line-height: 1.5;
	}

	.business_transceiver_link a {
		padding: 10px 18px;
	}

	.business_transceiver_link img {
		width: 18%;
		margin: 0 0 0 6px;
	}


	/*
プライバシーポリシー
 */
	.post_content .policy_h2 {
		font-size: 150%;
	}

	.post_content .list-policy {
		margin: 1em 0 0 0;
	}

	.post_content .list-policy ul {
		margin-left: 0;
	}
}