@charset "UTF-8";

/* ==========================================================================
   .main-content
========================================================================== */

#page-content {
	margin-top: 23px;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) #page-content {
		margin-top: 10px;
	}
}

#page-content > .container {
	width: auto;
	padding-left: 0;
	padding-right: 0;
}

.main-content.wide {
	width: 1010px;
	margin: 15px auto 0;
	padding-left: 15px;
	padding-right: 15px;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .main-content.wide {
		width: auto;
		margin-top: 8px;
		padding-right: 3.125%;
		padding-left: 3.125%;
	}
}

.main-content section {
	margin: 0;
	padding: 0;
}

/* ==========================================================================
   .main-visual
========================================================================== */
.main-visual_wrap {
	overflow: hidden;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .main-visual_wrap {
		padding-right: 3.125%;
		padding-left: 3.125%;
	}
}

.main-visual {
	width: 735px;
	margin: 0 auto;
	padding-bottom: 41px;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .main-visual {
		width: auto;
		padding-bottom: 0;
	}
}

.main-visual_inner {
	position: relative;
	margin: 0 -765px;
	width: 2265px;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .main-visual_inner {
		margin: 0;
		width: auto;
	}
}

.main-visual_inner::before,
.main-visual_inner::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	width: 745px;
	height: 100%;
	z-index: 1;
}
.main-visual_inner::before {
	left: 0;
}
.main-visual_inner::after {
	right: 0;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .main-visual_inner::before,
	body:not(.non-responsive) .main-visual_inner::after {
		display: none;
	}
}

.main-visual_item {
	list-style: none;
	width: 755px;
	height: 320px;
	margin: 0 auto;
	padding: 0 10px;
	transition: opacity 1s ease;
}
.main-visual_item.slick-active {
	opacity: .4;
}
.main-visual_item.slick-active.slick-center {
	opacity: 1;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .main-visual_item {
		width: auto;
		height: auto;
		padding: 0;
	}
}

.main-visual_item a {
	position: relative;
	display: block;
	height: 100%;
	transition: opacity .2s ease;
}
.main-visual_item a:hover,
.main-visual_item a:active {
	opacity: .7;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .main-visual_item a {
		height: auto;
	}
}

.main-visual_item .main-visual_item_inner {
	position: relative;
	display: block;
	height: 100%;
	border: 1px solid #ccc;
	border-radius: 3px;
	box-sizing: border-box;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .main-visual_item .main-visual_item_inner {
		height: auto;
		padding-top: 42.76%;
		border-radius: 1px;
	}
}

.main-visual_item img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	max-width: 100%;
	max-height: 100%;
	margin: auto;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .main-visual_item img {
		max-width: 99%;
		max-height: 98%;
	}
}

/* Slider Slick Dom Style */
.slick-dots {
	position: absolute;
	left: 0;
	right: 0;
	bottom: -41px;
	font-size: 0;
	width: 735px;
	margin: 0 auto;
	padding: 15px 0;
	text-align: center;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .slick-dots {
		position: static;
		width: auto;
		padding: 8px 0 0;
	}
}

.slick-dots > li {
	display: inline-block;
	margin: 0 0 0 8px;
}
.slick-dots > li:first-child {
	margin-left: 0;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .slick-dots > li {
		display: inline-block;
		margin-left: 18px;
	}
	body:not(.non-responsive) .slick-dots > li:first-child {
		margin-left: 0;
	}
}

.slick-dots > li > button {
	width: 11px;
	height: 11px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	text-indent: 200%;
	white-space: nowrap;
	overflow: hidden;
	background-color: #b0b0b0;
	transition: background-color .2s ease;
	outline: none;
}
.slick-dots > li > button:hover,
.slick-dots > li > button:active,
.slick-dots > li.is-current > button {
	background-color: #ce003f;
}

.slick-prev,
.slick-next {
	position: absolute;
	top: 0;
	bottom: 0;
	width: 29px;
	height: 28px;
	margin: auto;
	padding: 0;
	border: none;
	background: no-repeat center center;
	background-size: 100% 100%;
	text-indent: 200%;
	white-space: nowrap;
	overflow: hidden;
	z-index: 2;
	transition: opacity .2s ease;
	outline: none;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .slick-prev,
	body:not(.non-responsive) .slick-next {
		display: none;
	}
}

.slick-prev {
	left: 747px;
	background-image: url(/img/mainvisual_bg01.png);
}
.slick-prev:hover,
.slick-prev:active {
	background-image: url(/img/mainvisual_bg01_on.png);
}
.slick-next {
	right: 747px;
	background-image: url(/img/mainvisual_bg02.png);
}
.slick-next:hover,
.slick-next:active {
	background-image: url(/img/mainvisual_bg02_on.png);
}

