/* 

▼共通認識
1.ec-cubeのスタイルは「ec-」で始まる。デフォルトのcssを編集すると、
　意外なところで不具合が起きるので基本編集しない。
　スタイルを打ち消す場合は「gc-」で始まる同名のソースをgluecode-xxx.cssに記述する。
2.gluecode-base.cssは、全体共通で使用するソース
3.gluecode-top.cssは、TOPページで使用するソース
4.gluecode-common.css、下層ページで使用するソース
5.スマホのブレイクポイントはデフォルトに合わせ「max-width:767px」
6.divなど大きい順番は block > box
7.iosでhoverがあるとタップ2回必要なバグがあるので、hoverは「min-width: 1025px」以上のみに適用する。
8.inputやselectなどのフォーム関連のソースはiphoneでは16px以上無いとズームしてしまう。
　使いづらいので、font-size: 1.6rem;以上に設定する。 transform: scale(0.8);を入れると吉。

*/


/* -------------------------------------------------- */
/* top page */
/* -------------------------------------------------- */
.pc-only {
	display: block;
}
.sp-only {
	display: none;
}
.ttl_top_h1 {
	font-size: 2.6rem;
    letter-spacing: .03em;
	line-height: 1;
    font-weight: bold;
    padding-top: 40px;
	text-align: center;
}
.ttl_top_h2_style {
	text-align: center;
	font-size:2.4rem;
	color: #000;
	font-weight: 600;
	margin-bottom: 40px;
}
.ttl_top_h2_style::before {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: inline-block;
	width: 42px;
	height: 42px;
	margin-top: -.2em;
	margin-right: 8px;
	vertical-align: middle;
}

.common_base_block{
	position: relative;
	max-width: 1090px;
	margin: 0 auto;
	padding: 40px 0;
}

.section {
	border-top: 1px solid #DDD;
	padding-top: 54px;
	padding-bottom: 64px;
}

/* ----------------------------------------- */
/* Responsive */

@media print, screen and (max-width: 1159px) {
	
	.common_base_block{
		max-width: 1159px;
		margin: 0 auto;
		padding: 36px 4%;
	}

}


@media print, screen and (max-width: 767px) {
	.pc-only {
		display: none;
	}
	.sp-only {
		display: block;
	}
	.ttl_top_h1 {
		font-size: 1.8rem;
  		font-size:clamp(18px, 4.5vw, 24px);
		padding-top: 24px;
	}
	.ttl_top_h2_style {
		font-size:2.0rem;
		line-height: 1.2;
		margin-bottom: 32px;
	}
	
	.ttl_top_h2_style::before {
		display: block;
		width: 37px;
		height: 37px;
		margin: 0 auto 8px;
	}
	
	.common_base_block{
		padding: 26px 3%;
	}
	
	.section {
		padding-top: 32px;
		padding-bottom: 40px;
	}

}

@media print, screen and (max-width: 480px) {
	
	.ttl_top_h2_style {
		font-size:1.7rem;
		padding-top: 24px;
		letter-spacing: -1px;
	}

}

/* -------------------------------------------------- */
/* visual*/
/*
.top_kv {
	position: relative;
	background: url(../img/top/top_kv.jpg) no-repeat top center;
	background-size: cover;
	height: 100vh;
	max-height: 464px;
	overflow: hidden;
	z-index: 1;
}
.top_kv .shop_name {
	position: absolute;
	left: 70px;
	top: 130px;
	text-align: center;
	color: #000;
}
.top_kv .shop_name .sub_title {
	background-color: rgba( 254, 255, 255, 0.8 );
	font-size: 1.7rem;
	max-width: 340px;
	height: 48px;
	line-height: 48px;
	margin-bottom: 15px;
	border-radius: 2px;
	font-weight: 500;
}
.top_kv .shop_name .main_title {
	font-size: 3rem;
	letter-spacing: 0.1em;
	line-height: 40px;
	font-weight: bold;
}
.top_kv .shop_name .main_title span {
	display: inline-block;
	margin-top: 8px;
	font-size: 4.5rem;
}
*/
.main-images {
}
.main-images .inner {
	max-width: 809px;
}
.main-images .main-images_slider {
	max-width: 650px;
	position: relative;
	margin: 0;
	padding: 0;
}
.main-images .main_visual {
	overflow: hidden;
	white-space: nowrap;
}
.main-images .main_visual.slick-slider {
	overflow: visible;
}
.main-images .main-images_slider .item {
	background: #FFF;
	display: inline-block;
	width: 650px;
	height: 346px;
	overflow: hidden;
	position: relative;
	white-space: normal;
}
.main-images .main-images_slider .item img {
	width: auto;
}
.main-images .main-images_slider a.btn {
	background: #333;
	border-radius: 4px;
	color: #FFF;
	display: inline-block;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1;
	position: relative;
	padding: .8em 4em;
}
.main-images .main-images_slider a.btn:after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 12px;
	margin-top: -4px;
	width: 8px;
	height: 8px;
	border: 2px solid #FFF;
	border-width: 2px 2px 0 0;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.main-images .main-images_slider .item {
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: contain;
}
.main-images .main-images_slider .slide-arrow {
	background: rgba(0,0,0,.6);
	position: absolute;
	top: 50%;
	margin-top: -16px;
	z-index: 100;
	width: 32px;
	height: 56px;
}
.main-images .main-images_slider .slide-arrow::before {
	content: "";
	width: 16px;
	height: 16px;
	border-top: 1px solid #FFF;
	border-right: 1px solid #FFF;
	position: absolute;
	top: 50%;
	margin-top: -8px;
}
.main-images .main-images_slider .prev-arrow {
	left: 0;
}
.main-images .main-images_slider .prev-arrow::before {
	-webkit-transform: rotate(-135deg);
	-ms-transform: rotate(-135deg);
	transform: rotate(-135deg);
	left: 50%;
	margin-left: -4px;
}
.main-images .main-images_slider .next-arrow {
	right: 0;
}
.main-images .main-images_slider .next-arrow::before {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	right: 50%;
	margin-right: -4px;
}
.main-images .main-images_slider .slide-arrow i {
	display: none;
}
.main-images .main-images_slider .slick-dots {
	margin-top: -67px;
	text-align: center;
	z-index: 100;
	position: relative;
}
.main-images .main-images_slider .slick-dots li {
	border: 1px solid #CCC;
	-webkit-box-shadow: 0 0 6px rgba(0, 0, 0, .16);
	box-shadow: 0 0 6px rgba(0, 0, 0, .16);
	cursor: pointer;
	display: inline-block;
	width: 150px;
	height: 50px;
	margin-left: 8px;
}
.main-images .main-images_slider .slick-dots li.slick-active {
	border-color: #EE7C00;
}
.main-images .main-images_slider .slick-dots li img {
	display: block;
}
.main-images_banner p + p {
	margin-top: 10px;
}

