@charset "UTF-8";

body {
	background: #fff;
	color: #333;
	font-family: Roboto, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "Yu Gothic", Arial, "メイリオ", Meiryo, sans-serif;
}
.ec-layoutRole .ec-layoutRole__mainWithColumn {
	width: 810px;
	margin-left: 30px;
}
.ec-role.contents {
	color: #333;
	max-width: 1120px;
	padding: 0;
}
.ec-role.contents img {
	width: auto;
}
.ec-layoutRole__contents {
	padding-top: 32px;
}
.ec-layoutRole .ec-layoutRole__contents {
	width: 1120px;
	max-width: 1120px;
}
.ec-layoutRole__main {
	position: relative;
	overflow: hidden;
}
.ec-layoutRole .ec-layoutRole__main .inner {
	width: 1120px;
	margin: 0 auto;
}
.ec-blockTopBtn {
	display: none !important;
}

/* header */
#header .inner {
	position: relative;
	height: 210px;
}
#header .japanese {
    position: absolute;
    right: 0;
    top: 10px;
	margin: 0;
}
#header .copy {
	background: #ffc600;
}
#header .copy .inner {
	height: 25px;
}
#header .copy p {
	font-size: 13px;
	font-weight: bold;
	line-height: 25px;
}
#header h1 {
	font-weight: bold;
	line-height: 0;
	position: absolute;
	top: 21px;
	left: 8px;
	margin: 0;
}
#header h1 a:link,
#header h1 a:visited,
#header h1 a:hover,
#header h1 a:active {
	color: #000;
	text-decoration: none;
}
#header h1 span {
	font-size: 16px;
	position: absolute;
	top: 8px;
	left: 2px;
}
#header h1 img {
	width: 462px;
    margin-top: 25px;
}
#header .companytitle{
    font-size: 25px;
    font-weight: bold;
    color: #de0303;
}
#header .tel {
	position: absolute;
	top: 106px;
	left: 7px;
}
#header .tel p {
	color: #de0303;
	font-family: Roboto, Helvetica, Arial, sans-serif;
	font-size: 37px;
	font-weight: bold;
	line-height: 31px;
	margin: 0;
}
#header .tel p img {
	width: 31px;
	margin-right: 5px;
	vertical-align: top;
}
#header .tel p a:link,
#header .tel p a:visited,
#header .tel p a:hover,
#header .tel p a:active {
	color: #de0303;
	text-decoration: none;
}
#header .tel dl {
	font-weight: bold;
	margin: 4px 0 0 3px;
    width: 450px;
    position: absolute;
    left: 302px;
    top: -8px;
    display: flex;
    flex-direction: column;
}
#header .tel dl dt {
	font-size: 17px;
	float: left;
	margin: 0;
}
#header .tel dl dd {
	font-size: 16px;
	line-height: 1.285625;
}
#header .tel dl dd span {
	font-size: 13px;
}
#header .tel dl dd:last-child {
	font-size: 12px;
	margin: 2px 0 0 25px;
}
#header .card {
	position: absolute;
	top: 100px;
	right: 0;
	margin: 0;
}
#header .login {
	font-weight: bold;
	line-height: 41px;
	position: absolute;
	top: 150px;
	right: 197px;
	margin: 0;
}
#header .login a {
	background: #fefefe;
	background: -moz-linear-gradient(top, #fefefe 0%, #c8c8c8 100%);
	background: -webkit-linear-gradient(top, #fefefe 0%,#c8c8c8 100%);
	background: linear-gradient(to bottom, #fefefe 0%,#c8c8c8 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fefefe', endColorstr='#c8c8c8',GradientType=0);
	border: 1px solid #949494;
	border-radius: 5px;
	display: block;
	text-align: center;
	width: 160px;
}
#header .login a:link,
#header .login a:visited,
#header .login a:hover,
#header .login a:active {
	color: #000;
	text-decoration: none;
}
#header .login a:hover,
#header .login a:active {
	opacity: 0.5;
}
#header .login img {
	width: 17px;
	margin: -5px 5px 0 0;
}
#header .cart {
	width: 191px;
	position: absolute;
	top: 150px;
	right: 0;
}
#header .cart .ec-cartNavi {
	background: #de0303;
	border-radius: 5px;
	color: #fff;
	height: 43px;
	padding: 0 11px 0 12px;
}
#header .cart .fa-shopping-cart::before {
	background: url(../img/common/ico_cart.png) 0 0 / 27px 26px no-repeat;
	content: "";
	width: 27px;
	height: 26px;
	position: absolute;
	top: 9px;
	left: 0;
}
#header .cart .ec-cartNavi .ec-cartNavi__badge {
	background: #fff155;
	color: #000;
	line-height: 22px;
	font-size: 14px;
	text-align: center;
	min-width: 22px;
	height: 22px;
	top: -2px;
	left: 18px;
	padding: 0 3px;
}
#header .cart .ec-cartNavi .ec-cartNavi__price {
	font-size: 16px;
	font-weight: bold;
	line-height: 43px;
}
#header .gnavi {
	background: #fefefe;
	background: -moz-linear-gradient(top, #fefefe 0%, #f6f6f6 50%, #ebebeb 50%, #f5f5f5 100%);
	background: -webkit-linear-gradient(top, #fefefe 0%,#f6f6f6 50%,#ebebeb 50%,#f5f5f5 100%);
	background: linear-gradient(to bottom, #fefefe 0%,#f6f6f6 50%,#ebebeb 50%,#f5f5f5 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fefefe', endColorstr='#f5f5f5',GradientType=0);
	border-top: 1px solid #cbcbcb;
	border-bottom: 1px solid #cbcbcb;
	box-shadow: 0 3px 6px -3px rgba(0,0,0,0.2);
	font-family: Roboto, "ヒラギノ角ゴ StdN W8", "Hiragino Kaku Gothic StdN", "游ゴシック", YuGothic, "Yu Gothic", Arial, "メイリオ", Meiryo, sans-serif;
}
#header .gnavi .inner {
	height: 49px;
}
#header .gnavi ul {
	display: -ms-flexbox;
	display: flex;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	list-style: none;
    align-items: center;
	margin: 0;
	padding: 0;
}
#header .gnavi ul li {
	display: -ms-flexbox;
	display: flex;
	position: relative;
}
#header .gnavi ul li a {
	text-shadow: 1px 1px 0 #fff;
	width: 176px;
}
#header .gnavi ul li a:link,
#header .gnavi ul li a:visited,
#header .gnavi ul li a:hover,
#header .gnavi ul li a:active {
	color: #000;
	text-decoration: none;
}
#header .gnavi ul li a:hover,
#header .gnavi ul li a:active {
	background: rgba(255,217,42,0.5);
}
#header .gnavi ul li::before {
	background: #bbbbbb;
	background: -moz-linear-gradient(left, #bbbbbb 0%, #bbbbbb 50%, #c8c8c8 50%, #ffffff 50%, #ffffff 100%);
	background: -webkit-linear-gradient(left, #bbbbbb 0%,#bbbbbb 50%,#c8c8c8 50%,#ffffff 50%,#ffffff 100%);
	background: linear-gradient(to right, #bbbbbb 0%,#bbbbbb 50%,#c8c8c8 50%,#ffffff 50%,#ffffff 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#bbbbbb', endColorstr='#ffffff',GradientType=1);
	content: "";
	width: 2px;
	position: absolute;
	top: 12px;
	left: -1px;
	bottom: 11px;
}
#header .gnavi ul li:last-child {
	line-height: 15px;
	margin: -1px 0;
}
#header .gnavi ul li:last-child::before {
	display: none;
}
#header .gnavi ul li:last-child a {
	background: #29cb33;
	background: -moz-linear-gradient(top, #29cb33 0%, #29a102 100%);
	background: -webkit-linear-gradient(top, #29cb33 0%,#29a102 100%);
	background: linear-gradient(to bottom, #29cb33 0%,#29a102 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#29cb33', endColorstr='#29a102',GradientType=0);
	border: 2px solid #00b511;
	box-shadow: 0 2px 3px rgba(0,0,0,0.3);
	font-size: 15px;
	text-shadow: 1px 1px 0 #229415;
	position: relative;
	width: 240px;
	padding: 9px 0 0 30px;
}
#header .gnavi ul li:last-child a:link,
#header .gnavi ul li:last-child a:visited,
#header .gnavi ul li:last-child a:hover,
#header .gnavi ul li:last-child a:active {
	color: #fff;
}
#header .gnavi ul li:last-child a::before {
	background: url(../img/common/ico_contact.png) 0 0 / 23px auto no-repeat;
	content: "";
	width: 23px;
	height: 18px;
	position: absolute;
	top: 10px;
	left: 8px;
}
#header .gnavi ul li:last-child a span {
	display: block;
	font-size: 10px;
}

/* login_message */
.login_message p {
	background: #f5f5f5;
	margin: 0 0 10px 0;
	padding: 8px 15px;
}

/* breadcrumb */
#breadcrumb {
	margin:15px auto 0;
}
.login_message + #breadcrumb {
	margin-top:10px;
}
#breadcrumb ol {
	font-size: 15px;
  list-style: none;
	margin: 0 8px;
	padding: 0;
}
#breadcrumb li{
	display: inline;
	position: relative;
	text-indent: 0;
	padding: 0 0 0 36px;
}
#breadcrumb li:first-child{
	padding-left: 0;
}
#breadcrumb li::before{
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	content: "";
	width: 7px;
	height: 7px;
	position: absolute;
	top: 0.5em;
	left: 15px;
	transform: rotate(45deg);
}
#breadcrumb li:first-child::before{
	display: none;
}