/* Slider Slick CoreStyles */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    /* height: 100%; */
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}


/* ==========================================================================
   .brands-list
========================================================================== */

.brands-list {
	margin-bottom: 10px !important;
}
.brands-list:before,
.brands-list:after {
	display: table;
	content: " ";
}
.brands-list:after {
	clear: both;
}

.brands-list h2 {
	float: left;
	width: 169px;
	margin: 0;
	padding: 11px 14px 9px 18px;
	border-top-left-radius: 3px;
	border-bottom-left-radius: 3px;
	background: url('/img/bg_brands-list.gif') no-repeat left center;
	color: #fff;
	font-size: 1.4em;
	font-weight: bold;
	line-height: 1;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .brands-list h2 {
		float: none;
		width: auto;
		margin-bottom: 10px;
		border-top-right-radius: 3px;
		border-bottom-right-radius: 3px;
		background-color: #ff909e;
		background-image: none;
		text-align: center;
	}
}

.brands-list ul {
	float: left;
	margin: 0;
	padding: 0;
	text-align: center;
}
.brands-list ul:before,
.brands-list ul:after {
	display: table;
	content: " ";
}
.brands-list ul:after {
	clear: both;
}

.brands-list ul li {
	float: left;
	list-style: none;
	margin: 0;
	padding: 0 1px 0 0;
	background: url('/common/img/bg_border-dotted-y.png') repeat-y right center;
	line-height: 1.2;
}

.brands-list ul li a {
	display: block;
}

@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .brands-list ul {
		width: 100%;
	}

	body:not(.non-responsive) .brands-list ul li {
		width: 50%;
		margin-bottom: 10px;
	}
	body:not(.non-responsive) .brands-list ul li:nth-child(2n) {
		background-image: none;
	}
	body:not(.non-responsive) .brands-list ul li:nth-child(2n+1) {
		clear: both;
	}
	body:not(.non-responsive) .brands-list ul li:nth-child(5),
	body:not(.non-responsive) .brands-list ul li:nth-child(6) {
		margin-bottom: 0;
	}

	body:not(.non-responsive) .brands-list ul li a {
		margin-right: 4%;
		margin-left: 4%;
	}

	body:not(.non-responsive) .brands-list ul li img {
		width: 92%;
		height: auto;
	}
}

/* ==========================================================================
   .product-search
========================================================================== */

.product-search {
	margin-bottom: 25px !important;
}

@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .product-search {
		margin-bottom: 10px !important;
	}
}

.product-search .btn-search {
	width: 100%;
	padding: 10px 10px 8px 10px;
	background-color: #ffecef;
	color: #333;
	font-size: 0.744em;
	line-height: 1.4;
	text-shadow: 0 0 0 rgba(0,0,0,.5);
}

.product-search .btn-search:before {
	display: inline-block;
	content: "";
	width: 20px;
	height: 20px;
	margin-top: -1px;
	margin-right: .4em;
	background: url('/common/img/icon_arrow01-red-large.png') no-repeat left center;
	vertical-align: middle;
}
.product-search .btn-search:hover,
.product-search .btn-search:focus {
	background-color: #ffd8e0 !important;
}

/* ==========================================================================
   .information
========================================================================== */

.information {
	margin-top: -15px !important;
	margin-bottom: 10px !important;
}

.information .information-inner {
	padding: 2px;
	border: 1px solid #ce003f;
	border-radius: 3px;
	behavior: url('/common/js/vendor/PIE.htc');
}
.information .information-inner:before,
.information .information-inner:after {
	display: table;
	content: " ";
}
.information .information-inner:after {
	clear: both;
}

.information .information-inner h2 {
	display: inline-block;
	float: left;
	width: 149px;
	margin: 0 8px 0 0;
	padding: 11px 7px 10px 36px;
	background: #e8e8e8 url('/common/img/icon_information.png') no-repeat 7px center;
	color: #c00;
	font-size: 1.4em;
	font-weight: bold;
	vertical-align: middle;
}

.information .information-inner .items-list {
	float: left;
	padding: 0 7px 0 0;
}

.information .information-inner .items-list .item {
	width: 810px;
	margin: 12px 0 6px 0;
}
.information .information-inner .items-list .item:before,
.information .information-inner .items-list .item:after {
	display: table;
	content: " ";
}
.information .information-inner .items-list .item:after {
	clear: both;
}

.information .information-inner .items-list .item h2 {
	float: left;
	width: 90px;
	margin: 0;
	padding: 0 0 0 11px;
	background: url('/common/img/icon_arrow03-red.png') no-repeat left center;
	color: #333;
	font-size: 1.2em;
	font-weight: normal;
}

