@charset "utf-8";
/*************************
共通
*************************/
html {
  -webkit-overflow-scrolling: touch;
}
/* --------▼　MTのみ崩れる箇所の対策　▼-------- */
*, :after, :before, html , a {box-sizing:border-box;} 
figure {margin:0 0 1rem;}
h1, h2, h3, h4, h5, h6 {margin-top:0; margin-bottom:0.5rem;}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {color:inherit; font-family:inherit; font-weight:500; line-height:1.1; margin-bottom:0.5rem;}
/* --------▲　MTのみ崩れる箇所の対策　▲-------- */

main .container {
	width: auto;
	max-width: inherit;
	height: auto;
	padding: 0;
}
body .orihica_main img {
	height: auto;
}
.container .breadcrumbs {
	padding: 12px;
}
.lead_text p, .orihica_main .flex-tx p, .orihica_main .button a, .orihica_main .topicModuleItem {
	line-height: 2;
	font-size: 14px;
	color: #000;
}
.orihica_main .topicModuleCol2__text {
	color: #000 !important;
}
.orihica_main .topicModuleBanner a:hover, .flex-img img:hover, .mv_style_01:hover, .mv_style_02:hover {
	opacity: .7;
	transition: 0.5s;
}
/* アンカーリンクとび先においてヘッダーが入る高さを考慮した上部の空白
　　※とび先の「id」が入っている箇所に下記classを追加してください*/
.orihica_main .anchorLink-margin {
	margin-top: -35px !important;
	padding-top: 35px !important;
}
/* メインビジュアル */
.orihica_main .mv .mv_img img {
	width: 100%;
	margin: 0 auto;
}
.orihica_main h1 {
	position: relative;
}
.orihica_main .mv_style .mv_style_01 {
	position: absolute;
	right: 31%;
	top: 3%;
}
.orihica_main .mv_style .mv_style_02 {
	position: absolute;
	right: 7%;
	bottom: 0;
}
.orihica_main .mv_style .mv_style_01, .orihica_main .mv_style .mv_style_02 {
	display: flex;
}
.orihica_main .mv_style .right_img_01 {
	width: 22vw;
}
.orihica_main .mv_style .right_img_02 {
	width: 22.8vw;
}
/* リード */
.orihica_main .about {
	line-height: 2.3;
	margin: 0 0 110px;
	padding-top: 40px;
	font-size: 14px;
	text-align: center;
}
.orihica_main .lead_text {
	font-size: 14px;
	text-align: center;
}
/* 見出し */
.orihica_main h1 {
	margin-bottom: 0;
}
.orihica_main h2 {
	line-height: 1.7;
	margin-bottom: 30px;
	padding-bottom: 25px;
	border-bottom: 1px solid #000;
	font-size: 28px;
	font-weight: bold !important;
}
.orihica_main .h2-sub {
	display: block;
	margin: 8px 0 12px;
	font-size: 18px;
	font-weight: normal;
}
.orihica_main .anchor .title01 {
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.num {
	display: block;
	color: #0a83c2;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	font-size: 2vw;
}
.under-line {
	padding: 0 5px;
	background: linear-gradient(transparent 60%, #fffebc 50%);
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.orihica_main .small, small {
	font-weight: bold;
}
.orihica_main h3 {
	line-height: 1.1;
	margin-bottom: 20px;
	font-size: 30px;
	font-weight: bold;
}
/* anchor */
.anchor {
	max-width: 890px;
	margin: 65px auto 0;
}
.orihica_main .title01 {
	margin-bottom: 10px;
	font-size: 20px !important;
	font-weight: bold;
	text-align: center;
}
.orihica_main .anchor ul {
	display: flex;
	margin: auto;
	margin-top: 70px;
}
.orihica_main .anchor ul li {
	display: flex;
	width: calc(100% /4);
	max-height: 195px;
	box-shadow: 4px 4px 0px 0px #78bde1;
	border: 1px solid #000;
	text-align: center;
	transition-duration: 0.3s;
}
.orihica_main .anchor ul li:hover {
	box-shadow: 2px 2px 0px 0px #78bde1;
	background-color: #f1fbfc;
}
.orihica_main .anchor ul li + li {
	margin-left: 30px;
}
.orihica_main .anchor p {
	margin: auto;
	line-height: 1.5;
	font-size: 14px;
	font-weight: bold;
}
.orihica_main .anchor img {
	width: auto;
	max-height: 180px;
}
.orihica_main .anchor a {
	display: grid;
	width: 100%;
	grid-template-rows: 180px 60px;
	margin-top: -60px;
	padding: 0 15px 20px;
	color: #000;
}
/* コンテンツ */
.orihica_main .contents_inner {
	max-width: 900px;
	margin: 0 auto;
}
.orihica_main section {
	margin-bottom: 74px;
}
.flex-box {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 40px;
}
.flex-tx {
	width: 39%;
}
.flex-img {
	width: 58%;
}
.bg {
	padding: 74px 0 20px;
	background-color: #ebeced;
}
.bg .under-line {
	background: linear-gradient(transparent 60%, #fff 50%);
}
/* button*/
.button {
	max-width: 530px;
	margin: 0 auto 5px;
	text-align: center;
}
.button a {
	display: block;
	position: relative;
	margin: 0px auto 60px;
	padding: 18px 23px;
	border: 1px solid #000000;
	background-color: #fff;
	box-shadow: 4px 4px 0px 0 #78bde1;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	transition: 0.5s;
}
.button a:hover {
	background-color: #f1fbfc;
}
.button a:after {
	content: "";
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 20px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #333;
	border-right: 2px solid #333;
	transform: rotate(45deg);
	transition: 0.5s;
}
/* flex-img*/
.flex-img a:hover {
	opacity: .8;
	transition: .2s;
}
.flex-img a {
	display: block;
	position: relative;
}
.flex-img a::after {
	position: absolute;
	right: 10px;
	bottom: 10px;
	z-index: 1;
	width: 50px;
	height: 50px;
	border: 2px solid #fff;
	border-radius: 100px;
	background: rgb(0 0 0 / 20%);
	content: "";
}
.flex-img a::before {
	position: absolute;
	right: 31px;
	bottom: 29px;
	z-index: 2;
	transform: rotate(45deg);
	width: 13px;
	height: 13px;
	border-top: #fff 2px solid;
	border-right: #fff 2px solid;
	content: "";
}
.orihica_main {
	margin-bottom: 100px;
}
/* お役立ちコンテンツ */
.orihica_main #useful_contents ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto 140px;
	max-width: 850px;
}
#useful_contents ul li {
	max-width: 400px;
}
#useful_contents a {
	display: block;
}
/*************************
PC only
*************************/
@media screen and (min-width: 862px) {
	.orihica_main .sp {
		display: none;
	}
	.flex-box .flex-tx p span+span {
		display: block;
		margin-top: 15px;
	}
}
/*************************
tablet only
*************************/
@media screen and (max-width: 1232px) {}
/*************************
SP only
*************************/
@media screen and (max-width: 861px) {
	.orihica_main .pc {
		display: none;
	}
	/* アンカーリンクとび先においてヘッダーが入る高さを考慮した上部の空白 */
	.orihica_main .anchorLink-margin {
		margin-top: -50px !important;
		padding-top: 50px !important;
	}
	.orihica_main #sec01.anchorLink-margin, .orihica_main #sec03.anchorLink-margin {
		margin-top: -120px !important;
		padding-top: 120px !important;
	}
	/* メインビジュアル */
	.orihica_main .mv_style .right {
		width: 44vw;
	}
	.orihica_main .mv_style {
		position: absolute;
		z-index: 1000;
		right: 6.5%;
		top: 16%;
	}
	.lead_text p, .orihica_main .flex-tx p, .orihica_main .button a, .orihica_main .topicModuleItem {
		font-size: 12px;
	}
	/* リード */
	.orihica_main .about {
		margin-bottom: 30vw;
		padding-top: 20px;
	}
	.orihica_main .about .lead_text {
		font-size: 3.2vw;
		text-align: left;
	}
	/* 見出し */
	.orihica_main h2 {
		display: flex;
		margin-bottom: 18px;
		padding: 0px;
		font-size: 6vw;
		border-bottom: none;
	}
	.orihica_main .h2-sub {
		margin: 0;
		font-size: 3.46vw;
	}
	.num {
		position: relative;
		display: inline-block;
		margin-right: 10.2vw;
		font-size: 7.3vw;
		line-height: 1;
	}
	.num::after {
		position: absolute;
		width: 18vw;
		height:1px;
		right: -9.53vw;
		bottom: 7.4vw;
		background:#0a83c2;
		transform:rotate(-55deg);
		content: ""
	}
	/* anchor */
	.anchor {
		margin: 40px auto;
	}
	.orihica_main .title01 {
		font-weight: bold;
		font-size: 16px;
	}
	.orihica_main .anchor ul {
		flex-wrap: wrap;
		margin-top: 65px;
	}
	.orihica_main .anchor ul li {
		width: calc(100% / 2 - 20px);
		max-height: 83.2vw;
	}
	.orihica_main .anchor ul li:nth-child(2n+1) {
		margin-left: 0;
	}
	.orihica_main .anchor ul li + li:nth-child(n+3) {
		margin-top: 65px;
	}
	.orihica_main .anchor p {
		font-size: 3vw;
	}
	.orihica_main .anchor .title01 {
		font-size: 3.8vw;
	}
	.orihica_main .anchor a {
		grid-template-rows: 40vw 13vw;
		margin-top: -60px;
		padding: 0 5px 10px;
	}
	.orihica_main .anchor img {
		max-height: 40vw;
	}
	/* コンテンツ */
	.orihica_main .contents_inner, main .topicModuleBanner {
		padding: 0 16px;
		box-sizing: border-box;
	}
	.orihica_main .contents_inner {
		width: 100%;
	}
	.flex-box {
		flex-wrap: wrap;
		margin-bottom: 5.33vw;
	}
	.flex-box .flex-tx {
		display: contents;
		width: auto;
	}
	.flex-box h2 {
		order: 1;
	}
	.flex-box .flex-img {
		order: 2;
		width: 100%;
	}
	.flex-box p {
		order: 3;
		margin-top: 5.33vw;
	}
	.flex-tx {
		margin-bottom: 15px;
	}
	.button {
		max-width: 340px;
		margin: 0px auto;
	}
	.button a {
		padding: 18px 15px 18px 0px;
	}
	.button a:after {
		right: 13px;
	}
	.flex-img a::after {
		width: 45px;
		height: 45px;
	}
	.flex-img a::before {
		right: 27px;
		bottom: 26px;
		width: 13px;
		height: 13px;
	}
	.orihica_main {
		margin-bottom: 90px;
	}
	/* お役立ちコンテンツ */
	.orihica_main #useful_contents ul li + li {
		margin-top: 5vw;
	}
	/*module*/
	.orihica_main .topicModuleCol4 {
		margin-top: 5.33vw;
		margin-bottom: 5.33vw;
	}
}