@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;}
.orihica_main .card_list {width: 100%;}
.orihica_main .card_list p{line-height: 1;font-size: 11px;}
/* --------▲　MT調整　▲-------- */

:root {
  --main-color: #094c9e;
}
main .container {
  width: auto;
  max-width: inherit;
  height: auto;
  padding: 0;
}
body .orihica_main img {
  max-width: 100%;
  height: auto;
}
.container .breadcrumbs {
	padding: 12px;
}
.orihica_main p, .orihica_main ul {
	font-size: 14px;
	line-height: 2;
	color: #333;
}
.orihica_main .topicModuleCol2__text {
	color: #333 !important;
}
.orihica_main .topicModuleBanner a:hover,.orihica_main .button a:hover,.orihica_main .bnr a:hover,.anchorLink_typeA a:hover {
	opacity: .7;
	transition: .2s;
}
.orihica_main .bold-tx {
	font-weight: bold;
}
.orihica_main .note {
	font-size: 12px;
}
/* アンカーリンクとび先においてヘッダーが入る高さを考慮した上部の空白
　　※とび先の「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 .about {
	margin: 0 0 50px;
	padding-top: 40px;
	font-size: 14px;
	text-align: center;
	line-height: 2.3;
}
.orihica_main .lead_text {
	font-size: 14px;
	text-align: center;
}

/* テキストアンカーリンク01（anchorLink_typeA）*/
.anchorLink_typeA {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	max-width: 850px;
	margin: 0 auto;
	font-size: 18px;
}
.anchorLink_typeA li {
	display: flex;
	align-items: stretch;
	width: calc(100% / 3 - 3%);
	text-align: center;
}
.anchorLink_typeA li + li {
	margin-left: 4%;
}
.anchorLink_typeA li a,.button a{
	display: grid;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 100%;
	padding: 15px 30px 15px 10px;
	background-color: var(--main-color);
	color: #fff;
	line-height: 1.5;
}
.button a {
	padding: 25px 30px 25px 10px;
	font-size: 16px;
}
.anchorLink_typeA li a::after,.button a::after {
	position: absolute;
	transform: rotate(135deg);
	top: 0;
	right: 20px;
	bottom: 0;
	width: 9px;
	height: 9px;
	margin: auto;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	content: "";
}
.button a::after {
	transform: rotate(45deg);
}
.anchorLink_typeA li a:hover.button a:hover {
	opacity: 0.8;
	transition: all 500ms;
}
.btn02 a {
	background-color: #2c97da;
}
.anchorLink_typeA span {
	font-size: 14px;
}

/* 見出し */
.orihica_main h1 {
	margin-bottom: 0;
}
.orihica_main h2 {
	margin-bottom: 15px;
	color: var(--main-color);
	font-weight: bold;
	font-size: 20px;
	line-height: 1.1;
}
.orihica_main #sec02 h2 {
	margin-top: 80px;
}
.orihica_main #sec01 h3 {
	position: relative;
	margin-bottom: 30px;
	color: var(--main-color);
	font-weight: bold;
	font-size: 30px;
	line-height: 1.5;
	text-align: center;
}
.orihica_main #sec01 h3::before,.orihica_main #sec01 h3::after {
	content: '';
	width: 15px;
	height: 100%;
	position: absolute;
}
.orihica_main #sec01 h3::before {
	border-left: solid 2px var(--main-color);
	border-top: solid 2px var(--main-color);
	border-bottom: solid 2px var(--main-color);
	top: 0;
	left: 0;
}
.orihica_main #sec01 h3::after {
	border-right: solid 2px var(--main-color);
	border-top: solid 2px var(--main-color);
	border-bottom: solid 2px var(--main-color);
	top: 0;
	right: 0;
}
.orihica_main #sec01 h3 span {
	font-size: 20px;
}
.orihica_main #sec02 h3 {
	font-size: 20px;
	font-weight: bold;
	line-height: 1.7;
}

/* コンテンツ */
.orihica_main {
	margin-bottom: 90px;
}
.orihica_main .contents_inner {
	max-width: 1120px;
	margin: 0 auto;
}
.orihica_main .contents_inner.w900 {
	max-width: 900px;
	margin: 0 auto;
}
.orihica_main .bg {
	padding: 50px 0 80px;
	background-color: #ebedf8;
}
.orihica_main #sec03 .bg {
	padding-top: 80px;
}
.orihica_main #sec02 {
	margin-bottom: 80px;
}
.orihica_main .bnr {
	max-width: 450px;
	margin: 40px auto 0;
}