.information .information-inner .items-list .item p {
	float: left;
	width: 720px;
	margin: -0.2em 0 0 0;
	color: #c00;
	font-size: 1.3em;
}
.msp .information .information-inner .items-list .item p {
	margin: -0.3em 0 0 0;
}

.information .information-inner .items-list .item p a {
	color: #c00;
	text-decoration: underline;
}
.information .information-inner .items-list .item p a:hover {
	color: #eb9999;
}

@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .information {
		margin-top: 10px !important;
	}

	body:not(.non-responsive) .information .information-inner h2 {
		float: none;
		width: 100%;
	}

	body:not(.non-responsive) .information .information-inner .items-list {
		float: none;
		padding: 0 10px;
	}

	body:not(.non-responsive) .information .information-inner .items-list .item {
		width: 100%;
		margin: 12px 0 6px 0;
	}

	body:not(.non-responsive) .information .information-inner .items-list .item h2 {
		float: none;
		width: 100%;
		margin-bottom: 5px;
		padding: 0;
		background: none;
	}

	body:not(.non-responsive) .information .information-inner .items-list .item p {
		float: none;
		width: 100%;
		margin: 0;
		padding: 0 0 0 11px;
		background: url('/common/img/icon_arrow03-red.png') no-repeat left 4px;
	}
}

/* ==========================================================================
   .top-content
========================================================================== */

.top-content {
	margin-bottom: 20px;
}
.top-content.primary {
	margin-bottom: 15px;
}
.top-content.secondary {
	margin-top: 15px;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .top-content.primary {
		margin-bottom: 10px;
	}
	body:not(.non-responsive) .top-content.secondary {
		margin-top: 10px;
	}
}
.top-content:before,
.top-content:after {
	display: table;
	content: " ";
}
.top-content:after {
	clear: both;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .top-content {
		margin-bottom: 10px;
	}
}

@media only screen and (max-width: 640px) {
	body:not(.non-responsive) #page-content .content-wrap {
		margin-bottom: 10px;
		padding: 3%;
		border: 1px solid #ccc;
		border-radius: 3px;
		background: none;
	}
}

/* .section-title */
.top-content .section-title {
	margin-right: 0;
	margin-bottom: 17px;
	margin-left: 0;
}

.top-content .section-title h2 {
	margin: 0;
	padding: 0;
	border: none;
}

.top-content .section-title h2 span:not(.link) {
	display: block;
	width: 100%;
	padding: 8px 10px 5px 28px;
	border: none;
	border-radius: 3px;
	behavior: url('/common/js/vendor/PIE.htc');
	background: #ce003f url("/common/img/icon_point01-white-small.png") no-repeat 10px center;
	color: #fff;
	font-size: .889em;
	text-shadow: 0 0 0 rgba(255,255,255,.5);
}
.msp .top-content .section-title h2 span:not(.link) {
	font-size: 16px;
}
.main-content .section-title h2:before {
	display: none;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .top-content .section-title h2 span:not(.link) {
		padding: 7px 10px 6px 28px;
	}
}

.top-content .section-title h2 a {
	display: block;
	width: 100%;
	padding: 8px 10px 5px 28px;
	border: none;
	border-radius: 3px;
	behavior: url('/common/js/vendor/PIE.htc');
	background: #ce003f url("/common/img/icon_point01-white-small.png") no-repeat 10px center;
	color: #fff;
	font-size: .889em;
	text-decoration: none;
	text-shadow: 0 0 0 rgba(255,255,255,.5);
}
.msp .top-content .section-title h2 a {
	padding: 7px 10px 6px 28px;
	font-size: 16px;
}
.top-content .section-title h2 a:hover,
.top-content .section-title h2 a:focus {
	background-color: #b20032;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .top-content .section-title h2 a {
		padding: 7px 10px 6px 28px;
	}
}

.top-content .section-title h2 a span.link {
	float: right;
	padding: 3px 0 2px 11px;
	background: url("/common/img/icon_arrow03-white.png") no-repeat left center;
	color: #fff;
	font-size: .75em;
	text-decoration: none;
}
.msp .top-content .section-title h2 a span.link {
	padding: 2px 0 3px 11px;
	font-size: 12px;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .top-content .section-title h2 a span.link {
		padding-top: 2px;
	}
}

/* .hair-color-advice */
.hair-color-advice {
	float: left;
	width: 690px;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .hair-color-advice {
		float: none;
		width: 100%;
		margin-right: 0;
		margin-bottom: 0 !important;
	}
}

.hair-color-advice p.lead {
	margin-bottom: 13px;
	font-size: 1.4em;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .hair-color-advice p.lead {
		margin-bottom: 5px;
	}
}

.hair-color-advice .row {
	margin: 0;
}

