@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のみ崩れる箇所の対策　▲-------- */

body .orihica_main source {
    height: auto;
    display: block;
}
main .container {
	width: auto;
	max-width: inherit;
	height: auto;
	padding-bottom: 90px;
	background-color: #171717;
}
.footer {
	margin-top: 0;
}
body .orihica_main img {
	height: auto;
}
.container .breadcrumbs {
	padding: 12px;
}
.container .breadcrumbsList__item, .container .breadcrumbsList__link {
	color: #fff !important;
}
.orihica_main p, .orihica_main h2, .orihica_main h3, .scrolldown {
	line-height: 2;
	color: #d4b45c;
	font-family: serif;
	letter-spacing: .1rem;
	font-weight: bold;
}
.orihica_main a {
	font-family: serif;
	font-weight: bold;
}
.orihica_main .topicModuleBanner a:hover {
	opacity: .7;
}
.orihica_main section {
	height: inherit;
}
/* アンカーリンクとび先においてヘッダーが入る高さを考慮した上部の空白
　　※とび先の「id」が入っている箇所に下記classを追加してください*/
.orihica_main .anchorLink-margin {
	margin-top: -100px !important;
	padding-top: 100px !important;
}
/* about リード */
.orihica_main .about {
	margin: 0 0 150px;
	padding-top: 53px;
	font-size: 14px;
	text-align: center;
}
.orihica_main .lead_text {
	font-size: 16px;
	text-align: center;
	line-height: 2.3;
}
.lead_text + img, .sp-full, .sp-full + .lead_text {
	margin-top: 60px;
}
.caption {
	max-width: 900px;
	margin: 10px auto 0;
	font-size: 13px;
	text-align: right;
}
/* 見出し */
.orihica_main h1 {
	margin-bottom: 0;
}
.orihica_main h2 {
	line-height: 1.1;
	margin-bottom: 35px;
	color: #d4b45c;
	font-size: 35px;
	font-weight: bold;
	text-align: center;
}
h2 span {
	position: relative;
	padding: 0px 43px;
}
h2 span::before, h2 span::after {
	position: absolute;
	content: "●";
	top: 44%;
	font-size: 7px;
}
h2 span::before {
	left: 20px;
}
h2 span::after {
	right: 20px;
}
.orihica_main h3 {
	line-height: 1.1;
	margin-bottom: 20px;
	color: #d4b45c;
	font-size: 27px;
	font-weight: bold;
}
/* メインビジュアル */
.kv-wrapper {
	position: relative;
}
.kv-entxt {
	position: absolute;
	bottom: 5.5vw;
	left: 7vw;
	width: 23.5vw;
	text-align: center;
	z-index: 1;
}
.kv-wrapper::before {
	position: absolute;
	content: "";
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(117, 117, 117, 0.7);
	mix-blend-mode: multiply;
	z-index: 1;
}
.border {
	width: 170px;
	border-top: 1px solid #d4b45c;
	margin: 2.3vw auto;
}
/*フェードアップ*/
.fadeInUp {
	opacity: 0;
	transition: 2s;
}
/*フェードイン*/
.orihica_main, .kv-entxt {
	-webkit-animation: fadeIn 3s ease 0s 1 normal;
	animation: fadeIn 3s ease 0s 1 normal;
}
@keyframes fadeIn {
	0% {opacity: 0;}
	100% {opacity: 1;}
}
@-webkit-keyframes fadeIn {
	0% {opacity: 0;}
	100% {opacity: 1;}
}
/*ノーマルボタン*/
.button_typeA {
	margin: 2.5vw auto 0;
}
.button_typeA a {
	position: relative;
	display: block;
	padding: 10px 10px 10px 0px;
	border-radius: 3px;
	text-align: center;
	font-size: 15px;
	color: #000;
	background-color: #d4b45c;
	box-shadow: 6px 6px 6px rgba(0, 0, 0, 0.4);
	font-weight: bold;
	transition: 0.3s;
}
.button_typeA a::after {
	content: "";
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 25px;
	width: 8px;
	height: 8px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	transform: rotate(135deg);
}
.button_typeA a:hover {
	background-color: #e8d49d;
}
.button_typeB a::after {
	transform: rotate(45deg);
}
.button_CV {
	max-width: 500px;
	margin: 100px auto;
	text-align: center;
}
.button_typeC a {
	display: inline-block;
	position: relative;
	color: #d4b45c !important;
	font-size: 15px;
}
.button_typeC a::after {
	position: absolute;
	content: '';
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #d4b45c;
	transition: all .3s ease 0s;
}
.button_typeC a:hover::after {
	width: 0;
}
/* コンテンツ */
.orihica_main .contents_inner {
	max-width: 1000px;
	margin: 0 auto;
}
.col2-img {
	max-width: 950px;
}
.col2-text {
	width: 30%;
}
.col2-img + .col2-text {
	margin-left: 20px;
}
.col2-text + .col2-img {
	margin-right: 20px;
}
.LINEUP-tx {
	padding-top: 30px;
	font-size: 15px;
	border-top: 1px solid #d4b45c;
}
.LINEUP-tx span + span {
	display: block;
	margin-top: 20px;
}
.flex-container + .even, .even + .flex-container {
	margin-top: 80px;
}
/*スクロールアニメーション PC/SP　*/
.orihica_main .scrolldown {
	position: absolute;
	right: 20px;
	bottom: 15px;
	height: 50px;
	z-index: 1;
}
.orihica_main .scrolldown span {
	position: absolute;
	transform: rotate(-90deg);
	left: -24px;
	top: -42px;
}
.orihica_main .scrolldown::after {
	content: "";
	position: absolute;
	top: 0;
	right: 3px;
	width: 1px;
	height: 30px;
	background: #d4b45c;
	animation: pathmovePC 1.4s ease-in-out infinite;
}
@keyframes pathmovePC {
	0% {
		height: 0;
		top: 0;
		opacity: 0;
	}
	30% {
		height: 30px;
		opacity: 1;
	}
	100% {
		height: 0;
		top: 50px;
		opacity: 0;
	}
}
/*************************
PC only
*************************/
@media screen and (min-width: 862px) {
	.orihica_main .sp {
		display: none;
	}
	.flex-container {
		display: flex;
		max-width: 1500px;
		justify-content: space-between;
		align-items: center;
	}
	.even {
		display: flex;
		justify-content: flex-end;
	}
	.even .col2-text {
		order: 1
	}
	.even .col2-img {
		order: 2
	}
	/*　レスポンシブ余白対策　*/
	.flex-container, .even .col2-img + .col2-text {
		margin-right: 20px;
	}
	.even .flex-container {
		margin-right: 0;
	}
}
/*************************
tablet only
*************************/
@media screen and (min-width: 862px) and (max-width: 1232px) {
	body .container {
		padding: 0 0 60px;
	}
	.kv-entxt {
		width: 26vw;
		bottom: 7vw;
		left: 5vw;
	}
	.col2-img {
		width: 60%
	}
	.flex-container {
		width: 95%;
	}
	.col2-text {
		width: 36%;
	}
	.button_typeA a, .button_typeC a, .LINEUP-tx, .orihica_main .lead_text {
		font-size: 1.5vw;
		line-height: 1.8;
	}
}
@media screen and (min-width: 500px) and (max-width: 862px) {
	.button_typeA a, .button_typeC a, .LINEUP-tx, .orihica_main .lead_text {
		font-size: 2.8vw !important;
	}
	.caption {
		font-size: 2.3vw !important;
	}
	.kv-entxt {
		left: 21vw !important;
		bottom: 3vw !important;
		width: 55vw !important;
	}
	.slider li {
		height: 80vw;
	}
	.slider li img {
		margin: auto
	}
}
/*************************
SP only
*************************/
@media screen and (max-width: 861px) {
	.orihica_main .pc {
		display: none;
	}
	body .container {
		padding: 0 0 60px;
	}
	.breadcrumbs {
		margin-top: 0;
	}
	/* アンカーリンクとび先においてヘッダーが入る高さを考慮した上部の空白 */
	.orihica_main .anchorLink-margin {
		margin-top: -70px !important;
		padding-top: 70px !important;
	}
	/* リード */
	.orihica_main .about {
		margin-bottom: 15vw;
		padding-top: 6vw;
	}
	.orihica_main .scrolldown::after {
		height: 7vw;
		animation: pathmoveSP 1.4s ease-in-out infinite;
	}
	.button_typeA a, .LINEUP-tx, .orihica_main .lead_text {
		font-size: 3vw;
		line-height: 1.8;
	}
	.lead_text + img, .sp-full, .sp-full + .lead_text {
		margin-top: 6vw;
	}
	.lead_text span + span {
		display: block;
		margin-top: 4vw;
	}
	.founder, .caption {
		width: 80%;
		margin: auto;
		font-size: 3vw;
	}
	/* メインビジュアル */
	.kv-entxt {
		bottom: 15vw;
		left: 0;
		width: 100%;
		padding: 16px;
	}
	.orihica_main h1 img {
		max-width: 85%;
	}
	.kv-entxt img {
		max-width: 68%;
	}
	.border {
		margin: 3.8vw auto;
	}
	/* 見出し */
	.orihica_main h2 {
		margin-bottom: 15px;
		font-size: 5.4vw;
	}
	h2 span {
		padding: 18px 40px 17px;
	}
	h2 span::before, h2 span::after {
		top: 46%;
		font-size: 5px;
	}
	.orihica_main h3 {
		font-size: 5.4vw;
		margin-bottom: 4vw;
	}
	/* コンテンツ */
	.orihica_main .contents_inner, main .topicModuleBanner, #LINEUP {
		padding: 0 16px;
		box-sizing: border-box;
	}
	.orihica_main .contents_inner {
		width: 100%;
	}
	.col2-img, .sp-full {
		margin-left: -16px;
		margin-right: -16px;
	}
	.col2-img, .col2-text {
		width: auto;
	}
	.col2-img + .col2-text {
		margin: 6vw 0 0;
	}
	.LINEUP-tx {
		padding-top: 4vw;
	}
	.LINEUP-tx span + span {
		margin-top: 10px;
	}
	.button_typeA {
		max-width: 75%;
		margin-top: 7.5vw;
	}
	.button_typeA a {
		padding: 10px 10px 10px 0px;
	}
	.button_typeA a::after {
		right: 13px;
		border-top: 1px solid #000;
		border-right: 1px solid #000;
	}
	.button_typeB {
		margin-top: 4vw;
	}
	.button_CV {
		margin: 12vw auto 0;
	}
	.flex-container + .even, .even + .flex-container {
		margin-top: 17vw;
	}
}