@charset "utf-8";
html,body{
    width: 100%;
    min-width:1000px;
}
body {
	background: #fff;
	padding: 0;
	margin: 0;
	font-family: "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",  Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size: 15px;
	line-height: 1.6em;
	color: #333;
	-webkit-text-size-adjust: 100%;
}
a {
	text-decoration: none;
	color: #243F99;
}
a:hover {
	text-decoration: none;
	opacity: 0.6;
	color: #333;
}
dd {
	margin-left: 0;
}
/* ヘッダーキャンペーン */
.headercampaign {
/*	background: linear-gradient(#A78B4C,#F6F3C8);
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	height: 100px;
	position: relative;
*/
	width:100%;
}

.headercampaign {
	display: flex;
	display: -webkit-flex;
	justify-content: center;
}

.headercampaign li{
	position:relative;
	width:100%;
	text-align:center;
}

.headercampaign li img{
	width:100%;
	max-width:1064px;
	height:100%;
	max-height:100px;
	text-align:center;
	display:block;
	margin: 0 auto;
}
.headercampaign li a{
	display:block;
}
.headercampaign li a:hover{
	opacity:1.0;
}

/*
.headercampaign div.ttl {
	position: relative;
	width: 577px;
}
.headercampaign div.ttl p {
	color: #fff;
	font-weight: bold;
	position: relative;
	z-index: 999;
	text-align: center;
	display: block;
	width: 192px;
	font-size: 20px;
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}
.headercampaign div.ttl img {
	position: absolute;
	top: 0;
	left: 0;
}
.headercampaign div.txt {
	width: 300px;
	padding: 10px;
}
.headercampaign div.txt p {
	line-height: 1.2em;
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
	color: #211713;
}
.headercampaign div.present {
	padding-left: 40px;
	position: relative;
}
.headercampaign div.present ul {
	padding-top: 10px;
}
.headercampaign div.present ul li {
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
	font-size: 18px;
	font-weight: bold;
	overflow: hidden;
	padding-right: 80px;
	padding-bottom: 5px;
	margin-bottom: 5px;
}
.headercampaign div.present ul li b {
	display: block;
	width: 130px;
	float: left;
	font-weight: bold;
	font-size: 25px;
}
.headercampaign div.present ul li:first-child {
	border-bottom: #9A8F67 2px dotted;
}
.headercampaign div.present ul li:first-child b {
	color: #E50112;
}
.headercampaign div.present ul li:last-child b {
	color: #027031;
}
.headercampaign div.present img.arrow {
	position: absolute;
	top: 30px;
	left: 0;
}
.headercampaign div.present img.img {
	position: absolute;
	top: 0;
	right: 0;
}
@media screen and  (max-width: 1499px) {
	.headercampaign {
		height: 120px;
	}
	.headercampaign div.txt {
		position: absolute;
		bottom: 2px;
		left: 0;
		width: 100%;
		padding: 0;
		font-size: 13px;
		text-align: center;
		border-top: #fff 1px solid;
		padding-top: 3px;
	}
	.headercampaign div.present {
		padding-left: 30px;
		margin-left: 5px;
	}
	.headercampaign div.present ul {
		padding-top: 18px;
	}
	.headercampaign div.present ul li {
		font-size: 15px;
		padding-right: 60px;
	}
	.headercampaign div.present ul li b {
		font-size: 18px;
		width: 100px;
	}
	.headercampaign div.present img.img {
		right: -10px;
	}
}
*/
/* ヘッダー */
header {
	width: 96%;
	margin: 0 auto;
	overflow: hidden;
}
header ul.htop {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-end;
}
header ul.htop li {
	display: block;
	padding: 10px 15px;
	white-space: nowrap;
}
header ul.htop li a{
	white-space: nowrap;
}
header ul.htop li img {
	vertical-align: middle;
	margin-right: 10px;
}
header ul.htop li a {
	color: #333;
}
header ul.htop li:nth-child(1) {
	display:block;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
header ul.htop li:nth-child(4) a {
	background: #FF8000;
}
header ul.htop li:nth-child(n+5) a {
	background: #18368F;
}
header ul.htop li:nth-child(n+4) {
	padding: 0;
	margin-left: 1px;
}
header ul.htop li:nth-child(n+4) a {
	color: #fff;
	padding: 10px 15px;
	display: block;
}
header ul.htop li:nth-child(n+4) a:hover {
	opacity: 0.8;
}
header div.logo {
	display: flex;
	justify-content: flex-start;
	float: left;
}
header div.logo h1,header div.logo div.phone {
	display: block;
}
header div.logo h1 {
	padding-right: 35px;
}
header div.logo div.phone {
	padding-top: 15px;
}
header ul.search {
	float: right;
	display: flex;
	justify-content: flex-end;
	padding-top: 40px;
}
@media screen and  (max-width: 1430px) {
	header ul.search {
		padding-top: 0;
		padding-bottom: 10px;
		clear: both;
		justify-content: center;
	}
	header ul.search li:first-child {
		margin-left: 0;
	}
}
header ul.search li {
	display: inline-block;
	margin-left: 10px;
}
select::-ms-expand {
    display: none;
}
header ul.search li select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: #24429c 1px solid;
	border-radius: 0;
	width: 180px;
	height: 27px;
	font-size: 15px;
	background: url(../images/header/arrow.jpg) right center no-repeat;
	box-sizing: border-box;
	padding: 0 25px 0 5px;
}
header ul.search li input[type=text] {
	width: 277px;
	height: 27px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: #24429c 1px solid;
	font-size: 15px;
	padding: 1.5px 10px;
	box-sizing: border-box;
}
header ul.search li input[type=image] {
	border: none;
	padding: 0;
	margin: 0;
}
header ul.search li a {
	background: #18368F;
	display: block;
	width: 138px;
	height: 27px;
	text-align: center;
	color: #fff;
	position: relative;
}
header ul.search li input[type=image]:hover,header ul.search li a:hover {
	text-decoration: none;
	opacity: 0.8;
}
header ul.search li a::after{
	position: absolute;
	top: 0;
	bottom: 0;
	right:5px ;
	margin: auto;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 4px;
	height: 4px;
	border: 4px solid transparent;
	border-left: 4px solid #fff;
}
/* グローバルナビ */
.gnavi {
	clear: both;
	position: relative;
	border-bottom: #AAA 1px solid;
}
.gnavi ul{
	width: 98%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	position: relative;
}
.gnavi ul::before {
	content: "";
	display: block;
	width: 1px;
	height: 24px;
	position: absolute;
	top: 10px;
	left: 0;
	background: #24419B;
}
.gnavi ul li {
	display:block;
	text-align: center;
	position: relative;
	width: 14.28%;
	padding-bottom: 20px;
	border-bottom:solid 1px #fff;
}
.gnavi ul li::after {
	content: "";
	display: block;
	width: 1px;
	height: 24px;
	position: absolute;
	top: 10px;
	right: 0;
	background: #24419B;
}
.gnavi ul li a {
	display: block;
	width: 100%;
	height: 100%;
	color: #243F99;
	font-size: 21px;
	text-align: center;
	padding-top: 10px;
}
.gnavi ul li a span {
	display: block;
	color: #333;
	font-size: 13px;
}
.gnavi ul li a:hover {
	text-decoration: none;
}
.gnavi ul li.current-item {
	border-bottom: #0B3775 1px solid;
}
.gnavi ul li.current-item::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	margin-left: -10px;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 0 4px 4px 4px;
	border-color: transparent transparent #19283C transparent;
}
.contentsnavi {
	background: #F4F4F4;
	padding: 10px;
	text-align: right;
}
.contentsnavi dt,.contentsnavi dd {
	display: inline-block;
}
.contentsnavi dt {
	font-size: 18px;
	padding-right: 15px;
}
.contentsnavi dd a {
	color: #444;
	font-size: 16px;
	padding: 0 15px;
}
/* ご利用ガイド */
.fguide {
	background: #EEE;
	padding: 50px 5%;
}
.fguide h2 {
	text-align: center;
	font-size: 32px;
	color: #24419B;
	padding-bottom: 15px;
}
.fguide h2 img,.fguide h3 img {
	vertical-align: middle;
	margin-right: 10px;
}
.fguide h3 {
	font-size: 20px;
	color: #243F99;
	padding-bottom: 10px;
}
.topmail a.btn,
.fguide a.btn {
	padding-left: 25px;
	position: relative;
}
.topmail a.btn::before,
.topmail a.btn::after,
.fguide a.btn::before,
.fguide a.btn::after{
	position: absolute;
	top: -2px;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.topmail a.btn::before,
.fguide a.btn::before{
	width: 12px;
	height: 12px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #24409A;
}
.topmail a.btn::after,
.fguide a.btn::after{
	left: 5px;
	box-sizing: border-box;
	width: 3px;
	height: 3px;
	border: 3px solid transparent;
	border-left: 3px solid #fff;
}
.fguide div.inner {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-top: 40px;
}
.fguide div.inner dl {
	display: block;
	width: 32%;
	padding-bottom: 30px;
}
.fguide div.inner dl dt {
	font-size: 20px;
	color: #243F99;
	border-bottom: #243F99 1px solid;
	margin-bottom: 10px;
}
.fguide div.inner dl dt img {
	vertical-align: middle;
	margin-right: 10px;
}
.fguide div.inner dl dd {
	position: relative;
	padding-left: 25px;
	padding-bottom: 5px;
}
.fguide div.inner dl dd::before,
.fguide div.inner dl dd::after{
	position: absolute;
	top: -7px;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.fguide div.inner dl dd::before{
	width: 12px;
	height: 12px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #24409A;
}
.fguide div.inner dl dd::after{
	left: 5px;
	box-sizing: border-box;
	width: 3px;
	height: 3px;
	border: 3px solid transparent;
	border-left: 3px solid #fff;
}
/* 会社案内 */
.fcompany {
	padding-top: 60px;
	padding-bottom: 20px;
}
.fcompany div.inner {
	width: 90%;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	padding-bottom: 50px;
}
.fcompany div.inner div.left,.fcompany div.inner table {
	display: block;
}
.fcompany div.inner div.left {
	position: relative;
	height: 340px;
	padding-left: 546px;
	margin-right: 20px;
}
.fcompany div.inner div.left img.img {
	position: absolute;
	top: 0;
	left: 0;
}

.fcompany div.inner div.left p span {
	background: #24429C;
	color: #fff;
	margin-right: 10px;
	padding: 0 10px;
}
.fcompany div.inner div.left p img.mail {
	vertical-align: middle;
	margin-right: 10px;
}
.fcompany div.inner div.left a.btn {
	color: #24409A;
	font-size: 19px;
	padding: 10px 70px;
	border: #24409A 1px solid;
	display: block;
	position: absolute;
	left: 546px;
	margin-top: 20px;
	text-align: center;
}
.fcompany div.inner div.left a.btn::before {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 10px;
	margin: auto;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 4px;
	height: 4px;
	border: 6px solid transparent;
	border-left: 8px solid #0b3775;
}
.fcompany div.inner div.left a.btn:hover::before {
	border-left: 8px solid #fff;
}
.fcompany div.inner div.left a.btn:hover {
	text-decoration: none;
  	color: #FFF;
	border: 1px solid #FFF;
	background: #0b3775;
	transition: 0.5s all ease;
}
@media screen and  (max-width: 1374px) {
	.fcompany div.inner div.left {
		height: auto;
		padding-left: 35%;
	}
	.fcompany div.inner div.left img.img {
		width: 50%;
	}
	.fcompany div.inner div.left a.btn {
		position: relative;
		left: auto;
		margin-top: 20px;
		padding: 10px 20px;
	}
}
.fcompany div.inner table {
	width: 385px;
}
.fcompany div.inner table caption {
	text-align: center;
	font-weight: bold;
	font-size: 25px;
	padding-bottom: 10px;
}
.fcompany div.inner table th,.fcompany div.inner table td {
	border: #333 1px solid;
	font-size: 20px;
	text-align: center;
	padding: 10px;
}
.fcompany div.inner table thead th {
	background: #24419B;
	color: #fff;
}
.fcompany div.inner table tbody td:nth-child(1) {
	color: #FF0000;
}
/*
.fcompany div.inner table tbody td:nth-child(7) {
	background: #D0DAF4;
}
*/
.fcompany div.inner table tbody td.holiday {
	background: #c2e6fe;
}
.fcompany div.inner table tbody td.shipping {
	background: #00bfff;
	color: #FFFFFF;
}
.fcompany div.inner table tfoot td {
	text-align: left;
	font-size: 15px;
	border: none;
	color: #333;
	padding: 10px 0;
}
.fcompany div.inner table tfoot td span.holiday {
	color: #c2e6fe;
	margin-right: 5px;
}
.fcompany div.inner table tfoot td span.shipping {
	color: #00bfff;
	margin-left: 10px;
	margin-right: 5px;
}
.fcompany div.inner table tfoot td span {
	color: #D0DAF4;
	margin-right: 5px;
}
.fcompany ul.sns {
	text-align: center;
}
.fcompany ul.sns li {
	display: inline-block;
	margin: 0 10px;
}
/* #11817 2019.09.03 add start */
.fcompany ul.sns li a img{
	width: 60px;
	height: 60px;
}
/* #11817 2019.09.03 add end */
/* フッター */
footer {
	clear: both;
}
footer ul.fnavi {
	background: #24429C;
	padding: 20px 2%;
	display: flex;
	justify-content: center;
}
footer ul.fnavi li {
	display: block;
	font-size: 20px;
	text-align: center;
}
footer ul.fnavi li a {
	color: #fff;
	border-right: #fff 1px solid;
	padding: 0 20px;
}
footer ul.fnavi li a:hover {
	opacity: 0.7;
}
footer ul.fnavi li:last-child a {
	border-right: none;
}
@media screen and  (max-width: 1530px) {
	footer ul.fnavi {
		flex-wrap: wrap;
	}
}
footer div.sitemap {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	padding: 20px 0 50px 0;
}
footer div.sitemap dl {
	display: block;
	padding: 0 15px;
}
footer div.sitemap dl dt {
	font-size: 20px;
	padding-bottom: 10px;
	padding-top: 30px;
}
footer div.sitemap dl dd {
	padding-left: 15px;
	position: relative;
	font-size: 17px;
	margin-bottom: 10px;
}
footer div.sitemap dl dd a {
	color: #1F1F1F;
}
footer div.sitemap dl dd::before {
	position: absolute;
	top: -5px;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 4px;
	height: 8px;
	border: 6px solid transparent;
	border-left: 8px solid #243F99;
}
footer p.copy {
	background: #24429C;
	color: #fff;
	text-align: center;
	position: relative;
	padding: 20px 0;
}
footer p.copy a {
	color: #fff;
	text-decoration: underline;
}
footer p.copy a:hover {
	opacity: 0.7;
}
footer p.copy a.global {
	display: block;
	width: 100px;
	height: 50px;
	position: absolute;
	top: 5px;
	right: 2%;
}
footer p.copy span.siteseal {
	display: block;
	width: 100px;
	height: 50px;
	position: absolute;
	top: 5px;
	right: 2%;
}
@media screen and  (max-width: 1115px) {
	footer p.copy {
		font-size: 14px;
	}
}
/* 共通 */
a.pagetop {
	width: 103px;
	height: 138px;
	display:block;
	position:fixed;
	right:15px;
	bottom:70px;
	z-index: 9999;
}
ul.bread {
	clear: both;
	width: 95%;
	margin: auto;
	padding-top: 5px;
	padding-bottom: 40px;
}
ul.bread li {
	display: inline-block;
	padding-right: 5px;
}
ul.bread li a {
	position: relative;
	padding-right: 25px;
	display: block;
	color: #1F1F1F;
}
ul.bread li a::after {
	content: "";
	top: -2px;
	right: 0;
	bottom: 0;
	position: absolute;
	vertical-align: middle;
	margin: auto;
	box-sizing: border-box;
	width: 6px;
	height: 6px;
	border: 6px solid transparent;
	border-left: 6px solid #24419B;
}
.wrapper {
	width: 95%;
	margin: 0 auto;
	overflow: hidden;
	padding-bottom: 100px;
}
.wrapper.pb0 {
	padding-bottom: 0;
}
.wrapper div.leftside {
	width: 25%;
	float: left;
}
.wrapper section.main {
	width: 72%;
	float: right;
	padding-bottom: 100px;
}
.wrapper h2,.encyclopedia h2 {
	font-size: 30px;
	color: #243F99;
	border-bottom: #243F99 1px solid;
	margin-bottom: 15px;
}
.wrapper h2.qualityside {
	font-size: 24px;
}
.encyclopedia h2 {
	border-bottom: 0;
	margin-bottom: 10px;
}
.wrapper section.main h2 {
	margin-bottom: 20px;
	position: relative;
}
.wrapper h2 span,.encyclopedia h2 span {
	font-size: 20px;
	color: #535353;
	margin-left: 15px;
}
.wrapper section.main h2 a.link {
	position: absolute;
	top: 10px;
	right: 0;
	font-size: 15px;
	color: #24419B;
}
.wrapper section.main h2.ttlline,.wrapper section.main h3.ttlline,.wrapper h3.ttlline {
	border-left: #19378E 8px solid;
	font-size: 25px;
	padding-left: 15px;
	line-height: 1.4em;
	clear: both;
}
.wrapper section.main h3.ttlline,.wrapper h3.ttlline {
	color: #243F99;
	border-bottom: #243F99 1px solid;
	margin-bottom: 15px;
}
.wrapper div.leftside ul.guide {
	padding-left: 35px;
}


.wrapper div.leftside:not(.search) ul li a {
	position: relative;
	display: block;
	padding-left: 25px;
	margin-bottom: 15px;
}
.wrapper div.leftside:not(.search) ul.item li a {
	margin-bottom: 5px;
}
.wrapper div.leftside:not(.search) ul li a::before,.wrapper div.leftside:not(.search) ul li a::after {
	content: "";
	top: -2px;
	left: 0;
	bottom: 0;
	position: absolute;
	vertical-align: middle;
	margin: auto;
}
.wrapper div.leftside:not(.search) ul li a::before{
	width: 12px;
	height: 12px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #24409A;
}
.wrapper div.leftside:not(.search) ul li a::after{
	left: 5px;
	box-sizing: border-box;
	width: 3px;
	height: 3px;
	border: 3px solid transparent;
	border-left: 3px solid #fff;
}

.wrapper div.leftside h2 {
	font-size: 19px;
}
.wrapper div.leftside h2.term {
	background: #18368F;
	color: #fff;
	border-bottom: 0;
	font-size: 20px;
	text-align: center;
	padding: 15px 0;
	position: relative;
	margin-bottom: 20px;
}
.wrapper div.leftside h2.term::after {
	content: "";
	position: absolute;
	bottom: -10px; left: 50%;
	margin-left: -10px;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 10px 10px 0 10px;
	border-color: #18368F transparent transparent transparent;
}
.wrapper div.leftside h2.guide {
	border-bottom: 0;
	font-size: 18px;
}
.wrapper div.leftside h2.guide img {
	vertical-align: middle;
	margin-right: 10px;
}
.wrapper div.leftside div.termbox {
	border: #C3C3C3 1px solid;
	padding: 30px 10px
}
.wrapper div.leftside div.termbox h3 {
	overflow: hidden;
	border-left: #18368F 4px solid;
	border-bottom: #C3C3C3 1px solid;
	color: #18358E;
	font-size: 20px;
	padding-left: 10px;
	margin-bottom: 10px;
}


/*オレンジ色テキストリンクver(180419まで使用)
.wrapper div.leftside div.termbox h3 a {
	float: right;
	color: #FF8000;
	font-size: 14px;
}
*/

/*******180418edit -start- *******/
.wrapper div.leftside div.termbox h3 a {
	float: right;
	color: #fff;
	font-size: 14px;
	width: 160px;
	background-color: #FF8000;
	box-sizing: border-box;
	line-height: 1;
	padding: 6px 5px 5px;
	margin-top: 4px;
	border: 1px solid transparent;
	transition:ease .3s;
  }

  .wrapper div.leftside div.termbox h3 a.dtlchange{
	letter-spacing: 0.085rem;
  }

  .wrapper div.leftside div.termbox h3 a:hover{
	border-color: #ff8000;
	color: #ff8000;
	background-color: #fff;
	transition:ease .3s;
	opacity: 1;
  }

  .wrapper div.leftside div.termbox h3 a::before{
	content: " ";
	background: url('../images/search_detail.png') 50% 50% no-repeat;
	background-size: auto auto;
	padding: 10px 8px 8px;
	-webkit-background-size: contain;
	background-size: contain;
	margin-right: 5px;
	transition:ease .3s;
  }

  .wrapper div.leftside div.termbox h3 a:hover::before{
	background: url('../images/search_detail2.png') 50% 50% no-repeat;
	-webkit-background-size: contain;
	background-size: contain;
	transition:ease .3s;
  }

  /*******180418edit -end- *******/

.wrapper div.leftside div.termbox div.terms {
	position: relative;
	padding-left: 10px;
	padding-bottom: 40px;
	clear: both;
}
.wrapper div.leftside div.termbox div.terms dl dt {
	color: #18338C;
	font-size: 15px;
}
.wrapper div.leftside div.termbox div.terms dl dd,.wrapper div.leftside div.termbox div.terms dl dd ul {
	position: relative;
	padding-left: 15px;
	margin-left: 15px;
}
.wrapper div.leftside div.termbox div.terms dl dd ul {
	padding-left: 15px;
}
.wrapper div.leftside div.termbox div.terms dl dd::before,.wrapper div.leftside div.termbox div.terms dl dd ul li::before {
	position: absolute;
	top: 5px;
	left: 0;
	content: "";
	display: block;
	width: 2px;
	height: 11px;
	background: #18338C;
}
.wrapper div.leftside div.termbox div.terms dl dd::after,.wrapper div.leftside div.termbox div.terms dl dd ul li::after {
	position: absolute;
	top: 14px;
	left: 0;
	content: "";
	display: block;
	width: 8px;
	height: 2px;
	background: #18338C;
}
.wrapper div.leftside div.termbox div.terms span.cat {
	color: #18338C;
	font-size: 13px;
	font-weight: bold;
}
.wrapper div.leftside div.termbox div.terms span.off {
	background: #AAA;
	color: #fff;
	display: table-cell;
	position: absolute;
	top: 0;
	right: 0;
	text-align: center;
	width: 22px;
	height: 22px;
	cursor:pointer;
}

.wrapper div.leftside div.termbox div.terms.dtl p {
	margin-bottom:5px;
}
.wrapper div.leftside div.termbox a.clearbtn {
	text-align: center;
	color: #fff;
	background: #666;
	position: relative;
	font-size: 17px;
	display: block;
	width: 100%;
	padding: 12px 0;
}
.wrapper div.leftside div.termbox a.clearbtn::after {
	content: url(../images/common/clearbtn.png);
	position: absolute;
	top: 10px;
	right: 5px;
}
.wrapper div.leftside dl.shoplist dt {
	font-size: 18px;
	padding-bottom: 5px;
	color: #243F99;
}
.wrapper div.leftside dl.shoplist dt:nth-child(n+2) {
	padding-top: 10px;
}
.wrapper div.leftside dl.shoplist dd {
	padding-left: 20px;
}
.wrapper div.leftside dl.shoplist dd a {
	position: relative;
	display: block;
	padding-left: 25px;
}
.wrapper div.leftside dl.shoplist dd a::before,.wrapper div.leftside dl.shoplist dd a::after {
	content: "";
	top: -2px;
	left: 0;
	bottom: 0;
	position: absolute;
	vertical-align: middle;
	margin: auto;
}
.wrapper div.leftside dl.shoplist dd a::before{
	width: 12px;
	height: 12px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #24409A;
}
.wrapper div.leftside dl.shoplist dd a::after{
	left: 5px;
	box-sizing: border-box;
	width: 3px;
	height: 3px;
	border: 3px solid transparent;
	border-left: 3px solid #fff;
}
.wrapper div.leftside h3 {
	font-size: 18px;
	color: #243F99;
	padding-bottom: 10px;
}

.wrapper div.leftside ul.teatime li,
.wrapper div.leftside ul.info li {
	line-height:140%;
}

.wrapper div.leftside ul.teatime {
	margin-top:15px;
}

/* トップページ */
.slidebnr {
	padding-top: 40px;
	padding-bottom: 30px;
}
.slidebnr li,.slidebnr dl {
	position: relative;
	margin: 0 5px;
	display: block;
}
.slidebnr li img,.slidebnr dl img {
	width: 100%;
}
.slidebnr li img.icn,.slidebnr dl img.icn {
	position: absolute;
	top: 5%;
	left: 5%;
	width: 34%;
}

.slidebnr dl dd a {
	display:block;
	width:100%;
    word-wrap: normal;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
}

.slidebnr dl dd a {
	color: #1F1F1F;
	text-decoration: none;
}

.topnews {
	width: 90%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	padding: 10px 40px;
	box-sizing: border-box;
	margin: 0 auto 30px auto;
	position: relative;
}
.topnews::before,
.topnews::after {
	position: absolute;
	top: 0;
	content: '';
	width: 20px;
	height: 100%;
	border-top: 1px solid #555;
	border-bottom: 1px solid #000;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.topnews::before {
	left: 0;
	border-left: 1px solid #000;
}
.topnews::after {
	right: 0;
	border-right: 1px solid #000;
}
.topnews h2 {
	font-size: 35px;
	display: block;
	width:270px;
}
.topnews ul {
	display: block;
	width: 86%;
}
.topnews ul li {
	display: flex;
	justify-content: flex-start;
}
.topnews ul li span,.topnews ul li a {
	display: inline;
}
.topnews ul li span {
	width: 12%;
	width:100px;
}
.topnews ul li a {
	color: #1F1F1F;
	word-break: break-all;
	width: 88%;
	box-sizing: border-box;
	padding-left: 10px;
}
.topsalebnr {
	background: #EEE;
	padding: 40px 5%;
}
.topsalebnr img {
	width: 100%;
}
.slidebnr .slick-dots li button::before,
.otherslide .slick-dots li button::before {
	font-size:15px;
}

.campaginbnr li {
	/*display: block;*/
	margin: 0 5px;
}
.campaginbnr {
	padding: 20px 0 20px 0;
	margin-bottom: 20px;
}
.campaginbnr li img {
	/*width: 100%;*/
}
.campaginbnr .slick-dots li {
	width: 50px;
	height: 4px;
	margin: 0 5px;
}
.campaginbnr .slick-dots li button {
	display: block;
	width: 50px;
	height: 4px;
}
.campaginbnr .slick-dots li button::before {
	content: "";
	display: block;
	width: 50px;
	height: 15px;
	background: #777;
	opacity: 1;
}
.campaginbnr .slick-dots li.slick-active button::before {
	background: #24419B;
	opacity: 1;
}
.topuses {
	clear: both;
	background: #0B3775;
	padding-top: 35px;
	padding-bottom: 30px;
}
div.topuses {
	background: #fff;
}
.topuses h2 {
	font-size: 35px;
	color: #fff;
	width: 90%;
	margin: 0 auto;
	display: block;
	border: 0;
}
.topuses h2 span {
	font-size: 20px;
	padding-left: 10px;
}
div.topuses h2 span {
	padding-left: 0;
}
.wrapper section.main div.topuses h2,.wrapper section.main div.topitem h2 {
	color: #24409A;
	margin-bottom: 0;
	border: 0;padding-bottom: 0;
}
.topuses div.inner {
	width: 90%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
div.topuses div.inner {
	width: 100%;
}
.topuses div.inner dl {
	display: block;
	width: 32.5%;
	background: #eee;
	padding-bottom: 15px;
}
div.topuses div.inner dl {
	border: #BBB 1px solid;
}
.topuses div.inner dl dt {
	margin-bottom: 10px;
	position: relative;
}
.topuses div.inner dl dt img {
	width: 100%;
}
.topuses div.inner dl dt b {
	position: absolute;
	top: 10%;
	left: 5%;
	/*color: #545454;*/
	color: #000;
	font-size: 30px;
	line-height: 1.1em;
	text-shadow: 0 0 28px #eee;
}
.topuses div.inner dl dt b span {
	color: #24419B;
	font-size: 23px;
	display: block;
	text-shadow: 0 0 5px #eee;
}
.topuses div.inner dl dd {
	padding-left: 25px;
	position: relative;
	margin-bottom: 5px;
}
.topuses div.inner dl dd a {
	color: #1F1F1F;
}
.topuses div.inner dl dd::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 10px;
	margin: auto;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 4px;
	height: 4px;
	border: 4px solid transparent;
	border-left: 4px solid #0B3775;
}
.topabout {
	background: url(../images/top/img.jpg) center top no-repeat;
	/*background-size: auto 100%;*/
	background-size: cover;
	padding-top: 60px;
	padding-bottom: 100px;
	padding-left: 6%;
	margin-bottom: 30px;
}
.topabout h2,.topranking h2,.topitem h2,.topfeature h2,.topclbrand h2,.topbrand h2,.topnewslist h2,.mailmagazine h2,.topdictionary h2,.topstaffblog h2 {
	color: #24409A;
	font-size: 33px;
	padding-bottom: 20px;
}
.topabout h2 span,.topranking h2 span,.topitem h2 span,.topfeature h2 span,.topclbrand h2 span,.topbrand h2 span,.topnewslist h2 span,.mailmagazine h2 span,.topdictionary h2 span,.topstaffblog h2 span {
	font-size: 18px;
	color: #545454;
	margin-left: 10px;
}
.topfeature h2 {
	padding-left: 5%;
}
.topabout p {
	padding-right: 58%;
}
.topabout a {
	display: block;
	width: 382px;
	height: 60px;
	box-sizing: border-box;
	color: #24419B;
	border: #24419B 1px solid;
	font-size: 19px;
	text-align: center;
	padding-top: 16px;
	background:#fff;
	position: relative;
	margin: 50px auto 0 auto;
}
.topabout a::before {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 10px;
	margin: auto;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 4px;
	height: 4px;
	border: 6px solid transparent;
	border-left: 8px solid #0b3775;
}
.topabout a:hover::before {
	border-left: 8px solid #fff;
}
.topabout a:hover {
	text-decoration: none;
  	color: #FFF;
	border: 1px solid #FFF;
	background: #0b3775;
	transition: 0.5s all ease;
}
.topranking {
	width: 90%;
	margin: 0 auto;
	padding-top: 10px;
	padding-bottom: 30px;
	position:relative;
}
.topranking ul.tab {
}
.topranking ul.tab li {
	display: inline-block;
	color: #243F99;
	font-size: 18px;
	padding: 0 15px;
	position: relative;
	cursor: pointer;
}
@media screen and (max-width:1169px) {
	.topranking ul.tab li {
		font-size: 16px;
	}
}
.topranking ul.tab li:hover {
	color: #333;
}
.topranking ul.tab li img.dot {
	position: absolute;
	right: 0;
	top: 10px;
}
.topranking ul.tab li img.dotfirst {
	position: absolute;
	left:0;
	top: 10px;
}
.topranking ul.tab li.select::after {
	position: absolute;
	bottom: -10px;
	left: 50%;
	margin: auto;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 22px;
	height: 10px;
	border: 10px solid transparent;
	border-left: 10px solid #24409A;
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
	margin-left: -6px;
}
.disnon {
  display: none !important;
}
.content_wrap {
	padding-top: 60px;
}
.content_wrap.list {
	padding-top: 0;
	padding-bottom: 30px;
}
.content_wrap.rank {
	padding-top: 0;
	padding-bottom: 30px;
}
.content_wrap ul,.content_wrap div {
	display: flex;
	justify-content: space-between;
	position:relative;
}
.content_wrap.rank div {
	flex-wrap: wrap;
	text-align:left;
	justify-content: normal;
}

.content_wrap.rank div dl {
	margin:0 0.5%;
}

.content_wrap.rank ul {
	flex-wrap: wrap;
}
.content_wrap ul li {
	display: block;
	width: 18.5%;
	position: relative;
	line-height: 1.4em;
}
.content_wrap.rank ul li {
	padding-bottom: 25px;
}
.content_wrap ul li a {
	color: #1F1F1F;
	text-decoration: none;
}
.content_wrap ul li img.img {
	width: 100%;
}
.content_wrap ul li img.no {
	position: absolute;
	top: 0;
	left: 0;
}


.content_wrap dl {
	display: block;
	width: 18.5%;
	position: relative;
}
.content_wrap dl dt a img {
	width: 100%;
	height: 100%;
}
.content_wrap dl dd {
	line-height:1.6em;
}
.content_wrap dl dd a {
	color: #1F1F1F;
	text-decoration: none;
}
.content_wrap h5 {
	position: absolute;
	top: -30px;
	right: 0;
/*	display:none;*/
}


.topranking a.btn {
	display: block;
	width: 382px;
	height: 60px;
	box-sizing: border-box;
	padding-top: 18px;
	text-align: center;
	color: #243F99;
	font-size: 19px;
	position: absolute;
	top: 15px;
	right: 0;
	border: #24419B 1px solid;
	background: #fff;
}
.topranking a.btn::before {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 10px;
	margin: auto;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 4px;
	height: 4px;
	border: 6px solid transparent;
	border-left: 8px solid #0b3775;
}
.topranking a.btn:hover::before {
	border-left: 8px solid #fff;
}
@media screen and  (min-width: 1584px) {
	.topranking a.btn {
		top: 60px;
	}
}
.topranking a.btn:hover {
	text-decoration: none;
  	color: #FFF;
	border: 1px solid #FFF;
	background: #0b3775;
	transition: 0.5s all ease;
}
.topitem {
	clear: both;
	width: 90%;
	margin: 0 auto;
	padding-bottom: 40px;
}
div.topitem {
	width: 100%;
	padding-bottom: 0;
}
.topitem ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 35px;
}
div.topitem ul {
	padding-bottom: 0;
}
.topitem ul li {
	width: 32.5%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	background: #EEE;
	position: relative;
	margin-bottom: 15px;
}
.topitem ul li img.img,.topitem ul li span {
	display: block;
}
.topitem ul li img.img {
	width: 40%;
}
.topitem ul li span {
	color: #243F99;
	font-size: 100%;
	padding-left: 10px;
	width: 60%;
	box-sizing: border-box;
}
@media screen and (max-width:1159px) {
	.topitem ul li span {
		font-size: 100%;
		line-height: 1.4em;
	}
}
.topitem ul li span img {
	position: absolute;
	right: 0;
	bottom: 0;
}
.topitem ul li a {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.topitem ul li:hover {
	opacity: 0.8;
}
.topitem a.btn,.topfeature a.btn,.topbrand a.btn,.featurebtn,.privacy a.btn,a.btn-common {
	clear: both;
	display: block;
	width: 382px;
	height: 60px;
	box-sizing: border-box;
	padding-top: 18px;
	text-align: center;
	color: #243F99;
	font-size: 19px;
	border: #24419B 1px solid;
	margin: 0 auto;
	background: #fff;
	position: relative;
}
.topitem a.btn:hover,.topfeature a.btn:hover,.topbrand a.btn:hover,.featurebtn:hover,.privacy a.btn:hover,a.btn-common:hover {
	text-decoration: none;
  	color: #FFF;
	border: 1px solid #FFF;
	background: #0b3775;
	transition: 0.5s all ease;
}
.featurebtn.b-m60 {
	margin-bottom: 60px;
}
.topitem a.btn::before,.topfeature a.btn::before,.topbrand a.btn::before,.privacy a.btn::before {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 10px;
	margin: auto;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 4px;
	height: 4px;
	border: 6px solid transparent;
	border-left: 8px solid #0b3775;
}
.topitem a.btn:hover::before,.topfeature a.btn:hover::before,.topbrand a.btn:hover::before,.privacy a.btn:hover::before {
	border-left: 8px solid #fff;
}

a.btn-m {
	width:200px;
}

a.btn-s {
	width:200px;
	font-size:15px;
	height:30px;
	padding:0;
	display:table-cell !important;
	vertical-align:middle;
	cursor: pointer;
}

a.btn-common {
	margin:0 10px;
	display:inline-block;
}

a.btn.b-m50 {
	margin-bottom: 50px;
}
.topfeature {
	clear: both;
	width: 97%;
	margin: 0 auto;
	padding-bottom: 30px;
}
.topfeature div.featurebnr {
	width: 90%;
	margin: 0 auto;
	padding-bottom: 40px;
	text-align:left;
}
.topfeature div.featurebnr ul {
	display: flex;
	/*justify-content: space-between;*/
	flex-wrap: wrap;
}
.topfeature div.featurebnr ul li {
	display: block;
	width: 19%;
	margin:0 0.5%;
	margin-bottom: 10px;
}
.topfeature div.featurebnr ul li img {
	width: 100%;
}
.featurebnr .slick-prev, .featurebnr .slick-next {
	width: 31px;
	height: 58px;
}
.featurebnr .slick-next {
	right: -50px;
}
.featurebnr .slick-prev {
	left: -50px;
}
.featurebnr .slick-prev::before, .featurebnr .slick-next::before {
	content: "";
	font-family: "";
	font-size: 0;
	line-height: 0;
	display: block;
	opacity: 1;
	width: 31px;
	height: 58px;
}
.featurebnr .slick-next::before {
	background: url(../images/top/feature/next.png) no-repeat;
}
.featurebnr .slick-prev::before {
	background: url(../images/top/feature/prev.png) no-repeat;
}
.topclbrand {
	background: url(../images/top/closeupbrand/bg.jpg) center top no-repeat;
	background-size: cover;
	padding-top: 35px;
	display: flex;
	justify-content: space-between;
}
.topclbrand h2 {
	padding-top: 25px;
}
.topclbrand div.left {
	width: 40%;
	box-sizing: border-box;
	padding-left: 2%;
	padding-right: 1%;
}
.topclbrand ul {
	width: 60%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	box-sizing: border-box;
	padding-right: 1%;
}
.topclbrand ul li {
	display: block;
	width: 19%;
	text-align: center;
	line-height: 1.4em;
	padding-bottom: 20px;
}
.topclbrand ul li a {
	color: #1f1f1f;
}
.topclbrand ul li b {
	font-weight: bold;
	display: block;
}
.topclbrand ul li img {
	width: 100%;
	margin-bottom: 5px;
}
.topbrand {
	background: #eee;
	padding-top: 60px;
	padding-bottom: 90px;
}
div.topbrand {
	background: #fff;
	padding-top: 0;
	padding-bottom: 0;
}
.topbrand div.inner {
	width: 90%;
	margin: 0 auto;
}
.topbrand ul,.branditms {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 25px;
	text-align:left;
}
.topbrand ul li,.branditms li {
	background: #fff;
	width: 16%;
	padding: 10px;
	box-sizing: border-box;
	line-height: 1.4em;
	text-align: center;
	margin-bottom: 15px;
}
div.topbrand ul li {
	width: 20%;
	padding: 5px;
}
div.topbrand.bg ul li {
	width: 24%;
}
div.topbrand.bg h2 {
	border: 0;
	padding-bottom: 0;
	margin-bottom: 0;
}
.topbrand ul li img {
	display: block;
	width: 100%;
	margin-bottom: 5px;
}
div.topbrand ul li img {
	margin-bottom: 15px;
}
.topbrand ul li b,.branditms li b {
	font-weight: bold;
	display: block;
}
.topbrand ul li a,.branditms li a {
	color: #1f1f1f;
}
.topbrand ul li a:hover {
	color: #243F99;
}




.banner-common {
}
.banner-common ul {
	display: flex;
	/*justify-content: space-between;*/
	flex-wrap: wrap;
	padding-bottom: 25px;
}
.banner-common ul li {
	background: #fff;
	width: 16%;
	padding: 10px;
	box-sizing: border-box;
	line-height: 1.4em;
	text-align: center;
	margin-bottom: 15px;
}
div.banner-common ul li {
	width: 20%;
	padding: 5px;
	text-align:left;
}
.banner-common ul li img {
	display: block;
	width: 100%;
	margin-bottom: 5px;
}
.banner-common ul li a {
	color: #1f1f1f;
}
.banner-common ul li a:hover {
	color: #243F99;
}



.topcontents {
	width: 90%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	padding-top: 45px;
	padding-bottom: 50px;
}
.topnewslist {
	display: block;
	position: relative;
	width: 66%
}
.topnewslist dl dt {
	padding-bottom: 10px;
	overflow: hidden;
}
.topnewslist dl dt b {
	display: block;
	float: left;
}
.topnewslist dl dt span {
	color: #fff;
	display: inline;
	width: 126px;
	float: left;
	margin-left: 20px;
	text-align: center;
	box-sizing: border-box;
	line-height: 1.5em;
	padding-top: 2px;
}
.topnewslist dl dt span.press {
	background: #85b200;
}
.topnewslist dl dt span.new {
	background: #b20000;
}
.topnewslist dl dt span.info {
	background: #ff8000;
}
.topnewslist dl dt span.goods {
	background: #0080ff;
}
.topnewslist dl dd {
	padding-bottom: 10px;
	margin-bottom: 15px;
	border-bottom: #24419b 1px dotted;
	line-height: 1.4em;
}
.topnewslist dl dd a {
	color: #1f1f1f;
}
.topnewslist a.list {
	position: absolute;
	top:10px;
	right: 0;
	color: #535353;
	font-size: 18px;
}
.topnewslist a.list img {
	vertical-align: middle;
	margin-left: 10px;
}

.topnewslist li{
	position:relative;
	display:inline-block;
	width:100%;
	vertical-align:top;
	line-height:1.6em;
	margin-bottom:5px;
	border-bottom: #24419b 1px dotted;
}
.topnewslist li a.image{
	float:left;
}
.topnewslist li span:not(.nolink){
	position:absolute;
	top:-2px;
	left:130px;
}
.topnewslist li a.comment,.topnewslist li span.nolink{
	display:block;
	padding-left:130px;
	margin-top:20px;
	line-height:1.6em;
}


.topcontents ul.topside {
	display: block;
	padding-top: 3px;
	width: 30%;
}
.topcontents ul.topside li {
	display: block;
	border: #24419b 1px solid;
	background: #eee;
	padding: 20px;
	margin-bottom: 15px;
	min-width:300px;
	box-sizing: border-box;
}
.topcontents ul.topside li:hover {
	opacity: 0.8;
}
.topcontents ul.topside li a {
	display: flex;
	justify-content: flex-start;
	font-size: 25px;
	align-items: flex-start;
	line-height: 1.2em;
}
.topcontents ul.topside li a:hover {
	text-decoration: none;
}
.topcontents ul.topside li a img,.topcontents ul.topside li a div {
	display: block;
}
.topcontents ul.topside li a img {
	vertical-align: middle;
	margin-top: 10px;
}
.topcontents ul.topside li a div {
	padding-left: 20px;
	padding-top: 5px;
}
.topcontents ul.topside li a span {
	display: block;
	font-size: 17px;
}
.mailmagazine {
	background: url(../images/top/mailmagazine/rep.jpg) left top repeat-x,url(../images/top/mailmagazine/rep.jpg) left bottom repeat-x,url(../images/top/mailmagazine/bg.jpg) repeat;
	padding: 40px 2%;
	display: flex;
	justify-content: space-between;
}
div.mailmagazine {
	background: url(../images/top/mailmagazine/bg.jpg) repeat;
}
.mailmagazine div.left {
	width: 40%;
}
.mailmagazine div.left a.btn {
	border: #24419B 1px solid;
	font-size: 19px;
	color: #24419B;
	padding: 10px;
	display: block;
	margin: 48px auto 0 auto;
	text-align: center;
	position: relative;
	background: #fff;
}
.mailmagazine div.left a.btn::before {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 10px;
	margin: auto;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 4px;
	height: 4px;
	border: 6px solid transparent;
	border-left: 8px solid #0b3775;
}
.mailmagazine div.left a.btn:hover::before {
	border-left: 8px solid #fff;
}
.mailmagazine div.left a.btn:hover {
	text-decoration: none;
  	color: #FFF;
	border: 1px solid #FFF;
	background: #0b3775;
	transition: 0.5s all ease;
}
.mailmagazine div.right {
	width: 58%;
	border: #24419b 1px solid;
	padding-top: 15px;
	padding-left: 5px;
	display: flex;
	justify-content: center;
	align-items: flex-start;
}
div.mailmagazine div.right {
	border: none;
}
.mailmagazine h3 {
	display: block;
}
.mailmagazine h3 img {
	vertical-align: middle;
}
.mailmagazine div.right h4 {
	font-size: 25px;
	color: #243F99;
	padding-bottom: 5px;
}
.mailmagazine div.box {
	display: block;
	padding: 0 20px;
}
.mailmagazine div.box form {
	padding: 20px 0;
}
.mailmagazine form input[type=text] {
	width: 270px;
	height: 27px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: #24429c 1px solid;
	font-size: 15px;
	padding: 1.5px 10px;
	box-sizing: border-box;
}
.mailmagazine form input[type=submit] {
	border: none;
	background: #d96d00;
	color: #fff;
	text-align: center;
	padding: 3px 10px 3px 10px;
	vertical-align: middle;
	margin-left: 10px;
	cursor: pointer;
	margin-top: -2px;
}
.mailmagazine form input[type=submit]:hover {
	opacity: 0.8;
}
@media screen and  (max-width: 1387px) {
	.mailmagazine {
		display: block;
	}
	.mailmagazine div.left {
		width: 100%;
		padding-bottom: 30px;
	}
	.mailmagazine div.right {
		width: 100%;
	}
}
.topdictionary,.topstaffblog {
	padding: 40px 2% 20px 2%;
	position: relative;
}
.topdictionary a.list,.topstaffblog a.list{
	position: absolute;
	top: 60px;
	right: 2%;
	color: #535353;
	font-size: 18px;
}
.topdictionary a.list img,.topstaffblog a.list img {
	vertical-align: middle;
	margin-left: 10px;
}

.topstaffblog div.inner
,.topdictionary div.inner {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.topstaffblog div.box
,.topdictionary div.box {
	display: flex;
	width: 48%;
	border-bottom: #24419B 1px dotted;
	justify-content: space-between;
	align-items: flex-start;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.topstaffblog div.box a.img
,.topdictionary div.box a.img {
	display: block;
	margin-right: 10px;
	width: 29%;
}
.topstaffblog div.box a.img img,
.topdictionary div.box a.img img {
	width: 100%;
}
.topstaffblog div.box img.img,
.topdictionary div.box img.img {
	display: block;
}

.topstaffblog div.box div.right,
.topdictionary div.box div.right {
	width: 67%;
}

.topstaffblog div.box div.right p,
.topdictionary div.box div.right p {
	overflow: hidden;
}
.topstaffblog div.box div.right p span,
.topdictionary div.box div.right p span {
	display: block;
	width: 153px;
	height: 21px;
	text-align: center;
	color: #fff;
	margin-right: 15px;
	float: left;
	font-size: 14px;
	margin-bottom: 10px;
}

.topstaffblog div.box div.right p span.story,
.topdictionary div.box div.right p span.story {
	background: url(../images/top/dictionary/story.jpg) center top no-repeat;
}

.topstaffblog div.box div.right p span.introduction,
.topdictionary div.box div.right p span.introduction {
	background: url(../images/top/dictionary/introduction.jpg) center top no-repeat;
}

.topstaffblog div.box div.right p span.care,
.topdictionary div.box div.right p span.care {
	background: url(../images/top/dictionary/care.jpg) center top no-repeat;
}

.topstaffblog div.box div.right p span.column,
.topdictionary div.box div.right p span.column {
	background: url(../images/top/dictionary/column.jpg) center top no-repeat;
}

.topstaffblog div.box div.right p span.good,
.topdictionary div.box div.right p span.good {
	background: url(../images/top/dictionary/good.jpg) center top no-repeat;
}

.topstaffblog div.box div.right h3,
.topdictionary div.box div.right h3 {
	clear: both;
	font-weight: normal;
	line-height: 1.4em;
}
.topstaffblog img.img,.topdictionary img.img{
	width: 250px;
	height: 150px;
	object-fit: cover;
}

/*  ログイン */
.wrapper div.login {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-top: 10px;
}
.wrapper div.login div {
	display: block;
	width: 48%;
	box-sizing: border-box;
	border:#DDD 5px solid;
	padding: 14px;
	margin-bottom: 40px;
}
.wrapper div.login div:hover {
	border: #18368F 5px solid;
}
.wrapper div.login div h3,
.wrapper div.formbox h3 {
	font-size: 25px;
	color: #243F99;
	padding-bottom: 10px;
}

.wrapper div.formbox h3 {
	padding: 14px;
	margin-top: -50px;
	color: #243F99;
	padding-bottom: 30px;
}

@media screen and  (max-width: 1210px) {
	.wrapper div.login div h3 {
		font-size: 22px;
	}
}
.wrapper div.login div.net ul {
	text-align: center;
	padding: 20px 0;
}
.wrapper div.login div.net ul li {
	display: inline;
}
.wrapper div.login div.net ul li a {
}
.wrapper div.login div.net ul li:first-child {
	padding-right: 15px;
}
.wrapper div.login div.net ul li:first-child a {
	margin-right: 15px;
}
.wrapper div.login table {
	/*width: 55%;*/
	/*width: 60%;*/
	width: 80%;
	min-width: 400px;
	margin: 0 auto;
}
.wrapper div.login table th {
	text-align: right;
	font-size: 20px;
	padding-right: 15px;
	/*width: 100px;*/
	width: 150px;
}
.wrapper div.login table th,.wrapper div.login table td {
	padding-bottom: 20px;
}
.wrapper div.login table td input[type=text],
.wrapper div.login table td input[type=password] {
	border: #24429C 1px solid;
	box-sizing: border-box;
	width: 100%;
	font-size:100%;	/* 2019/01/07 T.Fukami add */
}
.wrapper div.login input[type=submit] {
	display: block;
	background: #24419B;
	text-align: center;
	color: #fff;
	font-size: 19px;
	margin: auto;
	padding: 5px 50px;
	border: #24419B 1px solid;
}
.wrapper div.login input[type=submit]:hover {
	cursor: pointer;
	color: #24419B;
	border: #24419B 1px solid;
	background: #fff;
	transition: 0.5s all ease;
}
.wrapper div.login div.net p {
	background: #EEE;
	padding: 10px;
}
.wrapper div.login a.btn {
	display: block;
	width: 382px;
	height: 60px;
	box-sizing: border-box;
	color: #24419B;
	border: #24419B 1px solid;
	font-size: 19px;
	text-align: center;
	padding-top: 16px;
	background:#fff;
	position: relative;
	margin-left: auto;
	margin-right: auto;
}
.wrapper div.login a.btn:hover {
	text-decoration: none;
  	color: #FFF;
	border: 1px solid #FFF;
	background: #0b3775;
	transition: 0.5s all ease;
	opacity: 1;
}
/* 会員メニュー */
.wrapper div.membermenu {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 30px;
}
.wrapper div.membermenu div.box {
	width: 32%;
	box-sizing: border-box;
	border: #ddd 5px solid;
	margin-bottom: 15px;
	padding: 30px 20px;
	position: relative;
	min-height: 215px;
}
@media screen and  (max-width: 1399px) {
	.wrapper div.membermenu div.box {
		min-height: 244px
	}
}
@media screen and  (max-width: 1182px) {
	.wrapper div.membermenu div.box {
		min-height: 259px
	}
}

.wrapper div.membermenu div.box:hover {
	border: #243F99 5px solid;
}
.wrapper div.membermenu div.box h3 {
	font-size: 25px;
	color: #243F99;
	text-align: center;
	padding-bottom: 10px;
}
@media screen and  (max-width: 1327px) {
	.wrapper div.membermenu div.box h3 {
		font-size: 22px;
	}
}
@media screen and  (max-width: 1200px) {
	.wrapper div.membermenu div.box h3 {
		font-size: 20px;
	}
}
@media screen and  (max-width: 1110px) {
	.wrapper div.membermenu div.box h3 {
		font-size: 18px;
	}
}
.wrapper div.membermenu div.box a {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.wrapper div.membermenu div.box p.attention {
	font-size: 12px;
	color: #243F99;
}
.wrapper table.membernews {
	width: 100%;
	margin-bottom: 40px;
}
.wrapper table.membernews th,.wrapper table.membernews td {
	border-bottom: #DDD 1px solid;
	padding: 15px 0;
}
.wrapper table.membernews th {
	text-align: center;
	width: 130px;
}
.wrapper table.membernews th span {
	display: block;
	width: 100%;
	color: #fff;
	font-size: 13px;
	line-height: 1em;
	margin-bottom: 10px;
	padding: 5px 0 2px 0;
}
.wrapper table.membernews th span.new {
	background: #19378E;
}
.wrapper table.membernews th span.coupon {
	background: #FF0000;
}
.wrapper table.membernews td {
	line-height: 1.2em;
	padding-left: 20px;
}
.wrapper table.membernews td a {
	color: #1F1F1F
}
.wrapper table.membernews td a.special {
	color: #243F99;
}
.wrapper table.couponlist {
	width: 100%;
	margin-bottom: 15px;
}
.wrapper table.couponlist th,.wrapper table.couponlist td {
	border: #C1C1C1 1px solid;
	text-align: center;
	padding: 10px;
}
.wrapper table.couponlist thead th {
	background: #ECECEC;
}
.wrapper p.red {
	color: #FF0000;
}
.wrapper a.popup img {
	vertical-align: middle;
	margin-left: 5px;
}
div.newsscroll {
	height: 280px;
	overflow-y: scroll;
	padding-right: 40px;
	margin-bottom: 40px;
}
div.newsscroll::-webkit-scrollbar {
	width: 12px;
}
div.newsscroll::-webkit-scrollbar-track {
	background: #DDD;
}
div.newsscroll::-webkit-scrollbar-thumb {
	background: #19378F;
}
/*  ポップアップ */
#brandlist ul.catidx li,#itemlist ul li,#material ul li{
	cursor: pointer;
}
#brandlist ul.catidx li:hover,#brandlist ul.catidx li.select{
	background: #18368F;
	color: #fff;
}

#brandlist ul li.brand_item,#serieslist ul li.brand_item{
	padding:0 !important;
}
#brandlist ul li.brand_item a,#serieslist ul li.brand_item a{
	height: 50px;
	padding: 12px;
	display:block;
}
#brandlist ul li.brand_item strong,#serieslist ul li.brand_item strong{
	height: 50px;
	padding: 11px;
	display:block;
}