.hair-color-advice .row .xs-category {
	margin-bottom: 10px;
	background: url('/common/img/bg_border-dotted-x.png') repeat-x left bottom;
}
.hair-color-advice .row .xs-category:before,
.hair-color-advice .row .xs-category:after {
	display: table;
	content: " ";
}
.hair-color-advice .row .xs-category:after {
	clear: both;
}

.hair-color-advice .row .col {
	float: left;
	width: 210px;
	margin-right: 10px;
}
.hair-color-advice .row .col:last-child {
	margin-right: 0;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .hair-color-advice .row .col {
		width: 100%;
	}
}

.hair-color-advice .row h3 {
	margin: 0 0 20px 0;
	font-size: 1.4em;
}

.hair-color-advice .row h3 a {
	display: block;
	padding: 11px;
	border-radius: 3px;
	behavior: url('/common/js/vendor/PIE.htc');
	background-color: #eee;
	color: #333;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
}
.msp .hair-color-advice .row h3 a {
	padding: 12px 11px 10px 11px;
}
.hair-color-advice .row h3 a:before {
	display: inline-block;
	content: "";
	width: 28px;
	height: 28px;
	margin-right: 6px;
	vertical-align: -.65em;
}
.hair-color-advice .row h3.mechanism a:before {
	background: url('/img/icon_mechanism.png') no-repeat left center;
}
.hair-color-advice .row h3.point a:before {
	background: url('/img/icon_point.png') no-repeat left center;
}
.hair-color-advice .row h3.aftercare a:before {
	background: url('/img/icon_aftercare.png') no-repeat left center;
}
.hair-color-advice .row h3 a:hover {
	color: #333;
	text-decoration: none;
}
.hair-color-advice .row h3.mechanism a:hover {
	background-color: #c8e6e4;
}
.hair-color-advice .row h3.point a:hover {
	background-color: #ffe490;
}
.hair-color-advice .row h3.aftercare a:hover {
	background-color: #ffd9df;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .hair-color-advice .row h3 {
		float: left;
		width: 32.1428%;
		margin: 0 1.7858% 10px 0;
		line-height: 1.2;
	}
	body:not(.non-responsive) .hair-color-advice .row h3:last-child {
		margin-right: 0;
	}

	body:not(.non-responsive) .hair-color-advice .row h3 a {
		padding: 9px 11px 6px 11px;
	}
	body:not(.non-responsive) .hair-color-advice .row h3.mechanism a {
		padding-right: 5px;
		padding-left: 5px;
	}
	body:not(.non-responsive) .hair-color-advice .row h3 a:before {
		width: 100%;
		margin: 0 0 4px 0;
		background-position: center top !important;
		vertical-align: top;
	}
}

.hair-color-advice .row .col .item {
	margin-bottom: 16px;
}
.lt-ie9 .hair-color-advice .row .col .item {
	margin-bottom: 4px;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .hair-color-advice .row .col .item {
		margin-bottom: 10px;
		padding-bottom: 6px;
		background: url('/common/img/bg_border-dotted-x.png') repeat-x left bottom;
	}
	body:not(.non-responsive) .hair-color-advice .row .col .item:before,
	body:not(.non-responsive) .hair-color-advice .row .col .item:after {
		display: table;
		content: " ";
	}
	body:not(.non-responsive) .hair-color-advice .row .col .item:after {
		clear: both;
	}
}

.hair-color-advice .row .col .item a {
	display: block;
	text-decoration: none;
}
.hair-color-advice .row .col .item a:before,
.hair-color-advice .row .col .item a:after {
	display: table;
	content: " ";
}
.hair-color-advice .row .col .item a:after {
	clear: both;
}

.hair-color-advice .row .col .item a figure {
	margin-bottom: 10px;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .hair-color-advice .row .col .item a figure {
		float: left;
		width: 37.5%;
		margin-right: 5.357%
	}

	body:not(.non-responsive) .hair-color-advice .row .col .item a figure img {
		width: 100%;
		height: auto;
	}

	body:not(.non-responsive) .hair-color-advice .row .col .item a .item-text {
		float: left;
		width: 57.143%;
	}
}

.hair-color-advice .row .col .item a p.item-icon {
	display: inline-block;
	min-width: 100px;
	margin-bottom: 5px;
	padding: 3px 5px 2px 5px;
	border-radius: 3px;
	behavior: url('/common/js/vendor/PIE.htc');
	color: #fff;
	font-size: 1em;
	font-weight: bold;
	line-height: 1;
	text-align: center;
}
.msp .hair-color-advice .row .col .item a p.item-icon {
	padding: 2px 5px 3px 5px;
}
.hair-color-advice .row .col.mechanism .item a p.item-icon {
	background-color: #1f9b92;
}
.hair-color-advice .row .col.point .item a p.item-icon {
	background-color: #ffb600;
}
.hair-color-advice .row .col.aftercare .item a p.item-icon {
	background-color: #ff909e;
}

