@charset "utf-8";
/* CSS Document */

/* =========================================
   Google Fontsの読み込み
   ========================================= */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;700&family=Noto+Serif+JP:wght@300;500&display=swap');

/* 【重要】全要素への強制適用 
   各ブロックの個別指定（sans-serif等）を無視して明朝体に統一します 
*/
*, *::before, *::after {
	font-family: "Noto Serif JP", "Shippori Mincho", "YuMincho", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
}

/* =========================================
   共通設定　※変更不可（触ってはいけません）
   ========================================= */
body {
	background-color: #f2f2f2;
	-webkit-font-smoothing: antialiased;
	letter-spacing: 0.08em; 
	line-height: 1.85;	  
	color: #333;
	margin: 0; /* 余計な隙間を排除 */
}

/* 欧文見出しや数字など、Cinzelを効かせたい場所の再定義 */
.en-text, h1, h1 *, h2, h3, h4, .lp-ultima-title-area p, .years-count, .header-years {
	font-family: 'Cinzel', "Noto Serif JP", serif !important;
	letter-spacing: 0.12em;
}

/* フォーム入力欄のみ、使い勝手を考慮してゴシックを許可（任意） */
input, textarea, select {
	font-family: sans-serif !important;
}

.ec-layoutRole {
	background: #f2f2f2;
}

a {
	color: #0073BB;
}

a:hover {
	color: #0a1e14 !important;
}

a img:hover {
	opacity: 0.8;
}

section {
	width: 100%;
	max-width: 1100px;
	margin: 　20px auto;
}

img {
	width: 100%;
	height: auto;
}

h1{
	margin-top: 2%;
	width: 42%;
	font-size: 0.75rem;
	text-align: center;
}

h2.page, h3.page, h4.page, h2.block, h3.block {
	width: 100%;
	max-width: 1100px;
	margin: 20px auto;
}

h1 img{
	width: 100%;
	height: auto;
	margin-bottom: 2%;
}

h2.page img, h3.page img, h4.page img, h2.block img, h3.block img {
	width: 100%;
	height: auto;
}

img.w100 {
	width: 100%;
	height: auto;
}

.center {
	text-align: center;
}

.sell_list {
	width: 100%;
	max-width: 1100px;
	margin: 20px auto 0;
}

.sell_list .row {
	display: flex;
	align-items:stretch;
	margin-right: 0;
	margin-left: 0;
}

.sell_list .row .col4_group {
	width: 23%;
	margin: 0 auto 20px;
}

.sell_list .row .col3_group {
	width: 30%;
	margin: 0 auto 20px;
}


.sell_list .row .col2_group {
	width: 48%;
	margin: 0 auto 20px;
}

.sell_list .row .col4_group p,
.sell_list .row .col3_group p,
.sell_list .row .col2_group p {
	width: 100%;
	font-size:12px;
	margin-bottom: 20px;
}

.sell_list .row .col4_group p:last-child,
.sell_list .row .col3_group p:last-child,
.sell_list .row .col2_group p:last-child {
	margin-bottom: 0px;
}

.sell_list .row .col4_group img,
.sell_list .row .col3_group img,
.sell_list .row .col2_group img {
	width: 100%;
	height: auto;
	aspect-ratio: initial;
}

/* =========================================
   共通設定（スマホ用）　※変更不可（触ってはいけません）
   ========================================= */
@media screen and (max-width: 767px) {

	h1 {
		width: 95%;
		margin: 2% auto;
		font-size: 0.6rem;
	}

	h2, h3 {
		font-size: 1.6rem;
	}

	h4 {
		font-size: 1.4rem;
	}

	footer p.copy {
		font-size: 0.8rem !important;
	}
	
	footer nav a {
		font-size: 0.85rem !important;
	}
	
	.section_header {
		width: 96%;
		margin: 0 auto;
	}
	
	.page img {
		max-width: 100%;
		height: auto;
	}
	
	.sell_list{
		width: 92%;
	}
	
	.ec-productRole__description .sell_list{
		width: 100%;
	}
	
	.sell_list .row{
		display: block;
	}
	
	.sell_list .row .col4_group, .sell_list .row .col3_group, .sell_list .row .col2_group {
		width: 100%;
	}
}