#point,#birthday,#mailmaga,#member,#itemlist,#brandlist,#serieslist,#dtllist,#fontlist {
	width: 510px;
	text-align: left;
	background: #fff;
	border-top: #DDD 9px solid;
	border-bottom: #19378E 9px solid;
	border-radius: 6px;
	padding: 20px;
}
#point ul li,#birthday ul li,#mailmaga ul li,#member ul li {
	padding-bottom: 10px;
	text-indent: -15px;
	margin-left: 15px;
}
#point h3,#birthday h3,#mailmaga h3,#member h3,#itemlist h3,#brandlist h3,#serieslist h3,#dtllist h3,#fontlist h3 {
	color: #666;
	font-size: 23px;
	border-bottom: #DDD 1px solid;
	margin-bottom: 15px;
}
#open {
	width: 910px;
	background: #fff;
	border-top: #DDD 9px solid;
	border-bottom: #19378E 9px solid;
	border-radius: 6px;
	text-align: center;
	padding: 20px;
	overflow-y: scroll;
}
#open img {
	width: 90%;
	margin: auto;
}
#open h3 {
	color: #666;
	font-size: 23px;
	border-bottom: #DDD 1px solid;
	margin-bottom: 15px;
}
#itemlist ul.nav,#brandlist ul.nav,#serieslist ul.nav,#dtllist ul.nav,#fontlist ul.nav {
	padding-bottom: 15px;
}
#itemlist ul.nav li,#brandlist ul.nav li,#serieslist ul.nav li,#dtllist ul.nav li,#fontlist ul.nav li {
	display: inline;
	padding-right: 5px;
}
#itemlist ul.nav li:last-child,#brandlist ul.nav li:last-child,#serieslist ul.nav li:last-child,#dtllist ul.nav li:last-child,#fontlist ul.nav li:last-child {
	font-weight: bold;
}
#itemlist ul.nav li::after,#brandlist ul.nav li::after,#serieslist ul.nav li::after,#dtllist ul.nav li::after,#fontlist ul.nav li::after {
	content: ">";
	padding-left: 10px;
}
#itemlist ul.nav li:last-child::after,#brandlist ul.nav li:last-child::after,#serieslist ul.nav li:last-child::after,#dtllist ul.nav li:last-child::after,#fontlist ul.nav li:last-child::after {
	content: none;
}
#itemlist ul.cat,#brandlist ul.cat,#serieslist ul.cat,#dtllist ul.cat,#fontlist ul.cat {
	height: 270px;
	overflow-y: scroll;
	margin-bottom: 30px;
}
/* 2018/08/08 T.Fukami mod start ---------- */
/*#itemlist ul.cat li,#brandlist ul.cat li,#serieslist ul.cat li,#dtllist ul.cat li,#fontlist ul.cat li {*/
#itemlist ul.cat li,#brandlist ul.cat li,#serieslist ul.cat li,#dtllist :not(#material) ul.cat li,#fontlist ul.cat li {
/* 2018/08/08 T.Fukami mod end   ---------- */
	display: table;
	width: 99%;
	height: 50px;
	/*border-radius: 10px;*/
	border:#767676 1px solid;
	box-sizing: border-box;
	padding: 10px;
	font-size: 100%;
	margin-bottom: 5px;
	color: #666;;
}