.hair-color-advice .row .col .item a h4 {
	margin: 0 0 6px 0;
	color: #333;
	font-size: 1.2em;
	font-weight: bold;
}

.hair-color-advice .row .col .item a .item-description {
	color: #333;
	font-size: 1.2em;
}

.hair-color-advice .patch-test:before,
.hair-color-advice .patch-test:after {
	display: table;
	content: " ";
}
.hair-color-advice .patch-test:after {
	clear: both;
}

.hair-color-advice .patch-test a {
	display: block;
	padding: 10px 13px 10px 13px;
	border: 1px solid #ce003f;
	border-radius: 3px;
	behavior: url('/common/js/vendor/PIE.htc');
	background-color: #fbf7ec;
	text-decoration: none;
}
.msp .hair-color-advice .patch-test a {
	padding: 9px 13px 11px 13px;
}
.hair-color-advice .patch-test a:hover {
	background-color: #fbebd1;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .hair-color-advice .patch-test a {
		padding: 9px 13px 9px 13px;
	}
}

.hair-color-advice .patch-test a dl {
	margin-bottom: 0;
}

.hair-color-advice .patch-test a dl dt {
	color: #cc003f;
	font-size: 1.6em;
	font-weight: bold;
}
.hair-color-advice .patch-test a dl dt:before {
	display: inline-block;
	content: "";
	width: 18px;
	height: 18px;
	margin: -3px 6px 0 0;
	background: url("/common/img/icon_arrow01-red-medium.png") no-repeat left center;
	vertical-align: middle;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .hair-color-advice .patch-test a dl dt {
		margin-bottom: 1px;
	}
}

.hair-color-advice .patch-test a dl dd {
	margin: -1.8em 0 0 138px;
	color: #333;
	font-size: 1.4em;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .hair-color-advice .patch-test a dl dd {
		margin: 0;
	}
}

/* .events-list */
.events-list {
	float: right;
	width: 270px;
	margin-left: 20px;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .events-list {
		float: none;
		width: 100%;
		margin-bottom: 0 !important;
	}
}

.events-list .item {
	margin-bottom: 15px;
	padding-bottom: 6px;
	background: url('/common/img/bg_border-dotted-x.png') repeat-x left bottom;
}
.events-list .item:last-child {
	margin-bottom: -10px;
	padding-bottom: 0;
	background: none;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .events-list .item:last-child {
		margin-bottom: 0;
	}
}

.events-list .item a {
	display: block;
	color: #333;
	text-decoration: none;
}
.events-list .item a:before,
.events-list .item a:after {
	display: table;
	content: " ";
}
.events-list .item a:after {
	clear: both;
}

.events-list .item .item-icon {
	display: inline-block;
	min-width: 85px;
	margin-bottom: 5px;
	padding: 4px 6px 3px 6px;
	border-radius: 3px;
	behavior: url('/common/js/vendor/PIE.htc');
	background-color: #606060;
	color: #fff;
	font-weight: bold;
	line-height: 1;
	text-align: center;
}
.msp .events-list .item .item-icon {
	margin-bottom: 6px;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .events-list .item .item-icon {
		width: 80px;
		padding: 5px 2px 2px 3px;
		text-align: center;
	}
}

.events-list .item h3 {
	margin: 0 0 1px 0;
	font-size: 1.4em;
	font-weight: bold;
}

@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .events-list .item h3 {
		margin: 0 0 5px 0;
	}
}

.events-list .item .item-description {
	margin-bottom: 5px;
	color: #777777;
	font-size: 1.2em;
	line-height: 1.4;
}

.events-list .item dl {
	margin-bottom: 11px;
}

.events-list .item dl dt {
	margin: 0 0 5px 0;
	width: 40px;
	padding: 3px 0 0 .25em;
	border: 1px solid #5b5b5b;
	font-size: 1em;
	font-weight: bold;
	line-height: 1;
	letter-spacing: .25em;
	text-align: center;
}
.msp .events-list .item dl dt {
	padding: 1px 0 2px .25em;
}

.events-list .item dl dd {
	margin: -1.4em 0 5px 45px;
	line-height: 1;
}
.msp .events-list .item dl dd {
	margin: -1.5em 0 5px 45px;
}

/* .news-list */
.news-list {
	float: left;
	width: 480px;
	margin-right: 20px;
}
.lt-ie9 .news-list {
	margin-right: 0;
}

@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .news-list {
		float: none;
		width: 100%;
		margin-right: 0;
		margin-bottom: 10px;
	}
}

.news-list .item {
	margin-bottom: 14px;
	padding-bottom: 14px;
	background: url('/common/img/bg_border-dotted-x.png') repeat-x left bottom;
}