/* =========================================
   ハンバーガーメニュー非表示　※変更不可（触ってはいけません）
   ========================================= */
.ec-headerNavSP, .ec-drawerRoleClose, .ec-drawerRole {
	display: none !important;
}

.ec-layoutRole__header nav, .ec-layoutRole__header nav .nav {
	display: flex !important;
}

/* =========================================
   ヘッダー　※変更不可（触ってはいけません）
   ========================================= */

header {
  width: 100%;
  background-color: #f2f2f2;
  margin: 0 auto;
}

.header-top {
  display: flex;
  align-items: flex-end;
  max-width: 1100px;
  margin: 0 auto;
}

.header-bottom {
  width: 100%;
  background-color: #f2f2f2;
  z-index: 555;
  position: relative;
}

.replacement{
	width: 56%;
	margin-left: 2%;
	z-index: 555;
	position: relative;
}

.ec-navlistRole__item{
	font-size: 14px;
}

.header-mypage-pc{
	display: flex;
	width: 100%;
}

.header-mypage-sp{
	display: none;
}

.mypage_link{
	display: flex;
	width: 50%;
	text-align: right;
}

.mypage_link p:first-child{
	margin-right: 20%;
	margin-left: 25%;
}

ul.header-icon{
	width: 60%;
	display: flex;
	padding-left: 0;
	margin-bottom: 5px;
}

ul.header-icon li{
	width: 50%;
	list-style-type: none;
	text-align: center;
}

ul.header-banner{
	display: flex;
	width: 100%;
	padding-left: 0;
}

ul.header-banner li{
	list-style-type: none;
	width: 33%;
}

ul.header-banner li img{
	width: 100%;
	height: auto;
}

nav.header-nav-wrapper{
	width: 100%;
	background-color: #0a1e14;
}

nav.header-nav-wrapper ul.header-nav-inner{
	display: flex;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	padding-left: 0;
	justify-content: center;
}

ul.header-nav-inner li{
	width: 33%;
	list-style-type: none;
	text-align: center;
}

nav.header-nav-wrapper ul.header-nav-inner li a{
	display: block;
	text-decoration: none;
	color: #E8EAE6;
	font-weight: bold;
	transition:all .3s;
}

ul.header-nav-inner li a:hover{
	background-color: #CFDAC8;
	color: #0a1e14 !important;
	font-weight: bold;
}

/* =========================================
   ヘッダー(PC用)　※変更不可（触ってはいけません）
   ========================================= */
@media screen and (min-width: 768px) {
	header {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		z-index: 555;
	}
}

/* =========================================
   ヘッダー(スマホ用)　※変更不可（触ってはいけません）
   ========================================= */
@media screen and (max-width: 767px) {

 	header {
		position: relative;
 	}
 
	.header-top {
		display: block;
		width: 98%;
	}

	.replacement{
		display: block;
		width: 100%;
		margin: 0;
	}
	
	.header-mypage-pc{
		display: none;
	}
	
	.header-mypage-sp{
		display: flex;
		width: 95%;
		text-align: center;
		margin: 0 auto;
	}
	
	.mypage_link{
		display: flex;
		width: 48%;
		text-align: right;
	}
	
	.mypage_link p:first-child{
		margin-right: 8%;
		margin-left: 2%;
	}
	
	ul.header-banner{
		width: 99%;
		margin: 0 auto 5px;
	}
	
	nav.header-nav-wrapper ul.header-nav-inner li .py-4{
		padding-top: 5px !important;
		padding-bottom: 5px !important;
	}
}

/* =========================================
   ヘッダー(タブレット用)　※変更不可（触ってはいけません）
   ========================================= */