#itemlist ul.cat li a,#brandlist ul.cat li a,#serieslist ul.cat li a,#dtllist ul.cat li a{
	color: #666;
	display:block;
}
/* 2018/08/08 T.Fukami add start ---------- */
#material ul.cat li {
	display:block !important;
}
/* 2018/08/08 T.Fukami add end   ---------- */

#itemlist ul.cat li a:hover,#brandlist ul.cat li a:hover,#serieslist ul.cat li a:hover,#dtllist ul.cat li a:hover {
	color: #fff !important;
	opacity:1.0;
}

/* 2018/08/08 T.Fukami add start ---------- */
#material ul.cat li:hover {
	color: #fff !important;
	opacity:1.0;
}
/* 2018/08/08 T.Fukami add end   ---------- */

.brand_50on{
	border:0 !important;
}

#itemlist ul.cat li:hover,#brandlist ul.cat li:hover,#serieslist ul.cat li:hover,#dtllist ul.cat li:hover,#fontlist ul.cat li:hover {
	background: #18368F;
	color: #fff;
}

#itemlist ul.cat::-webkit-scrollbar,#brandlist ul.cat::-webkit-scrollbar,#serieslist ul.cat::-webkit-scrollbar,#dtllist ul.cat::-webkit-scrollbar,#fontlist ul.cat::-webkit-scrollbar {
	width: 12px;
}
#itemlist ul.cat::-webkit-scrollbar-track,#brandlist ul.cat::-webkit-scrollbar-track,#serieslist ul.cat::-webkit-scrollbar-track,#dtllist ul.cat::-webkit-scrollbar-track,#fontlist ul.cat::-webkit-scrollbar-track {
	background: #DDD;
}
#itemlist ul.cat::-webkit-scrollbar-thumb,#brandlist ul.cat::-webkit-scrollbar-thumb,#serieslist ul.cat::-webkit-scrollbar-thumb,#dtllist ul.cat::-webkit-scrollbar-thumb,#fontlist ul.cat::-webkit-scrollbar-thumb {
	background: #19378F;
}