.main-images .main-images_slider .main-image_01 {
	background-image: url(../img/top/slider_scene01_bg_pc.jpg);
	position: relative;
}
.main-images .main-images_slider .main-image_01 .inner {
	padding: 20px 0 0 54px;
}
.main-images .main-images_slider .main-image_01 .title,
.main-images .main-images_slider .main-image_01 .catch {
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;;
}
.main-images .main-images_slider .main-image_01 .title .color,
.main-images .main-images_slider .main-image_01 .catch {
	color: #E95517;
}
.main-images .main-images_slider .main-image_01 .title {
	color: #222;
	display: inline-block;
	font-size: 3.0rem;
	line-height: 1.3;
	letter-spacing: .1em;
	margin: 0 auto 0 -24px;
	padding: 0 55px;
	position: relative;
}
.main-images .main-images_slider .main-image_01 .title .fs-small { font-size: 1.4rem; }
.main-images .main-images_slider .main-image_01 .title .smaller { font-size: 3.6rem; }
.main-images .main-images_slider .main-image_01 .title::before,
.main-images .main-images_slider .main-image_01 .title::after {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: inline-block;
	width: 30px;
	height: 70px;
	position: absolute;
	top: 50%;
	margin-top: -30px;
}
.main-images .main-images_slider .main-image_01 .img img {
	margin: 0 auto;
	max-width: 280px;
}
.main-images .main-images_slider .main-image_01 .text {
	color: #000;
	padding-right: 30px;
	position: relative;
	width: 350px;
}
.main-images .main-images_slider .main-image_01 .text p {
	margin-top: 0;
}
.main-images .main-images_slider .main-image_01 .title::before { left: 0; background-image: url(../img/top/img_brackets_l.png); }
.main-images .main-images_slider .main-image_01 .title::after { right: 0; background-image: url(../img/top/img_brackets_r.png); }
.main-images .main-images_slider .main-image_01 .text .catch {
	border: 1px dashed #DE5D50;
	border-width: 1px 0;
	display: inline-block;
	font-size: 1.6rem;
	font-weight: bold;
	margin: 5px 0 5px;
	padding: .25em;
}
.main-images .main-images_slider .main-image_01 .catch::after {
	background: url(../img/top/img_character.png) no-repeat 100% 100% / contain;
	content: "";
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	width: 91px;
	height: 95px;
}
.main-images .main-images_slider .main-image_01 .text .desc {
	font-size: 1.0rem;
	line-height: 1.6;
	margin-bottom: .9em;
	padding-right: 70px;
}
.main-images .main-images_slider .main-image_02 { background-image: url(../img/top/slider_scene02_bg_pc.jpg); }
.main-images .main-images_slider .main-image_02 .title {
	background: url(../img/top/slider_scene02_title_pc.png) no-repeat 0 0 / contain;
	position: absolute;
	top: 32px;
	left: 50%;
	margin-left: -38px;
	width: 55px;
	height: 264px;
	overflow: hidden;
	text-indent: 9999px;
	white-space: nowrap;
}
.main-images .main-images_slider .main-image_02 a.btn {
	position: absolute;
	bottom: 78px;
	left: 50%;
	-ms-transform: translateX( -50% );
	-webkit-transform: translateX( -50% );
	transform: translateX( -50% );
}
.main-images .main-images_slider .main-image_02 .list {
	color: #FFF;
	font-size: 1.4rem;
	line-height: 2;
	margin: 24px 0 0 40px;
}
.main-images .main-images_slider .main-image_02 .list li::before { content: "◆"; font-size: 8px; margin-right: 3px; vertical-align: middle; }

