@charset "UTF-8";

/* ----------logo screen---------- */
#logo-screen.logo-bgcolor
{
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	background-color: #ABABAB;
	z-index: 99998;
}

.icharoi-brandlogo
{
	display: none;
	position: absolute;
	bottom: 50%;
	right: 50%;
	-webkit-transform: translate(50%, 50%);
	transform: translate(50%, 50%);
	z-index: 99999;
}

.icharoi-brandlogo > img
{
	width: 170px;
}

@media screen and (min-width: 768px) and (max-width: 1040px)
{
	.icharoi-brandlogo > img
	{
		width: 160px;
	}
}

@media screen and (max-width: 767px)
{
	.icharoi-brandlogo > img
	{
		width: 110px;
	}
}

/* ----------logo screen---------- */


.mv,
.concept
{
	margin-bottom: 5px;
	text-align: center;
}

.mv img,
.concept img
{
	width: 100%
}


/* .news ------------------------------------------------------*/

/* 2020/4のリニューアルにより別箇所で定義*/
/*.news {
	margin-top: 5px;
}

.news li {
	border-bottom:#e6e6e6 1px solid;
	background:url(../library/img/arrow_gray.png) no-repeat 96% 50%;
  background-size: 7px 10px;
	line-height: 1.6;
}

.news a {
  display: block;
  font-size: 12px;
  padding: 12px 0 12px 24px;
  width: 82%;
}*/

/* .topHeading ------------------------------------------------------*/
.topHeading
{
	display: flex;
}

.topHeading .logo
{
	background-color: #df1a63;
	width: 64rem;
	height: 64rem;

	background-image: url('/img/common/logo_icharoi_wh.svg');
	background-repeat: no-repeat;
	background-position: center;
}

.topHeading .logo span
{
	display: none;
}

/* .carousel ------------------------------------------------------*/
.carousel
{
	position: relative;
}

.carousel .slick-slider
{
	margin-bottom: 0;
}

.carousel img
{
	width: 100%;
}

.carousel .slide-dots
{
	display: flex;
	justify-content: center;
	text-align: center;
	height: 2.6rem;
	margin-bottom: -2.6rem;
}

.carousel .slide-dots button
{
	cursor: pointer;
	font-size: 0;
	width: 0.35rem;
	height: 0.35rem;
	margin-left: 1rem;
	margin-right: 1rem;
	outline: none;
	background: transparent;
	text-indent: -9999px;
	border: #595959 solid 0.35rem;
	border-radius: 0.25rem;

	transition: border-color .5s;
}

.carousel .slide-dots li.slick-active button
{
	border-color: #de2366;
}

.carousel .slick-prev, .carousel .slick-next
{
	display: none !important;
}

.carousel div.viewMore
{
	position: absolute;
	right: 1rem;
	bottom: 4rem;
	font-size: 1.2rem;
	font-weight: normal;
	cursor: pointer;
	pointer-events: none;
}

.carousel div.viewMore div.rightArrow
{
	right: 0.5rem;
}

/*.carousel .test
{
	text-align: center;
	height: 2.6rem;
	margin-bottom: -2.6rem;
}*/

/* .content (common style)------------------------------------------------------*/
.content
{
	font-family: "Noto Sans JP", "Noto Sans CJK JP", "Avenir Next", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	/*font-family: "Noto Sans JP", "Avenir Next", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
	/*font-family: "Noto Sans", "Noto Sans CJK JP", sans-serif;*/
	text-align: center;
}

.content h1
{
	font-size: 3.5rem;
	color: #de2366;
	font-family: "Avenir Next", Verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, Osaka, sans-serif;
	font-weight: normal;
	line-height: 1.25em;
}

.content h1 > div
{
	font-size: 1.4rem;
	padding-top: 1rem;
	font-family: "Noto Sans JP", "Noto Sans CJK JP", "Avenir Next", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1em;
}

.content h2
{
	font-size: 2.4rem;
}