/* 2018/08/08 T.Fukami mod start ---------- */
/*#itemlist ul.cat li{*/
#itemlist ul.cat li,#material ul.cat li{
/* 2018/08/08 T.Fukami mod end   ---------- */
	position: relative;
}

/* 2018/08/08 T.Fukami mod start ---------- */
/*#itemlist ul.cat li.add-arrow:hover::before{*/
#itemlist ul.cat li.add-arrow:hover::before,#material ul.cat li.add-arrow:hover::before{
/* 2018/08/08 T.Fukami mod end   ---------- */
	border-left: 8px solid #fff;
}

/* 2018/08/08 T.Fukami mod start ---------- */
/*#itemlist ul.cat li.add-arrow::before{*/
#itemlist ul.cat li.add-arrow::before,#material ul.cat li.add-arrow::before{
/* 2018/08/08 T.Fukami mod end   ---------- */
	position: absolute;
	top: 0;
	bottom: 0;
	right: 10px;
	margin: auto;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 4px;
	height: 4px;
	border: 6px solid transparent;
	border-left: 8px solid #767676;
}
/* 2018/08/08 T.Fukami add start ---------- */
#material ul.cat li.selected {
	background: #18368F;
	color: #fff !important;
	opacity:1.0;
}
/* 2018/08/08 T.Fukami add end   ---------- */

/* 新規会員登録 */
.newform {
	padding-bottom: 50px;
}
.newform h3 {
	color: #243F99;
	font-size: 25px;
}
.newform div.benefit {
	display: flex;
	justify-content: space-between;
	padding-top: 25px;
	padding-bottom: 10px;
}
.newform div.benefit div.box {
	width: 32%;
	box-sizing: border-box;
	padding: 15px 15px 50px 15px;
	border: #DDD 5px solid;
	overflow: hidden;
	position: relative;
}
.newform div.benefit div.box:hover {
	border: #243F99 5px solid;
}
.newform div.benefit div.box h4 {
	font-size: 30px;
	color: #243F99;
	text-align: center;
	position: relative;
	padding-top: 8px;
	margin-bottom: 30px;
}
@media screen and  (max-width: 1420px) {
	.newform div.benefit div.box h4 {
		font-size: 25px;
	}
}
@media screen and  (max-width: 1300px) {
	.newform div.benefit div.box h4 {
		font-size: 22px;
	}
}
@media screen and  (max-width: 1230px) {
	.newform div.benefit div.box h4 {
		font-size: 20px;
	}
}
@media screen and  (max-width: 1150px) {
	.newform div.benefit div.box h4 {
		font-size: 18px;
	}
}
.newform div.benefit div.box h4 img {
	position: absolute;
	top: 0;
	left: 0;
}
.newform div.benefit div.box img.img {
	display: block;
	margin: 0 auto 30px auto;
}
.newform div.benefit div.box a {
	display: block;
	position: absolute;
	right: 15px;
	bottom: 20px;
}
.newform p.link a {
	color: #1F1F1F;
}
.newform p.link a img{
	vertical-align: middle;
	margin-left: 5px;
}
p.augleclub {
	float: right;
}
p.augleclub a {
	color: #fff;
	background: #FF8000;
	padding: 7px 20px;
	border-radius: 5px;
}
p.augleclub a span {
	color: #203F92;
}
p.augleclub a img {
	vertical-align: middle;
	margin-left: 5px;
}
span.req {
	color: #D80000;
}
div.formbox {
	box-sizing: border-box;
	width: 100%;
	border: #ddd 5px solid;
	padding-top: 30px;
	padding-bottom: 20px;
	margin-bottom: 40px;
}
div.formbox table {
	width: 95%;
	margin: 0 auto;
}
@media screen and  (max-width: 1120px) {
/*	div.formbox table {
		width: 900px;
	}
	*/
}
div.formbox table th,div.formbox table td {
	padding-bottom: 40px;
	vertical-align: top;
}
div.formbox table th {
	font-size: 110%;
	width: 35%;
	position: relative;
	padding-left: 20px;
	text-align: left;
}
div.formbox table th::before {
	content: "";
	width: 8px;
	height: 25px;
	display: block;
	background: #19378E;
	position: absolute;
	top: 0;
	left: 0;
}
div.formbox table th span {
	font-size: 15px;
	color: #D80000;
}

input[type=text]{
	font-family: "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",  Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size:100%;
}
div.formbox table td textarea,
div.formbox table td input[type=text],
div.formbox table td input[type=password]{
	box-sizing: border-box;
	width: 100%;
	border: #24429C 1px solid;
	font-size: 14px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-family: "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",  Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}
div.formbox table td input[type=text].zip1 {
	width: 114px;
	margin-bottom: 10px;
	margin-right: 10px;
}
div.formbox table td input[type=text].zip2 {
	width: 154px;
	margin-bottom: 10px;
	margin-left: 10px;
}

select{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: #fff url(../images/common/arrow.jpg) right center no-repeat;
	font-family: "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",  Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	padding: 5px 25px 5px 5px;
	font-size:100%;
}