.news-list .item:before,
.news-list .item:after {
	display: table;
	content: " ";
}
.news-list .item:after {
	clear: both;
}
.news-list .item:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	background: none;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .news-list .item {
		margin-bottom: 10px;
		padding-bottom: 10px;
	}
}

.news-list .item a {
	display: block;
}
.news-list .item a:before,
.news-list .item a:after {
	display: table;
	content: " ";
}
.news-list .item a:after {
	clear: both;
}

.news-list .item .item-text {
	float: left;
	width: 270px;
}

.news-list .item .item-text.nophoto {
	width: auto;
}

@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .news-list .item .item-text {
		width: 43.656%;
		margin-right: 3.344%;
	}
	body:not(.non-responsive) .news-list .item .item-text.nophoto {
	  width: auto;
		margin-right: 0;
	}
}

.news-list .item .item-text .item-text_date {
	margin: 0 0 5px 0;
	font-size: 1.2em;
}
.news-list .item a .item-text .item-text_date {
	color: #333;
	text-decoration: none;
}

.news-list .item .item-text p {
	margin: 0;
}

.news-list .item a .item-text p {
	text-decoration: underline;
}

.news-list .item .item-text.nophoto p {
  width: 100%;
}

.news-list .item figure {
	float: right;
	width: 150px;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .news-list .item figure {
		width: 53%;
	}

	body:not(.non-responsive) .news-list .item figure img {
		width: 100%;
		height: auto;
	}
}

/* .qa-list */
.qa-list {
	float: right;
	width: 480px;
	margin-left: 20px;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .qa-list {
		float: none;
		width: 100%;
		margin-bottom: 0 !important;
	}
}

.qa-list .qa-category {
	margin: 0 0 18px 0;
	padding: 0;
}
.qa-list .qa-category:before,
.qa-list .qa-category:after {
	display: table;
	content: " ";
}
.qa-list .qa-category:after {
	clear: both;
}

.qa-list .qa-category li {
	float: left;
	list-style: none;
	margin-bottom: 5px;
}
.qa-list .qa-category li:nth-child(3n+1) {
	clear: left;
	margin-left: 0;
}
.qa-list .qa-category li:nth-child(1) {
	width: 166px;
}
.qa-list .qa-category li:nth-child(2),
.qa-list .qa-category li:nth-child(3) {
	width: 135px;
}
.qa-list .qa-category li:nth-child(4) {
	width: 146px;
}
.qa-list .qa-category li:nth-child(5),
.qa-list .qa-category li:nth-child(6) {
	width: 145px;
}
.qa-list .qa-category li + li {
	margin-left: 2px;
}

.qa-list .qa-category li a {
	display: block;
	padding: 13px 2px 11px 0;
	border-radius: 3px;
	behavior: url('/common/js/vendor/PIE.htc');
	background-color: #eee;
	color: #333;
	text-align: center;
	text-decoration: none;
}
.msp .qa-list .qa-category li a {
	padding: 12px 2px 10px 0;
}

.qa-list .qa-category li a:before {
	display: inline-block;
	content: "";
	width: 15px;
	height: 14px;
	margin-top: -1px;
	margin-right: 0.4em;
	background: url('/common/img/icon_arrow02-gray.png') no-repeat left center;
	vertical-align: middle;
}
.qa-list .qa-category li a:hover,
.qa-list .qa-category li a:focus {
	background-color: #ccc;
	text-decoration: none;
}
.qa-list .qa-category li a:hover:before,
.qa-list .qa-category li a:focus:before {
	background-image: url('/common/img/icon_arrow02-white.png');
}

@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .qa-list .qa-category {
		width: 100%;
		margin-bottom: 10px;
	}

	body:not(.non-responsive) .qa-list .qa-category li {
		margin-left: 0;
	}
	body:not(.non-responsive) .qa-list .qa-category li + li {
		margin-left: 0;
	}
	body:not(.non-responsive) .qa-list .qa-category li:nth-child(3n+1) {
		clear: none;
}
	body:not(.non-responsive) .qa-list .qa-category li:nth-child(2n+1) {
		clear: left;
		margin-left: 0;
	}
	body:not(.non-responsive) .qa-list .qa-category li:nth-child(2n) {
		margin-left: 2%;
	}
	body:not(.non-responsive) .qa-list .qa-category li,
	body:not(.non-responsive) .qa-list .qa-category li:nth-child(1),
	body:not(.non-responsive) .qa-list .qa-category li:nth-child(2),
	body:not(.non-responsive) .qa-list .qa-category li:nth-child(3),
	body:not(.non-responsive) .qa-list .qa-category li:nth-child(4),
	body:not(.non-responsive) .qa-list .qa-category li:nth-child(5),
	body:not(.non-responsive) .qa-list .qa-category li:nth-child(6) {
		width: 49%;
		margin-bottom: 2%;
	}
}