.main-images .main-images_slider .main-image_03 {
	background-image: url(../img/top/slider_scene03_bg_pc.png);
	padding: 32px 0;
	text-align: center;
}
.main-images .main-images_slider .main-image_03 .title img {
	max-width: 300px;
}
.main-images .main-images_slider .main-image_03 p img {	margin: auto; }
.main-images .main-images_slider .main-image_03 .text { margin: 17px 0 22px; }
.main-images .main-images_slider .main-image_03 .text img {
	max-width: 460px;
}
.main-images .main-images_slider .main-image_03 ul { max-width: 540px; margin: 0 auto; }
.main-images .main-images_slider .main-image_03 ul li { width: 33%; }

.main-images .main-images_slider .main-image_04 {background-image: url(../img/top/slider_scene04_bg_pc.jpg); }
.main-images .main-images_slider .main-image_04 .inner {
	margin: 23px 35px;
}
.main-images .main-images_slider .main-image_04 .title {
	display: flex;
    align-items: center;
}
.main-images .main-images_slider .main-image_04 .title .copy {
	width: 78%;
}
.main-images .main-images_slider .main-image_04 .title .logo {
	width: 22%;
	padding-left: 5px;
}
.main-images .main-images_slider .main-image_04 .text {
	width: 65%;
    margin-top: 15px;
}
.main-images .main-images_slider .main-image_04 .link {
	display: grid;
    grid-template-columns: 50% 50%;
    grid-template-rows: 50% 50%;
	margin: 10px -5px 0 -5px;
	width: 66%;
}
.main-images .main-images_slider .main-image_04 .link .link_item {
	margin: 5px;
}
.main-images .main-images_slider .main-image_04 .link img {
	border-radius: 4px 4px 0 0;
}
.main-images .main-images_slider .main-image_04 .link .link_btn {
    background: #333;
    border-radius: 0 0 4px 4px;
    color: #FFF;
    display: block;
    font-size: 1.1rem;
    font-weight: bold;
    line-height: 1;
    position: relative;
    padding: 0.5em;
	text-align: center;
	width: 100%;
}
.main-images .main-images_slider .main-image_04 .link .link_btn:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 8px;
    margin-top: -3px;
    width: 6px;
    height: 6px;
    border: 2px solid #FFF;
    border-width: 1px 1px 0 0;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
/* ----------------------------------------- */
/* Responsive */
@media print, screen and (min-width: 768px) {
	.main-images .main-images_slider { width: 80.3%; }
	.main-images .main-images_banner { width: 17.6%; max-width: 144px; }
}

@media print, screen and (max-width: 767px) {
/*	
	.top_kv {
		height: auto;
		max-height: 10000px;
	}
	.top_kv .shop_name {
		position: relative;
		top: auto;
		left: auto;
		width: 66%;
		margin: 22px auto;
		padding: 0px 0px 26px;
		background-color: rgba( 254, 255, 255, 0.8 );
	}
	.top_kv .shop_name .sub_title {
		font-size: 1.6rem;
		max-width: 100%;
		width: 100%;
		height: 48px;
		line-height: 48px;
		margin-bottom: 15px;
		color: #fff;
		background-color: rgba( 238, 181, 45, 0.9 );
	}
	.top_kv .shop_name .main_title {
		font-size: 1.8rem;
		line-height: 2.3rem;
	}
	.top_kv .shop_name .main_title span {
		margin-top: 12px;
		font-size: 3.6rem;
	}
*/
	.main-images {
		padding: 0 0 2%;
	}
	.main-images .main-images_slider {
		background: #FFF;
	}
	.main-images .main-images_slider .item {
		height: calc(100vw * .86);
		background-size: cover;
	}
	.main-images .main-images_slider a.btn {
		font-size: 1.2rem;
		font-size: 3.2vw;
	}
	.main-images .main-images_slider .slick-dots {
		margin-top: 0;
		position: absolute;
		bottom: 1.8%;
	}
	.main-images .main-images_slider .slick-dots li {
		width: 23%;
		height: auto;
		margin-left: 1%;
	}
	.main-images_banner {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		padding: 10px 10px 0 0;
	}
	.main-images_banner p {
		padding-top: 10px;
		padding-left: 10px;
		width: 50%;
	}
	.main-images_banner p img {
		width: 100% !important;
		height: auto !important;
	}
	.main-images_banner p + p {
		margin-top: 0;
	}
	.main-images .main-images_slider .main-image_01 { background-image: url(../img/top/slider_scene01_bg_sp.jpg); }
	.main-images .main-images_slider .main-image_01 .inner { padding: 7% 0 0 7%; }
	.main-images .main-images_slider .main-image_01 .title { font-size: 2.5rem; font-size: 6.6vw; margin-left: -3%; margin-bottom: 0; padding: 0 1em; letter-spacing: 1px; }
	.main-images .main-images_slider .main-image_01 .title .fs-small { font-size: 1.6rem; font-size: 4.2vw; }
	.main-images .main-images_slider .main-image_01 .title .smaller { font-size: 2.0rem; font-size: 5.3vw; }
.main-images .main-images_slider .main-image_01 .title::before,
.main-images .main-images_slider .main-image_01 .title::after {
	width: 15%;
	height: 4.6em;
	margin-top: -2.1em;
}
.main-images .main-images_slider .main-image_01 .text {
	padding-right: 0;
	width: 65%;
}
.main-images .main-images_slider .main-image_01 .text p {
	margin-top: 1.25em;
}
	.main-images .main-images_slider .main-image_01 .text .img img { width: 85%; }
.main-images .main-images_slider .main-image_01 .text .catch {
	font-size: 1.4rem;
	font-size: 3.7vw;
	margin: 1em auto 0;
	position: relative;
	padding: .25em 1em;
	white-space: nowrap;
}
	.main-images .main-images_slider .main-image_01 .catch::after {
		width: 34%;
		height: 100%;
		right: auto;
		left: 95%;
	}
	
	.main-images .main-images_slider .main-image_02 {
		background-image: url(../img/top/slider_scene02_bg_sp.jpg);
	}
	.main-images .main-images_slider .main-image_02 .title {
		background-image: url(../img/top/slider_scene02_title_sp.png);
		top: 5%;
		width: 15%;
		height: 1%;
		padding-top: 350%;
		margin-left: 0;
		-webkit-transform: translateX( -50% );
		-ms-transform: translateX( -50% );
		transform: translateX( -50% );
	}
	.main-images .main-images_slider .main-image_02 a.btn { bottom: 16%; }
	.main-images .main-images_slider .main-image_03 {
		background-image: url(../img/top/slider_scene03_bg_sp.png);
		padding: 1.5% 0;
	}
	.main-images .main-images_slider .main-image_03 .title img { width: 81%; }
	.main-images .main-images_slider .main-image_03 .text { margin: 1% 0 2%; }
	.main-images .main-images_slider .main-image_03 .text img { width: 86%; }
	.main-images .main-images_slider .main-image_03 ul { width: 88%; }
	.main-images .main-images_slider .main-image_03 ul li { width: 31%; }
	.main-images .main-images_slider .main-image_04 {
		background-image: url(../img/top/slider_scene04_bg_sp.jpg);
	}
	.main-images .main-images_slider .main-image_04 .inner {
		margin: 0;
	}
	.main-images .main-images_slider .main-image_04 .title {
		display: block;
		margin: 20px 15px 0;
	}
	.main-images .main-images_slider .main-image_04 .title .copy {
		width: 100%;
	}
	.main-images .main-images_slider .main-image_04 .title .logo {
		width: 45%;
		padding-left: 0;
		margin: 8px auto;
	}
	.main-images .main-images_slider .main-image_04 .text {
		display: none;
	}
	.main-images .main-images_slider .main-image_04 .link {
		margin: 0;
		width: calc(100% - 20px);
		position: absolute;
		bottom: 16%;
		left: 50%;
		transform: translateX(-50%);
	}
	.main-images .main-images_slider .main-image_04 .link img {
		display: none;
	}
	.main-images .main-images_slider .main-image_04 .link .link_item {
		margin: 3px;
	}
	.main-images .main-images_slider .main-image_04 .link .link_btn {
		background: rgba(255,255,255,0.9);
		border-radius: 4px;
		color: #333;
		display: block;
		font-size: clamp(11px, 3vw, 15px);
		position: relative;
		padding: 1em 0;
	}
	.main-images .main-images_slider .main-image_04 .link .link_btn:after {
		border-color: #333;
	}
}