div.leftside select,
div.formbox table td select {
	border: #24429C 1px solid;
	font-size: 14px;
	border-radius: 0!important;
	box-sizing: border-box;
	width: 100%;
	padding: 5px 10px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: #fff url(../images/common/arrow.jpg)  100% center no-repeat;
	font-family: "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",  Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

div.leftside select.year{
	max-width:130px;
}

div.formbox table td select.byear {
	width: 118px;
	margin-right: 10px;
}
div.formbox table td select.bmonth {
	width: 70px;
	margin-left: 20px;
	margin-right: 10px;
}
div.formbox table td select.bdate {
	width: 70px;
	margin-left: 20px;
	margin-right: 10px;
}
div.formbox table th em {
	font-size: 13px;
}
div.formbox table td input[type=radio] {
	margin-right: 10px;
}
div.formbox table th a {
	display: block;
	font-size: 13px;
	margin-top: 10px;
	margin-left: -20px;
}

div.formbox.favoritebrand {
	padding-top: 30px;
}
div.formbox.favoritebrand table th {
	padding-bottom: 15px;
}
div.formbox.favoritebrand table td {
	padding-bottom: 15px;
}
div.formbox.favoritebrand table li {
	float:left;
	width:220px;
	height:40px;
	margin-bottom:0.5em;
	padding-left:1.5em;
	padding-right:1.5em;
	text-indent: -1.5em;
	display:inline-block;
	line-height:130%;
}
div.formbox.favoritebrand table li input[type=checkbox] {
	margin-right:0.5em;
}


.submitbtn {
	background: #A21E21 !important;
	text-align: center;
	font-size: 25px;
	color: #fff !important;
	font-weight: bold;
	display: block;
	width: 384px;
	height: 60px;
	margin: auto;
	cursor: pointer;
	border: #A21E21 2px solid !important;
}
.submitbtn:hover {
	background: #fff !important;
	color: #A21E21 !important;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}
/* アドレス帳 */
.tbladdress {
	width: 100%;
	margin-bottom: 40px;
}
.tbladdress th,.tbladdress td {
	border: #C1C1C1 1px solid;
	padding: 10px;
}
.tbladdress th {
	text-align: center;
}
.tbladdress thead th {
	background: #ECECEC;
}
.tbladdress tbody tr:nth-child(odd) {
	background: #fff;
}
.tbladdress tbody tr:nth-child(even) {
	background: #fff;
	background: #F4F4F4;
}
.tbladdress td.name {
	font-size: 17px;
	min-width: 100px;
}
.tbladdress td.name span {
	font-size: 13px;
	display: block;
}
.tbladdress td:nth-child(5) {
	white-space: nowrap;
}
.tbladdress td ul {
	display: flex;
	justify-content: center;
	padding: 0 10px;
}
.tbladdress td ul li {
	display: inline-block;
	padding: 0 10px;
}
.tbladdress td ul li a {
	color: #18368F;
}
.addlist {
	position: relative;
}
.addlist p {
	padding-bottom: 10px;
}
.addlist a.btn {
	background: #FF8000;
	display: block;
	width: 322px;
	color: #fff;
	position: absolute;
	top: 5px;
	right: 0;
	text-align: center;
	padding: 18px 0;
	line-height: 0;
}
.addlist a.btn:hover {
	background: #fff;
	border: #FF8000 1px solid;
	color: #FF7F00;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
	font-weight: bold;
}
/* 商品一覧 */
.sortbox,searchbox {
	text-align: right;
	margin-bottom:10px;
}
.sortbox dt,.searchbox dt {
	display: inline;
	padding-left: 20px;
}
.sortbox dd,.searchbox dd {
	display: inline;
	padding-left: 10px;
}
.sortbox dd select,.searchbox dd select {
	border: #24429C 1px solid;
	font-size: 14px;
	border-radius: 0!important;
	box-sizing: border-box;
	padding: 5px 30px 5px 5px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: #fff url(../images/common/arrow.jpg) right center no-repeat;
	font-family: "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",  Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}
.pnavi {
	overflow: hidden;
	padding-bottom: 45px;
}
.pnavi p {
	float: left;
	padding-top: 8px;
}
.pnavi p span {
	color: #19378D;
}
.pnavi ul {
	float: left;
	padding-left: 5px;
}
.pnavi ul li {
	display: inline-block;
	padding: 0 5px;
}
.pnavi ul li a {
	display: block;
	border: #19378F 1px solid;
	width: 40px;
	height: 40px;
	box-sizing: border-box;
	padding-top: 7px;
	text-align: center;
}
.pnavi ul li.now {
	background: #19378F;
	width: 40px;
	height: 40px;
	box-sizing: border-box;
	padding-top: 7px;
	text-align: center;
	color: #fff;
}
.items {
	clear: both;
	border-bottom: #C3C3C3 1px solid;
	padding-bottom: 45px;
	margin-bottom: 30px;
	overflow: hidden;
	display: flex;
	flex-wrap: wrap;
}
.items.noboder {
	border-bottom: 0;
}
.items.otheritems {
	border-bottom: 0;
}
.items div.box {
	width: 31%;
	float: left;
	margin: 0 1%;
}
.items.otheritems div.box {
	margin-right: 0;
	margin: 0 10px;
}
.items div.box div.itemimg {
	position: relative;
	border: #C3C3C3 1px solid;
	margin-bottom: 5px;
}
.items div.box div.itemimg img.img {
	width: 100%;
	display: block;
	line-height: 0;
}
.items div.box div.itemimg img.new {
	position: absolute;
	top: 0;
	left: 10px;
}
.items div.box:nth-child(3) {
	/*margin-right: 0;*/
}
.items div.box h3 {
	clear: both;
	line-height:1.6em;
}
.items div.box a.brand {
	color: #FF7F00;
}
.items div.box a img:hover {
	opacity: 0.8;
}
.items div.box div.price {
	padding-top: 15px;
}
.items div.box div.price font {
	font-size:110%;
}

.items div.box div.price p.oversea {
	font-size: 13px;
	margin-bottom:5px;
}
.items div.box div.price div.sale {
	position: relative;
	padding-bottom: 15px;
}
.items div.box div.price div.sale h4 {
	color: #CA0000;
	font-size: 20px;
	/*position: relative;
	padding-left: 60px;*/
	line-height:130%;
	display:table;
}
.items div.box div.price div.sale h4 span.sale {
	background: #CA0000;
	color: #fff;
	font-size: 13px;
	/*position: absolute;*/
	display: table-cell;
	/*top: 8px;
	left: 0;*/
	width: 50px;
	height: 20px;
	text-align: center;
	line-height: 200%;
	vertical-align:middle;
}
.items div.box div.price div.sale h4 span.price {
	display:table-cell;
}
.items div.box div.price div.sale h4 span strong {
	line-height:100% !important;
}
.items div.box div.price div.sale h4 span.tax {
	font-size: 15px;
}
.items div.box div.price div.sale p {
	color: #CA0000;
	font-size: 13px;
}
.items div.box div.price div.sale span.off {
	display: block;
	width: 44px;
	height: 37px;
	position: absolute;
	top: 10px;
	right: 0;
	border: #CA0000 2px solid;
	color: #CA0000;
	font-size: 13px;
	text-align: center;
	line-height: 1.2em;
	box-sizing: border-box;
	padding-top: 3px;
}
@media screen and (max-width:1370px) {
	.items div.box div.price div.sale span.off {
		top: -30px;
	}
}
.items div.box div.cart {
	position: relative;
	margin-bottom: 15%;
}
.items div.box div.cart table {
	width: 90%;
	margin-bottom: 5px;
}
.items div.box div.cart p {
	font-size: 13px;
}
.items.items div.box div.cart a.cart {
	position: absolute;
	top: 0;
	right: 0;
	display: block;
	background: #FF8000;
	text-align: center;
	width: 50px;
	height: 30px;
	box-sizing: border-box;
	padding-top: 4px;
}
.items.otheritems div.box div.cart a.cart img {
	margin: 0 auto;
}
.items div.box div.cart table th,.items div.box div.cart table td {
	border: #18368F 1px solid;
	text-align: center;
	color: #19378D;
}
.items div.box div.cart table td {
	font-size: 11px;
}
.items div.box div.cart table td span {
	font-size: 15px;
	padding-right: 10px;
}
.icon li {
	display: inline-block;
	width: 9%;
	padding-right: 4.5%;
}
.icon li:nth-child(7n) {
	padding-right: 0;
}
.icon li img {
	max-width: 100%;
}
.target {
	padding-bottom: 5px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.target li {
	display: inline-block;
	width: 32%;
	background: #19378E;
	color: #fff;
	font-size: 13px;
	text-align: center;
	margin-bottom: 5px;
}
@media screen and  (max-width: 1635px) {
	.target li {
		width: 48%;
		margin-right: 0;
		margin-bottom: 5px;
	}
	.target li:nth-child(odd) {
		/*float: left;*/
	}
	.target li:nth-child(even) {
		/*float: left;*/
	}
}
.featurelist {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 30px;
}
.featurelist li {
	width: 19%;
	display: block;
	line-height: 1.4em;
}
.featurelist li img {
	width: 100%;
	margin-bottom: 5px;
}
.featurelist li a {
	color: #1F1F1F;
}
.brandlist {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.brandlist li {
	width: 19%;
	display: block;
	line-height: 1.4em;
	text-align: center;
	padding-bottom: 20px;
}
.brandlist li a {
	color: #1F1F1F;
}
.brandlist li b {
	font-weight: bold;
	display: block;
	text-align: center;
}
.brandlist li img {
	width: 100%;
	margin-bottom: 10px;
}
/* 商品詳細 */
.brandnm {
	color: #FF8000;
	font-size: 20px;
}
.itemcatlist {
	overflow: hidden;
	padding-bottom: 20px;
}
.itemcatlist li {
	display: block;
	width: 130px;
	border: #3A5D90 1px solid;
	text-align: center;
	color: #3A5D90;
	font-size: 14px;
	padding: 10px 00px;
	float: left;
	margin-right: 5px;
	margin-bottom: 5px;
}
.itemcatlist li:last-child {
	margin-right: 0;
}
.itemcatlist li img {
	display: block;
	margin: 0 auto 5px auto;
	width: auto;
}
/*
@media screen and  (max-width: 1627px) {
	.itemcatlist {
		padding-bottom: 8px;
	}
	.itemcatlist li {
		width: 9%;
		margin-right: 1%;
		margin-bottom: 1%;
	}
}
@media screen and  (max-width: 1155px) {
	.itemcatlist li {
		width: 10%;
		margin-right: 1%;
		margin-bottom: 1%;
	}
}
*/
.itemmain {
	clear: both;
	float: left;
	width: 46%;
	margin-bottom: 30px;
}
.itemmain img {
	width: 100%;
	border: #C3C3C3 1px solid;
	display: block;
	line-height: 0;
	margin-bottom: 10px;
}
.itemmain a {
	color: #1F1F1F;
}
.itemdtl {
	width: 52%;
	float: right;
	padding-bottom: 40px;
}
.itemtbl {
	width: 100%;
	background: #F4F4F4;
	border: #C3C3C3 1px solid;
	margin-bottom: 10px;
}
.itemtbl th {
	color: #18368F;
	width: 150px;
	text-align: left;
}
.itemtbl th,.itemtbl td {
	vertical-align: top;
	padding: 15px 15px;
}
.itemtbl td ul.icon li {
	width: 70px;
	display: inline-block;
	text-align: center;
}
.itemtbl td ul.icon li span {
	background: #FF8000;
	color: #fff;
	font-size: 11px;
	display: block;
	width: 100%;
	line-height: 1.6em;
}
.itemtbl td ul.icon li img {
	display: block;
	margin: 0 auto 5px auto;
}
.itemtbl td.maker {
	/*color: #18368F;*/
}
.itemtbl tr.net td.net span p,
.itemtbl th.net,.itemtbl td.net {
	color: #CA0000;
}
.itemtbl tr.net td.net span br {
	display:none;
}
.itemtbl td.net b,.itemtbl td.maker b {
	font-size: 150%;
	font-weight: bold;
	padding-left: 10px;
}
.itemtbl td.maker font,.itemtbl td.maker span,.itemtbl td.net b {
	display:inline-block;
}

@media screen and (max-width:1243px) {
	.itemtbl td.net b {
		display: block;
		padding-left: 0;
	}
}
.itemtbl td.maker span {
	padding-left: 10px;
	font-size:130%;
}

.itemtbl td.net span {
	font-size: 13px;
	display: block;
}
.itemtbl td span.stock {
	font-size: 30px;
	color: #18368F;
	margin-right: 10px;
	vertical-align: middle;
}
.itemtbl th.choice {
	font-size: 20px;
	color: #1F1F1F;
}
.itemtbl th.choice select {
	border: #24429C 1px solid;
	font-size: 14px;
	border-radius: 0!important;
	box-sizing: border-box;
	width: 80px;
	padding: 5px 10px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: #fff url(../images/common/arrow.jpg)  100% middle no-repeat;
	font-family: "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",  Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}
.itemtbl td input[type=submit] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: #FF8000 url(../images/common/cartbtn.jpg) center 50% no-repeat;
	background-size:contain;
	display: block;
	color: #fff;
	font-size: 25px;
	font-weight: bold;
	border: none;
	width: 100%;
	max-width:250px;
	cursor:pointer;
}

.itemtbl td input[type=submit].reserve {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: #FF8000 url(/images/common/reservebtn.jpg) center 50% no-repeat;
	background-size:contain;
	display: block;
	color: #fff;
	font-size: 25px;
	font-weight: bold;
	border: none;
	width: 100%;
	max-width:250px;
	cursor:pointer;
}

.itemtbl td.cart a.reservebtn {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: #FF8000 url(/images/common/reservebtn.jpg) center 50% no-repeat;
	display: inline-block;
	background-size:contain;
	color: #fff;
	font-size: 25px;
	font-weight: bold;
	border: none;
	width: 100%;
	max-width:250px;
	height:55px;
	cursor:pointer;
}

.itemtbl td.cart a.contactbtn {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: #7eab22 url(/images/common/inquirybtn.jpg) center 50% no-repeat;
	background-size:contain;
	display: inline-block;
	color: #fff;
	font-size: 25px;
	font-weight: bold;
	border: none;
	width: 100%;
	max-width:250px;
	height:55px;
	cursor:pointer;
}

.itemtbl td input[type=submit].small {
	width: 250px;
}
/*
.itemtbl td a.contactbtn {
	background: #62B002;
	width: 100%;
	max-width:300px;
	text-align: center;
	display: block;
	padding: 15px 0;
	cursor:pointer;
}
*/
.itemtbl td a.contactbtn {
	line-height: 0;
}
.itemtbl td a.contactbtn.small {
	width: 250px;
}
@media screen and  (max-width: 1425px) {
	.itemtbl td input[type=submit] {
		background-size: 90%;
	}
	.itemtbl td a.contactbtn img {
		width: 90%;
		margin: 0 auto;
	}
	.itemtbl td input[type=submit].submit {
		background-size: auto;
	}
}

a.link {
	color: #1F1F1F;
}
a.link img {
	vertical-align: middle;
	margin-left: 10px;
}
.itemtbl td div.dtl {
	overflow: hidden;
	padding: 20px 0;
}
.itemtbl td div.dtl dl {
	display: flex;
	width: 170px;
	float: left;
	margin-right: 10px;
}
.itemtbl td div.dtl dl dt,.itemtbl td div.dtl dl dd {
	display: block;
	float: left;
	border: #18368F 1px solid;
	padding: 10px 0;
	box-sizing: border-box;
	color: #18358E;
}
.itemtbl td div.dtl dl dt {
	width: 120px;
	padding-left: 20px;
}
.itemtbl td div.dtl dl dd {
	width: 50px;
	text-align: center;
	font-size: 23px;
	margin-left: -1px;
	line-height: 1.2em;

}
.itemtbl td ul.ok {
	clear: both;
}
.itemtbl td ul.ok li {
	display: inline-block;
	margin-right: 10px;
	font-size: 11px;
	color: #18338C;
	text-align: center;
}
.itemtbl td ul.ok li img {
	display: block;
	margin: 0 auto;
}
.itemtbl td ul.feat li {
	display: inline-block;
	width: 200px;
	margin-right: 10px;
}
.itemtbl td ul.feat li img {
	width: 100%;
}
.itemtbl td ul.attention {
	padding-bottom: 10px;
}
.itemtbl td ul.attention li {
	text-indent: -14px;
	margin-left: 14px;
}
.itemtbl td a.link {
	display: block;
	color: #1F1F1F;
	padding-bottom: 5px;
}
.itemtbl td a.link img {
	vertical-align: middle;
	margin-left: 10px;
}
h3.itemttl {
	clear: both;
	font-size: 25px;
	color: #243F99;
	margin-bottom: 15px;
}
.itemtxt {
	width: 47%;
	float: left;
	margin-bottom: 30px;
}
.itemslide {
	width: 51%;
	float: right;
	overflow: hidden;
	margin-bottom:30px;
}
.itemslide div.mainimg {
	width: 78%;
	float: left;
	overflow: hidden;
	border: #C3C3C3 1px solid;
}
.itemslide div.mainimg img {
	width: 100%;
	display: block;
	line-height: 0;
}
.itemslide div.thumimg {
	width: 16%;
	float: right;
	position: relative;
	margin-right:15px;
}
.itemslide div.thumimg ul {
	float: left;
}
.itemslide div.thumimg ul li {
	margin-bottom: 8%;
}
.itemslide div.thumimg ul li img {
	width: 70%;
	display: block;
	margin: 0 auto;
	border: #C3C3C3 1px solid;
}
.itemslide div.thumimg .slick-prev, .itemslide div.thumimg .slick-next {
	width:9px;
	height: 16px;
	top: 102%;
}
.itemslide div.thumimg .slick-next {
	right: 0;
}
.itemslide div.thumimg .slick-prev {
	left: 0;
}
.itemslide div.thumimg .slick-prev::before, .itemslide div.thumimg .slick-next::before {
	content: "";
	font-family: "";
	font-size: 0;
	line-height: 0;
	display: block;
	opacity: 1;
	width: 9px;
	height: 16px;
}
.itemslide div.thumimg .slick-next::before {
	background: url(../images/common/nextS.jpg) no-repeat;
}
.itemslide div.thumimg .slick-prev::before {
	background: url(../images/common/beforeS.jpg) no-repeat;
}
.itemslide div.thumimg ul.slick-dots {
	float: none;
	bottom: -3%;
}
.itemslide div.thumimg ul.slick-dots li {
	width: 8px;
	height: 8px;
	margin: 0 3px;
}
.itemslide div.thumimg ul.slick-dots li button {
	width: 8px;
	height: 8px;
	padding: 0;
}
.itemslide div.thumimg ul.slick-dots li button:before {
	width: 8px;
	height: 8px;
}
.itemslide div.thumimg ul.slick-dots li.slick-active button:before {
	color: #0B3775;
}

.itemslide div.thumimg button.slick-prev.slick-arrow {
	display: block;
	position: absolute;
	left: -10px;
}

.itemslide div.thumimg button.slick-next.slick-arrow {
	display: block;
	position: absolute;
	right: -10px;
}

.otherslide {
	width: 90%;
	margin: 0 auto 70px auto !important;
}
.otherslide li {
	display: block;
	width: 10%;
	float: left;
	margin: 0 7px;
}
.otherslide li img {
	display: block;
	width: 100%;
}
.otherslide .slick-prev, .otherslide .slick-next {
	width: 21px;
	height: 38px;
}
.otherslide .slick-next {
	right: -40px;
}
.otherslide .slick-prev {
	left: -40px;
}
.otherslide .slick-prev::before, .otherslide .slick-next::before {
	content: "";
	font-family: "";
	font-size: 0;
	line-height: 0;
	display: block;
	opacity: 1;
	width: 21px;
	height: 38px;
}
.otherslide .slick-next::before {
	background: url(../images/common/nextM.jpg) no-repeat;
}
.otherslide .slick-prev::before {
	background: url(../images/common/beforeM.jpg) no-repeat;
}

.otherslide .slick-dots {
	bottom:-35px;
}
.otherslide .slick-dots li {
	float:none;
}

.fullsize {
	width: 100%;
	margin-bottom: 20px;
}
.lpleft {
	width: 48%;
	float: left;
	padding-bottom: 30px;
}
.lpright {
	width: 48%;
	float: right;
	padding-bottom: 30px;
}
.lpleft img,.lpright img {
	width: 100%;
}
.itemabout {
	display:flex;
	justify-content: space-between;
	clear: both;
	margin-bottom: 25px 0;
}
.itemabout h3 {
	display: block;
	background: #18368F;
	color: #fff;
	font-size: 20px;
	text-align: center;
	width: 25%;
	position: relative;
}
.itemabout h3 span {
	width: 100%;
	text-align: center;
	display: block;
	position: absolute;
	top: 50%;
	margin-top: -16px;
}
.itemabout div.box {
	width: 75%;
	border: #18368F 1px solid;
	padding: 20px;
}
.itemabout div.box h4 {
	margin-bottom: 10px;
}
.itemabout div.box h4 img {
	vertical-align: middle;
	margin-left: 10px;
}
.otheritems {
	overflow: hidden;
}
.otheritems ul.slick-dots {
	bottom: 10px;
}
.otheritems ul.slick-dots li {
	width: 8px;
	height: 8px;
	margin: 0 3px;
}
.otheritems ul.slick-dots li button {
	width: 8px;
	height: 8px;
	padding: 0;
}
.otheritems ul.slick-dots li button:before {
	width: 8px;
	height: 8px;
}
.otheritems ul.slick-dots li.slick-active button:before {
	color: #0B3775;
}
.otheritems .slick-prev, .otheritems .slick-next {
	width: 13px;
	height: 23px;
	top: 98%;
	z-index: 999;
}
.otheritems .slick-next {
	right: 40%;
}
.otheritems .slick-prev {
	left: 40%;
}
.otheritems .slick-prev::before, .otheritems .slick-next::before {
	content: "";
	font-family: "";
	font-size: 0;
	line-height: 0;
	display: block;
	opacity: 1;
	width: 13px;
	height: 23px;
}
.otheritems .slick-next::before {
	background: url(../images/common/nextM.jpg) no-repeat;
	background-size: cover;
}
.otheritems .slick-prev::before {
	background: url(../images/common/beforeM.jpg) no-repeat;
	background-size: cover;
}
.boxyoutube {
	width: 100%;
	margin-bottom: 20px;
}
.dummyyoutube {
	background: #ccc;
	text-align: center;
	height: 620px;
}
/* アイテムから探す */
.itemlist {
	width: 50%;
	float: left;
	margin-bottom: 30px;
}
.itemlist dt {
	color: #243F99;
	font-size: 20px;
	position: relative;
	padding-left: 35px;
	box-sizing: border-box;
	cursor: pointer;
}
.itemlist dt::before {
	content: "+";
	display: block;
	width: 20px;
	height: 20px;
	background: #18368F;
	color: #fff;
	position: absolute;
	top: 7px;
	left: 0;
	line-height: 20px;
	text-align: center;
}
.itemlist dt:hover {
	opacity: 0.8;
}
.itemlist dt.active::before {
	content: "－";
}
.itemlist dd {
	display: none;
}
.itemlist li {
	padding-left: 20px;
	font-size: 20px;
	color: #243F99;
}
.itemlist li::before {
	content: "・";
	color: #243F99;
}
/* ティータイム通信 */
.backno {
	display: block;
	max-height: 400px;
}
.backno dt {
	border: #24429C 1px solid;
	display: block;
	width: 173px;
	height: 27px;
	line-height: 27px;
	font-size: 15px;
	position: relative;
	text-align: center;
	margin-bottom: 10px;
}
.backno dt::after {
	content: "";
	position: absolute;
	top: 10px;
	right: 10px;
	box-sizing: border-box;
	width: 5px;
	height: 6px;
	border: 5px solid transparent;
	border-left: 6px solid #333;
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}
.backno dt:nth-child(2n) {
	margin-top: 30px;
}
.backno dd {
	padding-bottom: 10px;
}
.backno dd span {
	border-left: #243F99 1px solid;
	color: #000;
	padding-left: 10px;
	margin-left: 10px;
}
.backno dd a {
	padding-left: 20px;
	position: relative;
}
.backno dd a::before,.backno dd a::after {
	position: absolute;
	top: -2px;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.backno dd a::before{
	width: 12px;
	height: 12px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #243F99;
}
.backno dd a::after{
	left: 3px;
	width: 3px;
	height: 3px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.readmore {
	display: block;
	width: 100%;
	text-align: center;
	border: #24419B 1px solid;
	line-height: 60px;
	font-size: 19px;
	margin-top: 20px;
}
.teatimemain {
	width: 100%;
	margin-bottom: 30px;
}
.newsdate {
	padding-bottom: 20px;
}
.newsdate span {
	background: #D90000;
	color: #fff;
	font-size: 13px;
	padding: 1px 50px;
	margin-right: 10px;
}
.columnbox {
	border-bottom: #DDD 1px solid;
	padding-bottom: 20px;
	margin-bottom: 20px;
}
.columnnavi {
	display: flex;
	justify-content: space-between;
}
.columnnavi li {
	display: block;
}
.columnnavi li a {
	position: relative;
	color: #1F1F1F;
}
.columnnavi li:first-child a {
	padding-left: 25px;
}
.columnnavi li:last-child a {
	padding-right: 25px;
}
.columnnavi li a::after {
	content: "";
	position: absolute;
	top: 7px;
	box-sizing: border-box;
	width: 5px;
	height: 6px;
	border: 5px solid transparent;
	border-left: 6px solid #333;
}
.columnnavi li:first-child a::after {
	left: 0;
	-webkit-transform: rotate(-180deg);
	transform: rotate(-180deg);
}
.columnnavi li:last-child a::after {
	right: 0;
}
.brandpickup {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.brandpickup li {
	display: block;
	width: 24%;
	line-height: 0;
	padding-bottom:  1.2%;
}
.brandpickup li img {
	width: 100%;
}
/* ブランドから探す */
.brandtab {
	display: flex;
	justify-content: flex-end;
	margin-top: -16px;
	padding-bottom: 30px;
}
.brandtab li {
	display: block;
	border: #18368F 1px solid;
	color: #666;
	line-height: 40px;
	width: 140px;
	text-align: center;
	cursor: pointer;
}
.brandtab li.select {
	background: #18368F;
	color: #fff;
}
.brandtab li:hover {
	background: #18368F;
	color: #fff;
	opacity: 0.7;
}
.brandtxt {
	overflow: hidden;
}
.brandtxt li {
	display: block;
	padding-bottom: 15px;
	float: left;
}
.brandtxt li a {
	/*font-size: 20px;
	color: #1F1F1F;*/
	color:#18368F;
	/*font-weight:bold;*/
	display:block;
	width:100%;
}
.brandtxt li ul {
	padding-right: 20px;
	float: left;
}
.brandtxt li ul li {
	font-size:130%;
	padding-bottom: 0;
	border: 1px solid #18368F;
	margin-right:5px;
	text-align:center;
	width:35px;
	margin-bottom:5px;
}
.brandtxt li ul li.all {
	width:150px;
}

.brandtxt li ul li.disable {
	/*border: 1px solid #ccc;
	color:#ccc;*/
	opacity:0.3
}

.brandtxt li a:hover,.brandtxt li a.select {
	background: #18368F !important;
	color:#fff !important;
	opacity:1.0;
}

.brandtxt li.all {
	float: right;
}
.searchbrand {
	clear: both;
	border-top: #18368F 15px solid;
	border-bottom: #18368F 15px solid;
	border-left: #18368F 10px solid;
	border-right: #18368F 10px solid;
	margin-bottom: 20px;
	position: relative;
	display:flex;
	background:#18368F;
}
.searchbrand input[type=text] {
	border: none;
	font-size: 15px;
	width: 100%;
	box-sizing: border-box;
}
.searchbrand input[type=image] {
	border: none;
	padding:5px;
	background:#fff;
}
.brandwrap {
}
.brandwrap h4 {
	color: #18358E;
	font-size: 20px;
	padding-bottom: 10px;
}
.brandwrap ul.name {
	padding-left: 15px;
	padding-bottom: 20px;
}
.brandwrap ul.name li {
	width: 33%;
	display: inline-block;
	line-height: 2em;
}
.brandwrap ul.name li a {
	color: #1F1F1F;
}
.brandwrap li span a {
	text-align:left;
	display:block;
}


/* Cafe・喫茶店 */
.cafemain {
	overflow: hidden;
	position: relative;
	margin-bottom: 40px;
}
.cafemain img {
	float: right;
}
@media screen and  (max-width: 1440px) {
	.cafemain img {
		margin-right: -230px;
	}
}
.cafemain div.box {
	position: absolute;
	top: 30px;
	left: 20px;
	z-index: 999;
}
.cafemain div.box h3 {
	font-size: 42px;
	color: #243F99;
	padding-bottom: 30px;
}
.cafemain div.box.home h3 {
	font-size: 30px;
	padding-bottom: 10px;
}
.cafemain div.box p {
	width: 412px;
	padding-bottom: 50px;
}
.cafemain div.box a {
	background: #FF8000;
	display: block;
	width: 384px;
	text-align: center;
	color: #fff;
	font-size: 25px;
	line-height: 55px;
}
.searchitem {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 50px;
}
.searchitem li {
	display: block;
	width: 24%;
	margin-bottom: 1%;
	background: #EEE;
	box-sizing: border-box;
	padding: 10px 10px 20px 10px;
	text-align: center;
	position: relative;
	color: #24419B;
	font-size: 13px;
}
.searchitem.home li {
	width: 19%;
}
.searchitem li img {
	width: 100%;
	margin-bottom: 20px;
}
.searchitem li::after {
	content: "";
	position: absolute;
	bottom: -10px;
	right: -10px;
	box-sizing: border-box;
	width: 10px;
	height: 10px;
	border: 10px solid transparent;
	border-left: 10px solid #24419B;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.searchitem li a {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.searchitem li:hover {
	opacity: 0.8;
}
.searchstyle {
	padding: 20px 0;
}
.searchstyle li {
	display: inline-block;
}
.searchstyle li a {
	border-right: #243F99 1px solid;
	padding-right: 10px;
	margin-right: 10px;
}
.searchstyle li:last-child a {
	border: none;
}
.styletype {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	position: relative;
}
.styletype div.box {
	width: 49%;
	margin-bottom: 2%;
	border: #243F99 1px solid;
	overflow: hidden;
}
.styletype div.box img.img {
	float: left;
	width: 35%;
}
.styletype div.box div.txt {
	width:64%;
	float: right;
	padding: 10px;
	box-sizing: border-box;
	overflow: hidden;
}
.styletype div.box div.txt h4 {
	color: #243F99;
	border-bottom: #243F99 1px solid;
	margin-bottom: 10px;
	padding-top: 5px;
	padding-bottom: 5px;
}
.styletype div.box div.txt h4 img {
	vertical-align: text-bottom;
}
.styletype div.box div.txt h4 span {
	font-size: 15px;
	margin-left: 10px;
}
.styletype div.box div.txt p {
	font-size: 10px;
	padding-bottom: 10px;
}
.styletype div.box div.txt img.fig {
	float: left;
	width: 24%;
}
.styletype div.box div.txt ul {
	float: right;
	width: 68%;
}
.styletype div.box div.txt ul li {
	font-size: 12px;
}
.styletype img.center {
	position: absolute;
	top: 50%;
	left: 50%;
	margin-left: -64px;
	margin-top: -68px;
	vertical-align: middle;
}
.btnright {
	text-align: right;
	padding-bottom: 20px;
}
.btnright a {
	padding-right: 25px;
	position: relative;
	font-size: 18px;
}
.btnright a::before,
.btnright a::after{
	position: absolute;
	top: -2px;
	bottom: 0;
	right: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.btnright a::before{
	width: 12px;
	height: 12px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #24409A;
}
.btnright a::after{
	right: 1px;
	box-sizing: border-box;
	width: 3px;
	height: 3px;
	border: 3px solid transparent;
	border-left: 3px solid #fff;
}
.companydesc {
	background: #F4F4F4;
	text-align: center;
	padding: 30px 45px;
	overflow: hidden;
}
.companydesc h2 {
	font-size: 35px;
	color: #243F99;
	padding-bottom:0;
	border: none;
	margin-bottom: 0;
}
.companydesc  h2 span {
	font-size: 18px;
	margin-left: 10px;
}
.companydesc  h2 span b {
	color: #FF7F00;
}
@media screen and  (max-width: 1340px) {
	.companydesc  h2 {
		font-size: 28px;
	}
	.companydesc  h2 span {
		font-size: 15px;
	}
}
@media screen and  (max-width: 1130px) {
	.companydesc  h2 {
		font-size: 26px;
	}
	.companydesc  h2 span {
		font-size: 14px;
	}
}
.companydesc div.box {
	display: flex;
	justify-content: space-around;
}
.companydesc div.left,.companydesc div.right {
	width: 48%;
	background: #fff;
	padding: 20px 0;
}
.companydesc div.left h3,.companydesc div.right h3 {
	color: #FF8000;
	font-size: 25px;
	padding-bottom: 10px;
}

.companydesc div.left {
}
.companydesc div.left img {
	width: 80%;
	display: block;
	margin: 0 auto 20px auto;
}
.companydesc div.right {
}

.companydesc div.right a {
	display: block;
	width: 80%;
	margin: 0 auto 20px auto;
	color: #fff;
	font-size: 25px;
	line-height: 55px;
	background: #FF8000;
}
@media screen and  (max-width: 1340px) {
	.companydesc  h2 {
		font-size: 28px;
	}
	.companydesc  h2 span {
		font-size: 15px;
	}
	.companydesc div.left h3,.companydesc div.right h3 {
		font-size: 24px;
	}
	.companydesc div.right a {
		font-size: 20px;
	}
	.companydesc div.right p {
		font-size: 13px;
	}
}
@media screen and  (max-width: 1130px) {
	.companydesc  h2 {
		font-size: 26px;
	}
	.companydesc  h2 span {
		font-size: 14px;
	}
	.companydesc div.left h3,.companydesc div.right h3 {
		font-size: 22px;
	}
}
/* 法人のお客様へ */
.corporatenews {
	display: flex;
	justify-content: flex-start;
	background: #F4F4F4;
	position: relative;
	margin-bottom: 20px;
}
.corporatenews div.ttl {
	background: #243F99;
	width: 240px;
	height: 180px;
	display: table;
	padding: 0 20px;
}
.corporatenews div.ttl h3 {
	display: table-cell;
	height: 180px;
	vertical-align: middle;
	text-align: center;
	color: #fff;
	font-size: 25px;
}
.corporatenews div.ttl h3 span {
	display: block;
	border-top: #fff 1px solid;
	font-size: 20px;
}
.corporatenews ul {
	display: block;
	padding: 20px 50px;
}
.corporatenews ul li {
	padding-bottom: 10px;
}
.corporatenews ul li a {
	color: #1F1F1F;
	margin-left: 20px;
}
@media screen and  (max-width: 1210px) {
	.corporatenews div.ttl {
		width: 150px;
	}
	.corporatenews div.ttl h3 {
		font-size: 20px;
	}
}
.corporatenews a.btn {
	position: absolute;
	right: 20px;
	bottom: 20px;
	padding-right: 30px;
	color: #1f1f1f;
}
.corporatenews a.btn::before,.corporatenews a.btn::after {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.corporatenews a.btn::before {
	width: 18px;
	height: 18px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #D96D00;
}
.corporatenews a.btn::after {
	right: 7px;
	width: 4px;
	height: 4px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.ttl_corp {
	clear: both;
	font-size: 20px;
	color: #243F99;
	padding-bottom: 5px;
}
.box_corp {
	min-height: 200px;
	position: relative;
	padding-left: 320px;
	padding-bottom: 30px;
}
.box_corp img {
	position: absolute;
	top: 0;
	left: 0;
}
.corplist {
	border: #DDD 5px solid;
	padding: 20px;
	margin-bottom: 30px;
}
.corplist li {
	font-size: 20px;
	color: #243F99;
}
.corpsearch {
	display: flex;
	justify-content: flex-start;
	background: #F4F4F4;
	margin-bottom: 30px;
}
.corpsearch h3 {
	display: block;
	font-size: 20px;
	color: #fff;
	background: #243F99;
	line-height: 60px;
	width: 220px;
	text-align: center;
}
.corpsearch ul {
	padding: 0 10px;
	text-align: center;
}
.corpsearch ul li {
	line-height: 60px;
	font-size: 18px;
	display: inline-block;
	margin: 0 10px;
}
.corpsearch ul li a {
	padding-left: 15px;
	position: relative;
}
.corpsearch ul li a::before,.corpsearch ul li a::after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.corpsearch ul li a::before {
	width: 12px;
	height: 12px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #243F99;
}
.corpsearch ul li a::after {
	left: 3px;
	width: 3px;
	height: 3px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
@media screen and  (max-width: 1548px) {
	.corpsearch ul li {
		margin: 0;
	}
}
@media screen and  (max-width: 1455px) {
	.corpsearch ul li {
		margin: 0;
		font-size: 15px;
	}
	.corpsearch h3 {
		font-size: 16px;
		width: 160px;
	}
}
@media screen and  (max-width: 1199px) {
	.corpsearch ul li {
		margin: 0;
		font-size: 14px;
	}
	.corpsearch h3 {
		font-size: 15px;
		width: 140px;
	}
}
@media screen and  (max-width: 1110px) {
	.corpsearch ul li {
		margin: 0;
		font-size: 13px;
	}
	.corpsearch h3 {
		font-size: 15px;
		width: 140px;
	}
}
/* 店舗のご案内 */
.shopnews {
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}
.shopnews div.ttl {
	display: table;
	width: 21%;
	position: relative;
	background: #243F99;
}
.shopnews div.ttl h3 {
	display: table-cell;
	color: #fff;
	font-size: 25px;
	text-align: center;
	width: 100%;
	height: 380px;
	box-sizing: border-box;
	padding: 20px;
	vertical-align: middle;
}
.shopnews div.ttl::after {
	position: absolute;
	top: 0;
	bottom: 0;
	right: -32px;
	margin: auto;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 16px;
	height: 16px;
	border: 16px solid transparent;
	border-left: 16px solid #243F99;
}
.shopnews div.ttl h3 span {
	display: block;
	border-top: #fff 1px solid;
	font-size: 20px;
}
.shopnews div.list {
	background: #F4F4F4;
	width: 75%;
	height: 380px;
	overflow-y: scroll;
	box-sizing: border-box;
	padding: 20px;
}
.shopnews div.list::-webkit-scrollbar {
	width: 12px;
}
.shopnews div.list::-webkit-scrollbar-track {
	background: #DDD;
}
.shopnews div.list::-webkit-scrollbar-thumb {
	background: #19378F;
}
.shopnews div.list li {
	padding-bottom: 15px;
	position: relative;
	line-height:1.3em;
}
.shopnews div.list li label {
	padding-left: 110px;
}
.shopnews div.list li a {
	color: #1F1F1F;
	display: block;
	width: 100%;
	height: 20px;
	overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
	position: relative;
	box-sizing: border-box;
}
.shopnews div.list li span {
	color: #fff;
	font-size: 13px;
	width: 100px;
	display: block;
	line-height: 18px;
	text-align: center;
	position: absolute;
	top: 4px;
	left: 0px;
}
.shopnews div.list li span.sale {
	background: #FF0000;
}
.shopnews div.list li span.event {
	background: #006DD9;
}
.shopnews div.list li span.all {
	background: #FF8000;
}

.shopinfo div.box {
	background: #F4F4F4;
	width: 75%;
	height: 160px;
	overflow-y: scroll;
	box-sizing: border-box;
	padding: 20px;
}
.shopinfo div.box::-webkit-scrollbar {
	width: 12px;
}
.shopinfo div.box::-webkit-scrollbar-track {
	background: #DDD;
}
.shopinfo div.box::-webkit-scrollbar-thumb {
	background: #19378F;
}
.shopinfo div.box li {
	width:100%;
	padding-bottom: 8px;
	position: relative;
	line-height:1.3em;
}
.shopinfo div.box li label {
	padding-left: 110px;
}
.shopinfo div.box li a {
	color: #1F1F1F;
	display: block;
	width: 100%;
	height: 20px;
	overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
	position: relative;
	box-sizing: border-box;
}
.shopinfo div.box li span {
	color: #fff;
	font-size: 13px;
	width: 100px;
	display: block;
	line-height: 18px;
	text-align: center;
	position: absolute;
	top: 4px;
	left: 0;
}
.shopinfo div.box li span.sale {
	background: #FF0000;
}
.shopinfo div.box li span.event {
	background: #006DD9;
}
.shopinfo div.box li span.all {
	background: #FF8000;
}

@media screen and  (max-width: 1400px) {
	.shopnews div.ttl h3 {
		font-size: 22px;
	}
}
@media screen and  (max-width: 1270px) {
	.shopnews div.ttl h3 {
		font-size: 18px;
	}
	.shopnews div.ttl h3 span {
		font-size: 15px;
	}
}
@media screen and  (max-width: 1090px) {
	.shopnews div.ttl h3 {
		font-size: 16px;
	}
	.shopnews div.ttl h3 span {
		font-size: 13px;
	}
}
.boxshop {
	position: relative;
	padding-right: 320px;
	min-height: 200px;
	margin-bottom: 20px;
}
.boxshop img {
	position: absolute;
	top: 0;
	right: 0;
}
.boxshop h4 {
	font-size: 25px;
	border-bottom: #DDD 1px solid;
	color: #243F99;
	margin-bottom: 15px;
	line-height: 1.6em;
}
.boxshop ul {
	position: absolute;
	top: 10px;
	right: 320px;
}
.boxshop ul li {
	display: inline-block;
	width: 130px;
	height: 18px;
	line-height: 18px;
	font-size: 13px;
	text-align: center;
	color: #fff;
}
.boxshop ul li.event {
	background: #006DD9;
}
.boxshop ul li.sale {
	background: #FF0000;
}
.shopinfo {
	display: flex;
	justify-content: space-between;
	background: #F4F4F4;
	margin-bottom: 20px;
}
.shopinfo h5 {
	background: #243F99;
	width: 192px;
	height: 160px;
	text-align: center;
	display: block;
	color: #fff;
	font-size: 16px;
	box-sizing: border-box;
	padding: 45px 20px 0 20px;
}
.shopinfo h5 span {
	display: block;
	border-top:#fff 1px solid;
	font-size: 18px;
}
.shopinfo div.box p.date {
	font-size: 12px;
}
.shopinfo div.box {
	padding: 10px 20px;
	flex: 1;
}
.shopinfo div.box h6 a {
	font-weight: bold;
	color: #243F99;
}
.shopinfo div.box p a {
	color: #1f1f1f;
}
@media screen and  (max-width: 1124px) {
	.shopinfo div.box p a {
		font-size: 13px;
	}
}
hr.shopline {
	border: #DDD 1px solid;
	margin-bottom:  40px;
	margin-top: 40px;
}
.couponget {
	background: url(../images/top/mailmagazine/bg.jpg) repeat;
	padding: 20px;
	position: relative;
}
.couponget img.img {
	position: absolute;
	right: 20px;
	bottom: 0;
}
@media screen and  (max-width: 1230px) {
	.couponget img.img {
		width: 280px;
	}
}
.couponget h3 {
	font-size: 33px;
	color: #243F99;
}
.couponget p {
	font-size: 19px;
}
.couponget div.box {
	padding-top: 40px;
	padding-bottom: 20px;
	position: relative;
}
.couponget div.box p {
	font-size: 15px;
	line-height: 2em;
}
.couponget a.featurebtn {
	position: absolute;
	bottom: 40px;
	left: 240px;
}
.shopname {
	position: relative;
}
.shopname span {
	position: absolute;
	top: 10px;
	right: 0;
	font-size: 19px;
	color: #666;
}
.shoptxt {
	padding-bottom: 20px;
	position: relative;
	padding-left: 160px;
}
.shoptxt b {
	background: #FF8000;
	color: #fff;
	font-size: 13px;
	padding: 0 10px;
	margin-right: 15px;
	position: absolute;
	top: 0;
	left: 0;
}
.shoptxt span {
	margin-right: 15px;
}
.shopimg {
	width: 100%;
	display: block;
	margin-bottom: 20px;
}
.evntsale {
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}
.evntsale div.ttl {
	display: table;
	width: 28%;
	position: relative;
	background: #243F99;
}
.evntsale div.ttl h3 {
	display: table-cell;
	color: #fff;
	font-size: 25px;
	text-align: center;
	width: 100%;
	height: 180px;
	box-sizing: border-box;
	padding: 20px;
	vertical-align: middle;
}
.evntsale div.ttl::after {
	position: absolute;
	top: 0;
	bottom: 0;
	right: -32px;
	margin: auto;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 16px;
	height: 16px;
	border: 16px solid transparent;
	border-left: 16px solid #243F99;
}
.evntsale div.ttl h3 span {
	display: block;
	border-top: #fff 1px solid;
	font-size: 20px;
}
@media screen and  (max-width: 1575px) {
	.evntsale div.ttl h3 {
		font-size: 22px;
	}
	.evntsale div.ttl h3 span {
		font-size: 18px;
	}
}
@media screen and  (max-width: 1420px) {
	.evntsale div.ttl h3 {
		font-size: 20px;
	}
	.evntsale div.ttl h3 span {
		font-size: 16px;
	}
}
.evntsale div.list {
	background: #F4F4F4;
	width: 68%;
	height: 180px;
	overflow-y: scroll;
	box-sizing: border-box;
	padding: 20px;
}
.evntsale div.list::-webkit-scrollbar {
	width: 12px;
}
.evntsale div.list::-webkit-scrollbar-track {
	background: #DDD;
}
.evntsale div.list::-webkit-scrollbar-thumb {
	background: #19378F;
}
.evntsale div.list p.date {
	padding-bottom: 15px;
}
.evntsale div.list p.date span {
	color: #fff;
	font-size: 13px;
	width: 129px;
	line-height: 18px;
	text-align: center;
	display: inline-block;
	margin: 0 3px;
}
@media screen and  (max-width: 1190px) {
	.evntsale div.list p.date span {
		width: 100px;
	}
}
.evntsale div.list p.date span:first-child {
	margin-left: 15px;
}
.evntsale div.list p.date span.sale {
	background: #FF0000;
}
.evntsale div.list p.date span.event {
	background: #006DD9;
}
.evntsale div.list p.date span.all {
	background: #FF8000;
}
.shopmsg {
	position: relative;
	padding-left: 277px;
	min-height: 300px;
	padding-bottom: 20px;
}
.shopmsg div.img {
	width: 237px;
	position: absolute;
	top: 0;
	left: 0;
	text-align: center;
}
.shopmsg div.img h4 span,.shopmsg div.img h4 b {
	color: #243F99
}
.shopmsg div.img h4 b {
	margin-right: 15px;
}
.shopmsg div.img h4 span {
	margin-right: 10px;
}
.shopmsg h5 {
	font-size: 20px;
	color: #243F99;
	padding-bottom: 15px;
}
.staffrecommend {
	background: #F4F4F4;
	padding: 20px 300px 20px 20px;
	margin-bottom: 40px;
	position: relative;
	min-height: 240px;
}
.staffrecommend img {
	position: absolute;
	top: 20px;
	right: 20px;
	display: block;
	width: 240px;
	height: 240px;
}
.staffrecommend h4 {
	font-size: 25px;
	color: #243F99;
	position: relative;
	padding-left: 90px;
	padding-bottom: 15px;
}
.staffrecommend h4 span {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	background: #243F99;
	color: #fff;
	font-size: 20px;
	width: 76px;
	height: 38px;
	text-align: center;
	border-radius: 6px;
	line-height: 38px;
}
.staffrecommend h4 span::after {
	position: absolute;
	top: 0;
	right: -11px;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 6px;
	height: 6px;
	border: 6px solid transparent;
	border-left: 6px solid #243F99;
}
.staffrecommend h5 {
	color: #243F99;
	padding-bottom: 10px;
}
.staffrecommend h6 {
	padding-bottom: 10px;
}
.staffbloglist {
	border-bottom: #DDD 1px solid;
	position: relative;
	padding-bottom: 10px;
	margin-bottom: 10px;
	padding-left: 164px;
	min-height: 96px;
}
.staffbloglist a.img {
	position: absolute;
	top: 0;
	left: 0;
	width: 140px;
}
.staffbloglist a {
	display:inline-block;
	width:100%;
}

.featurebtn.shop {
	margin-top: 20px;
	margin-bottom: 40px;
}
.shopdetail {

}
.shopdetail dt {
	font-size: 18px;
	color: #243F99;
}
.shopdetail dt span {
	font-size: 15px;
	color: #1F1F1F;
}
.shopmap {
	display: flex;
	justify-content: space-between;
	padding: 30px 0;
}
.shopmap div.left {
	width: 43%;
}
.shopmap div.left iframe {
	width: 100%;
	height: 300px;
	border: none;
	margin-bottom: 5px;
}
.shopmap div.left p {
	text-align: right;
}
.shopmap div.left a {
	color: #1F1F1F;
}
.shopmap div.left a img {
	vertical-align: middle;
	margin-left: 5px;
}
.shopmap div.right {
	width: 55%;
}
.shopmap div.right iframe {
	width: 100%;
	height: 300px;
	border: none;
}
.shopaccess {
	overflow: hidden;
	padding-bottom: 40px;
}
.shopaccess dt {
	clear: both;
	display: block;
	width: 129px;
	height: 18px;
	line-height: 18px;
	color: #fff;
	font-size: 13px;
	float: left;
	margin-right: 10px;
	background: #24409A;
	text-align: center;
}
.shopaccess dd {
	float: left;
}
.snsarea {
	clear: both;
	display: flex;
	justify-content: space-between;
	padding-bottom: 20px;
}
.snsarea div.box {
	width: 49%;
	overflow-x:auto;
}
.snsarea div.box iframe {
	max-width: 100%;
	width: 100%;
	height: 500px;
}
.snslink {
	display: flex;
	/*justify-content: space-between;*/
	padding-bottom: 40px;
}
.snslink li {
	display: block;
	width: 24%;
	height: 62px;
	box-sizing: border-box;
	padding-left: 60px;
	color: #243F99;
	position: relative;
	border:#24419B 1px solid;
	line-height: 1.2em;
	padding-top: 14px;
	margin-right:1%;
}
.snslink li img {
	position: absolute;
	top: 5px;
	left: 5px;
}
@media screen and  (max-width: 1375px) {
	.snslink li {
		font-size: 14px;
		padding-top: 16px;
	}
}
@media screen and  (max-width: 1310px) {
	.snslink li {
		font-size: 13px;
		padding-top: 18px;
	}
}
@media screen and  (max-width: 1240px) {
	.snslink li {
		font-size: 12px;
		padding-top: 20px;
	}
}
@media screen and  (max-width: 1170px) {
	.snslink li {
		font-size: 10px;
		padding-top: 20px;
	}
}
/* 新着情報 */
.newslist li,p.newslist {
	border-bottom: #DDD 1px solid;
	/*padding-bottom: 15px;
	margin-bottom: 25px;*/
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}
p.newslist {
	border-bottom: none;
}
.newslist li a {
	display: block;
	margin-left: 15px;
	-webkit-flex: 1;
	flex: 1;
	color: #1F1F1F;
}
.newslist span {
	display: block;
	width: 164px;
	color: #fff;
	text-align: center;
}
.newslist span.date {
	color: #1F1F1F;
	width: 100px;
	text-align: left;
}
p.newslist span.date {
	/*margin-left: 15px;*/
}
.newslist span.story {
	background: #D93600;
}
.newslist span.press {
	background: #85B200;
}
.newslist span.renewal {
	background: #B20000;
}
.newslist span.news {
	background: #FF8000;
}
.newslist span.item {
	background: #0080FF;
}
.newslist span.plate {
	background: #468C00;
}
.newslist span.care {
	background: #FF8000;
}
.newslist span.brand {
	background: #0080FF;
}
.newslist span.column {
	background: #85B200;
}
.newslist span.daly {
	background: #243F99;
}
.newsarticle {
	padding-bottom: 30px;
}
.newsarticle h3 {
	padding-bottom: 30px;
	font-size: 25px;
	color: #243F99;
}
.newsarticle b {
	font-weight: bold;
}
/* 家族用 */
.homeitem {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 40px;
}
.homeitem li {
	display: block;
	width: 32.5%;
	padding-bottom: 5px;
}
.homeitem li img {
	width: 100%;
}
.homenavi {
	background: #F4F4F4;
	padding: 40px 50px;
	display: flex;
	justify-content: space-between;
}
.homenavi li {
	display: block;
	width: 47.6%;
}
.homenavi li img {
	width: 100%;
}
.guideul {
	padding-bottom: 30px;
}
.guideul li ul {
	padding-bottom: 0;
	padding-left: 30px;
}
p.indenttxt {
	text-indent: -15px;
	margin-left: 15px;
}
.addbox {
	padding: 10px 0 10px 30px;
}
.addbox p {
	line-height: 2em;
}
/* ランキング */
.itemrank {
	overflow: hidden;
	padding-bottom: 50px;
}
.itemrank li {
	display: block;
	width: 33%;
	float: left;
	font-size: 18px;
	box-sizing: border-box;
	padding-left: 20px;
	position: relative;
	padding-bottom: 5px;
}
.itemrank li::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	vertical-align: middle;
	box-sizing: border-box;
	width: 6px;
	height: 6px;
	border: 6px solid transparent;
	border-left: 6px solid #24419B;
}
.simplesearch {
	background: #18368F;
	padding: 20px;
	overflow: hidden;
	margin-bottom: 50px;
}
.wrapper div.simplesearch h2 {
	color: #fff;
	font-size: 29px;
	float: left;
	border-bottom: 0;
	margin: 0;
	padding: 0;
}
.wrapper div.simplesearch h2 span {
	background: #FFDFBF;
	border-radius: 6px;
	color: #18368F;
	text-align: center;
	display: inline-block;
	width: 75px;
	height: 36px;
	font-size: 13px;
	line-height: 36px;
	vertical-align: middle;
	margin:0 10px;
}
.simplesearch div.form {
	width: 70%;
	float: right;
	overflow: hidden;
}
.simplesearch.large div.form {
	width: 50%;
}
.simplesearch div.form select {
	width: 37%;
	border-radius: 0;
	height: 37px;
	text-align: center;
	display: block;
	float: left;
	margin-top: 5px;
}
.simplesearch.large div.form select {
	width: 35%;
}
@media screen and  (max-width: 1282px) {
	.simplesearch.large div.form select {
		width: 33%;
	}
}
@media screen and  (max-width: 1183px) {
	.simplesearch.large div.form {
		width: 45%;
	}
	.simplesearch.large div.form select {
		width: 28%;
	}
}
@media screen and  (max-width: 1178px) {
}
.simplesearch div.form input[type=image] {
	border: none;
	vertical-align: middle;
	float: left;
	margin-left: 20px;
}
.simplesearch h2 img {
	vertical-align: middle;
	margin-right: 5px;
}
.simplesearch div.form p {
	float: left;
	color: #fff;
	font-size: 20px;
	padding: 10px 20px 0 20px;
}
@media screen and  (max-width: 1480px) {
	.simplesearch div.form {
		width: 80%;
	}
}
@media screen and  (max-width: 1302px) {
	.simplesearch div.form select {
		width: 35%;
	}
}
@media screen and  (max-width: 1260px) {
	.wrapper section.main div.simplesearch h2 {
		font-size: 22px;
		padding-top: 10px;
	}
	.simplesearch div.form select {
		width: 30%;
	}
}
/* ランキング */
.ranknavi {
	position: relative;
	padding-top: 40px;
	padding-bottom: 30px;
}
.ranknavi::before {
	content: url(../images/common/dot.jpg);
}
.ranknavi li {
	display: inline-block;
	padding: 0 10px;
	position: relative;
	color: #243F99;
	font-size: 16px;
	cursor: pointer;
}
.ranknavi li::after {
	content: url(../images/common/dot.jpg);
	position: absolute;
	top: 0;
	right: 0;
}
.ranknavi li.select::before {
	content: url(../images/common/down.jpg);
	position: absolute;
	top: -20px;
	left: 50%;
	margin-left: -11.5px;
}
.ranknavi li:hover {
	opacity: 0.6;
	color: #333;
}
@media screen and (max-width:1247px) {
	.ranknavi li {
		font-size: 14px;
	}
}
@media screen and (max-width:1119px) {
	.ranknavi li {
		font-size: 13px;
	}
}
/* お支払い方法について */
.tblguide {
	width: 100%;
	margin-bottom: 40px;
}
.tblguide.pack {
	table-layout: fixed;
}
.tblguide.charge {
	table-layout: fixed;
}
.tblguide th,.tblguide td {
	border: #C1C1C1 1px solid;
	padding: 10px;
}
.tblguide thead th {
	background: #BFCFFF;
	text-align: center;
}
.tblguide.charge thead th {
	background: #fff;
	text-align: left;
}
.tblguide.charge td {
	padding: 20px 10px;
}
.tblguide tbody th {
	background: #BFCFFF;
	text-align: left;
	width: 280px;
}
.tblguide.wh tbody th {
	background: #fff;
}
.tblguide.pack  tbody th {
	width: auto;
}
.tblguide td {
	position: relative;
}
.tblguide td img.img {
	position: absolute;
	top: 20px;
	right: 10px;
}
.tblguide caption {
	text-align: left;
	font-weight: bold;
	padding-bottom: 10px;
}
.ttlguide {
	font-size: 20px;
	color: #243F99;
}
.ttlguide2 {
	font-size: 18px;
	color: #243F99;
}
.guideol {
	padding-bottom: 30px;
}
.guideol li {
	text-indent: -17px;
	margin-left: 17px;
}
/* 結婚祝い 特集 */
.servicelist {
	display: flex;
	justify-content: space-between;
	padding-bottom: 50px;
}
.servicelist li {
	display: block;
	border: #243F99 1px solid;
	box-sizing: border-box;
	padding: 10px 10px 20px 10px;
	width: 24%;
	font-size: 19px;
	text-align: center;
}
.servicelist li img {
	width: 100%;
	margin-bottom: 25px;
}
.servicelist li a {
	color: #545454;
}
.encyclopedia {
	background: #EEE;
	padding: 40px 0;
	margin-bottom: 50px;
}
.encyclopedia div.inner {
	width: 90%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
.encyclopedia div.inner div.left {
	width: 48%;
}
.encyclopedia div.inner div.right {
	width: 48%;
}
.encyclopedia div.inner div.right img {
	width: 100%;
}
.encyclopedia div.inner div.left dl {
	padding-top: 15px;
	padding-bottom: 20px;
}
.encyclopedia div.inner div.left dl dt {
	color: #243F99;
	padding-top: 10px;
}
/* 会員ページの利用方法 */
.howto {
	display: flex;
	justify-content: space-between;
	padding-bottom: 30px;
}
.howto img {
	display: block;
	width: 52%;
	height: 100%;
}
.howto div.txt {
	width: 43%;
}
.howto div.txt p {
	padding-bottom: 20px;
}
.howto div.txt img {
	width: 100%;
	height: auto;
	margin-bottom: 10px;
}
.howto div.txt h4 {
	color: #243F99;
	font-size: 20px;
}
/* 外国の大使館、または外交官の方へ */
.ds {
	display: flex;
	justify-content: space-between;
	padding-bottom: 40px;
}
.ds div.left {
	width: 76%;
	display: block;
}
.ds div.right {
	width: 18%;
	padding-top: 20px;
	display: block;
}
.ds div.right img {
	width: 100%;
	height: auto;
}
/* よくあるご質問 */
.faq {
	background: #FAFAFA;
	padding: 20px 0;
	margin-bottom: 50px;
}
.faq h3 {
	text-align: center;
	color: #18358E;
	font-size: 30px;
	padding-bottom: 20px;
}
.faq dl {
	display: block;
	width: 82%;
	margin: auto;
	padding-bottom: 30px;
}
.faq dl dt {
	color: #18358E;
	font-size: 20px;
	background: #EEE;
	padding: 10px;
	position: relative;
	margin-bottom: 1px;
	cursor: pointer;
}
.faq dl dt:hover {
	opacity: 0.8;
}
.faq dl dt::before {
	content: "Q.";
	font-size: 30px;
	margin-right: 10px;
}
.faq dl dt::after {
	position: absolute;
	top: 5px;
	bottom: 0;
	right: 10px;
	margin: auto;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 8px;
	height: 8px;
	border: 8px solid transparent;
	border-left: 8px solid #18358E;
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}
.faq dl dd {
	background: #fff;
	padding: 20px;
	display: none;
}
.faq dl dd::before {
	color: #FF7F00;
	font-size: 20px;
	content: "A.";
}
.faq h4 {
	border-left: #19378E 8px solid;
	padding-left: 15px;
	color: #19378E;
	font-size: 20px;
	display: block;
	width: 82%;
	margin: 0 auto 20px auto;
	box-sizing: border-box;
}
.faqnavi {
	display: flex;
	justify-content: space-between;
	padding-bottom: 30px;
}
.faqnavi li {
	display: block;
	width: 24%;
	box-sizing: border-box;
	text-align: center;
	height: 100px;
	font-size: 14px;
}
.faqnavi li a {
	display: block;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	border: #DDD 5px solid;
	text-align: center;
	position: relative;
	line-height: 1.4em;
	padding-top: 34px;
}
.faqnavi li a.large {
	padding-top: 25px;
}
.faqnavi li a::after {
	content: url(../images/common/arrow.png);
	position: absolute;
	bottom: 0;
	left: 50%;
	margin-left: -12px;
}
/* ご利用ガイド */
.guidenavi {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.guidenavi div.box {
	display: block;
	width: 48%;
	box-sizing: border-box;
	border: #DDD 5px solid;
	padding: 20px 20px 45px 20px;
	margin-bottom: 40px;
	position: relative;
}
.guidenavi div.box h4 {
	/*border-left: #19378E 8px solid;
	padding-left: 15px;*/
	font-size: 20px;
	margin-bottom: 20px;
	color: #243F99;
}
.guidenavi div.box h4 img {
	vertical-align: middle;
	margin-right: 10px;
}

.guidenavi div.box ul {
	overflow: hidden;
	padding-left: 15px;
}
.guidenavi div.box ul li {
	display: block;
	width:100%;
	/*float: left;*/
	/*text-indent: -15px;*/
	padding-bottom: 10px;
}
.guidenavi div.box ul li:nth-child(even) {
	float: right;
}
.guidenavi div.box a.btn {
	clear: both;
	color: #525252;
	font-size: 18px;
	padding-right: 20px;
	position: absolute;
	right: 20px;
	bottom: 20px;
}
.guidenavi div.box a.btn::before,
.guidenavi div.box a.btn::after{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.guidenavi div.box a.btn::before{
	width: 18px;
	height: 18px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #FF8000;
}
.guidenavi div.box a.btn::after{
	right: 7px;
	width: 4px;
	height: 4px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
/* はじめての方へ */
.beginner {
	display: flex;
	justify-content: space-between;
	padding-bottom: 80px;
}
.beginner div.left {
	display: block;
	width: 24%;
}
.beginner div.left h3 {
	display: table;
	height: 100%;
}
.beginner div.left h3 span {
	display: table-cell;
	height: 100%;
	vertical-align: middle;
}
.beginner div.left h3 img {
	width: 100%;
}
.beginner div.right {
	width: 72%;
}
.beginner div.right h2 {
	font-size: 50px;
	border: none;
}
.biginnerbox {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 100px;
}
.biginnerbox div.box {
	width: 32.5%;
	width: 49.5%;
	box-sizing: border-box;
	border: #DDD 5px solid;
	overflow: hidden;
	padding: 10px;
	margin-bottom: 15px;
}
.biginnerbox div.box h4 {
	font-size: 18px;
	color: #243F99;
	position: relative;
	padding-left: 74px;
	padding-top: 30px;
	line-height: 1.2em;
}
.biginnerbox div.box h4.mid {
	padding-top: 10px;
}
.biginnerbox div.box h4.long {
	padding-top: 2px;
}
@media screen and  (max-width: 1435px) {
	.biginnerbox div.box {
		width: 49%;
	}
}
.biginnerbox div.box h4 img {
	position: absolute;
	top: 0;
	left: 0;
}
.biginnerbox div.box img.img {
	display: block;
	margin: 20px auto;
}
.biginnerbox div.box a {
	float: right;
	margin-top: 20px;
}
.ttlbiginner {
	font-size: 26px;
	text-align: center;
	color: #18348D;
	position: relative;
	margin-bottom: 30px;
}
.ttlbiginner::after {
	position: absolute;
	top: 105%;
	left: 50%;
	content: "";
	box-sizing: border-box;
	width: 24px;
	height: 24px;
	border: 24px solid transparent;
	border-left: 24px solid #18358E;
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}
/* ギフト包装について */
.giftmain {
	position: relative;
	height: 207px;
	box-sizing: border-box;
	padding-top: 20px;
	margin-bottom: 20px;
}
.giftmain img {
	position: absolute;
	top: 0;
	right: 0;
	max-width: 100%;
}
.giftmain h3 {
	font-size: 20px;
	color: #243F99;
	padding-bottom: 10px;
	position: relative;
	z-index: 99;
}
.giftmain p {
	position: relative;
	z-index: 99;
}
.giftmain p br.sm {
	display: none;
}
@media screen and  (max-width: 1143px) {
	.giftmain p br.sm {
		display: block;
	}
}
.boxnoshi {
	display: flex;
	justify-content: space-between;
	padding-bottom: 30px;
}
.boxnoshi div.left {
	flex: 1;
	padding-right: 20px;
}
.boxnoshi table {
	width: 430px;
	table-layout: fixed;
}
.boxnoshi table th,.boxnoshi table td {
	padding: 10px 0;
}
.boxnoshi table th {
	color: #fff;
	background: #243F99;
	font-size: 20px;
	border: #243F99 1px solid;
}
.boxnoshi table td {
	text-align: center;
	border: #243F99 1px solid;
}
.giftnavi {
	display: flex;
	justify-content: space-between;
	padding-bottom: 15px;
}
.giftnavi li {
	display: block;
	width: 15.8%;
	background: #CDCDCD;
	color: #254099;
	padding: 10px 5px;
	box-sizing: border-box;
	position: relative;
	cursor: pointer;
	text-align:center;
}
.giftnavi li.select {
	background: #254099;
	color: #fff;
}
.giftnavi li:hover {
	opacity: 0.7;
}
.giftnavi li::after {
	position: absolute;
	top: 0;
	right: 0;
	content: '';
	width: 0;
	border-width: 0 16px 16px 0;
	border-style: solid;
	border-color: #fff #fff #CDCDCD #CDCDCD;
}
.giftnavi li.select::after {
	border-color: #fff #fff #254099 #254099;
}
@media screen and  (max-width: 1445px) {
	.giftnavi li {
		font-size: 14px;
	}
}
@media screen and  (max-width: 1355px) {
	.giftnavi li {
		font-size: 13px;
	}
}
@media screen and  (max-width: 1342px) {
	.giftnavi li {
		font-size: 12px;
	}
}
@media screen and  (max-width: 1150px) {
	.giftnavi li {
		font-size: 11px;
	}
}
.tabbox {

}
.tabbox table {
	width: 100%;
}
.tabbox table th,.tabbox table td {
	border: #C1C1C1 1px solid;
	text-align: left;
	vertical-align: middle;
	padding: 10px;
}
.tabbox table thead th {
	background: #BFCFFF;
	text-align: center;
}
/* 基本的なショッピングの流れについて */
.txtflow {
	border: #18368F 1px solid;
	padding: 20px 10px;
	border-radius: 6px;
	display: block;
	margin-bottom: 20px;
}
.txtflow span {
	background:#18368F;
	padding: 5px 20px;
	color: #fff;
	border-radius: 3px;
	margin: 0 10px;
}
.flownavi {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 10px;
}
.flownavi dt {
	display: block;
	width: 15%;
	background: #18368F;
	padding: 20px 0;
	position: relative;
	border-radius: 6px;
	margin-bottom: 30px;
}
.flownavi dt a {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	text-align: center;
	color: #fff;
	font-size: 26px;
	box-sizing: border-box;
	padding-top: 20px;
}
.flownavi dd {
	display: block;
	border-radius: 6px;
	padding: 20px 0;
	position: relative;
	background: #E9FBFF;
	width: 83%;
	color: #243F99;
	font-size: 18px;
	text-align: center;
	margin-bottom: 30px;
}
.flownavi dd::after {
	content: url(../images/flow/allow.jpg);
	display: block;
	position: absolute;
	top:100%;
	left: 50%;
	margin-left: -12px;
}
.flownavi dd.cel1::after {
	content: url(../images/flow/allowall.jpg);
	margin-left: -323.5px;
}
.flownavi dd.cel2,.flownavi dd.cel3 {
	width: 26%;
}
.flownavi dd.cel2::after {
	content: url(../images/flow/allowlong.jpg);
}
.flownavi dd.cel4 {
	width: 26%;
}
.flownavi dd.cel5 {
	width: 47%;
	background: none;
}
.flownavi dd.cel5::after,.flownavi dd.cel6::after {
	content: none;
}
.ttlstep {
	background: #18368F;
	font-size: 26px;
	color: #fff;
	border-radius: 6px;
	padding: 10px 20px;
	margin-bottom: 20px;
}
.flowbox {
	border-bottom: #18368F 1px solid;
	padding-bottom: 10px;
	margin-bottom: 30px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.flowbox div.left {
	width: 52%;
	padding-bottom: 20px;
}
.flowbox div.right {
	width: 43%;
	padding-bottom: 20px;
}
.flowbox div.left img,.flowbox div.right img {
	width: 100%;
}
.flowbox h4 {
	font-size: 20px;
	color: #243F99;
	padding-bottom: 10px;
}
.flowbox p span {
	color: #243F99;
}
.flowbox p span.red {
	color: #FF0000;
}
.flowbox div.left p {
	color: #243F99;
	padding-bottom: 10px;
}
/* ル・ノーブルの品質とサービス */
h2.ttlquality {
	border:0;
	font-size: 45px;
	line-height: 1.2em;
	padding-bottom: 20px;
	z-index: 99;
	position: relative;
	color: #18368F;
}
h2.ttlquality span {
	display: block;
	font-size: 24px;
	color: #666;
}
.quality {
	position: relative;
	padding-right: 5%;
	padding-left: 5%;
	box-sizing: border-box;
	margin-bottom: 100px;
}
.quality p {
	font-size: 18px;
	padding-bottom: 30px;
	position: relative;
	z-index: 99;
}
.quality img {
	position: absolute;
	bottom: 0;
	right:0;
	height:90%;
	opacity:0.4
}
.quality h3 {
	font-size: 25px;
	color: #243F99;
	padding: 10px;
	position: relative;
	z-index: 99;
}
.qualitynavi {
	background: url(../images/service/img2.jpg) center bottom no-repeat;
	background-size: 100%;
	text-align: center;
	padding-bottom: 200px;
}
.qualitynavi h3 {
	font-size: 40px;
	color: #18358E;
	padding-bottom: 20px;
}
.qualitynavi h3 span {
	font-size: 25px;
}
.qualitynavi ul {
	width: 90%;
	margin: auto;
	display: flex;
	justify-content: space-between;
	padding-bottom: 70px;
}
.qualitynavi ul li {
	display: block;
	width: 32%;
}
.qualitynavi ul li a {
	display: block;
	width: 100%;
	padding: 10px 0;
	box-sizing: border-box;
	border: #24419B 1px solid;
	background: #fff;
}
/* 2万点の品揃え */
.country {
	border-bottom: #C3C3C3 1px solid;
	margin-bottom: 20px;
}
.country.last {
	margin-bottom: 60px;
}
.country dt {
	font-size: 20px;
	padding-bottom: 10px;
}
.country dt img {
	vertical-align: middle;
	margin-right: 10px;
}
.country dd {
	display: inline-block;
	width: 18%;
	margin-bottom: 20px;
}
@media screen and  (max-width: 1320px) {
	.country dd {
		width: 24%;
	}
}
.agent {
	overflow: hidden;
	padding-bottom: 60px;
}
.agent li {
	width: 22%;
	float: left;
	text-align: center;
	margin-right: 3%;
}
.agent li:nth-child(4n) {
	margin-right: 0;
}
.agent li img {
	width: 100%;
}
.agent li b {
	font-weight: bold;
	display: block
}
.originalbrand {
	border-bottom: #C3C3C3 1px solid;
	padding-bottom: 20px;
	margin-bottom: 20px;
	position: relative;
	display:inline-block;
}
.originalbrand img.img {
	width:100%;
}
.originalbrand h4 {
	float:left;
	padding-bottom: 20px;
	font-size: 25px;
	color: #243F99;
	width:100%;
}
.originalbrand h4 img {
	/*max-width: 100%;*/
	width:70%;
}
.originalbrand a {
	position:absolute;
	display: block;
	text-align: right;
	position: relative;
	padding-right: 25px;
	color: #525252;
	bottom: 0;
	right: 0;
}
.originalbrand a::before,.originalbrand a::after {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.originalbrand a::before{
	width: 16px;
	height: 16px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #FF8000;
}
.originalbrand a::after{
	right: 5px;
	width: 5px;
	height: 5px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
/* 直営店の歩み */
.tblhistory {
	border: #DDD 5px solid;
	padding: 20px;
	margin-bottom: 30px;
}
.tblhistory table {
	width: 100%;
}
.tblhistory table th,.tblhistory table td {
	color: #18358E;
	padding-bottom: 10px;
}
.tblhistory table th {
	font-weight: bold;
}
.shops {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.shops div.box {
	width: 23%;
	display: block;
	padding-bottom: 80px;
	position: relative;
}
.shops div.box img {
	width: 100%;
}
.shops h4 {
	color: #243F99;
	font-size: 24px;
	border-bottom: #ddd 1px solid;
	margin-bottom: 10px;
}
.shops div.box a {
	position: absolute;
	left: 0;
	bottom: 60px;
	padding-left: 20px;
}
.shops div.box a::before,.shops div.box a::after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.shops div.box a::before{
	width: 12px;
	height: 12px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #243F99;
}
.shops div.box a::after{
	left: 3px;
	width: 3px;
	height: 3px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

input[type=submit]{
	font-family: "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",  Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

#allbrandlist ul li{
	text-align:left;
	padding-right:5px;
}

#allbrandlist ul li a.addarrow::before,
#allbrandlist  ul li a.addarrow::after{
    content: "";
    top: 4px;
    left: 0;
    position: absolute;
    vertical-align: middle;
    margin: auto;
}

#allbrandlist ul li a.addarrow::before{
    width: 12px;
    height: 12px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #24409A;
}

#allbrandlist ul li a.addarrow{
    position: relative;
    padding-left: 25px;
    display:inline-block;
}

#allbrandlist ul li a.addarrow::after{
    top: 7px;
    left: 5px;
    box-sizing: border-box;
    width: 3px;
    height: 3px;
    border: 3px solid transparent;
	border-left-width: 3px;
	border-left-style: solid;
	border-left-color: transparent;
    border-left: 3px solid #fff;
}


.wrapper div.guidenavi ul li a::before,
.wrapper div.guidenavi ul li a::after {
    content: "";
    top: -2px;
    left: 0;
    bottom: 0;
    position: absolute;
    vertical-align: middle;
    margin: auto;
}

.wrapper div.guidenavi ul li a::before {
    width: 12px;
    height: 12px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #24409A;
}

.wrapper div.guidenavi ul li a {
    position: relative;
    padding-left: 25px;
    display:inline-block;
}

.wrapper div.guidenavi ul li a::after {
    left: 5px;
    box-sizing: border-box;
    width: 3px;
    height: 3px;
    border: 3px solid transparent;
	border-left-width: 3px;
	border-left-style: solid;
	border-left-color: transparent;
    border-left: 3px solid #fff;
}

dt#no1:before {
    background:url(/images/top/ranking/rank1.svg);
    margin: 1%;
    position: absolute;
    content: "　";
    width:15%;
    height:15%;
    background-size:contain;
    background-repeat: no-repeat;
    top:0;
    left:0;
}

dt#no2:before {
    background:url(/images/top/ranking/rank2.svg);
    margin: 1%;
    position: absolute;
    content: "　";
    width:15%;
    height:15%;
    background-size:contain;
    background-repeat: no-repeat;
    top:0;
    left:0;
}
dt#no3:before {
    background:url(/images/top/ranking/rank3.svg);
    margin: 1%;
    position: absolute;
    content: "　";
    width:15%;
    height:15%;
    background-size:contain;
    background-repeat: no-repeat;
    top:0;
    left:0;
}
dt#no4:before {
    background:url(/images/top/ranking/rank4.svg);
    margin: 1%;
    position: absolute;
    content: "　";
    width:15%;
    height:15%;
    background-size:contain;
    background-repeat: no-repeat;
    top:0;
    left:0;
}
dt#no5:before {
    background:url(/images/top/ranking/rank5.svg);
    margin: 1%;
    position: absolute;
    content: "　";
    width:15%;
    height:15%;
    background-size:contain;
    background-repeat: no-repeat;
    top:0;
    left:0;
}


dt.icn-new:before {
    background:url(/images/top/slidebnr/new.svg);
    margin: 1%;
    position: absolute;
    content: "　";
    width:30%;
    height:30%;
    background-size:contain;
    background-repeat: no-repeat;
}

dt.icn-rcm:before {
    background:url(/images/top/slidebnr/recommend.svg);
    margin: 1%;
    position: absolute;
    content: "　";
    width:30%;
    height:30%;
    background-size:contain;
    background-repeat: no-repeat;
}

dt.icn-renew:before {
    background:url(/images/top/slidebnr/restock.svg);
    margin: 1%;
    position: absolute;
    content: "　";
    width:30%;
    height:30%;
    background-size:contain;
    background-repeat: no-repeat;
}

.ranking dd{
	text-align:left;
}

.wrapper table.purchasetotal,
.wrapper table.purchasesender,
.wrapper table.purchaselist{
	width: 100%;
	margin-bottom: 15px;
}
.wrapper table.purchasetotal th,.wrapper table.purchasetotal td,
.wrapper table.purchasesender th,.wrapper table.purchasesender td,
.wrapper table.purchaselist th,.wrapper table.purchaselist td{
	border: #C1C1C1 1px solid;
	text-align: center;
	padding: 10px;
}
.wrapper table.purchaselist thead th {
	background: #ECECEC;
}

.wrapper table.purchasetotal th {
	background: #ECECEC;
}

.wrapper table.purchasesender th {
	background: #243F99;
	color: #fff;
}

div.borderbox {
	box-sizing: border-box;
	width: 100%;
	border: #ddd 5px solid;
}
div.borderbox table {
	width: 95%;
	margin: 0 auto;
}

.wrapper div.guidenavi ul.price-list li{
	float:left;
	padding-left:10px;
	width:20%;
	padding-bottom:10px;
	display:inline;
	margin-right: 20px;
	font-size:120%;
}

div.listborder{
	width:100%;
	border-bottom:1px solid #999;
	margin-bottom:20px;
}

div.topic-main h1,div.topic-main h2,div.topic-main h3,div.topic-main h4,div.topic-main h5,div.topic-main h6{
	line-height:1.6em;
	border:0 !important;
}

/*
div#banner_brand ul.banner_brand li img{
	width:100%;
	max-width:initial;
}
*/

nav.gnavi ul li.gnavi-brand ul{
	display:flex;
	flex-wrap:wrap;
	position:absolute;
	top:95%;
	left:0;
	text-align:left;
	background:#fff;
	border: 1px solid #24419B;
	padding:10px 10px 10px 25px;
	z-index:100;
	width:500px;
}
nav.gnavi ul li.gnavi-brand ul li{
	display:block;
	width:48%;
	border:none;
	padding:0px;
}
nav.gnavi ul li.gnavi-brand ul li a{
	display:block;
	width:100%;
	text-align:left !important;
	font-size:100% !important;
	padding-top:0px;
	padding:5px;
}
nav.gnavi ul li.gnavi-brand ul li:after{
	width:0px;
}
nav.gnavi ul li.gnavi-brand ul:before{
	width:0px;
}
nav.gnavi ul li.gnavi-brand ul li:before{
	margin-top:13px;
	float:left;
	box-sizing: border-box;
	width: 5px;
	height: 5px;
	border: 5px solid transparent;
	border-left: 5px solid #24419B;
	content: "";
}

a {
    outline: none;
}

div.topic_ranking{
	padding-top:20px;
	padding-bottom:20px;
}

div.topic_ranking h3{
	border-left: #19378E 8px solid !important;
	font-size: 25px;
	padding-left: 15px;
	line-height: 1.4em;
	clear: both;
	width: 100% !important;
	text-align:left;
}

dl.sortbox li.ob{
	float:left;
	border: #19378F 1px solid;
	width:90px;
	height:40px;
	box-sizing:border-box;
	text-align:center;
	margin:0 5px;
}

dl.sortbox li.ob.current,dl.sortbox li.ob:hover{
	background:#19378F;
	color:#fff;
}

dl.sortbox li.ob span{
	padding-top:7px;
	display: inline-block;
}

dl.sortbox a.ob{
	width:100%;
	height:100%;
	display: inline-block;
}
dl.sortbox a.ob:hover{
	color:#fff !important;
	opacity:1.0;
}
/* 2018/08/08 T.Fukami add start ----------( 2018/10/16 T.Nakagawa edit start ) */
/* search for color */


#color label.cl_all{
	width:100%;
	display:block;
	float:left;
}
#color label.color{
	width:75px;
	height:30px;
	margin:5px 5px 15px;
	/*border:solid 1px #C3C3C3;*/
	display:block;
	float:left;
	font-size: 90%;
	line-height:1.4;
	text-align:center;
  position: relative;
}
#color label.color:hover{
	opacity: 0.8;
}
/*
#color label.color.checked span.no-labeltext::before{
	content: "";
	display: block;
	position: relative;
	top: -5px;
	left: 5px;
	width: 7px;
	height: 14px;
	transform: rotate(40deg);
	border-bottom: 3px solid #24429C;
	border-right: 3px solid #24429C;
}
*/
#color label.color.color-white.checked span.no-labeltext::before{
	content: " ";
	display: block;
	position: relative;
	top: -1px;
	left: 0px;
	width: 75px;
	height: 30px;
	background:url("/images/color_filter1-2.png") 0 0 no-repeat;
	background-size:contain;
}
#color label.color.color-origin.checked span.no-labeltext::before{
	content: " ";
	display: block;
	position: relative;
	top: -1px;
	left: 0px;
	width: 75px;
	height: 30px;
	background:url("/images/color_filter2-2.png") 0 0 no-repeat;
	background-size:contain;
}
#color label.color.color-text.checked span:not(.no-labeltext)::before{
	content: " ";
	display: block;
	position: relative;
	top: -1px;
	left: 0px;
	width: 75px;
	height: 30px;
	background:url("/images/color_filter3-2.png") 0 0 no-repeat;
	background-size:contain;
}
#color label.color:not(.checked) span:not(.no-labeltext)::before{
	content: "";
	display: block;
	position: relative;
	top: 5px;
	left: 15px;
	width: 7px;
	height: 14px;
}
      /*
      #color label.color.checked span:not(.no-labeltext)::before{
      	content: "";
      	display: block;
      	position: relative;
      	top: 5px;
      	left: 15px;
      	width: 7px;
      	height: 14px;
      	transform: rotate(40deg);
      	border-bottom: 3px solid #24429C;
      	border-right: 3px solid #24429C;
      }
      */
#color label.color span::after{
	content: attr(data-labeltext);
	font-size: 90%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  width: 90%;
  margin: 0 auto;
}
/*
#color label.color.checked{
  margin-bottom: 19px;
}
*/
#color label.color.checked span::after{
	top: 39px;
  color:#333333;
}
/*
#color label.color.labeltext span::after{
	top: -7px;
}
*/