/* sidebar */
.sidebar dl {
	margin: 42px 0 0;
}
.sidebar ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.sidebar .category dl:first-child {
	margin-top: 0;
}
.sidebar dl dt {
	box-shadow: 0 1px 3px rgba(0,0,0,0.3);
	color: #fff;
	font-weight: bold;
	text-shadow: 0 2px #000, 1px 2px #000, 2px 2px #000, 2px 1px #000, 2px 0 #000, 2px -1px #000, 2px -2px #000, 1px -2px #000, 0 -2px #000, -1px -2px #000, -2px -2px #000, -2px -1px #000, -2px 0 #000, -2px 1px #000, -2px 2px #000, -1px 2px #000, 3px 3px 2px rgba(0,0,0,0.5);
	line-height: 49px;
}
.sidebar .category dl dt {
	font-family: Roboto, "ヒラギノ角ゴ StdN W8", "Hiragino Kaku Gothic StdN", "游ゴシック", YuGothic, "Yu Gothic", Arial, "メイリオ", Meiryo, sans-serif;
	font-size: 22px;
	padding: 0 19px;
}
.sidebar .category dl.category01 dt {
	background: #ff0000;
	background: -moz-linear-gradient(top, #ff0000 0%, #d12727 100%);
	background: -webkit-linear-gradient(top, #ff0000 0%,#d12727 100%);
	background: linear-gradient(to bottom, #ff0000 0%,#d12727 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0000', endColorstr='#d12727',GradientType=0);
	border: 1px solid #9e0000;
}
.sidebar .category dl.category02 dt {
	background: #4137fe;
	background: -moz-linear-gradient(top, #4137fe 0%, #0c00df 100%);
	background: -webkit-linear-gradient(top, #4137fe 0%,#0c00df 100%);
	background: linear-gradient(to bottom, #4137fe 0%,#0c00df 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#4137fe', endColorstr='#0c00df',GradientType=0);
	border: 1px solid #1208bb;
}
.sidebar .category dl.category03 dt {
	background: #508f19;
	background: -moz-linear-gradient(top, #508f19 0%, #2f5b11 100%);
	background: -webkit-linear-gradient(top, #508f19 0%,#2f5b11 100%);
	background: linear-gradient(to bottom, #508f19 0%,#2f5b11 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#508f19', endColorstr='#2f5b11',GradientType=0);
	border: 1px solid #2d5511;
}
.sidebar .category dl ul {
	font-size: 15px;
	line-height: 56px;
}
.sidebar .category dl ul li {
	border-bottom: 1px solid #b5b5b5;
}
.sidebar .category dl ul li a {
	display: flex;
    padding-left: 11px;
    line-height: 1em;
    align-items: center;
}
.sidebar .category dl ul li a img {
	width: 60px;
	margin-right: 9px;
}
.sidebar .banner ul {
	margin: 40px -3px 0;
}
.sidebar .banner ul li {
	margin: 17px 0 0;
}
.sidebar .banner ul li.voice {
	display: none;
	margin-top: 4px;
}
.sidebar .banner ul li img {
	max-width: 100%;
}
.sidebar .guide dl dt,
.sidebar .shop dl dt,
.sidebar .calendar dl dt {
	background: #ffd45f;
	background: -moz-linear-gradient(top, #ffd45f 0%, #ffa900 100%);
	background: -webkit-linear-gradient(top, #ffd45f 0%,#ffa900 100%);
	background: linear-gradient(to bottom, #ffd45f 0%,#ffa900 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd45f', endColorstr='#ffa900',GradientType=0);
	border: 1px solid #ff7e00;
	font-size: 18px;
	position: relative;
	padding: 0 15px 0 51px;
	display: flex;
    line-height: 1em;
    height: 50px;
    align-items: center;
}
.sidebar .guide dl dt::before,
.sidebar .shop dl dt::before,
.sidebar .calendar dl dt::before {
	content: "";
	width: 34px;
	position: absolute;
	top: 0;
	left: 12px;
	bottom: 0;
}
.sidebar .guide dl dt::before {
	background: url(../img/common/sidebar/ico_guide.png) 0 50% / 34px auto no-repeat;
}
.sidebar .shop dl dt::before {
	background: url(../img/common/sidebar/ico_shop.png) 0 50% / 34px auto no-repeat;
}
.sidebar .guide dl ul,
.sidebar .shop dl ul {
	font-size: 16px;
	line-height: 46px;
}
.sidebar .guide dl ul li,
.sidebar .shop dl ul li {
	border-bottom: 1px solid #b5b5b5;
}
.sidebar .guide dl ul li a,
.sidebar .shop dl ul li a {
	display: flex;
    padding-left: 36px;
    position: relative;
    line-height: 1em;
    height: 3.5em;
    align-items: center;
}
.sidebar .guide dl ul li a::before,
.sidebar .shop dl ul li a::before {
	background: #f40600;
	border-radius: 7px;
	content: "";
	width: 14px;
	height: 14px;
	position: absolute;
	top: 50%;
	left: 15px;
	margin-top: -7px;
}
.sidebar .guide dl ul li a::after,
.sidebar .shop dl ul li a::after {
	border-style: solid;
	border-width: 3px 0 3px 5px;
	border-color: transparent transparent transparent #fff;
	content: "";
	width: 0;
	height: 0;
	position: absolute;
	top: 50%;
	left: 20px;
	margin-top: -3px;
}
.sidebar .calendar dl dt {
	line-height: 1em;
}
.sidebar .calendar dl dt::before {
	background: url(../img/common/sidebar/ico_calendar.png) 0 50% / 34px auto no-repeat;
}
.sidebar .calendar dl dd {
	background: #fff7c5;
	padding: 21px 13px 11px;
}
.sidebar .calendar dl dd table {
	background: #fff;
	border: 11px solid #fff;
	border-top-width: 15px;
	border-bottom-width: 15px;
	margin: 22px 0 0;
}
.sidebar .calendar dl dd table:first-child {
	margin-top: 0;
}
.sidebar .calendar dl dd table .date_title {
	background: #696969;
	background: -moz-linear-gradient(top, #696969 0%, #010101 100%);
	background: -webkit-linear-gradient(top, #696969 0%,#010101 100%);
	background: linear-gradient(to bottom, #696969 0%,#010101 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#696969', endColorstr='#010101',GradientType=0);
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	line-height: 32px;
	padding: 0;
}
.sidebar .calendar dl dd table th,
.sidebar .calendar dl dd table td {
	background: #fff;
	border: 10px solid #fff;
	border-top-width: 6px;
	border-bottom-width: 6px;
}
.sidebar .calendar dl dd table th {
	color: #333;
	text-align: center;
	padding: 0;
}
.sidebar .calendar dl dd table td {
	text-align: center;
	padding: 0 3px;
}
.sidebar .calendar dl dd table td.holiday {
	background: #ff2020;
	color: #fff;
}
.sidebar .calendar dl dd p {
	text-align: justify;
	letter-spacing: -1px;
	line-height: 1.57;
}
.sidebar .calendar dl dd .usage {
	font-weight: bold;
	letter-spacing: 0;
	line-height: 20px;
	position: relative;
	margin: 15px 0 7px;
	padding: 0 0 0 39px;
}
.sidebar .calendar dl dd .usage::before {
	background: #ff2020;
	content: "";
	width: 22px;
	height: 20px;
	position: absolute;
	top: 0;
	left: 5px;
}

/* guide_area */
.guide_area {
	background: url(../img/common/bg_001.png) 50% 0 repeat #ffe324;
	clear: both;
	margin: 89px 0 0;
	padding: 56px 0 68px;
}
.guide_area .inner {
	background: #fff;
	border: 2px solid #ffa400;
	border-radius: 7px 7px 0 0;
	box-shadow: 0 1px 2px rgba(0,0,0,0.3);
}
.guide_area .area_inner {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 0 18px 23px;
}
.guide_area .area_inner > div {
	width: 520px;
}
.guide_area h2 {
	background: #ffd35b;
	background: -moz-linear-gradient(top, #ffd35b 0%, #ffa900 100%);
	background: -webkit-linear-gradient(top, #ffd35b 0%,#ffa900 100%);
	background: linear-gradient(to bottom, #ffd35b 0%,#ffa900 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd35b', endColorstr='#ffa900',GradientType=0);
	border: 2px solid #ff7e00;
	border-radius: 7px 7px 0 0;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	text-shadow: 0 3px #000, 1px 3px #000, 2px 3px #000, 2px 2px #000, 3px 2px #000, 3px 1px #000, 3px 0 #000, 3px -1px #000, 3px -2px #000, 2px -2px #000, 2px -3px #000, 1px -3px #000, 0 -3px #000, -1px -3px #000, -2px -3px #000, -2px -2px #000, -3px -2px #000, -3px -1px #000, -3px 0 #000, -3px 1px #000, -3px 2px #000, -2px 2px #000, -2px 3px #000, -1px 3px #000, 3px 3px 2px rgba(0,0,0,0.5);
	line-height: 48px;
	position: relative;
	margin: -2px -2px -30px;
}
.guide_area h2::after {
	box-shadow: 0 3px 3px -3px rgba(0,0,0,0.5);
	content: "";
	height: 9px;
	position: absolute;
	left: -3px;
	right: -3px;
	bottom: -2px;
}
.guide_area h3 {
	background: #ffe8be;
	font-size: 18px;
	font-weight: bold;
	position: relative;
	margin: 53px 0 26px;
	padding: 8px 12px 8px 36px;
}
.guide_area h3::before {
	background: #ffb800;
	background: -moz-linear-gradient(top, #ffb800 0%, #ff9600 100%);
	background: -webkit-linear-gradient(top, #ffb800 0%,#ff9600 100%);
	background: linear-gradient(to bottom, #ffb800 0%,#ff9600 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffb800', endColorstr='#ff9600',GradientType=0);
	border: 1px solid #ff8400;
	border-radius: 2px;
	content: "";
	width: 14px;
	position: absolute;
	top: 10px;
	left: 12px;
	bottom: 10px;
}
.guide_area p,
.guide_area dl,
.guide_area ul {
	margin-bottom: 25px;
}
.guide_area p,
.guide_area dt,
.guide_area dd,
.guide_area li {
	line-height: 1.57;
}
.guide_area dl {
	margin-top: -8px;
}
.guide_area dt {
	position: relative;
	margin: 13px 0 0;
	padding: 0 0 0 21px;
}
.guide_area dt::before {
	background: #ff0c0c;
	background: -moz-linear-gradient(top, #ff0c0c 0%, #b90b0b 100%);
	background: -webkit-linear-gradient(top, #ff0c0c 0%,#b90b0b 100%);
	background: linear-gradient(to bottom, #ff0c0c 0%,#b90b0b 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0c0c', endColorstr='#b90b0b',GradientType=0);
	border-radius: 6px;
	content: "";
	width: 12px;
	height: 12px;
	position: absolute;
	top: 0.35em;
	left: 0;
}
.guide_area dd {
	margin: 3px 0 0;
}
.guide_area ul {
	list-style: none;
	padding: 0;
}
.guide_area li {
	position: relative;
	margin-bottom: 7px;
	padding: 0 0 0 25px;
}
.guide_area li::before {
	background: #ff0c0c;
	background: -moz-linear-gradient(top, #ff0c0c 0%, #b90b0b 100%);
	background: -webkit-linear-gradient(top, #ff0c0c 0%,#b90b0b 100%);
	background: linear-gradient(to bottom, #ff0c0c 0%,#b90b0b 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0c0c', endColorstr='#b90b0b',GradientType=0);
	border-radius: 6px;
	content: "";
	width: 12px;
	height: 12px;
	position: absolute;
	top: 0.4em;
	left: 0;
}
.guide_area .payment dd:nth-child(2) {
	margin: 4px 0 0 5px;
}
.guide_area .delivery h3 {
	margin-bottom: 4px;
}
.guide_area .delivery p {
	margin-bottom: 10px;
}
.guide_area .delivery p:last-child {
	margin-top: 18px;
}
.guide_area .delivery ul {
	margin-bottom: 15px;
}
.guide_area .delivery ul li {
	margin-bottom: 0;
}
.guide_area .delivery_date h3,
.guide_area .notice h3{
	margin: 30px 0 21px;
}

/* pagetop */
#pagetop {
	background: #ffc600;
	box-shadow: 0 2px 2px rgba(0,0,0,0.14);
	text-align: right;
	line-height: 46px;
	margin: 0 0 26px;
}
#pagetop .ec-blockTopBtn {
	background: transparent;
	color: #000;
	display: inline-block !important;
	font-weight: bold;
	text-shadow: 1px 1px 0 #fff;
	line-height: 46px;
	width: auto;
	height: 46px;
	position: relative;
	right: auto;
	bottom: auto;
	padding: 0 14px 0 28px;
	opacity: 1;
}
#pagetop .ec-blockTopBtn:hover {
	text-decoration: underline;
}
#pagetop .pagetop::before {
	background: #fff;
	border-radius: 9px;
	content: "";
	width: 19px;
	height: 19px;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -10px;
}
#pagetop .pagetop::after {
	border-style: solid;
	border-width: 0 4px 7px 4px;
	border-color: transparent transparent #f00 transparent;
	content: "";
	width: 0;
	height: 0;
	position: absolute;
	top: 50%;
	left: 6px;
	margin-top: -5px;
}

/* footer */
#footer .inner {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
#footer .companytitle{
    font-size: 25px;
    font-weight: bold;
    color: #de0303;
}
#footer address {
	font-weight: bold;
	width: 30%;
	margin: 9px 0 0 0;
}
#footer address dl {
	margin: 0;
}
#footer address dl dt {
	position:relative;
}
#footer address dl dt img {
	width: 100%;
    margin-top: 2em;
}
#footer address dl dt span {
	font-size: 15px;
	position: absolute;
	top: -14px;
	left: 0;
}
#footer address dl dd {
	font-size: 16px;
	text-align: right;
	margin: 2px 0 0;
}
#footer .tel {
	margin: -16px 0 0 5px;
    width: 33%;
}
#footer .tel p {
	color: #de0303;
	font-family: Roboto, Helvetica, Arial, sans-serif;
	font-size: 44px;
	font-weight: bold;
	line-height: 38px;
	margin: 0;
}
#footer .tel p img {
	width: 38px;
	margin-right: 3px;
	vertical-align: top;
}
#footer .tel p a:link,
#footer .tel p a:visited,
#footer .tel p a:hover,
#footer .tel p a:active {
	color: #de0303;
	text-decoration: none;
}
#footer .tel dl {
	font-weight: bold;
	margin: 8px 0 0 10px;
}
#footer .tel dl dt {
	font-size: 14px;
	float: left;
	margin: 0.6em 0.6em 0 0;
}
#footer .tel dl dd {
	font-size: 18px;
	line-height: 1.285625;
}
#footer .tel dl dd span {
	font-size: 14.54px;
}
#footer .tel dl dd:last-child {
	font-size: 16px;
	margin: 4px 0 0 2px;
}
#footer .button {
	width: 30%;
    margin: -16px 0 0 0;
}
#footer .login {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.5em;
	margin: 0;
}
#footer .login a {
	background: #fefefe;
	background: -moz-linear-gradient(top, #fefefe 0%, #c8c8c8 100%);
	background: -webkit-linear-gradient(top, #fefefe 0%,#c8c8c8 100%);
	background: linear-gradient(to bottom, #fefefe 0%,#c8c8c8 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fefefe', endColorstr='#c8c8c8',GradientType=0);
	border: 1px solid #949494;
	border-radius: 5px;
	box-shadow: 0 2px 2px rgba(0,0,0,0.14);
	display: block;
	text-align: center;
}
#footer .login a:link,
#footer .login a:visited,
#footer .login a:hover,
#footer .login a:active {
	color: #000;
	text-decoration: none;
}
#footer .login a:hover,
#footer .login a:active {
	opacity: 0.5;
}
#footer .login img {
	width: 19px;
	margin: 0 19px 0 0;
}
#footer .contact {
	margin: 9px 0 0;
}
#footer .contact a {
	background: #29cb33;
	background: -moz-linear-gradient(top, #29cb33 0%, #29a102 100%);
	background: -webkit-linear-gradient(top, #29cb33 0%,#29a102 100%);
	background: linear-gradient(to bottom, #29cb33 0%,#29a102 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#29cb33', endColorstr='#29a102',GradientType=0);
	border: 2px solid #00b511;
	border-radius: 5px;
	box-shadow: 0 2px 2px rgba(0,0,0,0.14);
	display: block;
	font-size: 20px;
	font-weight: bold;
	text-align: right;
	text-shadow: 1px 1px 0 #229415;
	position: relative;
	padding: 6px 12px 4px 30px;
}
#footer .contact a:link,
#footer .contact a:visited,
#footer .contact a:hover,
#footer .contact a:active {
	color: #fff;
	text-decoration: none;
}
#footer .contact a:hover,
#footer .contact a:active {
	opacity: 0.5;
}
#footer .contact a::before {
	background: url(../img/common/ico_contact.png) 0 0 / 24px 18px no-repeat;
	content: "";
	width: 32px;
	height: 24px;
	position: absolute;
	top: 17px;
	left: 15px;
}
#footer .contact a span {
	display: block;
	font-size: 14px;
	margin: -3px 0 0;
}
#footer .fnavi {
	background: #f6f6f6;
	margin: 16px 0 0;
	padding: 22px 0 16px;
}
#footer .fnavi ul {
	list-style: none;
	width: 17%;
	margin: 0;
	padding: 0;
}
#footer .fnavi ul:nth-child(2) {
	width: 34%;
}
#footer .fnavi ul div {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 90%;
	margin: 19px 0 -9px;
}
#footer .fnavi ul div ul,
#footer .fnavi ul div ul:nth-child(2) {
	width: 30%;
}
#footer .fnavi ul li {
  padding-left: 25px;
  margin-bottom: 18px;
  position: relative;
}
#footer .fnavi ul:nth-child(2) li {
  margin-bottom: 0;
}
#footer .fnavi ul:nth-child(2) li:nth-child(n+2) {
    padding-left: 1.5em;
    margin-left: 1.25em;
}