.qa-list .q-list {
	margin: 0;
	padding: 0;
}

.qa-list .q-list li {
	list-style: none;
	margin-bottom: 18px;
	padding-bottom: 18px;
	background: url('/common/img/bg_border-dotted-x.png') repeat-x left bottom;
}
.qa-list .q-list li:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	background: none;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .qa-list .q-list {
		margin-bottom: 0;
	}

	body:not(.non-responsive) .qa-list .q-list li {
		margin-bottom: 10px;
		padding-bottom: 10px;
	}
}

.qa-list .q-list li a {
	display: table-cell;
	height: 26px;
	padding-left: 35px;
	background: url('/common/img/icon_question.png') no-repeat left center;
	text-decoration: underline;
	vertical-align: middle;
}

/* .banner-index */
.banner-index {
	padding: 14px 14px 4px 14px;
	border: 1px solid #ccc;
	border-radius: 3px;
	behavior: url('/common/js/vendor/PIE.htc');
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .banner-index {
		padding: 10px 10px 0 10px;
	}
}

.banner-index ul {
	margin: 0;
	padding: 0;
}
.banner-index ul:before,
.banner-index ul:after {
	display: table;
	content: " ";
}
.banner-index ul:after {
	clear: both;
}

.banner-index ul li {
	float: left;
	list-style: none;
	margin: 0 13px 10px 0;
}
.banner-index ul li:nth-child(4n) {
	margin-right: 11px;
}
.banner-index ul li:nth-child(5n) {
	margin-right: 0;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .banner-index ul li {
		width: 48.328%;
		margin-right: 3.344%;
	}
	body:not(.non-responsive) .banner-index ul li:nth-child(2n) {
		margin-right: 0;
	}
	body:not(.non-responsive) .banner-index ul li.banner-last {
		margin-right: 0;
	}
	body:not(.non-responsive) .banner-index ul li img {
		width: 100%;
		height: auto;
	}
}

/* ==========================================================================
   .your-product-search
========================================================================== */
#page-content .main-content .your-product-search {
	margin-bottom: 20px;
	padding-bottom: 5px;
}

@media only screen and (max-width: 640px) {
	body:not(.non-responsive) #page-content .main-content .your-product-search {
		margin-bottom: 10px;
		padding-bottom: 3%;
	}
}

.main-content .your-product-search .section-title {
	margin-bottom: 10px;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .main-content .your-product-search .section-title {
		margin-bottom: 15px;
	}
}

.main-content .your-product-search
.your-product-search_body {
	overflow: hidden;
}
.main-content .your-product-search
.your-product-search_body section {
	float: left;
	width: 444px;
}
.main-content .your-product-search section:first-child {
	width: 470px;
	margin-right: 26px;
	border-right: 1px dotted #5b513f;
	padding-right: 26px;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .main-content .your-product-search
	.your-product-search_body section {
		float: none;
		width: auto;
	}
	body:not(.non-responsive) .main-content .your-product-search section:first-child {
		width: auto;
		margin-right: 0;
		border-right: none;
		padding-right: 0;
	}
}

.main-content .your-product-search_title {
	margin-bottom: 0;
	padding: 9px;
	border-radius: 3px;
	line-height: 1.1;
	font-size: 1.4em;
	font-weight: bold;
	text-align: center;
	background-color: #eee;
}

.main-content .your-product-search_button {
	margin: 24px 0 20px;
	text-align: center;
}
.main-content .your-product-search_button a {
	display: inline-block;
	width: 410px;
	padding: 14px 21px 14px 27px;
	border: 3px solid #cdcdcd;
	border-radius: 3px;
	font-size: 1.5em;
	font-weight: bold;
	box-sizing: border-box;
	color: #202020;
}
.main-content .your-product-search_button a:hover {
	text-decoration: none;
}
.main-content .your-product-search_button a:before,
.main-content .your-product-search_button a:after {
	content: '';
	display: inline-block;
	vertical-align: middle;
}
.main-content .your-product-search_button a:before {
	width: 14px;
	height: 14px;
	margin-right: 6px;
	background: url('/common/img/icon_arrow01-red.png') no-repeat center center;
}
.main-content .your-product-search_button a:after {
	width: 25px;
	height: 26px;
	margin-left: 4px;
	background: url('/img/bg_search-button.png') no-repeat center center;
	background-size: 100% 100%;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .main-content .your-product-search_button {
		margin-top: 10px;
	}
	body:not(.non-responsive) .main-content .your-product-search_button a {
		width: 100%;
		padding: 11px 73px 11px 60px;
		border-width: 2px;
		font-size: 1.17em;
		line-height: 1.2;
		position: relative;
	}
	body:not(.non-responsive) .main-content .your-product-search_button a:before,
	body:not(.non-responsive) .main-content .your-product-search_button a:after {
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
	}
	body:not(.non-responsive) .main-content .your-product-search_button a:before {
		left: 41px;
		margin-right: 0;
	}
	body:not(.non-responsive) .main-content .your-product-search_button a:after {
		right: 39px;
		margin-left: 0;
	}
}