.content h2 > div
{
	font-size: 1.1rem;
	padding-top: 1rem;
	color: #de2366;
	font-family: "Noto Sans JP", "Noto Sans CJK JP", "Avenir Next", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	/*font-family: "Noto Sans", "Noto Sans CJK JP", sans-serif;*/
}

/* .bijouBouquet ------------------------------------------------------*/
.bijouBouquet
{
	padding-top: 6.4rem;
	background-image: url('../img/top/bg_bijoubouquet.jpg');
	background-repeat: no-repeat;
	background-size: 100% auto;
}

.bijouBouquet h1
{
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

.bijouBouquet .text
{
	padding: 0;
}

.bijouBouquet p:nth-child(1)
{
	margin-top: 4rem;
	font-size: 2rem;
	line-height: 1.625em;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

.bijouBouquet p:nth-child(2)
{
	margin-top: 4rem;
}

.bijouBouquet p:nth-child(3)
{
	margin-top: 3rem;
}

.bijouBouquet p:nth-child(4)
{
	margin-top: 3rem;
}

.bijouBouquet p:nth-child(n+2)
{
	font-size: 1.3rem;
	line-height: 2.7rem;
}

/* .collection ------------------------------------------------------*/
.collection
{
	padding-top: 7rem;
	margin-bottom: 10rem;
}

.collection h2
{
	margin-top: 7rem;
	font-weight: normal;
	font-family: "Avenir Next", Verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, Osaka, sans-serif;
}

/* .collection .tour ------------------------------------------------------*/
.collection .tour:nth-child(n+3)
{
	margin-top: 10rem;
}

.collection .tour ul
{
	/*text-align: center;*/
}

.collection .tour .text
{
	line-height: 2rem;
	padding-top: 2rem;
	padding-bottom: 3rem;
}

.collection .tour .link
{
	margin: 3rem auto 6rem auto;
}

.collection .tour.engagement p
{
	line-height: 2em;
}

.collection .tour.marriage p, .collection .tour.eternity p
{
	font-size: 1.4rem;
	line-height: 1.9em;
}

/* .enjoy ------------------------------------------------------*/
.enjoy h1 div
{
	padding-top: 2rem;
}

.enjoy ul
{
	margin-top: 7rem;
}

.enjoy li
{
	/*padding: 0.5em 1em 0.5em 1em;*/
	/*padding-left: 9.5rem;
	border:solid #ededed;
	border-width:2.7rem 6rem 0 0;*/
	position: relative;
}

.enjoy li:nth-child(n+2)
{
	margin-top: 6rem;
}

.enjoy li:before
{
	content: "";
	display: block;
	position: absolute;
	top: -2rem;
	z-index: -100;
	width: 29rem;
	height: 27.5rem;
	background-color: #ededed;
}

.enjoy li:nth-child(odd):before
{
	right: calc(0%);
}

.enjoy li:nth-child(even):before
{
	left: 0;
}

.enjoy li dl
{
	width: 31.5rem;
	height: 9rem;
	display: flex;
	flex-flow: column;
	justify-content: center;
	text-align: left;
	padding-left: 6rem;
	font-size: 1.6rem;
	line-height: 1.5em;
}

.enjoy li dl:before
{
	content: "";
	background-color: #fff;
	width: 31.5rem;
	height: 9rem;
	position: absolute;
	top: 0;
}

.enjoy li:nth-child(odd) dl:before
{
	left: 0;
}

.enjoy li:nth-child(even) dl
{
	margin-left: auto;
	margin-right: 0;
}

.enjoy li:nth-child(even) dl:before
{
	right: 0;
}

dt, dd
{
	z-index: 1;
}

.enjoy img
{
	width: 29rem;
	height: 23rem;
	margin-top: -3.5rem;
}

/* .ourService ------------------------------------------------------*/
.ourService
{
	margin-top: 10rem;
}

.ourService h1
{
	margin-bottom: 6rem;
}


.ourService ul
{
	/*margin-top: 6rem;*/
}

.ourService li
{
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-color: #d6d6d6;
	padding-top: 1rem;
	padding-bottom: 1rem;
}

.ourService li.concept
{
	background-image: url('../img/top/bnr_service_01.jpg');
	margin-bottom: 0;
}

.ourService li.craftmanship
{
	background-image: url('../img/top/bnr_service_02.jpg');
}

.ourService li.diamond
{
	background-image: url('../img/top/bnr_service_03.jpg');
}

.ourService li.maintenance
{
	background-image: url('../img/top/bnr_service_04.jpg');
}

.ourService li.hospitality
{
	background-image: url('../img/top/bnr_service_05.jpg');
}

.ourService li div.wrap
{
	/*position: relative;*/
}

.ourService li div.box
{
	height: 21.5rem;
	border: #fff solid 0.1rem;
	margin: 0.9rem 1.65rem 0.9rem 1.65rem;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}

.ourService li div.text
{
	padding: 0;
	margin: auto auto 1rem 1rem;
	font-size: 1.3rem;
	text-align: left;

	font-family: "Avenir Next", Verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, Osaka, sans-serif;
}

.ourService li div.text > a > div
{
	padding: 0;
	color: #de2366;
	font-size: 1rem;
}

.ourService li div.viewMore
{
	margin-bottom: 2rem;
	font-family: "Avenir Next", Verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, Osaka, sans-serif;
}

/* .contact ******************************************************/
.content.contact
{
	background-color: #ededed;
}

.content.contact img
{
	width: 90%;
}

/* .shop ------------------------------------------------------*/
.content.shop
{
	margin-top: 6rem;
}

.content.shop h1 div
{
	margin-top: 1rem;
}

.content.shop img
{
	margin-top: 6rem;
}

.content.shop p
{
	margin-top: 2rem;
	line-height: 1.9em;
	margin-bottom: 2rem;
}

.content.shop div.link
{
	margin: 0 auto 2rem auto;
}

/* .contact ******************************************************/
.content.contact
{
	margin-top: 5.5rem;
	padding-top: 3rem;
	padding-bottom: 6rem;
}

.content.contact h1
{
	margin-bottom: 6rem;
}

.content.contact p
{
	margin-top: 3rem;
	margin-bottom: 3rem;
	line-height: 1.9em;
}

.content.contact div.link
{
	margin: auto;
}

/* news ******************************************************/
.content.news
{
	padding-top: 3rem;
	margin-bottom: 10rem;
}

.content.news ul
{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: center;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
	margin-top: 6rem;
	margin-bottom: 4rem;
}

.content.news ul li
{
	margin-bottom: 2rem;
	display: flex;
	flex-flow: column;
	text-align: left;
	width: 44%;
}

.content.news ul li img
{
	width: 100%;
}

.content.news ul li time
{
	display: block;
	margin-top: 0.8rem;
	font-size: 1.3rem;
}

.content.news ul li h2
{
	margin-top: 0.5rem;
	font-size: 1.3rem;
	font-weight: normal;
	line-height: 1.5em;
}

.content.news ul li a
{
	padding: 0;
}

.content.news ul li .readMore
{
	letter-spacing: 0.1rem;
	text-align: right;
	margin-top: 1rem;
}

/* onlineConsultation ******************************************************/
.content.onlineConsultation ul li .link
{
	width: 100%;
	height: auto;
}

.content.onlineConsultation ul li:not(:last-child) .link
{
	border-bottom: none;
}

.content.onlineConsultation ul li a
{
	padding: 1rem;
	background: #ebebeb;
	line-height: 1.4;
}

/* common style */
div.link
{
	border: #dedede solid 0.1rem;
	background-color: #fff;
	width: 22rem;
	height: 5.2rem;
	font-size: 1.3rem;
	margin-left: auto;
	margin-right: auto;
}

div.link a
{
	width: 100%;
	height: 100%;
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
	position: relative;
	font-family: "Noto Sans JP", "Noto Sans CJK JP", "Avenir Next", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	/*font-family: "Noto Sans", "Noto Sans CJK JP", sans-serif;*/
	line-height: 1.3em;
}

div.link .rightArrow
{
	right: 1rem;
}



/*div.link .arrow
{
	position: absolute;
	right: 1rem;
	top:1.6rem;
}

.arrow.right
{
	width: 1.27rem;
	height:1.27rem;
	border-top:solid 1px;
	border-right:solid 1px;
	border-color: #595959;
}

.arrow.right:after
{
	transform: rotate(45deg) translateY(-50%);
}*/


/* スマホサイト */
@media screen and (max-width: 599px)
{

}

/* PCサイト */
@media screen and (min-width: 600px)
{


	li[href]
	{
		opacity: 1;
		transition: opacity .4s;
	}
	li[href]:hover
	{
		opacity: 0.6;
	}
	li[href] a:hover
	{
		opacity: 1;
	}

	/* common */
	div.link
	{
		width: 34rem;
		font-size: 1.4rem;
	}

	div.viewMore
	{
		font-size: 1.4rem;
	}

	div.rightArrow
	{
		width: 1.3rem; /**/
	}

	div.rightArrow:before
	{
		width: 0.2rem;/**/
		height: 1.3rem;/**/
	}

	div.rightArrow:after
	{
		width: 1.3rem;/**/
		height: 0.2rem;/**/
	}

	/* carousel */
	.carousel div.viewMore
	{
		bottom: 1.5rem;
		font-size: 1.6rem;
	}
	.carousel .slide-dots button
	{
		border-radius: 0.5rem;
	}

	/* .content common */
	.content h1
	{
		font-size: 5rem;
	}

	.content h1 > div
	{
		font-size: 1.6rem;
	}

	.content h2
	{
		font-size: 2.8rem;
	}

	.content h2 > div
	{
		font-size: 1.2rem;
	}

	/* bijouBouquet */
	.content.bijouBouquet
	{
		padding-top: 9rem;
		height: 71.6rem;
		background-color: #fbfbfb;
		/*background-size: 41.2rem 75rem;*/
		background-size: 41.2rem 91.793rem;
		/*background-position: calc(50% + 30rem), calc(71.6rem - 91.793rem);*/
		background-position-x: calc(50% + 30rem);
		background-position-y: calc(71.6rem - 91.793rem);
	}

	.content.bijouBouquet .wrap
	{
		width: 128rem;
		margin-left: auto;
		margin-right: auto;
		text-align: left;
		padding-left: 20rem;
	}

	.bijouBouquet p:nth-child(1)
	{
		font-size: 2.4rem;
	}

	.bijouBouquet p:nth-child(n+2)
	{
		font-size: 1.4rem;
		line-height: 2.7rem;
	}

	/* collection */
	.collection
	{
		padding-top: 6rem;
		width: 128rem;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 8rem;
		text-align: center;
	}
	li[href]
	{
		opacity: 1;
		transition: opacity .4s;
	}
	.collection h2
	{
		margin-top: 6rem;
	}

	.collection .tour .text
	{
		font-size: 1.4rem;
		padding-top: 3rem;
		padding-bottom: 4rem;
	}

	.collection .tour ul
	{
		display: flex;
		justify-content: center;
	}

	.collection .tour ul li
	{
		width: 52.5rem;
		margin-left: 1.5rem;
		margin-right: 1.5rem;
	}

	.collection .wrapMarriageAndEternity
	{
		margin-top: 4rem;
		width: 128rem;
		margin-left: auto;
		margin-right: auto;
		display: flex;
		justify-content: center;
	}

	.collection .wrapMarriageAndEternity h2
	{
		margin-top: 0;
	}

	/* enjoy */
	.enjoy ul
	{
		width: 58rem;
		margin-left: auto;
		margin-right: auto;
		margin-top: 5rem;
	}

	.enjoy img
	{
		width: 58rem;
		height: 46rem;
	}

	.enjoy li:hover:before
	{
		/*padding-top: 12rem;*/
		transition: opacity .4s;
		opacity: 0.6;
	}

	.enjoy li dl
	{
		padding-left:0;
	}
	/*.enjoy li dl:before
	{
		margin-top: 8.7rem;
		margin-left: -5rem;
		width: 52rem;
		height: 10rem;
	}*/

	.enjoy li dl:before
	{
		width: 52rem;
		height: 10rem;
		/*background-color: #ff9fac;*/
		margin-top: 8.7rem;
	}
	.enjoy li dl
	{
		width: 52rem;
		height: 10rem;
		padding-top: 14rem;
		font-size: 2rem;
	}

	.enjoy li:nth-child(odd):before
	{
		top: 0;
		right: -10rem;
		width: 65.6rem;
		height: 56rem;
	}

	.enjoy li:nth-child(odd) dl:before
	{
		left:-12rem;
	}

	.enjoy li:nth-child(even):before
	{
		top: 0;
		left: -10rem;
		width: 65.6rem;
		height: 56rem;
	}
	.enjoy li:nth-child(even) dl:before
	{
		right:-12rem;
	}
	.enjoy li:nth-child(even) dl
	{
		margin-left: 20rem;
	}


	.enjoy img
	{
		margin-top: -0.5rem;
	}

	/* our service */
	.ourService
	{
		margin-top: 14rem;
	}

	.ourService ul
	{
		width: 103.5rem;
		margin-left: auto;
		margin-right: auto;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-around;
		margin-bottom: 1rem;

	}
	.ourService ul:nth-of-type(1) li
	{
		width: 50.8rem;
		height: 30.5rem;
	}

	.ourService ul:nth-of-type(2) li
	{
		width: 33.4rem;
		height: 22.2rem;
	}
	.ourService li div.wrap
	{
		height: 100%;
	}
	.ourService li div.box
	{
		border: none;
		height: 100%;
		margin-right: 0;
	}

	.ourService li div.text
	{
		width: 400px;
		font-size: 1.6rem;
		margin-left: 0;
	}
	.ourService li div.text > a > div
	{
		font-size: 1.4rem;
	}

	/* shop */
	.content.shop
	{
		margin-top: 14rem;
	}

	.content.shop p
	{
		margin-top:3rem;
		margin-bottom:3rem;
	}

	.content.shop .linkWrap
	{
		display: flex;
		justify-content: space-between;
		width: 75rem;
		margin-left: auto;
		margin-right: auto;
	}
	.content.shop div.link
	{
		margin-left: 0;
		margin-right: 0;
	}

	/* contact */
	.content.contact h1
	{
		margin-bottom: 4rem;
	}
	.content.contact a.imgLink
	{
		width: 68rem;
		height: 34.2rem;
		margin-left: auto;
		margin-right: auto;
	}
	.content.contact a.imgLink img
	{
		width: 100%;
		height: 100%;
	}
	.content.contact p
	{
		font-size: 1.4rem;
		margin-top: 1.5rem;
		margin-bottom: 1.5rem;
	}
	.content.contact div.link
	{
		width: 39rem;
	}

	/* news */
	.content.news
	{
		padding-top: 6rem;
	}
	.content.news ul
	{
		width:80rem;
		margin-left: auto;
		margin-right: auto;
	}
	.content.news ul li
	{
		width:24rem;
		margin-bottom: 4rem;
	}

	.content.news ul li .readMore
	{
		/*padding-right: 1.2rem;*/
	}

	.content.news ul li time, .content.news ul li h2
	{
		font-size: 1.4rem;
	}
	
	/* onlineConsultation */
	.content.onlineConsultation
	{
		margin-top: 6rem;
	}
	.content.onlineConsultation ul
	{
		max-width: 65rem;
		margin: 0 auto;
	}
	.content.onlineConsultation ul li:not(:last-child)
	{
		margin-bottom: 2rem;
	}
	.content.onlineConsultation ul li .link {
		width: 65rem;
		border: none;
	}
	.content.onlineConsultation ul li a
	{
		font-size: 1.4rem;
		line-height: 1.8;
	}
	
}