/* Features */
.Features-container {
	padding: 40px;
	background-color: #fff;
	border-radius: 20px;
}
.Features-inner {
	display: flex;
	justify-content: space-between;
	max-width: 820px;
	margin: auto;
	align-items: center;
}
.Features-inner .flex-inner{
	width: 54%;
}
.Features-inner .Features-img{
	width: 41%;
}
.Features-inner+.Features-inner {
	margin-top: 60px;
}
.Features-inner+.Features-inner .flex-inner{
	order: -1;
}
.Features-tx+.Features-tx{
	margin-top: 8px;
}

/*Variation*/
.Variation-inner+.Variation-inner {
	position: relative;
	margin-top: 140px;
}
.Variation-inner+.Variation-inner::before {
	position: absolute;
	top: -70px;
	left: 50%;
	transform: translateX(-50%);
	width: 270px;
	height: 1px;
	background: #333;
	content: "";
}
.style-img {
	position: relative;
}
.orihica_main .num {
	position: absolute;
	z-index: 1000;
	top: 17px;
	left: 17px;
	color: var(--main-color);
	font-size: 20px;
	font-weight: bold;
	line-height: 1
}
.orihica_main .num::after {
	position: absolute;
	top: 30px;
	left: 3px;
	width: 1px;
	height: 130px;
	background: var(--main-color);
	content: "";
}
/* 画像リンク */
.style-img a:hover {
	opacity: .7;
	transition: .2s;
}
.style-img a {
	display: block;
	position: relative;
}
.style-img a::after {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 1;
	background: var(--main-color);
	width: 50px;
	height: 50px;
	clip-path: polygon(0 100%, 100% 0, 100% 100%);
}
.style-img a::before {
	content: "";
	position: absolute;
	right: 12px;
	bottom: 10px;
	width: 8px;
	height: 8px;
	z-index: 2;
	transform: rotate(45deg);
	border-top: #fff 2px solid;
	border-right: #fff 2px solid;
}