#color input[type=checkbox].color{
	display:none;
}


.cl_display label.color:not(.labeltext){
	width:10px;
	height:10px;
	margin:5px 5px 16px;
	border:solid 1px #C3C3C3;
	display:block;
	float:left;
	font-size: 70%;
	line-height:30px;
	text-align:center;
}
.cl_display label.color.labeltext{
	width:30px;
	height:30px;
	margin:5px;
	border:solid 1px #C3C3C3;
	display:block;
	float:left;
	font-size: 70%;
	line-height:30px;
	text-align:center;
}
.cl_display label.color span::after{
	content: attr(data-labeltext);
	position: relative;
	font-size: 70%;
}
div.terms.dtl p{
	clear: both;
}
/* search for design */
#design label.design{
	width:50%;
	display:block;
	float:left;
}
/* for fixed leftside search */
.fixed-leftside{
	position: fixed;
	top: 0;
	z-index: 9980;
	width: 23.75% !important;
}
.leftside{
	min-width:250px;
}
.leftside .scroll-area{
	min-height:115px;
	max-height:800px;
	overflow-y: auto;
	padding-right:10px;
	margin-bottom:10px;
}
.leftside .scroll-area::-webkit-scrollbar{
	width: 12px;
}
.leftside .scroll-area::-webkit-scrollbar-track{
	background: #DDD;
}
.leftside .scroll-area::-webkit-scrollbar-thumb{
	background: #19378F;
}
/* search for material */
#material label.material{
	width:33%;
	display:block;
	float:left;
}
/* 2018/08/08 T.Fukami add end  ( 2018/10/16 T.Nakagawa edit end ) ---------- */