@media screen and (min-width: 768px) and (max-width: 991px) {

	.ec-layoutRole__header nav, .ec-layoutRole__header nav .nav {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}
}

/* =========================================
   フッター　※変更不可（触ってはいけません）
   ========================================= */

footer {
	color: #E8EAE6;
	background: #0a1e14;
	padding: 0 0 20px 0;
}

footer nav {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}

footer a:hover {
	color: #CDD0CB !important;
}

footer p.copy {
	text-align: center;
	font-size: 1.4rem !important;
	color: #E8EAE6 !important;
}

footer nav a {
	font-size: 1.1rem !important;
	color: #0a1e14;
}

.footer_link{
	width: 100%;
	background: #0a1e14;
	/* background: #7C9473; */
	margin: 0;
	padding: 10px;
}

.footer_link a{
	display: inline-block;
	width: 100%;
	background: #E8EAE6;
	color:#0a1e14;
	text-align: left;
	padding: 10px;
	font-size: 1.1rem;
}

.footer_link a:hover{
	background: #CFDAC8;
}

/* =========================================
   youtube動画
   ========================================= */
.youtube-wrapper {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	margin: 10px 0 0 0;
}
 
.youtube-wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* =========================================
   カレンダー
   ========================================= */
.ec-calendar {
	width: 80%;
	max-width: 800px;
	margin: 0 auto;
}

#next-month-table {
	margin-left:80px;
}

.ec-calendar th {
	font-size:1.8rem;
}

.ec-calendar td {
	font-size:1.8rem;
}

.ec-calendar__chaption {
	width: 40%;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 20px;
}

.ec-calendar .ec-calendar__holiday {
	color: #DE5D50 !important;
	background: #FFCFCF !important;
}

/* =========================================
   カレンダー(スマホ用)
   ========================================= */
@media screen and (max-width: 767px) {
	.ec-calendar {
		width: 98%;
		margin-left: 0;
	}
	
	#this-month-table,
	#next-month-table {
		margin-left: auto;
		margin-right: auto;
	}
	.ec-calendar__chaption {
		width: 98%;
	}
	
	.ec-layoutRole__header nav, .ec-layoutRole__header nav .nav {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}
}

/* =========================================
   カレンダー(タブレット用)
   ========================================= */
@media screen and (min-width: 768px) and (max-width: 991px) {
	.ec-calendar{
		margin-left: 0;
	}
	#this-month-table{
		margin-left:auto;
		margin-right: auto;
	}
	
	#next-month-table{
		margin-left:auto;
		margin-right: auto;
	}
	.ec-calendar__chaption{
		width: 80%;
	}
}


/* =========================================
   ショッピングガイド
   ========================================= */
.guide_wrapper{
	display: flex;
	border: solid 1px #CDD0CB;
	margin: 20px 0 60px; /* ← 下だけしっかり余白 */
}

.guide_container{
	width: 50%;
	padding: 20px;
}

h4.guide_title{
	width: 100%;
	padding: 10px;
	font-size: 1.2rem;
	border: solid 1px #CDD0CB;
}

span.box{
	display: inline-block;
	border: solid 1px #CDD0CB;
	padding: 5px;
}

span.box img{
	width: 22%;
	height: auto;
}

.guide_container p{
	margin: 20px 0;
}

/* =========================================
   ショッピングガイド(スマホ用)
   ========================================= */
@media screen and (max-width: 767px) {
	.guide_wrapper{
		display: block;
		width: 90%;
		margin: 20px auto;
	}

	.guide_container{
		width: 100%;
	}
}

/* =========================================
   トップページ
   ========================================= */
.ec-layoutRole__contentTop .pos-relative{
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}
.block-slide1 img{
	width: 100%;
	height: auto;
}

.ec-newsRole__news{
	width: 100%;
	max-width: 1100px;
	height: 340px;
	padding: 20px;
	overflow:scroll;
	background: #fff;
	overflow-x: hidden;
}