#footer .fnavi ul div ul li,
#footer .fnavi ul:nth-child(2) div ul li {
  margin-bottom: 9px;
}
#footer .fnavi ul li::before {
	background: #f40600;
	border-radius: 7px;
	content: "";
	width: 14px;
	height: 14px;
	position: absolute;
	top: 0.1em;
	left: 0;
}
#footer .fnavi ul li::after {
	border-style: solid;
	border-width: 3px 0 3px 5px;
	border-color: transparent transparent transparent #fff;
	content: "";
	width: 0;
	height: 0;
	position: absolute;
	top: 0.4em;
	left: 5px;
}
#footer .unavi ul {
	display: -ms-flexbox;
	display: flex;
	list-style: none;
	margin: 0;
	padding: 27px 0;
    font-size: 13px;
}
#footer .unavi ul li {
	position: relative;
	padding: 0 13px 0 12px;
}
#footer .unavi ul li::before {
	background: #000;
	content: "";
	width: 1px;
	position: absolute;
	top: 2px;
	left: 0;
	bottom: 3px;
}
#footer .unavi ul li:last-child::after {
	background: #000;
	content: "";
	width: 1px;
	position: absolute;
	top: 2px;
	right: 0;
	bottom: 3px;
}
#footer .unavi a:link,
#footer .unavi a:visited,
#footer .unavi a:hover,
#footer .unavi a:active {
	color: #000;
}
#footer .copyright {
	font-size: 12px;
	text-align: right;
	margin: 0;
	padding: 27px 0;
}


@media only screen and (max-width: 767px){
.ec-layoutRole .ec-layoutRole__contentTop {
	padding-top: 65px;
}
.ec-role {
	padding-left: 0;
	padding-right: 0;
}
.ec-role.contents {
	padding: 0;
}
.ec-layoutRole .ec-layoutRole__contents {
	width: auto;
	padding: 0 12px 0;
}
.ec-layoutRole .ec-layoutRole__main .inner {
	width: auto;
}
.ec-layoutRole .ec-layoutRole__mainWithColumn {
	width: 100%;
	margin: 0;
}

/* header */
#header {
	background: #fff;
	border-bottom: 1px solid #adadad;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 9999;
}
#header .inner {
	width: auto;
	min-width: 0;
	height: 64px;
}
#header .copy,
#header .tel,
#header .card,
#header .login,
#header .gnavi {
	display: none;
}
#header h1 {
	top: 13px;
	left: 12px;
}
#header h1 span {
	font-size: 7.41px;
	top: 0;
	left: 0;
}
#header h1 img {
	width: 216px;
}
#header .cart {
	width: 100%;
	top: 12px;
	right: 0;
}
#header .cart .ec-cartNavi {
	width: 43px;
	padding: 0;
	position: absolute;
	top: 0;
	right: 79px;
}
#header .cart .fa-shopping-cart::before {
	left: 6px;
}
#header .ec-cartNavi .ec-cartNavi__icon {
	vertical-align: top;
}
#header .cart .ec-cartNavi .ec-cartNavi__badge {
	left: 26px;
}
#header .cart .ec-cartNavi .ec-cartNavi__label {
	display: none;
}
#header .cart .ec-cartNaviIsset {
	top: 52px;
}
#header .ec-headerNavSP {
	background: #000;
	border-radius: 0;
	color: #fff;
	width: 64px;
	height: 64px;
	padding: 12px 0 0;
	top: 0;
	left: auto;
	right: 0;
}
#header .ec-headerNavSP i::before {
	font-size: 25px;
}
#header .ec-headerNavSP i::after {
	content: "メニュー";
	display: block;
	font-size: 10px;
	margin: 6px 0 0;
}

/* breadcrumb */
#breadcrumb {
	display: none;
}

/* login_message */
.login_message.inner {
	margin: 0 12px;
}

/* guide_area */
.guide_area {
	display: none;
}

/* pagetop */
#pagetop {
	text-align: center;
	margin: 57px 0 0;
}
#pagetop .ec-blockTopBtn {
	width: 100%;
}
#pagetop .pagetop::before {
	left: 50%;
	margin-left: -6em;
}
#pagetop .pagetop::after {
	left: 50%;
	margin-left: -5.56em;
}

/* footer */
#footer .inner {
	display: block;
}
#footer address {
	width: auto;
	margin: 44px 24px 0;
}
#footer address dl dt img {
	width: 327px;
}
#footer address dl dt span {
	font-size: 11.58px;
	top: -12px;
	left: 0;
}
#footer address dl dd {
	font-size: 14px;
	text-align: center;
	margin: 9px 0 0;
}
#footer .tel {
	margin: 29px auto;
    width: 90%;
}
#footer .tel p {
	font-size: 45.16px;
	text-align: center;
	letter-spacing: -1px;
	line-height: 40px;
}
#footer .tel dl {
	display: table;
	white-space: nowrap;
	margin: 10px auto 0;
}
#footer .tel dl dt {
	font-size: 16px;
}
#footer .tel dl dd:last-child {
	text-align: center;
	margin: 12px 0 0;
}
#footer .button {
	width: auto;
	margin: 34px 24px 0;
}
#footer .login {
	display: none;
}
#footer .contact {
	margin: 0;
}
#footer .contact a {
	font-family: Roboto, "ヒラギノ角ゴ StdN W8", "Hiragino Kaku Gothic StdN", "游ゴシック", YuGothic, "Yu Gothic", Arial, "メイリオ", Meiryo, sans-serif;
	font-size: 20.8px;
}
#footer .contact a span {
	font-family: Roboto, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "Yu Gothic", Arial, "メイリオ", Meiryo, sans-serif;
	font-size: 14.56px;
}
#footer .fnavi {
	display: none;
}
#footer .unavi {
	border-top: 1px solid #b5b5b5;
	margin: 38px 0 0;
}
#footer .unavi ul {
	justify-content: center;
	flex-wrap: wrap;
	width: 91%;
	margin: 0 auto;
	padding: 14px 0 0;
}
#footer .unavi ul li {
	margin: 20px 0 0;
	padding: 0 13px 0 12px;
}

#footer .unavi ul li:nth-child(2)::after {
	background: #000;
	content: "";
	width: 1px;
	position: absolute;
	top: 2px;
	right: 0;
	bottom: 3px;
}


#footer .unavi ul li:nth-child(1):before,
#footer .unavi ul li:nth-child(4)::before{
	display: none;
}

#footer .copyright {
	text-align: center;
	padding: 32px 0;
}

/* menu */
.ec-layoutRole.is_active {
	transform: translateX(-315px);
}
.have_curtain .ec-overlayRole {
	background: rgba(0,0,0,0.21);
	z-index: 9999;
}
.ec-drawerRoleClose {
	background: #ffc601;
	border-radius: 0;
	font-size: 20px;
	width: 60px;
	height: 68px;
	top: 0;
	left: auto;
	right: 315px;
	padding: 12px 0 0;
	z-index: 9999;
}
.ec-drawerRoleClose i::before {
	font-size: 20px;
}
.ec-drawerRoleClose i::after {
	content: "CLOSE";
	display: block;
	font-size: 10px;
	margin: 6px 0 0;
}
.ec-drawerRole {
	background: #fff;
	width: 315px;
	transform: translateX(100vw);
}
.ec-drawerRole.is_active {
	margin-left: calc(100vw - 315px);
}

.ec-drawerRole .menu_header .tel {
	margin: 0;
	padding: 24px 0 0;
}
.ec-drawerRole .menu_header .tel p {
	color: #de0303;
	font-family: Roboto, Helvetica, Arial, sans-serif;
	font-size: 40.53px;
	font-weight: bold;
	text-align: center;
	letter-spacing: -1px;
	line-height: 35px;
	margin: 0;
}
.ec-drawerRole .menu_header .tel p img {
	width: 35px;
	margin-right: 3px;
	vertical-align: top;
}
.ec-drawerRole .menu_header .tel p a:link,
.ec-drawerRole .menu_header .tel p a:visited,
.ec-drawerRole .menu_header .tel p a:hover,
.ec-drawerRole .menu_header .tel p a:active {
	color: #de0303;
	text-decoration: none;
}
.ec-drawerRole .menu_header .tel dl {
	display: table;
	font-weight: bold;
	white-space: nowrap;
	margin: 10px auto 0;
    width: 100%;
    padding: 1em;
}
.ec-drawerRole .menu_header .tel dl dt {
	font-size: 16px;
	float: left;
	margin: 0.6em 0.6em 0 0;
}
.ec-drawerRole .menu_header .tel dl dd {
	font-size: 16px;
	line-height: 1.38875;
}
.ec-drawerRole .menu_header .tel dl dd span {
	font-size: 12px;
}
.ec-drawerRole .menu_header .tel dl dd:last-child {
	font-size: 14px;
	text-align: center;
	margin: 12px 0 0;
}
.ec-drawerRole .menu_header .button {
	margin: 13px 12px 0;
}
.ec-drawerRole .menu_header .contact {
	margin: 0;
}
.ec-drawerRole .menu_header .contact a {
	background: #29cb33;
	background: -moz-linear-gradient(top, #29cb33 0%, #29a102 100%);
	background: -webkit-linear-gradient(top, #29cb33 0%,#29a102 100%);
	background: linear-gradient(to bottom, #29cb33 0%,#29a102 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#29cb33', endColorstr='#29a102',GradientType=0);
	border: 2px solid #00b511;
	border-radius: 5px;
	box-shadow: 0 2px 2px rgba(0,0,0,0.14);
	display: block;
	font-family: Roboto, "ヒラギノ角ゴ StdN W8", "Hiragino Kaku Gothic StdN", "游ゴシック", YuGothic, "Yu Gothic", Arial, "メイリオ", Meiryo, sans-serif;
	font-size: 18px;
	font-weight: bold;
	text-align: right;
	text-shadow: 1px 1px 0 #229415;
	letter-spacing: -0.08em;
	position: relative;
	padding: 8px 12px 10px 30px;
}

@media only screen and (max-width: 767px){
    .ec-drawerRole .menu_header .contact a {
text-align: left;
    padding: 10px 5px 10px 50px;
    }
}
.ec-drawerRole .menu_header .contact a:link,
.ec-drawerRole .menu_header .contact a:visited,
.ec-drawerRole .menu_header .contact a:hover,
.ec-drawerRole .menu_header .contact a:active {
	color: #fff;
	text-decoration: none;
}
.ec-drawerRole .menu_header .contact a:hover,
.ec-drawerRole .menu_header .contact a:active {
	opacity: 0.5;
}
.ec-drawerRole .menu_header .contact a::before {
	background: url(../img/common/ico_contact.png) 0 0 / 32px 24px;
	content: "";
	width: 32px;
	height: 24px;
	position: absolute;
	top: 20px;
	left: 9px;
}
.ec-drawerRole .menu_header .contact a span {
	display: block;
	font-family: Roboto, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "Yu Gothic", Arial, "メイリオ", Meiryo, sans-serif;
	font-size: 14px;
	letter-spacing: 0;
}
.ec-drawerRole .menu_header .login {
	font-size: 18px;
	font-weight: bold;
	line-height: 54px;
	margin: 13px 0 0;
}
.ec-drawerRole .menu_header .login a {
	background: #fefefe;
	background: -moz-linear-gradient(top, #fefefe 0%, #c8c8c8 100%);
	background: -webkit-linear-gradient(top, #fefefe 0%,#c8c8c8 100%);
	background: linear-gradient(to bottom, #fefefe 0%,#c8c8c8 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fefefe', endColorstr='#c8c8c8',GradientType=0);
	border: 1px solid #949494;
	border-radius: 5px;
	box-shadow: 0 2px 2px rgba(0,0,0,0.14);
	display: block;
	text-align: center;
}
.ec-drawerRole .menu_header .login a:link,
.ec-drawerRole .menu_header .login a:visited,
.ec-drawerRole .menu_header .login a:hover,
.ec-drawerRole .menu_header .login a:active {
	color: #000;
	text-decoration: none;
}
.ec-drawerRole .menu_header .login a:hover,
.ec-drawerRole .menu_header .login a:active {
	opacity: 0.5;
}
.ec-drawerRole .menu_header .login img {
	width: 19px;
	margin: -5px 19px 0 0;
}
.ec-drawerRole .sidebar {
	margin-top: 27px;
}
.ec-drawerRole .sidebar dl {
	margin-top: 0;
}
.ec-drawerRole .sidebar .category dl ul {
	font-size: 16px;
}
.ec-drawerRole .sidebar .banner ul {
	text-align: center;
	margin: 22px 0 0;
}
.ec-drawerRole .sidebar .banner ul li {
	max-width: 286px;
	margin-left: auto;
	margin-right: auto;
}
.ec-drawerRole .sidebar .guide {
	margin-top: 30px;
}
.ec-drawerRole .sidebar .calendar {
	display: none;
}
}

@media only screen and (max-width: 320px){

/* header */
#header h1 span {
	font-size: 6.41px;
}
#header h1 img {
	width: 176px;
}

/* footer */
#footer address dl dt span {
	font-size: 10.58px;
}
#footer .tel p {
	font-size: 37px;
}
#footer .contact a {
	font-size: 16px;
}

/* menu */
.ec-layoutRole.is_active {
	transform: translateX(-275px);
}
.ec-drawerRoleClose {
	width: 45px;
	right: 275px;
}
.ec-drawerRole {
	width: 275px;
}
.ec-drawerRole.is_active {
	margin-left: calc(100vw - 275px);
}
.ec-drawerRole .menu_header .tel p {
	font-size: 32px;
}
.ec-drawerRole .menu_header .contact a {
	font-size: 17px;
}
.ec-drawerRole .menu_header .login {
	font-size: 15px;
}
.ec-drawerRole .sidebar .banner ul {
	margin-left: 15px;
	margin-right: 15px;
}
.ec-drawerRole .sidebar .banner ul li {
	max-width: 100%;
}
}