/* 2018/11/12 T.Nakagawa add start ---------- */
.rec-keyword-popup-area {
  text-align: right;
  position: relative;
  margin-top: 3px;
}

.rec-keyword-popup-area ul {
  font-size: 0;
}

.rec-keyword-popup-area ul .list-t {
  padding-right: 15px;
}

.rec-keyword-popup-area ul.list-type1 li:nth-child(n + 6) {
  display: none;
}

.rec-keyword-popup-area ul.list-type1 li:nth-child(-n + 4)::after {
  content: ",";
  padding-right: 5px;
  padding-left: 5px;
}

.rec-keyword-popup-area ul.list-type1 li.end::after {
  content: "";
  padding-right: 0;
}

.rec-keyword-popup-area ul.list-type2 li:nth-child(n + 16) {
  display: none;
}

.rec-keyword-popup-area li {
  display: inline-block;
  font-size: 13px;
}

.rec-keyword-popup-area li span {
  padding: 0 7px;
}

.rec-keyword-popup-area .rec-keyword-toggle {
  display: inline-block;
}

.rec-keyword-popup-area .rec-keyword-toggle .rec-keyword-toggle-btn {
  margin-left: 7px;
  font-size: 13px;
  padding: 3px 15px 3px 3px;
  color: #333;
  line-height: 1;
  position: relative;
  cursor: default;
}