/*************************
PC only
*************************/
@media screen and (min-width: 862px) {
	.orihica_main .sp {
		display: none;
	}
	.orihica_main .mv {
		position: relative;
		text-align: center;
	}
	.orihica_main .lead_text {
	position: absolute;
	bottom: 3vw;
	left: 50%;
	transform: translateX(-50%);
	}
	
	/* テキストアンカーリンク01（anchorLink_typeA）*/
	.anchorLink_typeA li:nth-child(n+5) {
		margin-top: 13px;
	}
	.anchorLink_typeA li:nth-child(5n) {
		margin-left: 0;
	}
	.button-area {
		display: flex;
	}
	.button {
		width: 100%;
	}
	.button+.button {
		margin-left: 20px;
	}
	
	/*コンテンツ*/
	.Variation-inner {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.Variation-inner .flex-inner {
		display: grid;
		width: 48%;
		height: fit-content;
	}
	.Variation-container .SPflex{
		display: contents;
	}
	.Variation-container .material-img {
		max-width: 178px;
		order: 1;
	}
	.Variation-container h3{
		margin-top: 50px;
		order: 2;
	}
	.Variation-container .Variation-tx{
		margin-top: 8px;
		order: 3;
	}
	.Variation-container .button-area{
		margin-top: 40px;
		order: 4;
	}
}


/*************************
tablet only
*************************/
@media screen and (min-width: 862px) and (max-width: 1500px) {
	.orihica_main .lead_text {
		font-size: 0.9vw
	}
}
@media screen and (min-width: 862px) and (max-width: 1232px) {
	  body .container{
      padding: 0;
   }
	.orihica_main .contents_inner, main .topicModuleBanner {
		padding: 0 16px;
		box-sizing: border-box;
	}
}


/*************************
SP only
*************************/
@media screen and (max-width: 861px) {
	.orihica_main .pc {
		display: none;
	}
	.orihica_main p, .orihica_main ul {
		font-size: 2.86vw;
	}
	.orihica_main .note {
	font-size: 2.66vw;
}
	/* アンカーリンクとび先においてヘッダーが入る高さを考慮した上部の空白 */
	.orihica_main .anchorLink-margin {
		margin-top: -50px !important;
		padding-top: 50px !important;
	}
	
	/* リード */
	.orihica_main .about {
		padding-top: 4vw;
		margin-bottom: 15vw;
	}
	.orihica_main .lead_text {
		margin-top: 2vw;
		font-size: 2.94vw;
	}
	/* テキストアンカーリンク01（anchorLink_typeA）*/
	.anchorLink_typeA {
		width: 100%;
		justify-content: left;
		font-size: 3.2vw;
	}
	.anchorLink_typeA li {
		width: calc(100% / 3 - 2%);
	}
	.anchorLink_typeA li + li {
		margin-left: 2%;
	}
	.anchorLink_typeA li a {
		width: 100%;
		padding: 4vw 1vw 7vw 1vw;
		line-height: 1.5;
	}
	.anchorLink_typeA li a::after {
		top: auto;
		bottom: 3vw;
		right: 47%;
		width: 2vw;
		height: 2vw;
		
	}
	.anchorLink_typeA span {
		font-size: 2.94vw;
	}
	
	/* 見出し */
	.orihica_main h2 {
		font-size: 4.27vw;
	}
	.orihica_main #sec02 h2 {
		margin-top: 15vw;
	}
	.orihica_main #sec01 h3 {
		margin-bottom: 15px;
		font-size: 6.4vw;
		line-height: 1.3;
	}
	.orihica_main #sec01 h3 span {
		font-size: 4.27vw;
	}
	.orihica_main #sec02 h3 {
		margin: 3vw 0 1vw;
		font-size: 3.5vw;
}
	
	/* コンテンツ */
	.orihica_main .contents_inner, main .topicModuleBanner {
		padding: 0 16px;
		box-sizing: border-box;
	}
	.orihica_main .contents_inner {
		width: 100%;
	}
	.orihica_main .bg {
		padding: 12vw 0 15vw;
	}
	.orihica_main #sec03 .bg {
		padding: 14vw 0;
	}
	.orihica_main #sec02 {
	margin-bottom: 15vw;
}
	/* Features */
	.Features-container {
		padding: 9vw 20px 6vw;
	}
	.Features-inner {;
		flex-wrap: wrap;
	}
	.Features-inner .flex-inner{
		display: contents;
	}
	#sec01 .Features-inner h3 {
		width: 100%;
		order: 1;
		margin-bottom: 10px;
		font-size: 6.4vw;
	}
	.orihica_main #sec01 h3::before,.orihica_main h3::after {
		border-top: solid 1px var(--main-color);
    border-bottom: solid 1px var(--main-color);
	}
	.orihica_main #sec01 h3::before{
		border-left: solid 1px var(--main-color);
	}
	.orihica_main #sec01 h3::after{
		border-right: solid 1px var(--main-color);
	}
	.orihica_main .bnr {
		margin: 7vw auto 0;
	}	
	.Features-inner .Features-img {
		order: 2;
		width: 100%;
	}
	.Features-inner .Features-tx {
		order: 3;
		margin-top: 15px;
	}
	.Features-inner+.Features-inner {
		margin-top: 8vw;
	}
	
	/*Variation*/
		.Variation-inner+.Variation-inner {
		margin-top: 22vw;
	}
	.Variation-inner+.Variation-inner::before {
		top: -11vw;
		width: 48vw;
	}
	.orihica_main .num {
		top: 3vw;
		left: 3vw;
		font-size: 16px;
	}
	.orihica_main .num::after {
		top: 7vw;
		left: 1vw;
		height: 100px;
	}
	.style-img a::after {
		width: 40px;
		height: 40px;
	}
	.style-img a::before {
		right: 10px;
		bottom: 8px;
		width: 7px;
		height: 7px;
	}
	.SPflex {
		display: flex;
		justify-content: space-between;
		margin-top: 3vw
	}
	.material-img {
		width: 37.6vw;
	}
	.button-area {
		width: 50vw;
	}
	.button+.button {
		margin-top: 3.6vw;
	}
	.button a {
		height: 17vw;
		padding: 0px;
		padding-right: 22px;
		font-size: 3.46vw;
	}
	.button a::after {
		right: 12px;
		width: 8px;
		height: 8px;
	}
}