@media screen and (max-width: 767px) {
/* 767pxまでの幅の場合に適応される */
	.ec-newsRole__news{
		height: 380px;
	}
}

.ec-newsRole__newsItem{
	padding-bottom: 20px;
	border-bottom: solid 1px #0a1e14;
	margin-top: 20px;
}

.ec-newsRole__newsItem:first-child{
	margin-top: 0;
}

.ec-newsRole__newsItem:last-child{
	border-bottom: none;
}

.ec-newsRole__newsHeading{
	display: flex;
	font-weight: bold;
	margin-bottom: 10px;
}

.ec-newsRole__newsColumn{
	display: flex;
}

.ec-newsRole__newsTitle, .ec-newsRole__newsClose{
	margin-left: 10px;
}

/* =========================================
   全自動麻雀卓のご購入ページ・麻雀用品のご購入ページ　※変更不可（触ってはいけません）
   ========================================= */
body.no-scroll {
  overflow: hidden;
  height: 100vh; /* iOS対策 */
}

.checkbox_search_wrap {
	display: flex;
	flex-wrap: wrap;
	width:100%;
	list-style: none;
	padding-left: 0;
}

.checkbox_search_wrap .search_box {
	width: 33%;
}

.checkbox_search_wrap .select_open,
.checkbox_search_wrap .search_box_sptop,
.checkbox_search_wrap .sp-submit-btn,
.checkbox_search_wrap .more_btn {
  display: none;
}

#new_type,
#business_type,
#points_type,
#auto_type,
#model_type,
#size_type,
#leg_type,
#hands_type,
#hai_type,
#pointstick_type,
#chip_type,
#slimonly_type,
#sideitem_type,
#others_type,
#end_of_production {
	display: flex;
	flex-wrap:wrap;
}

.checkbox_search_wrap .search_box label {
	padding: 3px;
	margin: 3px 5px 3px 0;
	cursor: pointer;
	border: 1px solid #0a1e14;
}

.checkbox_search_wrap .search_box label.headline {
	margin: 10px 0 5px 0;
	width: 100%;
	background: #CDD0CB;
	border: none;
	cursor: auto;
}

.checkbox_search_wrap .search_box label#hands,
.checkbox_search_wrap .search_box label#new,
.checkbox_search_wrap .search_box label#end_of_production {
	margin: 0 0 5px 0;
}

.checkbox_search_wrap .search_box input[type=radio] {
	display: none;
}
.checkbox_search_wrap .search_box input[type=radio]:checked + label {
	background: #0a1e14;
	color:#fff;
}

.checkbox_search_wrap button {
	padding: 3px;
	margin: 3px 0;
	cursor: pointer;
	border: 1px solid #0a1e14;
	color:#3C3C3C;
	background: #E8EAE6;
}

.checkbox_search_wrap button:hover {
	color:#fff;
	background: #0a1e14;
}

.checkbox_search_wrap .select_reset {
	display: block;
	cursor: pointer;
	padding: 1%;
	border: 1px solid #0a1e14;
	background: #ff6b2c;
	color: #fff;
	border-radius: 8px;
}

.pc_reset {
	display: block;
	margin-bottom: 2%;
	width: 50%;
	text-align: center;
}

.checkbox_search_wrap .product_box {
	width:67%;
	margin-top: -10px;
}

.product_header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.checkbox_search_wrap .product_box .ec-shelfRole {
	margin-left: 10px;
}

.checkbox_search_wrap .product_box .ec-shelfRole ul {
	width:100%;
	display:flex;
	flex-wrap: wrap;
	list-style: none;
	padding-left: 0;
}

.checkbox_search_wrap .product_box .ec-shelfRole ul li {
	width: 50%;
}

.checkbox_search_wrap .product_box .ec-shelfRole ul li a {
	display: flex;
	flex-wrap: wrap;
	padding: 10px;
}