.main-content .your-product-search_button-list {
	margin: 10px 0 6px;
	font-size: 0;
	text-align: left;
}
.main-content .your-product-search_button-list > li {
	display: inline-block;
	font-size: 12px;
	margin: 6px 0 0 7px;
}
.main-content .your-product-search_button-list > li:nth-child(-n+3) {
	margin-top: 0;
}
.main-content .your-product-search_button-list > li:nth-child(3n+1) {
	margin-left: 0;
}
.main-content .your-product-search_button-list > li a {
	display: block;
	height: 42px;
	width: 132px;
	border: 3px solid #cdcdcd;
	border-radius: 3px;
	box-sizing: border-box;
	position: relative;
}
.main-content .your-product-search_button-list > li a img {
	max-width: 100%;
	max-height: 100%;
	position: absolute;
	left: 0px;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}

@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .main-content .your-product-search_button-list {
		margin-bottom: 0;
	}
	body:not(.non-responsive) .main-content .your-product-search_button-list > li {
		margin-left: 0;
		width: 50%;
	}
	body:not(.non-responsive) .main-content .your-product-search_button-list > li:nth-child(2n+1) {
		padding-right: 5px;
	}
	body:not(.non-responsive) .main-content .your-product-search_button-list > li:nth-child(2n) {
		padding-left: 5px;
	}
	body:not(.non-responsive) .main-content .your-product-search_button-list > li:nth-child(-n+3) {
		margin-top: 6px;
	}
	body:not(.non-responsive) .main-content .your-product-search_button-list > li:nth-child(-n+2) {
		margin-top: 0;
	}
	body:not(.non-responsive) .main-content .your-product-search_button-list > li a {
		display: block;
		height: 44px;
		width: auto;
		border-width: 2px;
	}
}

@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .main-content .your-product-search .search-half-left {
		width: 100%;
		border-right: none;
		padding-right: 0;
	}
}

/* ==========================================================================
   .product-search_button
========================================================================== */
.main-content .product-search_button {
	margin: 12px 0 0;
	text-align: center;
}
.main-content .product-search_button a {
	display: block;
	padding: 9px;
	border: 3px solid #cdcdcd;
	border-radius: 3px;
	font-size: 1.33em;
	font-weight: bold;
	box-sizing: border-box;
	color: #202020;
}
.main-content .product-search_button a:hover {
	text-decoration: none;
}
.main-content .product-search_button a:before,
.main-content .product-search_button a:after {
	content: '';
	display: inline-block;
	vertical-align: middle;
}
.main-content .product-search_button a:before {
	width: 14px;
	height: 14px;
	margin-right: 6px;
	background: url('/common/img/icon_arrow01-red.png') no-repeat center center;
}
.main-content .product-search_button a:after {
	width: 25px;
	height: 26px;
	margin-left: 4px;
	background: url('/img/bg_search-button.png') no-repeat center center;
	background-size: 100% 100%;
}
@media only screen and (max-width: 640px) {
	body:not(.non-responsive) .main-content .product-search_button {
		margin-top: 4px;
	}
	body:not(.non-responsive) .main-content .product-search_button a {
		width: 100%;
		padding: 11px 73px 11px 60px;
		border-width: 2px;
		font-size: 1.17em;
		line-height: 1.2;
		position: relative;
	}
	body:not(.non-responsive) .main-content .product-search_button a:before,
	body:not(.non-responsive) .main-content .product-search_button a:after {
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
	}
	body:not(.non-responsive) .main-content .product-search_button a:before {
		left: 41px;
		margin-right: 0;
	}
	body:not(.non-responsive) .main-content .product-search_button a:after {
		right: 39px;
		margin-left: 0;
	}
}
/* ==========================================================================
   .section-notice
========================================================================== */
.main-content .section-notice {
	border: 1px solid #ccc;
	border-radius: 3px;
	margin-bottom: 20px;
	margin-top: -15px;
}
.section-notice a {
	display: block;
	padding: 19px;
	color: #000;
	text-decoration: underline;
}

.section-notice a:hover{
  opacity: 0.6;
}

.section-notice a p{
	font-size: 1.6rem;
}

@media only screen and (max-width: 640px) {
	.main-content .section-notice {
			margin-bottom: 10px;
	}
}