@media only screen and (min-width: 768px){
a[href*="tel:"] {
	cursor: default;
  pointer-events: none;
}
a[href*="tel:"]:link,
a[href*="tel:"]:visited,
a[href*="tel:"]:hover,
a[href*="tel:"]:active {
	color: #333;
	text-decoration: none !important;
}
}


/* ----------------------------------------
  parts
------------------------------------------- */
.inner {
	width: 1120px;
	margin: 0 auto;
}
.pc { display: block; }
.sp { display: none; }
em        { color:#FD6408;  }
.small    { font-size:87%;  }
.x-small  { font-size:78%;  }
.large    { font-size:107%; }
.x-large  { font-size:120%; }
.attention{ color: #f50000;   }
.attention a:link,
.attention a:visited,
.attention a:hover,
.attention a:active{ color: #f50000;   }
.attention a:hover,
.attention a:active{ text-decoration: none;   }
.memo     { color: #ff7e00;   }
.bold     { font-weight:bold; }
.center{ text-align: center; }
.right { text-align:right;   }
.left  { text-align:left;    }
.float-l{ float: left;  }
.float-r{ float: right; }
.clear  { clear: both;  }
.img-l{ float:left;  margin:0 25px 10px 0; }
.img-r{ float:right; margin:0 0 10px 25px; }
.nowrap         { white-space:nowrap; }
.nomargintop    { margin-top: 0 !important; }
.contents .nocss { margin:0; padding:0; border:none; background:none; }
.anchor {
  padding-left: 25px;
  margin-bottom: 5px;
  position: relative;
}
.anchor::before {
	background: #f40600;
	border-radius: 7px;
	content: "";
	width: 14px;
	height: 14px;
	position: absolute;
	top: 0.1em;
	left: 0;
}
.anchor::after {
	border-style: solid;
	border-width: 3px 0 3px 5px;
	border-color: transparent transparent transparent #fff;
	content: "";
	width: 0;
	height: 0;
	position: absolute;
	top: 0.4em;
	left: 5px;
}
a:link {
	color: #000080;
	text-decoration: none;
	font-weight: bold;
}
a:visited {
	color: #000080;
	text-decoration: none;
	font-weight: bold;
}
a:hover, a:active {
	color: #1e90ff;
	text-decoration: underline;
	font-weight: bold;
}
a[href$='.xls'], a[href$='.xlsx']{
  background: url(../img/fileicon/xls.png) no-repeat 100% 50%;
  padding-right: 25px;
}
a[href$='.doc'], a[href$='.docx']{
  background: url(../img/fileicon/doc.png) no-repeat 100% 50%;
  padding-right: 25px;
}
a[href$='pdf']{
  background: url(../img/fileicon/pdf.png) no-repeat 100% 50%;
  padding-right: 25px;
}
a[href$='ppt']{
  background: url(../img/fileicon/ppt.png) no-repeat 100% 50%;
  padding-right: 25px;
}
.openwin{ 
  padding-right: 15px;
}
.pagetop-in {
  text-align:right;
}
.pagetop-in a {	
  font-size: 92%;
}
.contents p,
.contents ul,
.contents dl,
.contents ol,
.contents table{
  margin: 30px 0 0;
  line-height:1.75em;
}
.contents dt,
.contents dd{
  line-height:1em;
}
.contents img {
	max-width: 100%;
	height: auto;
}
.aligncenter {
	display: block;
	margin: 0 auto;
}
.alignleft {
	float: left;
	margin: 30px 20px 10px 0;
}
.alignright {
	float: right;
	margin: 30px 0 10px 20px;
}
img.alignleft,
img.alignright {
	margin-top: 0;
}
.column-image-left + .entry-container > p,
.column-image-right + .entry-container > p {
  margin-top: 10px;
}
.contents ul p, .contents ul dl, .contents ul ol, 
.contents dl p, .contents dl ul, .contents dl ol, 
.contents ol p, .contents ol ul, .contents ol dl, 
.contents table p, .contents table ul, .contents table dl, .contents table ol{
  margin: 0;
}
.contents p img, .contents dl img, .contents ul img {
  vertical-align: middle;
}
.column-image-left,.column-image-center,.column-image-right { margin-top:20px !important; }
.contents blockquote {
  border: 4px solid #ddd;
	line-height: 1.375;
  margin: 30px 0 0;
  padding: 22px 17px;
}
.contents blockquote ol:first-child,
.contents blockquote p:first-child,
.contents blockquote ul:first-child {
	margin-top: 0;
}

/* title */
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
	line-height: 1.5;
}
.contents h2, 
.contents .wysiwyg h1,
.ec-pageHeader h1 {
	background: #ffd238;
	border: none;
	border-bottom: 4px solid #fd8d20;
	color: #000;
  clear: both;
  margin: 50px 0 0;
	font-size: 1.44em;
  font-weight: bold;
	padding: 19px 20px 15px;
}
.ec-pageHeader h1 {
	margin-top: 0;
}
.contents h2 a:link,.contents h2 a:visited{ text-decoration: underline; }
.contents h2 a:hover,.contents h2 a:active{ text-decoration: none; }
.contents h3, 
.contents .wysiwyg h2,
.ec-role.contents h2{
	background: transparent;
	border-bottom: 4px solid #ffc600;
  clear: both;
	color: #000;
  margin: 50px 0 0;
	font-size: 1.38em;
  font-weight: bold;
	padding: 0 3px 14px;
}
.contents h4, 
.contents .wysiwyg h3,
.ec-role.contents h3{
	background: linear-gradient(to right, #ffae00, #ffae00 6px, transparent 6px, transparent 4px) 0 100% / 10px 2px repeat-x;
	border: none;
  clear: both;
	color: #000;
	font-size: 1.25em;
  font-weight: bold;
  margin: 50px 0 0;
	padding: 0 0 12px;
}
.contents h5, 
.contents .wysiwyg h4,
.ec-role.contents h4{
	background: none;
	border-bottom: 2px dotted #c2c2c2;
  clear: both;
	color: #ff9c00;
	font-size: 1.13em;
  font-weight: bold;
  margin: 50px 0 0;
	padding: 0 5px 9px;
}
.contents h6, 
.contents .wysiwyg h5,
.ec-role.contents h5{
	border-bottom: none;
  clear: both;
	color: #ff8400;
	font-size: 1em;
  font-weight: bold;
  margin: 50px 3px 0;
	padding: 0;
}

/* ul */
.contents ul {
	list-style: none;
	padding: 0;
}
.contents ul li {
  padding-left: 25px;
  margin-bottom: 7px;
  position: relative;
}
.contents ul li::before {
	background: #ff7e00;
	border-radius: 3px;
	content: "";
	width: 6px;
	height: 6px;
	position: absolute;
	top: 0.7em;
	left: 9px;
}
.contents .link li::before {
	background: #f40600;
	border-radius: 7px;
	width: 14px;
	height: 14px;
	top: 0.45em;
	left: 2px;
}
.contents .link li::after {
	border-style: solid;
	border-width: 3px 0 3px 5px;
	border-color: transparent transparent transparent #fff;
	content: "";
	width: 0;
	height: 0;
	position: absolute;
	top: 0.7em;
	left: 7px;
}
.contents .link li .anchor{
  padding-left:0;
}
.contents .link li .anchor::before{
	display:none;
}
.contents .rice li {
	text-indent: -1em;
	margin-left: 1em;
  padding-left: 0;
}
.contents .rice li::before {
	display: none;
}
ol {
  counter-reset:number;
  padding:0;
  list-style:none;
}
ol li {
  text-indent: -30px;
  padding-left: 30px;
}
ol li:before {
  counter-increment: number;
  content: counter(number) ". ";
  font-weight: bold;
  text-align: right;
  display: inline-block;
  width: 25px;
  margin-right: 5px;
}
.rice li{
  margin:0 0 5px 1em;
  text-indent:-1em;
}
.compact li{
  display:inline;
  margin-right:10px;
}
.within {
  padding: 8px;
  border: 1px solid #ddd;
}
.contents ul ul, .contents dl dl, .contents ol ol {
  margin-top: 5px;
}

/* dl */
.list dt{
  font-weight:bold;
}
.list dd{
  padding-left:13px;
}
.link dt{
	position: relative;
  padding-left: 15px;
  font-weight: bold;
}
.link dt::before {
  content: '';
  display: block;
  width: 6px;
  height: 6px;
  border-top: solid 2px #bec4d1;
  border-right: solid 2px #bec4d1;
  position: absolute;
  top: 0.8em;
  left: 0;
  transform: rotate(45deg);
}
.link dd{
  padding-left:15px;
}
.horizonal dt {
  clear: left;
  float: left;
  width: 10em;
  padding:8px 8px 8px 0;
}
.horizonal dd {
  padding:8px 15px 8px 11em;
  border-bottom:1px solid #ddd;
}

/* layout frame */
.contents .layout-frame {
  clear: both;
  margin-left: -20px;
}
.contents .layout-frame::after {
  content: ".";
  display: block;
  height: 0;
  font-size:0;
  clear: both;
  visibility:hidden;
}
.contenst .layout-3col {
  margin-left: -15px;
}
.contents .layout-unit {
  float: left;
  display: inline;
  margin-left: 20px;
}
.contents .layout-3col .layout-unit {
  margin-left: 15px;
}
.grid-1 { width: 49px; }
.grid-2 { width:118px; }
.grid-3 { width:187px; }
.grid-4 { width:256px; }
.layout-3col .grid-4 { width:260px; }
.grid-5 { width:485px; }
.grid-6 { width:395px; }
.grid-7 { width:463px; }
.grid-8 { width:532px; }
.grid-9 { width:601px; }
.grid-10{ width:670px; }
.grid-11{ width:741px; }

/* table */
table{
  border: 1px solid #6e6e6e;
  width: 100%;
}
table th,
table td {
  padding: 10px 15px;
  vertical-align: top;
  border: 1px solid #6e6e6e;
}
table th {
  background: #fff7c5;
  font-weight: bold;
}
table thead th,
th.head {
  background: #ff9834;
	color: #fff;
  text-align: center;
}
table td {
  background: #fff;
}
table.noborder,
table.noborder td,
table.noborder th {
  border:0;
  background: none;
}

/* box */
.decoration_box {
	clear: both;
	margin: 30px 0;
	padding: 20px;
}
.decoration_box p:first-child {
	margin-top: 0;
}
.decoration_box.decoration001 {
	background: url(../img/common/bg_001.jpg) 50% 0 repeat;
}
.decoration_box.decoration002 {
	border: 3px solid #ffa800;
}

/* button */
.ec-blockBtn--cancel:link,
.ec-blockBtn--cancel:visited,
.ec-blockBtn--cancel:hover,
.ec-blockBtn--cancel:active {
	color: #fff;
	text-decoration: none;
}

/* ec-off1Grid */
.ec-off1Grid {
	margin-top: 30px;
}

/* ec-borderedDefs */
.ec-borderedDefs dt {
	padding-top: 10px;
}


@media only screen and (max-width: 767px){
.inner {
	width: auto;
}
img {
	max-width: 100%;
	height: auto;
}
.pc { display: none; }
.sp { display: block; }

/* contents */
.contents p,
.contents ul,
.contents dl,
.contents ol,
.contents table{
  margin: 20px 0 0;
  line-height:1.6875em;
}
.contents dt,
.contents dd{
  line-height:1.85em;
}
.contents blockquote {
  margin: 20px 0 0;
  padding: 15px 10px;
}

/* title */
.ec-pageHeader {
	margin-top: -20px;
}
.contents h2, 
.contents .wysiwyg h1,
.ec-pageHeader h1 {
	line-height: 1.32;
  margin: 40px 0 0;
	padding: 16px 13px 12px;
	font-size: 25px;
}
.contents h3, 
.contents .wysiwyg h2,
.ec-role.contents h2{
  margin: 40px 0 0;
	padding: 0 8px 8px;
	font-size: 24px;
}
.contents h4, 
.contents .wysiwyg h3,
.ec-role.contents h3{
	font-size: 20px;
  margin: 40px 0 0;
}
.contents h5, 
.contents .wysiwyg h4,
.ec-role.contents h4{
	font-size: 18px;
  margin: 40px 0 0;
}
.contents h6, 
.contents .wysiwyg h5,
.ec-role.contents h5{
	font-size: 16px;
  margin: 40px 0 0;
}

/* layout frame */
.grid-1,
.grid-2,
.grid-3,
.grid-4,
.grid-5,
.grid-6,
.grid-7,
.grid-8,
.grid-9,
.grid-10,
.grid-11{ width:auto; }

/* table */
table th,
table td {
  padding: 7px 10px;
}
.scroll table {
	width: 100%;
}
.scroll {
	overflow: auto;
	white-space: nowrap;
}
.scroll::-webkit-scrollbar {
	height: 5px;
}
.scroll::-webkit-scrollbar-track {
	background: #f1f1f1;
}
.scroll::-webkit-scrollbar-thumb {
	background: #bcbcbc;
}
table.sp_block {
	border-bottom: none;
}
table.sp_block th,
table.sp_block td {
	border: none;
	border-bottom: 1px solid #6e6e6e;
	display: block;
}

/* box */
.decoration_box {
	margin: 20px 0;
	padding: 10px;
}
}


/* ----------------------------------------
  TOPページ
------------------------------------------- */
#page_homepage .ec-layoutRole__contents {
	padding-top: 58px;
}

/* top_keyvisual */
.top_keyvisual {
	/*background: #ffc600;*/
	/*background: -moz-linear-gradient(top, #ffc600 0%, #ffdd68 49%);*/
	/*background: -webkit-linear-gradient(top, #ffc600 0%,#ffdd68 49%);*/
	/*background: linear-gradient(to bottom, #ffc600 0%,#ffdd68 49%);*/
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffc600', endColorstr='#ffdd68',GradientType=0);
	/*box-shadow: 0 2px 7px rgba(0,0,0,0.14);*/
	margin: 0;
	padding: 10px 0;
}
.top_keyvisual img {
	box-shadow: 2px 2px 3px rgba(0,0,0,0.16);
}

/* top_banner */
.top_banner ul {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	list-style: none;
	margin: 12px -2px 0;
	padding: 0;
}
.top_banner ul li {
	margin: 15px 0 0;
}
.top_banner ul li:first-child {
	margin: -10px -8px 0 0;
}

.banner_contents{
    padding:10px;
	margin: 10px 0;
}
.banner_contents ul{
    list-style-type: none;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-wrap:wrap;
    padding:0;
}
.banner_contents ul li{
    width:24%;
    position: relative;
    margin-bottom: 10px;
    overflow: visible;
}
.banner_contents ul li a{
    display: block;
    overflow: visible;
}
.banner_contents ul li img.pc{
    max-height:267px;
}
.banner_contents ul li img.sp{
    width:100%;
    max-width:100%;
}
.banner_contents ul li img.add_img{
    position: absolute;
    width:40%;
    top:-10px;
    right:-10px;
}

@media only screen and (max-width: 767px){
    .banner_contents ul li{
        width:49%;
    }
}

/* top_point */
.top_point {
	background: url(../img/top/bg_point_001.jpg) 0 0 no-repeat #ff9e00;
	position: relative;
	padding: 136px 20px 23px 19px;
}
.top_point h2 {
	position: absolute;
	top: -38px;
	left: -16px;
	margin: 0;
}
.top_point .point_box {
	background: #fff;
	border: 4px solid #000;
	border-radius: 5px;
	box-shadow: 0 3px 4px rgba(0,0,0,0.2);
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
	position: relative;
	margin: 19px 0 0;
}
.top_point .point_box h3 {
	position: absolute;
	top: -23px;
	left: 163px;
	margin: 0;
}
.top_point .point_box p {
	font-size: 15px;
	font-weight: bold;
	letter-spacing: -1px;
	line-height: 1.53;
	width: 513px;
	order: 2;
	margin: 0 0 0 0;
	padding: 99px 0 0;
}
.top_point .point_box:first-child p {
	font-size: 16px;
	line-height: 1.44;
	width: 496px;
	margin-right: 17px;
}
.top_point .point_box .image {
	order: 1;
}
.top_point .point_box .image img{
    height: 100%;
    object-fit: cover;
    width: 90%;

}

/* top_procedure / top_order / top_use / top_news */
.top_procedure h2,
.top_order h2,
.top_use h2,
.top_news h2 {
	background: #ffd25a;
	background: -moz-linear-gradient(top, #ffd25a 0%, #ffa900 100%);
	background: -webkit-linear-gradient(top, #ffd25a 0%,#ffa900 100%);
	background: linear-gradient(to bottom, #ffd25a 0%,#ffa900 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd25a', endColorstr='#ffa900',GradientType=0);
	border: 2px solid #ff7e00;
	box-shadow: 0 1px 3px rgba(0,0,0,0.3);
	color: #fff;
	font-size: 22px;
	font-weight: bold;
	text-shadow: 0 2px #000, 1px 2px #000, 2px 2px #000, 2px 1px #000, 2px 0 #000, 2px -1px #000, 2px -2px #000, 1px -2px #000, 0 -2px #000, -1px -2px #000, -2px -2px #000, -2px -1px #000, -2px 0 #000, -2px 1px #000, -2px 2px #000, -1px 2px #000, 3px 3px 2px rgba(0,0,0,0.5);
	line-height: 43px;
	margin: -2px -2px 0;
	padding: 0 23px;
}

/* top_procedure */
.top_procedure {
	background: #fff197;
	border: 2px solid #ff7e00;
	position: relative;
	margin: 50px 0 0;
}
.top_procedure .btn_more {
	letter-spacing: -0.1em;
	position: absolute;
	top: 5px;
	right: 12px;
	margin: 0;
}
.top_procedure .btn_more a {
	background: #ffffff;
	background: -moz-linear-gradient(top, #ffffff 0%, #d9d9d9 100%);
	background: -webkit-linear-gradient(top, #ffffff 0%,#d9d9d9 100%);
	background: linear-gradient(to bottom, #ffffff 0%,#d9d9d9 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#d9d9d9',GradientType=0);
	border-radius: 5px;
	box-shadow: 0 2px 2px rgba(0,0,0,0.2);
	display: block;
	font-size: 15px;
	width: 171px;
	line-height: 32px;
	position: relative;
	padding-left: 35px;
}
.top_procedure .btn_more a::before {
	background: #f40600;
	border-radius: 7px;
	content: "";
	width: 14px;
	height: 14px;
	position: absolute;
	top: 10px;
	left: 13px;
}
.top_procedure .btn_more a::after {
	border-style: solid;
	border-width: 3px 0 3px 5px;
	border-color: transparent transparent transparent #fff;
	content: "";
	width: 0;
	height: 0;
	position: absolute;
	top: 14px;
	left: 18px;
}
.top_procedure .procedure_box_wrap {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 24px 13px 28px;
}
.top_procedure .procedure_box {
	background: #fff;
	border: 2px solid #000;
	border-radius: 5px;
	box-shadow: 0 3px 4px rgba(0,0,0,0.2);
	position: relative;
	width: 182px;
	padding: 146px 0 9px;
}
.top_procedure .procedure_box h3 {
	background: url(../img/top/bg_procedure_001.png) 0 0 no-repeat;
	color: #fff;
	font-family: Roboto, "ヒラギノ角ゴ StdN W8", "Hiragino Kaku Gothic StdN", "游ゴシック", YuGothic, "Yu Gothic", Arial, "メイリオ", Meiryo, sans-serif;
	font-size: 15px;
	font-weight: bold;
	text-shadow: 0 2px #000, 1px 2px #000, 2px 2px #000, 2px 1px #000, 2px 0 #000, 2px -1px #000, 2px -2px #000, 1px -2px #000, 0 -2px #000, -1px -2px #000, -2px -2px #000, -2px -1px #000, -2px 0 #000, -2px 1px #000, -2px 2px #000, -1px 2px #000, 3px 3px 2px rgba(0,0,0,0.5);
	line-height: 37px;
	width: 195px;
	margin: 0 0 0 -8px;
	padding: 4px 0 12px;
    padding-left: 1rem;
    background-size: cover;
    display: flex;
    align-items: center;
}
.top_procedure .procedure_box h3 img {
	width: 28px;
    height: auto;
    vertical-align: top;
    margin: 0;
}

.top_procedure .procedure_box h3 span{
    display: block;
    line-height: 1.15em;
}

.top_procedure .procedure_box p {
	margin: -2px 0 0;
	padding: 0 10px;
}
.top_procedure .procedure_box .image {
	border-radius: 5px 5px 0 0;
	text-align: center;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}
.top_procedure .procedure_box .image img {
	width: 100%;
}

/* top_order */
.top_order {
	background: #fff197;
	border: 2px solid #ff7e00;
	margin: 50px 0 0;
}
.top_order .order_box_wrap {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 7px 18px 33px;
}
.top_order .order_box {
	background: #fff;
	border: 1px solid #000;
	box-shadow: 0 1px 3px rgba(0,0,0,0.3);
	width: 375px;
	position: relative;
	margin: 21px 0 0;
	padding: 160px 0 13px;
}
.top_order .order_box h3 {
	background: url(../img/common/ico_catch_001.png) 0 1px no-repeat;
	font-size: 20px;
	font-weight: bold;
	margin: 7px 13px 0;
	padding: 0 0 0 34px;
}
.top_order .order_box p {
	font-size: 15px;
	line-height: 1.6;
	margin: 0 12px;
}
/*
.top_order .order_box h3 + p {
	margin: -1px 5px 1px;
}
*/
.top_order .order_box .image {
	text-align: center;
	height: 160px;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}
.top_order .order_box .image img {
	width: 100%;
	max-width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	margin-left: -1px;
}

/* top_use */
.top_use {
	background: #fff197;
	border: 2px solid #ff7e00;
	margin: 50px 0 0;
}
.top_use .use_box_wrap {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 4px 18px 33px;
}
.top_use .use_box {
	background: #fff;
	border: 1px solid #000;
	box-shadow: 0 1px 3px rgba(0,0,0,0.3);
	width: 242px;
	position: relative;
	margin: 24px 0 0;
	padding: 146px 0 11px;
}
.top_use .use_box h3 {
	background: url(../img/common/ico_catch_001.png) 0 0 no-repeat;
	font-size: 18px;
	font-weight: bold;
	margin: 0 10px 0 12px;
	padding: 0 0 0 37px;
}
.top_use .use_box p {
	margin: 5px 10px 0;
}
.top_use .use_box .image {
	text-align: center;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}

/* top_news */
.top_news {
	position: relative;
	margin: 50px 0 0;
	padding: 0 2px;
}
.top_news .btn_more {
	letter-spacing: -0.1em;
	position: absolute;
	top: 7px;
	right: 12px;
	margin: 0;
}
.top_news .btn_more a {
	background: #ffffff;
	background: -moz-linear-gradient(top, #ffffff 0%, #d9d9d9 100%);
	background: -webkit-linear-gradient(top, #ffffff 0%,#d9d9d9 100%);
	background: linear-gradient(to bottom, #ffffff 0%,#d9d9d9 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#d9d9d9',GradientType=0);
	border-radius: 5px;
	box-shadow: 0 2px 2px rgba(0,0,0,0.2);
	display: block;
	font-size: 15px;
	width: 132px;
	line-height: 32px;
	position: relative;
	padding-left: 35px;
}
.top_news .btn_more a::before {
	background: #f40600;
	border-radius: 7px;
	content: "";
	width: 14px;
	height: 14px;
	position: absolute;
	top: 10px;
	left: 13px;
}
.top_news .btn_more a::after {
	border-style: solid;
	border-width: 3px 0 3px 5px;
	border-color: transparent transparent transparent #fff;
	content: "";
	width: 0;
	height: 0;
	position: absolute;
	top: 14px;
	left: 18px;
}
.ec-newsRole.top_news .ec-newsRole__news {
	border: none;
	margin: 10px -2px 0;
	padding: 0;
}
.ec-newsRole.top_news .ec-newsRole__newsItem {
	border-bottom: 1px solid #b5b5b5;
	padding: 16px 18px;
}
.ec-newsRole.top_news .ec-newsRole__newsDate {
	color: #333;
	min-width: 100px;
	min-height: 30px;
	padding-top: 2px;
}
.ec-newsRole .ec-newsRole__newsColumn {
	min-width: calc(100% - 100px);
}
.ec-newsRole.top_news .ec-newsRole__newsTitle {
	color: #0b48d3;
	text-decoration: underline;
	font-size: 16px;
	font-weight: normal;
	line-height: 1.5;
}
.ec-newsRole__newsItem.is_active .ec-newsRole__newsDescription {
	line-height: 1.57;
	margin: 5px 50px 0 0;
}
.ec-newsRole.top_news .ec-newsRole__newsCloseBtn {
	background: #474747;
	border-radius: 0;
	width: 30px;
	height: 30px;
	right: 0;
}
.ec-newsRole.top_news .fa-angle-down::before {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	transform: rotate(135deg);
	margin-top: 7px;
}
.ec-newsRole.top_news .ec-newsRole__newsItem.is_active .fa-angle-down::before {
	margin-top: -8px;
}


@media only screen and (max-width: 767px){
#page_homepage .ec-layoutRole .ec-layoutRole__contentTop {
	padding-top: 65px;
}
#page_homepage .ec-layoutRole__contents {
	padding-top: 0;
}

/* top_keyvisual */
.top_keyvisual {
	position: relative;
	padding: 0;
	z-index: 2;
}
.top_keyvisual img {
	box-shadow: none;
	width: 100%;
}

/* top_banner */
.top_banner ul {
	max-width: 100%;
	margin: 6px auto 0;
}
.top_banner ul li {
	text-align: center;
	width: 50%;
	margin: 0;
}
.top_banner ul li:first-child {
	width: 100%;
	margin: 0;
}
.top_banner ul li:last-child {
	width: 100%;
}

.top_banner .inner .bnr_list {
    width: 100%;
}
.top_banner .inner .bnr_list:last-child {
    display: none;
}

/* top_point */
.top_point {
	background: url(../img/top/bg_point_001_sp.jpg) 0 0 / 100% auto no-repeat #ff9e00;
	box-shadow: 0 0 11px rgba(0,0,0,0.25);
	margin: 94px 0 0;
	padding: 99px 12px 21px;
}
.top_point h2 {
	text-align: center;
	top: -80px;
	left: 0;
	right: -12px;
	margin: 0;
	z-index: 1;
}
.top_point h2 img {
	max-width: 363px;
	margin: 0 auto;
}
.top_point .point_box {
	border: 3px solid #000;
	-ms-flex-direction: column;
	flex-direction: column;
	margin: 13px 0 0;
}
.top_point .point_box:first-child {
	margin-top: 0;
}
.top_point .point_box h3 {
	order: 2;
	position: static;
	top: 0;
	left: 0;
	margin: -50px -27px 0;
}
.top_point .point_box h3 img {
	max-width: 375px;
}
.top_point .point_box p {
	font-size: 16px;
	line-height: 1.44;
	width: auto;
	order: 2;
	margin: -11px 16px 0;
	padding: 0 0 18px;
}
.top_point .point_box:first-child p {
	width: auto;
	margin-right: 17px;
}
.top_point .point_box .image img {
	width: 100%;
}

/* top_procedure / top_order / top_use / top_news */
.top_procedure h2,
.top_order h2,
.top_use h2,
.top_news h2 {
	background: #ffd25a;
	background: -moz-linear-gradient(top, #ffd25a 0%, #ffa900 100%);
	background: -webkit-linear-gradient(top, #ffd25a 0%,#ffa900 100%);
	background: linear-gradient(to bottom, #ffd25a 0%,#ffa900 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd25a', endColorstr='#ffa900',GradientType=0);
	border: 2px solid #ff7e00;
	box-shadow: 0 1px 3px rgba(0,0,0,0.3);
	color: #fff;
	font-size: 22px;
	font-weight: bold;
	text-shadow: 0 2px #000, 1px 2px #000, 2px 2px #000, 2px 1px #000, 2px 0 #000, 2px -1px #000, 2px -2px #000, 1px -2px #000, 0 -2px #000, -1px -2px #000, -2px -2px #000, -2px -1px #000, -2px 0 #000, -2px 1px #000, -2px 2px #000, -1px 2px #000, 3px 3px 2px rgba(0,0,0,0.5);
	line-height: 43px;
	margin: -2px -2px 0;
	padding: 0 23px;
}

/* top_procedure */
.top_procedure {
	margin: 45px 0 0;
}
.top_procedure .procedure_box_wrap {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 3px 10px 26px;
}
.top_procedure .procedure_box {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	flex-direction: column;
	width: calc(50% - 6px);
	margin: 15px 0 0;
	padding: 0 0 12px;
}
.top_procedure .procedure_box h3 {
	background: url(../img/guide/flow/bg_flow_001.png) 100% 0 / auto 42px no-repeat;
	font-size: 16px;
	letter-spacing: -0.05em;
	line-height: 34px;
	width: auto;
	position: relative;
	margin: 0 0 0 -8px;
	padding-bottom: 15px;
	order: 2;
    background-size: cover;
}
.top_procedure .procedure_box h3::before {
	border-style: solid;
	border-width: 0 6px 8px 0;
	border-color: transparent #460000 transparent transparent;
	content: "";
	width: 0;
	height: 0;
	position: absolute;
	left: 0;
	bottom: 0;
}
.top_procedure .procedure_box h3 img {
	margin: 3px 3px 0 6px;
}
.top_procedure .procedure_box p {
	margin: -2px 0 0;
	padding: 0 10px;
	order: 3;
}
.top_procedure .procedure_box .image {
	position: static;
	order: 1;
}

/* top_order */
.top_order {
	margin: 38px 0 0;
}
.top_order .order_box_wrap {
	padding: 19px 10px 47px;
}
.top_order .order_box {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	flex-direction: column;
	width: 100%;
	margin: 15px 0 0;
	padding: 0 0 12px;
}
.top_order .order_box h3 {
	background-size: 28px auto;
	font-size: 16px;
	line-height: 1.13;
	min-height: 24px;
	margin: 8px 5px 0 11px;
	padding: 4px 0 0 29px;
	order: 2;
}
.top_order .order_box p {
	font-size: 14px;
	line-height: 1.29;
	margin: 6px 10px 0;
	order: 3;
}
/*
.top_order .order_box h3 + p {
	font-size: 15px;
	margin: 3px 10px 0 3px;
}
*/
.top_order .order_box .image {
	position: static;
	order: 1;
}
.top_order .order_box .image img {
	position: static;
	width: 100%;
	transform: none;
	margin-left: 0;
}
.top_order .slick-arrow {
	background: rgba(0,0,0,0.6);
	border-radius: 50%;
	border: none;
	width: 37px;
	height: 37px;
	text-indent: 100%;
	overflow: hidden;
	position: absolute;
	top: 50%;
	padding: 0;
	z-index: 1;
	margin-top: -19px;
}
.top_order .slick-arrow.slick-prev {
	left: -9px;
}
.top_order .slick-arrow.slick-next {
	right: -9px;
}
.top_order .slick-arrow::before {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	content: "";
	width: 10px;
	height: 10px;
	position: absolute;
	top: 14px;
	left: 12px;
}
.top_order .slick-arrow.slick-prev::before {
	transform: rotate(225deg);
	left: 15px;
}
.top_order .slick-arrow.slick-next::before {
	transform: rotate(45deg);
}
.top_order .slick-dots {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	list-style: none;
	line-height: 0;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 20px;
	margin: 0;
	padding: 0;
}
.top_order .slick-dots li {
	margin: 0 5px;
}
.top_order .slick-dots li button {
	background: #9f9f9f;
	border: none;
	border-radius: 50%;
	text-indent: 100%;
	width: 10px;
	height: 10px;
	padding: 0;
	position: relative;
	overflow: hidden;
}
.top_order .slick-dots li.slick-active button {
	background: #f00;
}

/* top_use */
.top_use {
	margin: 42px 0 0;
}
.top_use .use_box_wrap {
	padding: 4px 10px 26px;
}
.top_use .use_box {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	flex-direction: column;
	width: calc(50% - 5px);
	margin: 15px 0 0;
	padding: 0 0 14px;
}
.top_use .use_box h3 {
	background-size: 28px auto;
	font-size: 16px;
	line-height: 1.13;
	min-height: 24px;
	margin: 7px 5px 0 6px;
	padding: 2px 0 0 29px;
	order: 2;
}
.top_use .use_box p {
	line-height: 1.29;
	margin: 5px 7px 0;
	order: 3;
}
.top_use .use_box .image {
	position: static;
	order: 1;
}
.top_use .use_box .image img {
	width: 100%;
}

/* top_news */
.top_news {
	margin-bottom: -45px;
	padding: 0;
}
.ec-newsRole.top_news .ec-newsRole__news {
	margin: 0 12px;
}
.ec-newsRole.top_news .ec-newsRole__newsItem {
	padding: 16px 0 10px;
}
.ec-newsRole.top_news .ec-newsRole__newsDate {
	display: block;
	font-size: 14px;
	min-width: 0;
	min-height: 0;
	margin: 1px 0 3px;
	padding-top: 0;
}
.ec-newsRole .ec-newsRole__newsColumn {
	min-width: 0;
}
.ec-newsRole__newsItem.is_active .ec-newsRole__newsDescription {
	font-size: 14px;
	margin: 7px 0 11px;
}
.ec-newsRole .ec-newsRole__newsClose {
	margin-top: -2px;
}
.ec-newsRole .ec-newsRole__newsItem.is_active .ec-newsRole__newsClose {
	margin-top: 7px;
}
}


@media only screen and (max-width: 320px){

/* top_point */
.top_point {
	padding-top: 72px;
}
.top_point h2 img {
	max-width: 100%;
}
.top_point .point_box h3 img {
	max-width: 100%;
}
}


/* ----------------------------------------
  商品一覧
------------------------------------------- */
.ec-searchnavRole {
	padding-left: 0;
	padding-right: 0;
}
.ec-shelfRole {
	overflow: hidden;
	padding-left: 0;
	padding-right: 0;
}
.ec-topicpath li {
	text-indent: 0;
	padding-left: 0;
}
.ec-topicpath li::before {
	display: none;
}
.ec-shelfGrid__item a:link,
.ec-shelfGrid__item a:visited {
	text-decoration: none;
}
.ec-shelfGrid .ec-shelfGrid__item-image {
	height: auto;
}
.ec-shelfGrid__item .name {
	font-weight: bold;
}
.ec-shelfGrid__item a:link .name,
.ec-shelfGrid__item a:visited .name {
	text-decoration: underline;
}
.ec-shelfGrid__item a:hover .name,
.ec-shelfGrid__item a:active .name {
	text-decoration: none;
}
.ec-shelfGrid__item .description,
.ec-shelfGrid__item .price02-default {
	color: #333;
	font-size: 14px;
}
.ec-shelfGrid__item .form-check {
	font-size: 12px;
}
.ec-shelfGrid__item .ec-radio label {
	margin-right: 0;
}


@media only screen and (max-width: 767px){
.ec-searchnavRole .ec-searchnavRole__infos {
	padding-left: 0;
	padding-right: 0;
}
}

/* ----------------------------------------
  商品詳細
------------------------------------------- */
.ec-productRole {
	padding: 0;
}
.ec-productRole *, .ec-productRole *:before, .ec-productRole *:after{
	outline: none;
}
/* product_overview */
.product_overview {
	display: -ms-flexbox;
	display: flex;
	margin: 32px 0 0;
}

/* product_photo */
.product_photo {
	width: 401px;
}
.product_photo .slick-slider {
	margin-bottom: 15px;
}
.product_photo .ec-sliderItemRole {
	margin: 0;
	padding: 0;
}
/*.product_photo .ec-sliderItemRole img {*/
/*	border: 1px solid #9f9f9f;*/
/*}*/
.product_photo .ec-sliderItemRole .item_nav {
	margin-right: -20px;
}
.product_photo .ec-sliderItemRole .slideThumb {
	margin-bottom: 15px;
}
.product_photo .ec-sliderItemRole .slideThumb img {
	width: 124px;
	border: 1px solid #9f9f9f;
}

/* product_info */
.product_info {
	color: #333;
	width: 409px;
	padding-left: 34px;
}
.product_info .catchcopy {
	font-size: 1.25em;
	font-weight: bold;
	line-height: 1.45;
	margin: -3px 0 14px;
}
.product_info .description {
	line-height: 1.69;
}
.product_info .btn_buyarea {
	margin: 26px -2px 0;
}
.product_info .btn_contact {
	margin: 13px -2px 0;
}
.product_info .more_detail {
	background: #fffce8;
	border: 1px solid #ffa800;
	position: relative;
	margin: 38px 0 0;
	padding: 25px 13px 7px;
}
.product_info .more_detail::before {
	border-top: 1px solid #fffce8;
	content: "";
	position: absolute;
	top: -1px;
	left: 18px;
	right: 18px;
}
.product_info .more_detail dt {
	font-size: 1.13em;
	text-align: center;
	position: absolute;
	top: -16px;
	left: 0;
	right: 0;
	padding: 0 25px;
	line-height: 1.1em;
}
.product_info .more_detail dd ul {
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	-ms-flex-pack: justify;
	justify-content: space-between;
	font-size: 1.25em;
	font-weight: bold;
	text-shadow: 0 2px #fff, 1px 2px #fff, 2px 2px #fff, 2px 1px #fff, 2px 0 #fff, 2px -1px #fff, 2px -2px #fff, 1px -2px #fff, 0 -2px #fff, -1px -2px #fff, -2px -2px #fff, -2px -1px #fff, -2px 0 #fff, -2px 1px #fff, -2px 2px #fff, -1px 2px #fff;
}
.product_info .more_detail dd ul li {
	width: 100%;
	padding: 0;
}
.product_info .more_detail dd ul li::before {
	display: none;
}
.product_info .more_detail dd ul li a {
	background: #fff;
	background: -moz-linear-gradient(top, #fff 0%, #e5e5e5 100%);
	background: -webkit-linear-gradient(top, #fff 0%,#e5e5e5 100%);
	background: linear-gradient(to bottom, #fff 0%,#e5e5e5 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff', endColorstr='#e5e5e5',GradientType=0);
	border: 2px solid #ff8a00;
	border-radius: 5px;
	display: block;
	position: relative;
	padding: 1.25rem;
}
.product_info .more_detail dd ul li a:link,
.product_info .more_detail dd ul li a:visited,
.product_info .more_detail dd ul li a:hover,
.product_info .more_detail dd ul li a:active {
	color: #000;
	text-decoration: none;
}
.product_info .more_detail dd ul li a::before {
	background: #ff8a00;
	border-radius: 11px;
	content: "";
	width: 22px;
	height: 22px;
	position: absolute;
	top: 50%;
	right: 11px;
	margin-top: -10px;
}
.product_info .more_detail dd ul li a::after {
	border-style: solid;
	border-width: 8px 5px 0 5px;
	border-color: #fff transparent transparent transparent;
	content: "";
	width: 0;
	height: 0;
	position: absolute;
	top: 50%;
	right: 17px;
	margin-top: -1px;
}
.product_info .more_detail dd p {
	font-size: 0.88em;
	text-align: center;
}
.product_info .btn_sub {
	border-top: 1px solid #c6c6c6;
	margin: 31px 0 0;
	padding: 13px 0 0;
}
.product_info .btn_sub li {
	margin: 14px 0 0;
	padding: 0;
}
.product_info .btn_sub li::before {
	display: none;
}

/* price_area */
.price_area {
	color: #333;
	cursor: default;
}
.contents .price_area h2 {
	background: transparent;
	border-bottom: 4px solid #ffc600;
	color: #000;
	font-size: 1.38em;
	padding: 0 3px 14px;
}
.price_area table th,
.price_area table td {
	vertical-align: middle;
}
.price_area table th {
	text-align: center;
    padding: 0px 15px;
    font-weight: normal;
}
.price_area table thead th {
	font-size: 1.13em;
}
.price_area table thead th .small {
	font-size: 0.78em;
	font-weight: normal;
	margin-left: 10px;
}
.price_area table thead th .price_notes {
	display: inline-block;
	font-size: 0.78em;
	font-weight: normal;
	line-height: 1.3;
}
.price_area table thead th .price_notes span {
	font-size: 0.78em;
}
.price_area table thead th.delive10,
.price_area table thead th.delive7,
.price_area table thead th.delive3 {
	color: #333;
	font-size: 1em;
	line-height: 1.1;
	width: 325px;/* 3列は215px */
	padding: 7px 15px;
}
.price_area table thead th.delive10 .small,
.price_area table thead th.delive7 .small,
.price_area table thead th.delive3 .small {
	font-size: 0.88em;
	font-weight: bold;
	margin-left: 0;
}
.price_area table thead th.delive10 .date,
.price_area table thead th.delive7 .date,
.price_area table thead th.delive3 .date {
	font-size: 1.25em;
	margin-right: 4px;
}
.price_area table thead th.delive10 {
	background: #e3f8fd;
}
.price_area table thead th.delive7 {
	background: #e3f8fd;
}
.price_area table thead th.delive3 {
	background: #ff99a7;
}
.price_area table td {
	line-height: 1.2;
	width: 50%;
    padding: 0px 15px;
}
.price_area table.two_col td {
	width: auto;
}
.price_area table td.right {
	color: #d80000;
	font-weight: bold;
	font-size: 1em;
}
.price_area table td.right span {
	color: #333;
	font-size: 0.85em;
	font-weight: normal;
	margin-right: 0px;
	display: none;
}
.price_area table tr:nth-child(even) td {
	background: #f4f4f4;
}
.price_area p {
	margin-top: 0;
}
.price_area table + p {
	margin-top: 10px;
}

/* detail_area */
.detail_area {
	border-bottom: 1px solid #c9c9c9;
	color: #333;
	padding: 0 0 64px;
}
.contents .detail_area h2 {
	background: transparent;
	border-bottom: 4px solid #ffc600;
	color: #000;
	font-size: 1.38em;
	padding: 0 3px 14px;
}
.detail_area table {
	line-height: 1.5;
}
.detail_area table td {
	width: 265px;
}
.detail_area table td img {
	width: 48%;
	margin: 5px 0;
}

/* buy_area */
.buy_area {
	background: #ffb600;
	color: #333;
	margin: 62px 0 0;
	padding: 0 29px 33px;
}
.contents .buy_area h2 {
	background: transparent;
	border-bottom: none;
	color: #fff;
	text-align: center;
	text-shadow: 0 3px #000, 1px 3px #000, 2px 3px #000, 2px 2px #000, 3px 2px #000, 3px 1px #000, 3px 0 #000, 3px -1px #000, 3px -2px #000, 2px -2px #000, 2px -3px #000, 1px -3px #000, 0 -3px #000, -1px -3px #000, -2px -3px #000, -2px -2px #000, -3px -2px #000, -3px -1px #000, -3px 0 #000, -3px 1px #000, -3px 2px #000, -2px 2px #000, -2px 3px #000, -1px 3px #000, 3px 3px 0 #000, 4px 4px 0 #000;
	line-height: 71px;
  margin: 0;
	font-size: 1.88em;
	padding: 0;
}
.buy_area .buyarea_inner {
	background: #fff;
	box-shadow: 2px 3px 3px rgba(0,0,0,0.2);
	padding: 43px 30px 39px;
}
.ec-productRole .buy_area .ec-productRole__profile {
	margin-left: 0;
}
.ec-productRole .buy_area .ec-productRole__priceRegular {
	display: none;
	padding: 0;
}
.ec-productRole .buy_area .ec-productRole__price {
	display: none;
}
.ec-productRole .buy_area .ec-productRole__actions {
	padding: 0;
}
.buy_area .form_table {
	border: none;
	border-top: 1px solid #9f9f9f;
	border-bottom: 1px solid #9f9f9f;
	margin: 0;
}
.buy_area .form_table th,
.buy_area .form_table td {
	border: none;
	border-top: 1px solid #9f9f9f;
	border-bottom: 1px solid #9f9f9f;
}
.buy_area .form_table th {
	background: #f6f6f6;
	width: 190px;
}
.buy_area .form_table th .required {
	background: #e20000;
	border-radius: 2px;
	color: #fff;
	font-size: 0.88em;
	float: right;
	line-height: 1.5;
	margin-top: 4px;
	padding: 0 5px;
}
.buy_area .cart_notes {
	background: #fff7c5;
	margin: 24px 0 0;
	padding: 18px 24px;
}
.buy_area .cart_notes p {
	text-indent: -1em;
	line-height: 1.5;
	margin: 0 0 0 1em;
}
.ec-productRole .buy_area .ec-productRole__btn {
	text-align: center;
	width: 100%;
	margin: 31px 0 0;
}
.buy_area .ec-blockBtn--action.add-cart {
	background: url(../img/products/btn_cart.png) 0 0 no-repeat;
	border: none;
	text-indent: 100%;
	position: relative;
	overflow: hidden;
	width: 528px;
	height: 76px;
	margin: 0 auto;
	padding: 0;
}

/* ec-productRole__btn */
.ec-productRole .ec-productRole__btn {
	width: 100%;
	min-width: 238px;
	margin: 30px 0 0;
}
.ec-inlineBtn--action:link,
.ec-inlineBtn--action:visited,
.ec-inlineBtn--action:hover,
.ec-inlineBtn--action:active,
.ec-blockBtn--action:link,
.ec-blockBtn--action:visited,
.ec-blockBtn--action:hover,
.ec-blockBtn--action:active,
.ec-blockBtn--cancel:link,
.ec-blockBtn--cancel:visited,
.ec-blockBtn--cancel:hover,
.ec-blockBtn--cancel:active {
	color: #fff;
	text-decoration: none;
}

.bbanner a{
	display: contents;
	width: 48%;
}

@media only screen and (max-width: 767px){
/* product_overview */
.detail_area table td img {
	width: 100%;
	margin: 5px 0;
}


.bbanner a{
	display: block;
	width: 100%;
}


.product_overview {
	display: block;
	margin: 20px 0 0;
}

/* product_photo */
.product_photo {
	width: auto;
}
.product_photo .slick-slider {
	margin-bottom: 15px;
}
.product_photo .ec-sliderItemRole {
	margin: 0;
	padding: 0;
}
/*.product_photo .ec-sliderItemRole img {*/
/*	border: 1px solid #9f9f9f;*/
/*}*/
.product_photo .ec-sliderItemRole .item_nav {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 0 -7px;
}
.product_photo .ec-sliderItemRole .slideThumb {
	width: 20%;
	margin-bottom: 13px;
	padding: 0 7px;	
}
.product_photo .ec-sliderItemRole .slideThumb img {
	width: 100%;
}

/* product_info */
.product_info {
	width: auto;
	margin: 20px 0 0;
	padding-left: 0;
}
.product_info .more_detail dt {
	letter-spacing: -1px;
}
.product_info .more_detail dd ul li {
	width:100%;
}
.product_info .more_detail dd ul li a {
	padding: 19px 13px 18px;
}

/* price_area */
.contents .price_area h2 {
	font-size: 24px;
}
.price_area table thead th {
	font-size: 18px;
	line-height: 1.2;
}
.price_area table thead th .small {
	display: block;
	font-size: 14px;
	margin-left: 0;
}
.price_area table thead th .price_notes {
	font-size: 14px;
	margin-top: 0em;
}
.price_area table thead th.delive10,
.price_area table thead th.delive7,
.price_area table thead th.delive3 {
	font-size: 14px;
	line-height: 1.3;
	width: auto;
	padding: 7px 10px;
}
.price_area table thead th.delive10 .small,
.price_area table thead th.delive7 .small,
.price_area table thead th.delive3 .small {
	display: inline;
	font-size: 14px;
}
.price_area table thead th.delive10 .date,
.price_area table thead th.delive7 .date,
.price_area table thead th.delive3 .date {
	font-size: 14px;
	margin-right: 0;
}
.price_area table tbody th {
	white-space: nowrap;
	width: 5.5em;
}
.price_area table td {
	line-height: 1.2;
	width: auto;
}
.price_area table.two_col td {
	width: auto;
}
.price_area table td.right {
	font-weight: bold;
}
.price_area table td.right span {
	font-size: 14px;
}

/* detail_area */
.detail_area {
	padding: 0 0 50px;
}
.contents .detail_area h2 {
	font-size: 24px;
}
.detail_area table {
	border-bottom: none;
}
.detail_area table th,
.detail_area table td {
	border: none;
	border-bottom: 1px solid #6e6e6e;
	display: block;
}
.detail_area table td {
	width: auto;
}

/* buy_area */
.buy_area {
	margin: 53px 0 0;
	padding: 0 11px 25px;
}
.contents .buy_area h2 {
	font-size: 30px;
}
.buy_area .buyarea_inner {
	padding: 15px 13px 30px;
}
.buy_area .form_table {
	border-top: none;
}
.buy_area .form_table th,
.buy_area .form_table td {
	display: block;
	border-bottom: none;
}
.buy_area .form_table th {
	width: auto;
}
.buy_area .form_table td {
	border-top: none;
	padding: 14px 10px 7px;
}
.buy_area .cart_notes {
	padding: 18px 14px;
}
.ec-productRole .buy_area .ec-productRole__btn {
	margin: 31px -2px 0;
}
.buy_area .ec-blockBtn--action.add-cart {
	background: url(../img/products/btn_cart_sp.png) 0 0 / 100% auto no-repeat;
	width: 100%;
	height: 0;
	padding: 32.02614% 0 0;
}
}

@media only screen and (max-width: 320px){

/* product_info */
.product_info .more_detail dt {
	font-size: 15px;
}
}


/* ----------------------------------------
  平竹うちわ
------------------------------------------- */

/* list_hiratake */
.contents .list_hiratake {
	font-size: 0.88em;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-left: -15px;
	margin-right: -15px;
}
.contents .list_hiratake li {
	box-sizing: border-box;
	width: 168px;
	margin-bottom: 15px;
	padding: 0 15px;
}
.contents .list_hiratake.list_hiratake_large li,
.contents .list_hiratake.list_hiratake_kosode li {
	width: 210px;
}
.list_hiratake li::before {
	display: none;
}
.list_hiratake li img {
	display: block;
	margin: 0 auto 3px;
}
.list_hiratake.mini_koban li img {
	width:50%;
}
.list_hiratake li div {
	text-indent: -2.7em;
	margin-left: 2.7em;
}
.list_hiratake li .number {
	background: #fd8d20;
	color: #fff;
	display: inline-block;
	text-align: center;
	text-indent: 0;
	font-weight: bold;
	width: 2.3em;
	margin-right: 0.4em;
}

/* insert_name */
.contents .insert_name h2 {
	border-bottom: none;
	margin-top: 0;
	padding: 0;
}
.insert_name h2::after {
	display: none;
}
.insert_name .grid-9 {
	width: 576px;
}
.insert_name .grid-3 {
	width: 162px;
}
.insert_name span {
	display: inline-block;
	width: 16px;
	height: 16px;
	vertical-align: middle;
	margin: -2px 0 0 3px;
}
.insert_name span.black {
	background: #231815;
}
.insert_name span.red {
	background: #e50012;
}
.insert_name span.blue {
	background: #006cac;
}
.insert_name span.navy {
	background: #08287e;
}
.insert_name span.green {
	background: #009844;
}


@media only screen and (max-width: 767px){
/* list_hiratake */
.contents .list_hiratake {
	margin-left: -10px;
	margin-right: -10px;
}
.contents .list_hiratake li {
	width: 33.3333%;
	padding: 0 10px;
}
.contents .list_hiratake.list_hiratake_large li,
.contents .list_hiratake.list_hiratake_kosode li {
	width: 50%;
}

/* insert_name */
.insert_name .layout-frame {
	margin: 0;
}
.insert_name .grid-9,
.insert_name .grid-3 {
	float: none;
	width: 100%;
	margin: 0;
}
.insert_name .grid-3 p {
	text-align: center;
}
}


/* ----------------------------------------
  データ入稿方法
------------------------------------------- */

@media only screen and (max-width: 767px){
/* upload_layout */
.layout-frame.upload_layout {
	margin: 0;
}
.layout-frame.upload_layout .layout-unit {
	margin: 0;
}
.upload_layout_01 .layout-unit {
	float: none;
}
.upload_layout_01 .layout-unit.grid-4 p {
	width: 50%;
	margin-left: auto;
	margin-right: auto;
}
.upload_layout .grid-4 {
	text-align: center;
	width: 50%;
}
.upload_layout_02 .grid-4:first-child {
	padding-right: 5px;
}
.upload_layout_02 .grid-4:nth-child(2) {
	padding-left: 5px;
}
.upload_layout_02 .grid-4:nth-child(3) {
	text-align: left;
	width: auto;
}
}


/* ----------------------------------------
  うちわ骨ラインナップ
------------------------------------------- */

/* frame_color */
.contents .frame_color {
	font-size: 0.88em;
	text-align: center;
	margin-left: -5px;
	margin-right: -5px;
}
.frame_color::after {
	display: block;
	clear: both;
	content: "";
}
.contents .frame_color li {
	box-sizing: border-box;
	float: left;
	width: 205px;
	margin-bottom: 15px;
	padding: 0 5px;
}
.contents .frame_color li.main_color {
	width: 260px;
}
.contents .frame_color li::before {
	display: none;
}


@media only screen and (max-width: 767px){
/* frame_color */
.contents .frame_color li {
	width: 33.3333%;
}
.contents .frame_color li.main_color {
	width: 50%;
}
}


/* ----------------------------------------
  ご注文の流れ
------------------------------------------- */

/* flow_box_wrap */
.flow_box_wrap .flow_box {
	background: #fff;
	border: 2px solid #000;
	border-radius: 5px;
	box-shadow: 0 3px 4px rgba(0,0,0,0.2);
	position: relative;
	margin: 30px 0 0;
	padding: 13px 0 25px;
}
.flow_box_wrap .flow_box h2 {
	background: url(../img/guide/flow/bg_flow_001.png) 0 0 no-repeat;
	border-bottom: none;
	color: #fff;
	display: block;
	font-family: Roboto, "ヒラギノ角ゴ StdN W8", "Hiragino Kaku Gothic StdN", "游ゴシック", YuGothic, "Yu Gothic", Arial, "メイリオ", Meiryo, sans-serif;
	font-size: 20px;
	font-weight: bold;
	text-shadow: 0 2px #000, 1px 2px #000, 2px 2px #000, 2px 1px #000, 2px 0 #000, 2px -1px #000, 2px -2px #000, 1px -2px #000, 0 -2px #000, -1px -2px #000, -2px -2px #000, -2px -1px #000, -2px 0 #000, -2px 1px #000, -2px 2px #000, -1px 2px #000, 3px 3px 2px rgba(0,0,0,0.5);
	line-height: 37px;
	width: 827px;
	margin: 0 0 20px -8px;
	padding: 0 0 12px;
}
.flow_box_wrap .flow_box h2 img {
	width: 28px;
	vertical-align: top;
	margin: 5px 5px 0 13px;
}
.flow_box_wrap .flow_box h2::after {
	display: none;
}
.flow_box_wrap .flow_box h2 + div {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.flow_box_wrap .flow_box .text {
	width: 500px;
	margin: -30px 0 0;
	padding: 0 15px 0 0;
}
.flow_box_wrap .flow_box .image {
	text-align: center;
	width: 300px;
	padding: 0 15px;
}


@media only screen and (max-width: 767px){
/* flow_box_wrap */
.flow_box_wrap .flow_box h2 {
	background-position: 100% 0;
	width: auto;
	position: relative;
	margin: 0 -12px 20px -8px;
	padding: 0;
}
.flow_box_wrap .flow_box h2::before {
	border-style: solid;
	border-width: 0 6px 8px 0;
	border-color: transparent #460000 transparent transparent;
	content: "";
	width: 0;
	height: 0;
	position: absolute;
	left: 0;
	bottom: -8px;
}
.flow_box_wrap .flow_box h2 + div {
	-ms-flex-direction: column;
	flex-direction: column;
}
.flow_box_wrap .flow_box .text {
	order: 1;
	width: auto;
	margin: -20px 0 0;
	padding: 0 15px;
}
.flow_box_wrap .flow_box .image {
	order: 2;
	width: auto;
	margin: 20px 0 0;
	padding: 0 15px;
}
}


/* ----------------------------------------
  納期・送料について
------------------------------------------- */

/* delive_postage */
.delive_postage ul ul {
	margin-left: 1em;
}
.delive_postage ul ul li::before {
	background: #333;
	border-radius: 0;
	width: 3px;
	height: 3px;
	top: 0.8em;
}
.delive_postage h3 {
	margin-top: 30px;
}
.delive_postage h3 .small {
	color: #000;
	font-weight: bold;
}
.delive_postage h3 + dl dt {
	text-align: center;
	margin: 0 0 5px;
}
.delive_postage h3 + dl ul li {
	color: #fff;
	text-align: center;
	margin: 0;
	padding: 5px 0;
}
.delive_postage h3 + dl ul li.usage1 {
	background: #17a7ce;
}
.delive_postage h3 + dl ul li.usage2 {
	background: #ff9700;
}
.delive_postage h3 + dl ul li.usage3 {
	background: #4a910d;
}
.delive_postage h3 + dl ul li.usage4 {
	background: #851fb5;
}
.delive_postage h3 + dl ul li::before {
	display: none;
}
.delive_postage .rice {
	margin-top: 10px;
}
.delive_postage table th,
.delive_postage table td {
	background: transparent;
	border: none;
	font-weight: normal;
	padding: 5px 10px;
}
.delive_postage table tr:nth-child(odd) th,
.delive_postage table tr:nth-child(odd) td {
	background: #fff;
}
.delive_postage table tr:nth-child(even) th,
.delive_postage table tr:nth-child(even) td {
	background: #f4f4f4;
}

/* delive_delive */
.delive_delive ul ul {
	margin-left: 1em;
}
.delive_delive ul ul li::before {
	background: #333;
	border-radius: 0;
	width: 3px;
	height: 3px;
	top: 0.8em;
}
.delive_delive h3 {
	margin-top: 30px;
}
.delive_delive h3 + dl dt {
	text-align: center;
	margin: 0 0 5px;
}
.delive_delive h3 + dl table {
	border: none;
	margin: 0;
}
.delive_delive h3 + dl table th,
.delive_delive h3 + dl table td {
	border: none;
	vertical-align: middle;
	padding: 5px 10px;
}
.delive_delive h3 + dl table th {
	color: #fff;
	text-align: center;
	white-space: nowrap;
}
.delive_delive h3 + dl table td {
}
.delive_delive h3 + dl table tr.usage1 th {
	background: #4a910d;
}
.delive_delive h3 + dl table tr.usage1 td {
	background: #b7d39e;
}
.delive_delive h3 + dl table tr.usage2 th {
	background: #ff9700;
}
.delive_delive h3 + dl table tr.usage2 td {
	background: #ffd599;
}
.delive_delive h3 + dl table tr.usage3 th {
	background: #851fb5;
}
.delive_delive h3 + dl table tr.usage3 td {
	background: #cea5e1;
}
.delive_delive h3 + dl table tr.usage4 th {
	background: #17a7ce;
}
.delive_delive h3 + dl table tr.usage4 td {
	background: #a2dceb;
}
.delive_delive .rice {
	margin-top: 10px;
}


/* ----------------------------------------
  よくあるご質問
------------------------------------------- */
.list_faq dt,
.list_faq dd {
	position: relative;
	min-height: 40px;
	padding-left: 60px;
}
.list_faq dt {
	margin: 30px 0 0;
}
.list_faq dt::before {
	background: #fd8d20;
	color: #fff;
	content: "Q";
	text-align: center;
	line-height: 40px;
	width: 40px;
	height: 40px;
	position: absolute;
	top: 0;
	left: 0;
}
.list_faq dd {
	margin: 15px 0 0;
}
.list_faq dd::before {
	background: #fff;
	border: 2px solid #fd8d20;
	color: #fd8d20;
	content: "A";
	font-weight: bold;
	text-align: center;
	line-height: 36px;
	width: 40px;
	height: 40px;
	position: absolute;
	top: 0;
	left: 0;
}


/* ----------------------------------------
  新規会員登録・ログイン
------------------------------------------- */
.login_wrap {
	display: -ms-flexbox;
	display: flex;
	margin-top: 30px;
}
.login_wrap .layout-unit {
	background: #fffce8;
	border: 1px solid #ffa800;
	float: none;
}
.login_wrap .ec-off2Grid .ec-off2Grid__cell {
	width: 100%;
	margin: 0;
}
.login_wrap .ec-login {
	background: transparent;
	margin: 0;
	padding: 30px 25px 40px;
}
.login_wrap .ec-login h2 {
	border-bottom: none;
	margin: 50px 0 30px;
	padding: 0;
}
.login_wrap .ec-login h2:first-child {
	margin-top: 0;
}

/* ec-registerRole */
.ec-registerRole {
	padding: 0;
}


@media only screen and (max-width: 767px){
.login_wrap {
	flex-flow: column;
}
.login_wrap .layout-unit:nth-child(2) {
	margin-top: 20px;
}
}


/* ----------------------------------------
  ショッピングカート
------------------------------------------- */
.ec-layoutRole__mainWithColumn .ec-role {
	padding-left: 0;
	padding-right: 0;
}
.ec-cartRole {
	margin-top: 30px;
	padding-left: 0;
	padding-right: 0;
}
.ec-cartRole .ec-cartRole__cart {
	margin: 0;
}
.ec-cartRole .ec-cartRole__actions {
	margin-right: 0;
}
.ec-cartHeader li {
	text-indent: 0;
}
.ec-cartHeader li::before {
	display: none;
}
.ec-orderRole {
	padding-left: 0;
	padding-right: 0;
}
.ec-orderRole img {
	width: auto;
}
.ec-cartRole .ec-cartRole__total .ec-cartRole__totalAmount .x-small {
	display: block;
	font-size: 14px;
}


@media only screen and (max-width: 320px){
.ec-modal-box .ec-role .ec-inlineBtn--cancel {
	display: table;
	margin: 0 auto;
}
.ec-modal-box .ec-role .ec-inlineBtn--action {
	display: table;
	margin: 10px auto 0;
}
}


/* ----------------------------------------
  マイページ
------------------------------------------- */
.ec-mypageRole {
	padding-left: 0;
	padding-right: 0;
}
.ec-mypageRole .ec-pageHeader h1 {
	margin-top: 0;
	padding: 19px 20px 15px;
}
.ec-mypageRole .ec-navlistRole .ec-navlistRole__item {
	display: flex;
}
.ec-mypageRole .ec-navlistRole .ec-navlistRole__item a {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 14px;
	height: 100%;
}


@media only screen and (max-width: 767px){
.ec-mypageRole .ec-pageHeader h1 {
	margin-top: 40px;
}
}


/* ----------------------------------------
  お問い合わせ
------------------------------------------- */
.ec-contactRole {
	padding-left: 0;
	padding-right: 0;
}


/* ----------------------------------------
  カート共通
------------------------------------------- */
.ec-zipInput input {
	max-width: 9em;
}
.ec-telInput input {
	max-width: 11em;
}


/* ----------------------------------------
  404
------------------------------------------- */
#notfound #header .cart {
	display: none;
}
#notfound #header .login {
	right: 0;
}

h2.covid{
    font-size: 150%;
    font-weight: 700;
}

.covid{
    text-align: center;
    border: solid;
    border-color: #FF0000;
    background-color:#f9ef70;
    font-family: "MS Pゴシック";
    margin: 5px 0 15px 0;
}
a.caution{
    color:black;
    text-decoration: none;
}
a.caution:hover{
    color:gray;
    text-decoration: none;
}
a.caution:visited{
    color:black;
    text-decoration: none;
}
/*TOPバナー*/
.top_banner .inner.bnr_contents{
    padding:10px 20px;
}
.top_banner .inner .bnr_list{
    width:25%;
    margin:0;
    position: relative;
    height: auto;
    padding:10px;
}

.top_banner .inner .bnr_list {
    width: 33%;
}

@media only screen and (max-width: 767px){
    #header h1 img {
        margin-top: 16px;
    }
    .top_banner .inner .bnr_list{
        width:100%;
    }
}
.top_banner .inner .bnr_list:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.top_banner .inner .bnr_list img{
    position: absolute;
    top:10px;
    left:10px;
    width: calc(100% - 20px);
    height: calc(100% - 20px);
}
.top_banner .inner .bnr_list img.sold_img{
    z-index: 200;
}
.top_banner .inner .bnr_list .large_img{
    width: calc((100% - 20px)*1.026);
    height: calc(100% - 20px);
}
.top_banner .inner .bnr_list .paper_img{
    width: calc((100% - 20px)*1.048);
    height: calc((100% - 20px)*1.012);
    top:calc(10px - (100% - 20px)*0.012);
}
.top_banner .inner .bnr_list .bnr_base{
    z-index: 100;
}
.top_banner .inner .bnr_list .defalt_base{
    display: block;
}
.top_banner .inner .bnr_list .hover_base{
    display: none;
}
.top_banner .inner .bnr_list .bnr_img{
    z-index: 110;
}
.top_banner .inner .bnr_list .bnr_text{
    z-index: 120;
}
.top_banner .inner .bnr_list .regular_pop{
    width: 40%;
    height: 40%;
    top: -20px;
    left: calc(60% + 10px);
    z-index: 130;
}
.top_banner .inner .bnr_list .antibacterial_pop{
    width: 50%;
    height: 50%;
    top: -10px;
    left: calc(50% + 10px);
    z-index: 130;
}
.news_bnr{
    margin:0;
    padding:0px 30px 10px 30px;
}
.news_bnr img{
    margin:0;
    padding:0;
    width:100%;
}
.news_bnr img.hover_bnr{
    display: none;
}
.template_attention{
    font-size: 13px;
    color: red;
    font-weight: bold;
    list-style-type: none;
    padding:5px;
}