.checkbox_search_wrap .product_box .ec-shelfRole ul li a:hover {
	background: #CDD0CB;
	color: #0073BB !important;
}

.checkbox_search_wrap .product_box .ec-shelfRole ul li a .product_img {
	width: 30%;
}

.checkbox_search_wrap .product_box .ec-shelfRole ul li a .product_info_text {
	width: 68%;
	margin-left: 2%;
	line-height: 1.5rem;
	font-size: 0.95rem;
}

.checkbox_search_wrap .product_price_text {
	color:#E94451;
	font-weight: bold;
	margin-top: 10px;
}

.checkbox_search_wrap .product_box .ec-pagerRole {
	margin-left: 20px;
}

.checkbox_search_wrap .product_box .ec-pagerRole ul {
	width:100%;
	display:flex;
	flex-wrap: wrap;
}

.search_box{
	width: 33%;
}

.search_title{
	display: block;
	padding: .375rem .75rem;
	width: 48%;
	height: 37px;
	text-align: center;
	background: #CDD0CB;
	font-size: 16px;
	color: #3C3C3C;
}

.search_item input{
	height: 37px;
}

.search_box button.search_item_button{
	width: 34.5px;
	height: 37px;
}

/* =========================================
   全自動麻雀卓のご購入ページ・麻雀用品のご購入ページ(スマホ用)　※変更不可（触ってはいけません）
   ========================================= */