.rec-keyword-popup-area .rec-keyword-toggle .rec-keyword-toggle-btn::after {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%) translateX(-50%);
  margin: auto;
  content: "";
  vertical-align: middle;
  box-sizing: border-box;
  width: 4px;
  height: 4px;
  border: 4px solid transparent;
  border-left: 4px solid #333;
}

.rec-keyword-popup-area .rec-keyword-toggle:hover .abs-rec-keyword-area {
  display: block;
}

.abs-rec-keyword-area {
  display: none;
  width: 580px;
  padding: 12px 12px 12px 18px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 50;
  background-color: #fff;
  border: 1px solid #18368F;
  text-align: left;
}

.abs-rec-keyword-area ul {
  font-size: 0;
}

.abs-rec-keyword-area ul .list-type2 li {
  padding-right: 20px;
}

.abs-rec-keyword-area li {
  display: inline-block;
}

.abs-rec-keyword-area li::after {
  display: block;
  content: "";
  clear: both;
}

.abs-rec-keyword-area li.list-t {
  display: block;
  margin-bottom: 5px;
}

.abs-rec-keyword-area li.list-t span {
  font-size: 110%;
}

.abs-rec-keyword-area li a {
  font-size: 15px;
}

.abs-rec-keyword-area li a::before {
  margin-top: 7px;
  float: left;
  box-sizing: border-box;
  width: 4px;
  height: 4px;
  border: 4px solid transparent;
  border-left: 4px solid #24419B;
  content: "";
}

header {
  overflow: visible;
}

header::after {
  display: block;
  content: "";
  clear: both;
}

header .search-wrap {
  float: right;
  display: flex;
  justify-content: flex-end;
  margin-bottom: 10px;
}

header ul.search {
  float: none;
  padding-top: 30px;
}

@media screen and (min-width: 768px) {
  header ul.search {
    justify-content: flex-end;
  }
}

@media screen and (max-width: 1412px) {
  header ul.search {
    padding-top: 0;
  }
}

@media screen and (max-width: 1430px) {
  header ul.search {
    padding-bottom: 0;
  }
}

header ul.search li {
  line-height: 1;
}

header ul.search li .dtlchange {
  line-height: 1.8em;
}


/* 2018/11/12 T.Nakagawa add end ---------- */





/****************************/

  .campaginbnr.fixed::after{
    content:"";
    display: block;
    clear: both;
  }

  .campaginbnr.fixed:hover .special_topic_banner_menu{
    z-index: 300;
    opacity: 1;
    transition:ease-in-out .4s;
  }

  .special_topic_banner_menu{
    float: none !important;
    position: absolute;
    top: 291px;
    left: 0;
    background-color: rgba(255,255,255,.95);
    width: 780px;
    min-width:780px;
    padding: 30px 20px;
    z-index: -10;
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1);
    opacity: 0;
    transition:ease-in-out .4s;
    border: 1px solid #24409A;
  }


  .special_topic_banner_menu::after{
    border: 1px solid #fff;
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    top: -29px;
    left: 100px;
    border-top: 0 solid transparent;
    border-right: 30px solid transparent;
    border-left: 30px solid transparent;
    border-bottom: 30px solid #fff;
  }

  .special_topic_banner_menu::before{
    border: 1px solid #fff;
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    top: -30px;
    left: 100px;
    border-top: 0 solid transparent;
    border-right: 30px solid transparent;
    border-left: 30px solid transparent;
    border-bottom: 30px solid #24409A;
  }

  .special_topic_banner_menu h3{
    color : #24409A;
    font-size:28px;
    margin-bottom: 15px;
  }

  .special_topic_banner_menu h3 span{
    font-size:15px;
    padding-left: 20px;
    color:#333;
  }

  .special_topic_banner_menu ul::after{
    content:"";
    display: block;
    clear: both;
  }

  .special_topic_banner_menu li{
    float: left;
    margin: 0px 20px 20px 0;
    width: 180px !important;
  }

  .special_topic_banner_menu li:last-of-type{
    margin-right: 0;
  }

  .special_topic_banner_menu li img{
    height: auto !important;
    width: 100%;
  }

  .special_topic_banner_menu .inner-text{
    text-align: center;
  }

  .special_topic_banner_menu .inner-text a{
    font-size:17px;
    padding-bottom: 2px;
    border-bottom: 1px solid #24409A;
    display: inline-block;
  }

  .special_topic_banner_menu .inner-text a:hover{
    border-bottom-color: #333;
  }
  
/* 2018/12/14 T.Fukami add start ---------- */
.input-disabled{
	color:#333 !important;
	background-color:rgb(235, 235, 228) !important;
}
.submitbtn.input-disabled{
	color:gray !important;
	border: solid 2px gray !important;
}
.submitbtn.input-disabled:hover{
	cursor:not-allowed !important;
	color:#fff !important;
	background-color:rgb(235, 235, 228) !important;
}
/* 2018/12/14 T.Fukami add end ---------- */
/* 2019/06/28 #11576 T.Fukami add start ---------- */
/**********************************************************
    エラーメッセージ
 @copy from /cart/css_renewal/cart_child.css
**********************************************************/


.errmsg{
    display: none;
    width: 100%;
    box-sizing:border-box;
    padding: 0.6rem;
    color: #A21E21 !important;
    line-height:1.75 !important;
    background:#fff !important;
    border: 1px solid #A21E21;
    font-weight:normal !important;
    text-align:left !important;
}

.errmsg .errorMesTtl{
  display: block;
  font-weight: bold;
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-size:20px;
}

.errmsg .errorMesTtl span{
    padding-left: 0.5rem;
    padding-top: 0.15rem;
 font-weight: bold;
}

.errmsg .errorMesTtl i.errorIcon{
background: url(/cart/images/common/error-icon.png) center center no-repeat !important;
-webkit-background-size: contain !important;
background-size: contain !important;
padding-left:2rem ;
}
p.errmsg.msg-on{
	display:block;
}
p.errmsg.msg-on.border-off{
    border: none;
}
/* 2019/06/28 #11576 T.Fukami add end ---------- */
/* 2019/07/19 #11576 T.Fukami add start ---------- */
#RakutenIdConnectButton input[type=image].rakuten-button-image{
	border:none;
	cursor: pointer;
	width:382px;
	padding-left:0;
	padding-right:0;
}
/* 2019/07/19 #11576 T.Fukami add end ---------- */

