@charset "UTF-8";
/*************************
共通
*************************/
body, div, p, form, input, textarea, select, option, button, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, address, button, figure, figcaption {
	font-style: normal;
	margin: 0;
	padding: 0;
	-webkit-tap-highlight-color: transparent;
}
.orihica_main h2,.orihica_main h3,.orihica_main .card_list p,.orihica_main .card_button a,.howtoText {
	color: #000!important;
}
/* PC / SP 表示分け
-----------------------------------------------------------------*/
body .container {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
@media screen and (min-width: 862px) {
	.dn-pc {
		display: none !important;
	}
}
@media screen and (max-width: 861px) {
	.dn-sp {
		display: none !important;
	}
	body {
		margin: 0 !important;
	}
	body .breadcrumbs .isPc {
		display: none !important;
	}
	body .classic_style .isPc {
		display: block !important;
	}
	body .container {
		padding: 0 !important;
	}
}
/* コンテンツ
-----------------------------------------------------------------*/
body img {
	height: auto;
}
.contents {
	margin: 0 auto;
	padding-bottom: 30px;
}
body .container {
	width: auto;
	max-width: inherit;
	height: auto;
}
.breadcrumbsList {
	margin-left: 20px;
}
@media screen and (min-width: 862px) {
	.contents {
		padding-bottom: 100px;
	}
}
/* アンカーリンクマージン
-----------------------------------------------------------------*/
.anchorLink-margin {
	padding-top: 35px !important;
	margin-top: -35px !important;
}
@media screen and (max-width: 861px) {
	.anchorLink-margin {
		padding-top: 50px !important;
		margin-top: -50px !important;
	}
}
/* メインビジュアル
-----------------------------------------------------------------*/
.mainVisual_caption {
	color: #000;
	text-align: center;
	font-weight: bold;
	letter-spacing: .1em;
}
.lead {
	margin: 70px 0 80px;
}
@media screen and (min-width: 862px) {
	.mainVisual_caption {
		letter-spacing: .2em;
		text-align: center;
		font-size: 25px;
	}
}
@media screen and (max-width: 861px) {
	.mainVisual_caption {
		font-size: 4.8vw;
		line-height: 1.6;
	}
	.lead {
		margin: 13.3vw 0 21.3vw;
	}
}
/* アンカー部分
-----------------------------------------------------------------*/
.navList {
	margin: 50px auto 0;
}
.navList_inner {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.navList_node {
	position: relative;
	width: 220px;
	margin: 0 10px;
	background: #f3f4f4;
	border: 3px solid #f3f4f4;
	transition: all .5s;
}
.navList_node:after {
	display: block;
	position: absolute;
	bottom: 50%;
	right: 23px;
	width: 7px;
	height: 7px;
	background-repeat: no-repeat;
	border-top: 2px solid #000000;
	border-right: 2px solid #000000;
	content: "";
	transform: rotate(135deg);
}
.navList_node a {
	display: block;
	height: 100%;
	padding: 19px 54px 19px 20px;
	color: #000;
	font-size: 12px;
	font-weight: bold;
	line-height: 1.8;
	letter-spacing: .1em;
}
.navList_node:hover {
	border: 3px solid #f3f4f4;
	background: #fff;
}
.navList_node_title {
	display: block;
	border-top: 1px solid #000;
	padding-top: 10px;
}
@media screen and (max-width: 861px) {
	.navList {
		margin-top: 2.6vw;
	}
	.navList_inner {
		width: 100%;
	}
	.navList_node {
		width: 41vw;
		max-width: 160px;
		margin: 10px 7px;
		text-align: center;
		line-height: 1.4;
	}
	.navList_node:after {
		bottom: 10px;
		right: 48%;
	}
	.navList_inner .navList_node a {
		padding: 4.53vw 2.6vw 7.19vw;
		line-height: 1.6;
		font-size: 3.2vw;
	}
	.navList_node_title {
		font-size: 11px;
	}
}
/* コンテンツ共通部分
-----------------------------------------------------------------*/
.BG-gray {
	background: #f3f4f4;
	padding: 80px 0 100px;
}
.c-section {
	max-width: 900px;
	margin: 0 auto;
	padding-top: 90px;
}
.BG-gray .c-section {
	padding-top: 0;
}
.orihica_main .card_list {
	width: auto;
}
.orihica_main .card_list a:hover, .orihica_main .useful a:hover {
	opacity: .75;
	transition: .2s;
}
.orihica_main .style-tx, .orihica_main .howtoText {
	line-height: 2;
}
@media screen and (max-width: 861px) {
	.BG-gray {
		padding: 90px 0;
	}
	.c-section {
		width: 90%;
		margin: auto;
		padding-top: 19vw;
	}
	.card_item:nth-of-type(n+3) {
		margin-top: 10px;
	}
	.card_item img:nth-of-type(2n-1) {
		margin-right: 10px;
	}
	#new-bridal .card_item, #GOODS .card_item {
		margin-bottom: 0;
	}
}
/* h2
-----------------------------------------------------------------*/
.c-section_title {
	margin-bottom: 50px;
	text-align: center;
}
.c-section_subTitle {
	display: block;
	margin-top: 20px;
	font-size: 15px;
	text-align: center;
	letter-spacing: .15em;
	font-weight: 500;
}
#STYLE .c-section_subTitle {
	margin-top: 10px;
}
@media screen and (min-width: 862px) {
	#STYLE h2 img {
		width: 253px;
	}
	#STAFF h2 img {
		width: 162px;
	}
	#GOODS h2 img {
		width: 305px;
	}
	#HOW-TO h2 img {
		width: 107px;
	}
}
@media screen and (max-width: 861px) {
	.c-section_title {
		font-size: 4vw;
		margin-bottom: 36px;
	}
	#STYLE h2 img {
		width: 57.8vw;
	}
	#STAFF h2 img {
		width: 37.3vw;
	}
	#GOODS h2 img {
		width: 69.3vw;
	}
	#HOW-TO h2 img {
		width: 25.6vw;
	}
	.c-section_subTitle {
		margin-top: 20px;
	}
}
/* セクション１ STYLE
-----------------------------------------------------------------*/
.picture1 + .picture2, .picture2 + .picture2, .picture2 + .picture1 {
	margin-top: 60px;
}
/*h3*/
#STYLE h3 {
	margin-bottom: 40px;
	font-size: 25px;
	text-align: center;
	letter-spacing: .07em;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