@media screen and (max-width:768px){
	.checkbox_search_wrap{
		display: block;
	}
	
	.checkbox_search_wrap .search_box_sptop{
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	
	.checkbox_search_wrap .sp-submit-btn{
		display: inline-block;
		width: 100%;
		padding: 2%;
		margin: 2% 0 5%;
		border: 1px solid #0a1e14;
		background-color: #007bff;
		color: #fff;
		text-align: center;
		border-radius: 8px;
	}
	
	.checkbox_search_wrap .select_open{
	  display: block;
	  cursor: pointer;
	  padding: 1%;
	  border: 1px solid #0a1e14;
	  background-color: #007bff;
	  color: #fff;
	  border-radius: 8px;
	}
	
	.checkbox_search_wrap .more_btn{
		display: block;
		cursor: pointer;
		padding: 2%;
		border: 1px solid #0a1e14;
		background-color: #007bff;
		color: #fff;
		margin-top: 2%;
		text-align: center;
		border-radius: 8px;
		transition: 0.1s ease;
	}
	
	.checkbox_search_wrap .more_btn span{
		display: inline-block;
		transform: rotate(0deg);
		transition: transform 0.3s ease;
	}
	
	.checkbox_search_wrap .more_btn.active span{
		transform: rotate(180deg);
	}
	
	.checkbox_search_wrap .select_close{
	  display: block;
	  cursor: pointer;
	  padding: 1%;
	  border: 1px solid #0a1e14;
	  background-color: #e4002b;
	  color: #fff;
	  border-radius: 8px;
	}
	
	.checkbox_search_wrap .search_box{
		width: 95%;
		height: 100vh; /* 画面全体 */
		position: fixed;
		top: 0;
		right: -100%;
		z-index: 777;
		background-color: #f2f2f2;
		transition: 0.5s 0.0s ease;
		padding: 5% 5% 35%;
		overflow-y: auto; /* 縦スクロールを許可 */
		-webkit-overflow-scrolling: touch; 
	}
	
	.checkbox_search_wrap .search_box.active{
	  right: 0;
	}
	
	.checkbox_search_wrap .more_row{
		display: none;
	}
	
	.checkbox_search_wrap .product_box{
		width: 100%;
		margin-top: 0;
	}
	
	.checkbox_search_wrap .product_box .ec-shelfRole{
		margin-left: 0;
	}
	
	.checkbox_search_wrap .product_box .ec-shelfRole ul li{
		width:100%;
	}
	
	.checkbox_search_wrap .product_box .ec-shelfRole ul li a .product_img{
		width: 30%;
	}
	
	.checkbox_search_wrap .product_box .ec-shelfRole ul li a .product_info_text{
		width: 68%;
		margin-left: 2%;
	}

	.checkbox_search_wrap .product_box .ec-pagerRole{
		margin-left: 0;
	}
	
	.checkbox_search_wrap .select_reset.pc_reset{
		display: none;
	}
	
	.search_box{
		width: 100%;
	}

	.search_title{
		width: 30%;
		font-size: 1rem;
	}
}

/* =========================================
   商品ページ
   ========================================= */
.ec-productRole__category a {
	color:#0073BB !important;
}

.ec-productRole__category a:hover {
	color: #0a1e14 !important;
}

.ec-productRole img {
	width: 100%;
	height: auto;
}

.english {
	margin-bottom: 15px;
}

.goods_detail {
	max-width: 1100px;
	margin-top: 50px;
}

.goods_detail h3 {
	margin-top:10px;
	margin-bottom: 30px;
	background-color: #555;
	color: #fff;
	border: double 10px #fff;
	font-size: 2.8rem;
	line-height: 5.5rem;
	text-align: center;
}

.goods_detail h4 {
	margin-bottom: 10px;
	margin-top: 10px;
	font-size: 1.4rem;
}

.goods_detail h5 {
	margin-top: 10px;
	font-size: 1.2rem;
}


.goods_detail_inner {
	display: table;
	margin-bottom: 50px;
}

.goods_detail_inner_box {
	position: relative;
	display: table-cell;
	width: 50%;
	vertical-align: top;
}

.goods_detail_inner_box img {
	width: 90%;
	height: auto;
	z-index: 0;
}

.goods_detail_inner_box p {
	line-height: 1.7rem;
	font-size: 1.2rem;
}


.goods_detail_inner_box .red {
	color: red;
}

.goods_detail_inner_box .black {
	color:#000;
}

.goods_detail_inner_box .white {
	color:#fff;
}

.goods_detail_inner_box .img_title {
	display: block;
	position: absolute;
	z-index: 1;
	top: 1%;
	left: 0;
	margin: 0;
	width: 90%;
	text-align: center;
	vertical-align: middle;
	font-size: 1.2rem;
}

.goods_detail_inner_box .img_text {
	display: block;
	position: absolute;
	z-index: 1;
	left: 0;
	top: 60%;
	width: 90%;
	line-height: 1.7rem;
	text-align: center;
	vertical-align: middle;
	font-size:1rem;
}

.goods_detail_inner_box .caption {
	display: block;
	float: right;
	vertical-align: middle;
	font-size:0.8rem;
	line-height: 1.5rem;
	width: 65%;
	height: 1.5rem;
	margin-top: -35px;
	margin-bottom: 10px;
}

.goods_detail_inner_box .caption::after {
	display: block;
	content: "";
	float: none;
}

/* =========================================
   商品ページ(スマホ用)
   ========================================= */
@media screen and (max-width: 767px) {
	.ec-productRole {
		padding: 0;
	}
	
	.goods_detail_inner {
		display: block;
	}

	.goods_detail_inner_box {
		display: block;
		width: 100%;
	}
	
	.goods_detail h3 {
		line-height: 2rem;
		font-size: 1.6rem;
		text-align: center;
	}
	
	.goods_detail h4 {
		font-size: 1.2rem;
	}
	
	.goods_detail_inner_box p {
		line-height: 1.2rem;
		font-size: 1rem;
	}
	
	.goods_detail_inner_box img {
		width: 100%;
		height: auto;
	}
	
	.goods_detail_inner_box .img_title {
		width: 100%;
		line-height: 1rem;
		font-size: 1rem;
	}
	
	.goods_detail_inner_box .img_text {
		width: 100%;
		line-height: 1rem;
		font-size: 0.8rem;
		top:55%;
	}
	
	.goods_detail_inner_box .caption {
		float: none;
		width: 100%;
		margin-top: 0;
	}
}

/* =========================================
   商品ページ(タブレット用)
   ========================================= */
@media screen and (min-width: 768px) and (max-width: 991px) {
	.goods_detail_inner{
		display: block;
	}
	
	.goods_detail_inner_box{
		display: block;
		width: 100%;
	}
	
	.goods_detail_inner_box img{
		width: 100%;
		height: auto;
	}
	
	.goods_detail_inner_box .img_title{
		width: 100%;
	}
	
	.goods_detail_inner_box .img_text{
		width: 100%;
		line-height: 2.0rem;
		top:55%;
	}
	
	.goods_detail_inner_box .caption{
		float: none;
		width: 100%;
		margin-top: 0;
	}
}

/* =========================================
   商品ページ(パソコン用※最大幅に満たない場合)
   ========================================= */
@media screen and (min-width: 992px) and (max-width:1199px) {
/* 992px~1199pxまでの幅の場合に適応される */
	.goods_detail_inner_box .caption{
		float: none;
		width: 100%;
		margin-top: 0;
	}
	
	.goods_detail_inner_box .img_text{
		line-height: 1.5rem;
		top:55%;
	}
}

/* =========================================
   マイページ
   ========================================= */
.ec-mypageRole{
	background: #fff;
	padding: 20px;
}

.ec-mypageRole .ec-borderedDefs dt{
	width: 35%;
}

.ec-withdrawRole{
	background: #fff;
	padding: 20px;
}

/* =========================================
   マイページ(スマホ用)
   ========================================= */
@media screen and (max-width: 767px) {
	.ec-mypageRole .ec-borderedDefs dt{
		width: 100%;
	}
}

/* =========================================
   会社概要ページ
   ========================================= */
.about .ec-borderedDefs{
	margin-top: 20px;
}

.about .ec-borderedDefs dl{
	width: 100%;
	border-bottom: 1px dotted #0a1e14;
}

.about .ec-borderedDefs dl:first-child{
	border-top: 1px dotted #0a1e14;
}

.about .ec-borderedDefs dl dd{
	line-height: 1.6rem;
}

/* =========================================
   会社概要ページ(スマホ用)
   ========================================= */
@media screen and (min-width: 768px) {
	.about .ec-label{
		margin-bottom: 0;
	}

	.about .ec-borderedDefs dl{
		display: table;
		padding: 0;
	}

	.about .ec-borderedDefs dl dt{
		display: table-cell;
		vertical-align: middle;
		padding: 10px;
		text-align: center;
		background: #0a1e14;
		color:#E8EAE6;
	}

	.about .ec-borderedDefs dl dd{
		display: table-cell;
		vertical-align: middle;
		padding: 10px;
		margin-bottom: 0;
	}
}

/* =========================================
   カートページ　※変更不可（触ってはいけません）
   ========================================= */
.ec-cartRole__cart{
	background: #FAFAFA;
	margin: 0 !important;
}

.ec-cartHeader{
	background: #0a1e14;
	margin-bottom: 0;
}

.ec-cartHeader .ec-cartHeader__label{
	background: #0a1e14;
	color:#E8EAE6;
}

.ec-cartRow__sutbtotal{
	margin-right: 5%;
}

.ec-cartRole .ec-cartRole__actions{
	margin-right: 0;
}

/* =========================================
   カートページ(スマホ用)　※変更不可（触ってはいけません）
   ========================================= */
@media screen and (max-width: 767px) {
	.ec-cartRole{
		padding: 0;
	}

	.ec-cartRow .ec-cartRow__contentColumn{
		display: block;
	}
	.ec-cartRow .ec-cartRow__img{
		display: block;
		margin-bottom: 10px;
	}
	
	.ec-cartRow .ec-cartRow__summary {
		display: block;
		width: 100%;
	}
}

/* =========================================
   購入ページ　※変更不可（触ってはいけません）
   ========================================= */
.ec-orderPayment h2{
	margin-top: 20px;
}

.payment_image{
	max-width: 50px !important;
	margin-bottom: 10px;
}

/* =========================================
   全自動麻雀卓についてのページ
   ========================================= */
.block_outer .container{
	width: 100%;
	max-width: 1100px;
	border: solid 1px #0a1e14;
	padding: 20px;
}

.guide-title{
	width: 100%;
	border: solid 1px #0a1e14;
	padding: 10px;
	margin-bottom: 10px;
}

.guide-title h3{
	margin: 0;
}

.guide-body{
	margin-bottom: 20px;
}


/* =========================================
   利用規約ページ
   ========================================= */
.agreement{
	width: 30%;
	margin: 10px auto;
}

.agreement .ec-blockBtn--action{
	margin-bottom: 16px;
}

.agreement .ec-blockBtn--cancel{
	margin-bottom: 16px;
}

/* =========================================
   各種追加設定　※追加可　変更不可
   ========================================= */
.ec-registerCompleteRole{
	background: #fff;
	padding-bottom: 20px;
}

.ec-orderRole{
	background: #fff;
	padding-top: 20px;
	padding-bottom: 20px;
	margin-bottom: 20px;
}

.ec-addressList{
	background: #fff;
}

.ec-reportDescription{
	width: 100%;
}

.scroll_table {
	width: 100%;
	max-width: 1100px;
	overflow-x: auto;
}
 
.scroll_table table {
	white-space: nowrap;
}

.ec-orderMail{
	overflow-wrap: break-word;
}

.ec-blockBtn--action:hover{
	color:#6B0000 !important;
	background-color: #EDA3A0;
	border-color: #EDA3A0;
}

.ec-blockBtn--cancel{
	background-color: #0a1e14;
	border-color: #0a1e14;
}

.ec-blockBtn--cancel:hover{
	color: #0a1e14 !important;
	background-color: #CFDAC8;
	border-color: #CFDAC8;
}

.form-control{
	background: #fff !important;
}

.phone_entry_box{
	margin-top: 0;
}

.phone_entry{
	width: 25%;
	text-align: left;
}

.phone_red{
	width: 73%;
	text-align: left;
	color: #E94451;
	line-height: 1.6em;
	font-size:12px;
	margin-left:2%;
}

.ec-errorMessage{
	margin-bottom: 5px !important;
}

.help_login a{
	display: inline-block;
	width: 100%;
	text-align: center;
	margin: 10px auto 20px;
}

.new_member a{
	display: inline-block;
	width: 100%;
	background: #0a1e14;
	color: #fff;
	line-height: 56px;
	height: 56px;
	text-align: center;
	vertical-align: middle;
	font-weight: bold;
	font-size: 14px;
	margin-bottom: 30px;
}

.new_member a:hover{
	color: #0a1e14 !important;
	background-color: #CFDAC8;
	border-color: #CFDAC8;
}

.sln_card_payment_container #card_BillingFirstName,#card_BillingLastName{
	width: 90%;
}

.coupon_box{
	display: flex;
	justify-content: center;
	width: 100%;
}

.ec-orderCoupon .coupon_box img{
	vertical-align: middle;
	margin: 2% 2% 2% 0;
}

.ec-orderCoupon .coupon_box p{
	display: flex;
	align-items: center;
	width: 90%;
	height: auto;
}

.ec-orderCoupon .btn{
	margin-bottom: 2%;
}

label.ec-label{
	letter-spacing: 0.12em;
	font-size: 18px;
}
.ec-required{
	font-size: 16px;
}

/* =========================================
   各種追加設定(スマホ用)　※追加可　変更不可
   ========================================= */
@media screen and (max-width: 767px) {
	.phone_entry_box{
		margin: 0;
	}

	.phone_entry{
		width: 100%;
	}
	
	.phone_red{
		width: 100%;
		margin-left: 0;
	}
}