@media print, screen and (max-width: 480px) {
	
	.top_kv .shop_name {width: 80%;}
	.top_kv .shop_name .sub_title {
		font-size: 1.5rem;
		height: 46px;
		line-height: 46px;
		margin-bottom: 17px;
	}
	.top_kv .shop_name .main_title span {font-size: 3.2rem;}

}


/* -------------------------------------------------- */
/* pickup item */
.top_pickup_block {}
.top_pickup_block .ttl_top_h2_style::before {
	background-image: url(../img/top/icon_title_pickup.png);
}
.pickup-wrap {
	margin: 0 -16px;
	position: relative;
}
.pickup-item {
	padding: 0 16px;
	width: 16.66%;
}
.pickup-item_thumb {
}
.pickup-item_name {
	font-size: 1.6rem;
	margin-top: 18px;
	text-align: center;
}



/* ----------------------------------------- */
/* Responsive */

@media print, screen and (max-width: 1159px) {
}

@media print, screen and (max-width: 767px) {
	.pickup-wrap {
		margin: 0 -9px;
	}
	.pickup-item {
		margin-top: 16px;
		padding: 0 9px;
		width: 50%;
	}
}

@media print, screen and (max-width: 480px) {
}


/* -------------------------------------------------- */
/* step */

.top_step_block {
	text-align: center;
}
.top_step_block .service_flow {
	margin-top: 40px;
	margin-bottom: 0;
}


/* ----------------------------------------- */
/* Responsive */
@media print, screen and (min-width: 768px) {
	.common_step_block {
		margin-top: 42px;
	}
}
@media print, screen and (max-width: 1025px) {
}
@media print, screen and (max-width: 767px) {
	.top_step_block {
		margin-top: 32px;
	}
}
@media print, screen and (max-width: 480px) {
}



/* -------------------------------------------------- */
/* itemlist */

.top_itemlist_block ul{
	width: 102%;
	overflow: hidden;
}

.top_itemlist_block ul li {
	width: 23%;
	margin-right: 2%;
	border-bottom: 1px #ccc dashed;
	list-style: none;
}