#STYLE .c-section_title:has(+h3) {
	margin-bottom: 30px;
}
#STYLE h3 span {
	background: #000;
	color: #fff;
	margin-right: 3px;
	padding: 3px 0px 1px 3px;
}
.border {
	width: 186px;
	border-top: 1px solid #000;
	margin: 80px auto 70px;
}
@media screen and (max-width: 861px) {
	#STYLE h3 {
		margin-bottom: 10.6vw;
		font-size: 4.4vw;
	}
	.border {
		width: 29.3vw;
		margin: 16vw auto;
	}
}
/*モジュール共通*/
.style-tx, .topicModuleItem, .topicModuleItem__button, .orihica_main .topicModuleCol2__text {
	color: #000 !important;
}
.orihica_main .topicModuleCol1__image, .orihica_main .topicModuleCol2__image {
	display: none;
}
.topicModuleItemBtn {
	color: #fff;
}
.orihica_main .topicModuleItemBtn {
	background-color: #000;
}
.topicModuleItemBtn::after {
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}
.topicModuleCol1__priceList, .topicModuleCol2__text {
	padding-left: 0px;
	padding-right: 0px;
}
.topicModuleItem__button {
	font-size: 13px;
	background: #fff;
}
.orihica_main .topicModuleCol1__priceItem, .orihica_main .topicModuleCol2__price {
	display: block;
	border-top: 1px solid #d0d8d9;
}
/*topicModuleCol1*/
.topicModuleCol1 {
	margin-bottom: 0;
}
.orihica_main .topicModuleCol1__item, .orihica_main .topicModuleCol1__priceItem {
	width: auto;
}
.orihica_main .style-tx {
	margin: 20px 0;
	font-size: 13px;
}
/*topicModuleCol2*/
.orihica_main .topicModuleCol2 {
	margin: 20px 0 0;
}
@media screen and (min-width: 862px) {
	.flex-container {
		display: flex;
		justify-content: space-between;
		margin: auto;
	}
	.flex-inner {
		width: 47.8%;
	}
	.picture2 .flex-inner + .flex-inner {
		margin-top: 35px;
	}
	/*モジュール共通*/
	.orihica_main .topicModuleCol1__priceItem, .orihica_main .topicModuleCol2__price {
		padding-left: 10px;
		padding-right: 10px;
	}
}
@media screen and (max-width: 861px) {
	.BG-gray {
		padding: 21.3vw 0;
	}
	#STYLE .BG-gray {
		padding-bottom: 7.3vw;
	}
	.picture1 + .picture2, .picture2 + .picture2, .picture2 + .picture1, .picture1 .flex-inner + .flex-inner {
		margin-top: 65px;
	}
	.flex-inner + .flex-inner {
		margin-top: 30px;
	}
	.orihica_main .style-tx, .topicModuleCol2__text, .topicModuleCol2__text.topicModuleText--medium {
		font-size: 3.4vw;
	}
	.orihica_main .topicModuleCol2__item {
		margin-bottom: 20px;
	}
}
/* セクション3 STAFF SNAP
-----------------------------------------------------------------*/
#STAFF .c-section {
	padding-bottom: 40px;
}
@media screen and (max-width: 861px) {
	#STAFF .c-section {
		padding-bottom: 25px;
	}
}
/* セクション4 GOODS&ACCESSORIES
-----------------------------------------------------------------*/
.col04 {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	max-width: 900px;
	padding: 0;
}
.col04 .col04_item {
	width: calc(210 / 900 * 100%);
	margin-right: calc(20 / 900 * 100%);
}
.goodsacce .col04 li:nth-of-type(n+4) {
	margin-right: 0 !important;
}
@media screen and (max-width: 861px) {
	.col04 .col04_item {
		width: calc(100%/2 - 1%);
		margin-right: 2%;
	}
	.col04 .col04_item:nth-of-type(2n) {
		margin-right: 0;
	}
	.col04 .col04_item:nth-of-type(n+2) {
		margin-bottom: 2%;
	}
}
/* セクション5 HOW TO
-----------------------------------------------------------------*/
.c-section_howto_inner {
	position: relative;
	margin: 0 auto;
	border: 1px solid #ccc;
}
.howtoTitle {
	display: block;
	position: absolute;
	left: 50%;
	background: #fff;
	font-weight: 600;
	letter-spacing: .2em;
	text-align: center;
	transform: translateX(-50%);
}
.howtoImg {
	text-align: center;
}
.howtoText {
	letter-spacing: .1em;
	text-align: left;
}
@media screen and (min-width: 862px) {
	.c-section_howto_inner {
		width: 780px;
		padding: 45px 50px 35px;
	}
	.c-section_howto_inner + .c-section_howto_inner {
		margin-top: 60px;
	}
	.howtoTitle {
		width: 250px;
		top: -9px;
		font-size: 16px;
	}
	.howtoText {
		margin-top: 25px;
		font-size: 14px;
	}
}
@media screen and (max-width: 861px) {
	.c-section_howto_inner {
		margin: 18.6vw 0 0;
		padding: 6.6vw;
	}
	.c-section_howto_inner + .c-section_howto_inner {
		margin-top: 12vw;
	}
	.howtoTitle {
		width: 200px;
		top: -2.13vw;
		font-size: 3.73vw;
	}
	.howtoText {
		margin-top: 5.33vw;
		font-size: 3.73vw;
	}
}
/* セクション6 GOODS&ACCESSORIES
-----------------------------------------------------------------*/
/* お役立ちコンテンツ
-----------------------------------------------------------------*/
.useful {
	max-width: 1120px;
	flex-wrap: wrap;
	justify-content: space-between;
}
.topicModuleCol3 {
	max-width: 850px;
}
.useful {
	margin: 120px auto;
}
.useful h2 {
	margin-bottom: 40px;
	font-size: 22px;
	font-weight: bold;
	text-align: center;
}
@media screen and (min-width: 862px) {
	.topicModuleCol3__item {
		width: 400px !important;
	}
}
@media screen and (max-width: 861px) {
	.topicModuleCol3 {
		width: 90%;
		margin: auto;
	}
	.useful {
		margin: 24vw auto;
	}
	.useful h2 {
		font-size: 4.8vw;
		margin-bottom: 6vw;
		line-height: 1.6;
	}
	.useful .topicModuleCol3__item:nth-child(n+2) {
		margin-top: 8vw;
	}
}
/* バナー
-----------------------------------------------------------------*/
.topicModuleBanner {
	width: 90%;
	margin: auto;
}