.top_itemlist_block ul li:nth-child(-n+4) {border-top: 1px #ccc dashed;}

.top_itemlist_block ul li a {
	display: block;
	position: relative;
	padding:12px 4%;
	color: #333;
}
.top_itemlist_block ul li a::after {
	position: absolute;
	right: 2%;
	top:12px;
	color: #999;
	content:"\f105";
	font-family: "Font Awesome 5 Free";
	font-weight: 700;
}


/* ----------------------------------------- */
/* Responsive */

@media print, screen and (max-width: 959px) {
	
	.top_itemlist_block ul{width: 103%;}
	.top_itemlist_block ul li {width: 30.3%;margin-right: 3%;}
	.top_itemlist_block ul li:nth-child(4) {border-top: none;}

}

@media print, screen and (max-width: 767px) {
	
	.top_itemlist_block ul{width: 103%;}
	.top_itemlist_block ul li {width: 30.3%;margin-right: 3%;}
	.top_itemlist_block ul li:nth-child(4) {border-top: none;}

}

@media print, screen and (max-width: 689px) {
	
	.top_itemlist_block ul{width: 103%;}
	.top_itemlist_block ul li {width: 47%;margin-right: 3%; font-size: 1.3rem;}
	.top_itemlist_block ul li:nth-child(3) {border-top: none;}
	.top_itemlist_block ul li:nth-child(4) {border-top: none;}

}

/* -------------------------------------------------- */
/* collection */

.top_collection_block {
	position: relative;
	background-color: #F0B60C;
	padding-bottom: 50px;
}

.top_collection_block h2 {color: #fff;}

.top_collection_block .main_visual{
	margin: 30px auto;
	width: 1106px;
	position: relative;
	z-index: 1;
}


.top_collection_block .main_visual .slick-dots {display: none !important;}


.top_collection_block .main_visual .slick-slide a{
	display: block;
	padding: 0px;
	margin:0px 8px;
}

.top_collection_block .main_visual .slick-slide a figure{
	display:-webkit-box;
	display:-webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-justify-content:center;
	-webkit-box-pack:center;
	-ms-flex-pack:center;
	justify-content:center;
	-webkit-align-items:center;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	text-align:center;
	background: #fff;
	padding: 20px;
	height: 200px;
}

.top_collection_block .main_visual .slick-slide a figure img{
	max-width: 90%;
	max-height: 160px;
	-o-object-fit: contain;
	object-fit: contain;
	font-family: 'object-fit: contain;'; /*IE対策*/
}

.top_collection_block .main_visual .slick-slide a p{
	margin-top: 10px;
	color: #fff;
}

.top_collection_block .main_visual .slide-arrow {
	position: absolute;
	top: 50%;
    z-index: 100;
	font-size: 3.8rem;
	color: #fff;
	cursor: pointer;
	margin-top: -36px;
}

.top_collection_block .main_visual .prev-arrow {right: -50px;}
.top_collection_block .main_visual .next-arrow {left: -50px;}

.top_collection_block .b_btn{
	width: 410px;
	margin: 0px auto;
}

.top_collection_block .b_btn a{
	text-align: center;
	padding: 14px 25px;
}

@media print, screen and (max-width: 1210px) {
	
	.top_collection_block .main_visual{width: 92%;}
	.top_collection_block .main_visual .slick-slide a{margin:0px 6px;}

	.top_collection_block .main_visual .slick-slide a figure{
		padding: 18px;
		width: auto;
		height: 190px;
	}

	.top_collection_block .main_visual .slick-slide a figure img{
		width: auto;
		max-width: 90%;
		max-height: 146px;
	}

	.top_collection_block .main_visual .slide-arrow {
		font-size: 3.4rem;
		margin-top: -32px;
	}

	.top_collection_block .main_visual .prev-arrow {right: -32px;}
	.top_collection_block .main_visual .next-arrow {left: -32px;}

	.top_collection_block .b_btn{
		width: 410px;
		margin: 0px auto;
	}

}

@media print, screen and (max-width: 767px) {
	
	.top_collection_block .main_visual .slick-slide a figure{
		padding: 18px;
		height: 160px;
	}

	.top_collection_block .main_visual .slick-slide a figure img{
		width: auto;
		max-width: 90%;
		max-height: 128px;
	}
	
	.top_collection_block .main_visual .slide-arrow {font-size: 2.2rem;}
	.top_collection_block .main_visual .prev-arrow {right: -17px;}
	.top_collection_block .main_visual .next-arrow {left: -17px;}
	
	.top_collection_block .b_btn{
		width: 70%;
		max-width: 600px;
	}

}

@media print, screen and (max-width: 480px) {
	
	.top_collection_block .main_visual{width: 90%; margin: 30px auto 20px;}
	
	.top_collection_block .main_visual .slick-slide a p{
		margin-top: 8px;
		font-size: 1.3rem;
	}
	.top_collection_block .main_visual .prev-arrow {right: -14px;}
	.top_collection_block .main_visual .next-arrow {left: -14px;}
	
	.top_collection_block .b_btn{
		width: 92%;
		font-size: 1.6rem;
		font-weight: bold;
	}

}


/* ---------------------------------------------------------------- */
/* hover */
/* ---------------------------------------------------------------- */

@media print, screen and (min-width: 1025px) {
	
	.top_collection_block .b_btn a{
		-webkit-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
	}
	
	.top_pickup_block div div a:hover {
		opacity: 0.7;
	}
	
	.top_itemlist_block ul li a:hover,
	.top_itemlist_block ul li a:hover::after {
		color: #EC7A00;
	}
	
	.top_collection_block .b_btn a:hover{
		text-decoration: none;
		background: #EC7A00;
	}
	
}

/* -------------------------------------------------- */
/* search */
.top_search_block {
	border-top: none;
}
.top_search_block .ttl_top_h2_style::before {
	background-image: url(../img/top/icon_title_search.png);
}
.search-item {
	padding-bottom: 40px;
}
.search-item_name {
	font-size: 1.8rem;
	font-weight: bold;
}
.search-item_detail {
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	margin-top: 27px;
}
.search-item_thumb {
	-webkit-flex-shrink: 0;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	width: 190px;
}
.search-item_info {
	padding-left: 20px;
}
.search-item_desc {
	line-height: 1.28;
}
.search-item_link {
	font-size: 1.3rem;
	margin-top: 1em;
	padding-right: 16px;
	position: relative;
}
.search-item_link::after {
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -4px;
}
.search-item_favorite {
	margin-top: 20px;
}
.item-favorite_title {
	font-size: 1.8rem;
	font-weight: bold;
}
.item-favorite_list {
	margin: 0 -10px;
	position: relative;
}
.search-item_favorite .item {
	margin-top: 14px;
	padding: 0 10px;
	width: 50%;
}
.search-item_favorite .item .flexbox {
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
}
.search-item_favorite .item .thumb {
	background: url(../img/top/img_nowprinting.png) no-repeat 50% 50% / cover;
	width: 70px;
	-webkit-flex-shrink: 0;
	-ms-flex-negative: 0;
	flex-shrink: 0;
}
.search-item_favorite .item .info {
	padding-left: 8px;
}
.search-item_favorite .item .info .name {
	font-size: 1.3rem;
}
.search-item_favorite .item .info .price {
	color: #F70000;
	font-size: .9rem;
	margin-top: 1em;
}
.search-item_favorite .item .info .num {
	font-size: 1.5rem;
	font-weight: bold;
}
@media print, screen and (min-width: 768px) {
	.search-item {
		padding-bottom: 40px;
		width: 50%;
	}
	.search-item:nth-child(odd) {
		padding-right: 32px;
	}
	.search-item:nth-child(even) {
		border-left: 1px solid #EEE;
		padding-left: 32px;
	}
	.search-item:nth-child(n+3) {
		border-top: 1px solid #EEE;
		padding-top: 40px;
	}
}
@media print, screen and (max-width: 767px) {
	.search-item {
		padding: 20px 0;
		width: 100%;
	}
	.search-item + .search-item {
		border-top: 1px solid #EEE;
	}
	.search-item_thumb {
		width: 136px;
	}
	.search-item_info {
		padding-left: 16px;
	}
	.search-item_name {
		font-size: 1.6rem;
	}
	.item-favorite_title {
		font-size: 1.3rem;
	}
	.search-item_favorite .item .info .name {
		font-size: 1.2rem;
	}
	.list-search_anchor {
		border-bottom: 1px solid #DDD;
		border-left: 1px solid #DDD;
		font-size: 1.3rem;
		font-weight: bold;
		margin-bottom: 12px;
	}
	.list-search_anchor li {
		border-top: 1px solid #DDD;
		border-right: 1px solid #DDD;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		width: 50%;
	}
	.list-search_anchor li a {
		color: #000;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		line-height: 1.3;
		-webkit-box-align: center;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
		padding: 1em 2em 1em 1em;
		min-height: 4.6em;
		width: 100%;
		position: relative;
	}
	.list-search_anchor li a::after {
		content: "";
		width: 8px;
		height: 8px;
		border-right: 1px solid #000;
		border-bottom: 1px solid #000;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
		position: absolute;
		top: 50%;
		right: 10px;
		margin-top: -4px;
	}

}

/* -------------------------------------------------- */
/* ranking */
.top_ranking_block {}
.top_ranking_block .ttl_top_h2_style::before {
	background-image: url(../img/top/icon_title_ranking.png);
}
.ranking-item {
	width: 50%;
	padding-bottom: 16px;
}
.ranking-item:nth-child(odd){
	padding-right: 30px;
}
.ranking-item:nth-child(even){
	border-left: 1px solid #EEE;
	padding-left: 30px;
}
.ranking-item:nth-child(n+3){
	border-top: 1px solid #EEE;
	padding-top: 40px;
}
.ranking-item_head {
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}
.ranking-item_head .category-name {
	font-size: 2.0rem;
	font-weight: bold;
}
.ranking-item_head .category-link a {
	display: inline-block;
	padding-right: 12px;
	position: relative;
}
.ranking-item_head .category-link a::after {
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	border-right: 1px solid #999;
	border-bottom: 1px solid #999;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -4px;
}

.top_ranking_block .list-ranking {
	margin: 4px -16px 0;
	position: relative;
}
.top_ranking_block .category-note {
	font-size: 1.0rem;
	margin-top: 1.4em;
	text-align: right;
}
.top_ranking_block .list-ranking .item {
	padding: 0 16px;
	width: 33.33%;
}
.top_ranking_block .list-ranking .item .fs-small {
	font-size: 0.667em;
}
.top_ranking_block .list-ranking .item > span,
.top_ranking_block .list-ranking .item .name,
.top_ranking_block .list-ranking .item .price {
	display: block;
}
.top_ranking_block .list-ranking .item .name a {
	color: #000;
	font-size: 1.4rem;
}
.top_ranking_block .list-ranking .item .price {
	color: #F00;
	font-size: 1.7rem;
	font-weight: bold;
	margin-top: .5em;
}
.top_ranking_block .list-ranking .item .price .tax {
	font-size: 1.0rem;
	font-weight: normal;
	white-space: nowrap;
}
	.top_ranking_block .rank {
		color: #212121;
		display: block;
		font-size: 1.4rem;
		padding: 10px 0;
		white-space: nowrap;
	}
	.top_ranking_block .list-ranking .item .rank span { display: inline-block; }
		.top_ranking_block .rank-1 .rank { color: #DBAF38; }
		.top_ranking_block .rank-2 .rank { color: #A5A5A5; }
		.top_ranking_block .rank-3 .rank { color: #C69152; }
		.top_ranking_block .rank-1 .rank:before,
		.top_ranking_block .rank-2 .rank:before,
		.top_ranking_block .rank-3 .rank:before {
			background-position: 50% 50%;
			background-repeat: no-repeat;
			background-size: contain;
			content: "";
			display: inline-block;
			margin-right: 6px;
			width: 24px;
			height: 24px;
			vertical-align: text-bottom;
		}
		.top_ranking_block .rank-1 .rank:before { background-image: url(../img/top/icon_rank_01.png); }
		.top_ranking_block .rank-2 .rank:before { background-image: url(../img/top/icon_rank_02.png); }
		.top_ranking_block .rank-3 .rank:before { background-image: url(../img/top/icon_rank_03.png); }
		.top_ranking_block .rank .num { font-size: 2.3rem; font-weight: bold; margin-right: .1em; }
@media print, screen and (min-width: 768px) {
	.top_ranking_block .list-ranking .item .thumb { width: 147px; height: 147px; margin: 0 auto; }
	.top_ranking_block .list-ranking .item .text { margin-top: 1em; }
	.top_ranking_block .ranking-item:nth-child(n+5){ padding-bottom: 0; }
}
@media print, screen and (max-width: 767px) {
	.top_ranking_block .ranking-item { padding-bottom: 24px; width: 100%; }
	.ranking-item_head .category-name { border-bottom: none; font-size: 1.6rem; }
	.ranking-item:nth-child(odd){ padding-right: 0; }
	.ranking-item:nth-child(even){
		border-left: none;
		padding-left: 0;
	}
	.ranking-item:nth-child(n+3){
		border-top: none;
		padding-top: 0;
	}
	.top_ranking_block .ranking-item + .ranking-item {
		border-top: 1px solid #EEE;
		padding-top: 32px;
	}
	.top_ranking_block .list-ranking {
		margin: 0;
		padding: 0;
		position: relative;
	}
	.top_ranking_block .list-ranking .item {
		display: block;
		padding: 0 8px;
		position: relative;
	}
	.top_ranking_block .list-ranking .item + .item {
		border-top: none;
	}
	.top_ranking_block .list-ranking .item .rank .suffix {
	}
	.top_ranking_block .list-ranking .item > span {
	}
	.top_ranking_block .list-ranking .item .thumb {
		width: 99px;
	}
	.top_ranking_block .list-ranking .item .text {
	}
	.top_ranking_block .list-ranking .item .name {
		font-size: 1.2rem;
	}
	.top_ranking_block .list-ranking .item .price {
		font-size: 1.4rem;
		text-align: left;
	}
	.top_ranking_block .rank-1 .rank:before,
	.top_ranking_block .rank-2 .rank:before,
	.top_ranking_block .rank-3 .rank:before {
		margin-right: 8px;
		vertical-align: text-bottom;
	}
	.top_ranking_block .rank { font-size: 1.2rem; display: block; position: relative; }
	.top_ranking_block .rank .num { font-size: 1.8rem; position: relative; }

}

/* -------------------------------------------------- */
/* example */
.top_example_block {}
.top_example_block .ttl_top_h2_style::before {
	background-image: url(../img/top/icon_title_example.png);
}
.list-design {
	margin-top: 2em;
}
.design-item {
	padding: 0 10px 10px;
	width: 25%;
}
.design-item_thumb {
}
.design-item_name {
	font-size: 1.6rem;
	margin-top: 1em;
	text-align: center;
}
.btn-more {
	border: 1px solid #BBB;
	border-radius: 4px;
	font-size: 1.6rem;
	font-weight: bold;
	margin: 38px auto 0;
	padding: 1em 6.5em;
}
.btn-more_example span {
	display: inline-block;
	position: relative;
}
.btn-more_example span::after {
	content: "";
	display: block;
	height: 10px;
	width: 10px;
	border-top: 2px solid #000;
	border-right: 2px solid #000;
	-webkit-transform: rotate(45deg) ;
	-ms-transform: rotate(45deg) ;
	transform: rotate(45deg) ;
	position: absolute;
	top: 50%;
	right: -1.5em;
	margin-top: -5px;
}
@media print, screen and (max-width: 767px) {
	.design-item { width: 50%; }
	.design-item_name { font-size: 1.4rem; }
	.btn-more {
		display: block;
		padding: 1em;
	}
}

/* -------------------------------------------------- */
/* voice */
.top_voice_block {}
.top_voice_block .ttl_top_h2_style::before {
	background-image: url(../img/top/icon_title_voice.png);
}
.voice-item {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding-bottom: 32px;
}
.voice-item + .voice-item {
	border-top: 1px solid #DDD;
	padding-top: 32px;
}
.voice-item_thumb {
	width: 32.2%;
}
.voice-item_text {
	width: 64.8%;
}
.voice-item_thumb img {
	display: block;
}
.voice-item_title {
	font-size: 1.8rem;
	font-weight: bold;
	padding-right: 1em;
}
.voice-item_name {
	color: #484848;
}
.voice-item_rate {
	color: #F28C14;
	font-size: 2.2rem;
	font-weight: bold;
	margin: .25em 0;
}
.voice-item_rate  img {
	margin-right: 9px;
	vertical-align: .01em;
	width: auto;
}
.voice-item_message {
	font-size: 1.6rem;
	line-height: 1.625;
}
.voice-item_data {
	color: #484848;
	margin-top: 1em;
}
.voice-item_data th,
.voice-item_data td {
	padding: .1em 0;
}
@media print, screen and (max-width: 767px) {
	.voice-item { padding: 24px 0; }
	.voice-item_thumb,
	.voice-item_text { width: 100%; }
	.voice-item_text { margin-top: 1em; }
	.voice-item_title { font-size: 1.6rem; }
	.voice-item_rate { font-size: 1.8rem; }
	.voice-item_message { font-size: 1.4rem; }
	.voice-item_name,
	.voice-item_data { font-size: 1.3rem; }
}

/* -------------------------------------------------- */
/* flow
/* copy from /user_data/service  */
.top_step_block .ttl_top_h2_style::before {
	background-image: url(../img/top/icon_title_flow.png);
}
.service_flow {
	color: #000;
	font-weight: 500;
	margin-bottom: 96px;
}
.service_flow ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	-webkit-align-items: stretch;
	align-items: stretch;
}
.service_flow ul li {
	width: 25%;
	background: #F8F8F8;
	border: 2px solid #FFF;
	position: relative;
	padding-bottom: 22px;
}
.service_flow ul li + li::before,
.service_flow ul li + li::after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 32px 0 32px 36px;
	border-color: transparent transparent transparent #fff;
	position: absolute;
	left: -2px;
	top: 50%;
	margin-top: -23px;
}
.service_flow ul li + li::after {
	border-color: transparent transparent transparent #F8F8F8;
	left: -8px;
}
.service_flow ul li img {
	width: auto;
}
.service_flow ul li figure {
	text-align: center;
}
.service_flow ul li dt {
	padding-top: 13px;
	margin-bottom: -2px;
}
.service_flow ul li dt span {
	width: 50px;
	height: 50px;
	display: block;
	border-radius: 50%;
	background: #484848;
	font-size: 2.2rem;
	text-align: center;
	line-height: 50px;
	letter-spacing: .05em;
	color: #FFF;
	position: absolute;
	top: 18px;
	left: 18px;
}
.service_flow ul li dd {
	padding: 0 20px;
}
.service_flow .service_flow_ttl {
	text-align: center;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.4;
	height: 56px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	margin-bottom: 17px;
}
.service_flow .service_flow_txt {
	line-height: 1.65;
}
@media print, screen and (max-width: 767px) {
	.service_flow {
		margin-bottom: 48px;
	}
	.service_flow h2 {
		font-size: 2.2rem;
		padding: 0 0 9px;
		margin-bottom: 20px;
	}
	.service_flow ul {
		display: block;
	}
	.service_flow ul li {
		width: auto;
	}
	.service_flow ul li + li::before,
	.service_flow ul li + li::after {
		border-width: 32px 32px 0 32px;
		border-color: #fff transparent transparent transparent;
		left: 50%;
		top: 0;
		margin-top: 0;
		margin-left: -32px;
	}
	.service_flow ul li + li::after {
		border-color: #F8F8F8 transparent transparent transparent;
		top: -7px;
	}
}

.ec-layoutRole .ec-layoutRole__contentBottom.gc-layoutRole__contents {
	margin-right: auto;
	margin-left: auto;
}
.ec-layoutRole .ec-layoutRole__contents {
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	max-width: 1090px;
}
.ec-layoutRole .ec-layoutRole__left {
	width: 240px;
}
.ec-layoutRole .ec-layoutRole__mainWithColumn {
	max-width: 810px;
}
.gc-layoutRole__contents {
	padding-top: 40px;
}
.box-side {
	border: 1px solid #CCC;
	border-radius: 4px;
}
.list-category_title {
	font-size: 1.8rem;
	font-weight: bold;
	padding: 17px 0;
	text-align: center;
}
.list-category img {
	width: 33px;
	height: auto;
}
.list-category dt {
	border-top: 1px solid #CCC;
	font-weight: bold;
	font-size: 1.5rem;
	padding: 17px 15px;
}
.list-category li {
	border-top: 1px solid #EEE;
	font-size: 1.3rem;
	padding: 12px 10px;
}
.list-category li a {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	line-height: 1.1;
}
.list-category li img {
	margin-right: 10px;
}
@media print, screen and (max-width: 767px) {
	.gc-layoutRole__contents {
		padding-top: 24px;
	}
}
.block_bunnou_top{
	position: relative;
    max-width: 1090px;
    margin: 0 auto;
}
/* -------------------------------------------------- */
/* enquete */
.frame_enquete_top {
	position: relative;
    max-width: 1090px;
    margin: 40px auto;
}
@media print, screen and (min-width: 768px) {
	.frame_enquete_top iframe {
		height: 912px;
	}
}
@media print, screen and (max-width: 767px) {
	.frame_enquete_top {
		max-width: initial;
		margin: 0 auto;
	}
}
/* -------------------------------------------------- */
/* banner-speace */

.top_banner_block {
	padding-bottom: 0;
}