/* index

	sp.css

	- body
	- header
	- nav
	- hero
	- carousel
	- menu
	- news
	- magazine
	- event
	- layout
	- support
	- sns
	- scroll
	- banner
	- announce
	- holiday
	- asp
	- footer

----------------------------------------------- */


/* body
----------------------------------------------- */
.pc {
	display: none;
}


/* header
----------------------------------------------- */
header {
	position: fixed;
	z-index: 9999;
	margin: 0;
	padding: 0;
	width: 100%;
	background: rgba(255, 255, 255, 0.9);
	clear: both;
}

header h1 a {
	display: block;
	position: relative;
	z-index: 9999;
	margin: 0 auto;
	padding: 0;
	width: 140px;
	height: 80px;
	background: url(../../assets3/images/logo.svg) no-repeat left center;
	background-size: 140px 28px;
	clear: both;

	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;

}

header ul {
	position: absolute;
	z-index: 9999;
	top: 0;
	right: 20px;
	margin: 0;
	padding: 0;
	clear: both;
}

header ul li {
	margin: 0;
	padding: 0;
	line-height: 80px;
	float: left;
}

header ul li:nth-child(2),
header ul li:nth-child(3) {
	display: none;
}

header ul li a {
	display: block;
	margin: 0;
	padding: 0;
	font-size: 1em;
}

header i {
	position: relative;
	top: 2px;
	margin: 0 8px 0 0;
	font-size: 1.4em;
}

@media only screen and (max-width: 321px) {
	header span {
		display: none;
	}
}

header a:link,
header a:visited {
	color: #666;
	text-decoration: none;
}

header a:hover {
	opacity: 0.6;
}


/* nav
----------------------------------------------- */
nav {
	position: fixed;
	z-index: 9999;
	margin: 0;
	padding: 0;
	width: 100%;
	clear: both;
}

nav p {
	position: absolute;
	z-index: 9999;
	top: 0;
	left: 20px;
	margin: 0;
	padding: 0;
	clear: both;
}

nav p a.more,
nav p a.home {
	display: block;
	margin: 0;
	padding: 0;
	line-height: 80px;
	float: left;
}

nav p a.more:before {
	position: relative;
	top: 2px;
	margin: 0 8px 0 0;
	font-size: 1.4em;
	font-family: Flaticon;
	content: "\f101";
}

nav p a.open:before {
	font-family: Flaticon;
	content: "\f100";
}

nav p a.home:before {
	position: relative;
	top: 2px;
	margin: 0 8px 0 0;
	font-size: 1.4em;
	font-family: Flaticon;
	content: "\f117";
}

@media only screen and (max-width: 321px) {
	nav p a.more span {
		display: none;
	}
}

nav .nav {
	display: none;
}

nav article {
	position: absolute;
	top: 80px;
	margin: 0;
	padding: 0;
	width: 100%;
	background: rgba(255, 255, 255, 0.9);
	clear: both;
}

nav article:after {
	display: block;
	content: '';
	clear: both;
}

nav ul {
	margin: 0;
	padding: 0;
	border-top: 1px solid #ddd;
	clear: both;
}

nav ul > li {
	position: relative;
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #ddd;
	clear: both;
}

nav ul > li a {
	display: block;
	margin: 0;
	padding: 16px 20px;
	font-size: 1.1em;
	clear: both;
}

nav ol {
	display: none;
	margin: 0 0 16px 0;
	padding: 0;
	clear: both;
}

nav ol:after {
	display: block;
	content: '';
	clear: both;
}

nav ol > li {
	margin: 0;
	padding: 0;
	width: 50%;
	float: left;
}

nav ol > li a {
	display: block;
	margin: 0;
	padding: 8px 20px 0;
	font-size: 1em;
	clear: both;
}

nav i {
	display: block;
	position: absolute;
	cursor: pointer;
	z-index: 9999;
	top: 0;
	right: 0;
	margin: 0;
	padding: 0 20px;
	width: 20px;
	line-height: 55px;
}

nav i:before {
	display: block;
	font-size: 1em;
	font-family: Flaticon;
	font-style: normal;
	content: "\f114";
	float: right;
}

nav i.open:before {
	font-family: Flaticon;
	content: "\f116";
}

nav .pointer {
	pointer-events: none;
}

nav a:link,
nav a:visited {
	color: #6f5987;
	text-decoration: none;
}

nav a:hover {
	opacity: 0.6;
}


/* hero
----------------------------------------------- */
.home .hero p.movie a {
	display: inline-block;
	position: absolute;
	left: 0;
	right: 0;
	top: 100px;
	margin: 0 20px;
	padding: 8px 0;
	font-size: 1em;
	font-weight: bold;
	line-height: 1;
	color: #fff;
	text-align: center;
	text-decoration: none;
	background: #6f5987;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

.home .hero p.event a {
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0;
	padding: 20px;
	font-size: 1.6em;
	font-weight: 500;
	line-height: normal;
	color: #fff;
	text-align: center;
	text-decoration: none;
	background: #6f5987;
	clear: both;

	border-radius: 0;
	-webkit-border-radius: 0;

}

.home .hero p.event span {
	display: block;
	margin: 8px 0;
	padding: 4px 0;
	font-size: 0.6em;
	text-align: center;
	color: #6f5987;
	background: #fff;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

.home .hero p.event small {
	display: block;
	margin: 0;
	padding: 0;
	font-size: 0.8em;
	font-weight: 500;
	clear: both;
}

.home .hero i {
	margin: 0 8px 0 0;
}

.mouse {
	display: none;
}


/* carousel
----------------------------------------------- */
.home .carousel,
.page .carousel {
	overflow: hidden;
	margin: 0;
	padding: 80px 0 0 0;
	clear: both;
}

.home .carousel:after {
	display: block;
	content: '';
	clear: both;
}

.home .carousel img.text {
	width: 100%;
	height: auto;
}

/*.home .carousel img.newa-lift-plus {
	width: 70%;
	height: auto;
}

.home .carousel img.newa-lift {
	width: 100%;
	height: auto;
}*/


/* menu
----------------------------------------------- */
.menu {
	margin: 40px 0;
	padding: 0;
	clear: both;
}

.menu div {
	margin: 0;
	padding: 0;
	clear: both;
}

.menu div img {
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
	clear: both;
}

.menu article {
	margin: 0;
	padding: 40px;
	background: #ecf0f2;
	clear: both;
}

.menu:after,
.menu article:after {
	display: block;
	content: '';
	clear: both;
}

.menu article aside {
	margin: 0;
	padding: 0;
}

.menu h3 {
	margin: 0;
	padding: 0;
	font-size: 1.8em;
	font-weight: normal;
	line-height: 1.4;
	clear: both;
}

.menu ul {
	margin: 24px 0 0 0;
	padding: 0;
	clear: both;
}

.menu ul li {
	margin: 0;
	padding: 0;
	clear: both;
}

.menu ul li a {
	display: block;
	margin: 0;
	padding: 16px 0;
	border-bottom: 1px solid #ddd;
	font-size: 1.2em;
	line-height: 1;
	text-decoration: none;
}

.menu ul li:last-child a {
	padding: 16px 0 0 0;
	border: none;
}

.menu i {
	float: right;
}


/* news
----------------------------------------------- */
.home .news {
	margin: 40px 0 0 0;
	padding: 0;
	clear: both;
}

.home .news h3 {
	margin: 0 0 20px 0;
	padding: 0;
	font-size: 1.8em;
	font-weight: normal;
	line-height: 1;
	text-align: center;
	clear: both;
}

.news a {
	display: block;
	padding: 20px 0;
	background: #ecf0f2;
}

.news a:nth-child(even) {
	background: #f5f7f8;
}

.news a:after {
	display: block;
	content: '';
	clear: both;
}

.news dl {
	margin: 0;
	padding: 0 20px;
	font-size: 1.1em;
	clear: both;
}

.news dl dt {
	margin: 0;
	padding: 0;
	clear: both;
}

.news dl dt span {
	display: inline-block;
	margin: 0 16px 0 0;
	padding: 4px 0;
	width: 80px;
	font-size: 0.9em;
	text-align: center;
	color: #fff;
	background: #6f5987;
}

.news dl dd {
	margin: 8px 0 0 0;
	padding: 0;
	clear: both;
}

.news a:link,
.news a:visited,
.news a:active {
	text-decoration: none;
}


/* magazine
----------------------------------------------- */
section.magazine {
	margin: 0;
	padding: 40px 0;
	background: #ecf0f2;
	clear: both;
}

section.magazine h3 {
	margin: 0;
	padding: 0;
	font-size: 1.8em;
	font-weight: normal;
	clear: both;
}

.home section.magazine h3 {
	text-align: center;
}

section.magazine h3 span {
	display: block;
	margin: 8px 0 0 0;
	padding: 0;
	font-size: 0.6em;
	line-height: 1;
	clear: both;
}

.home section.magazine p a {
	display: block;
	margin: 0 20px;
	padding: 0;
	font-size: 1.2em;
	font-weight: 500;
	line-height: 40px;
	color: #fff;
	text-align: center;
	text-decoration: none;
	background: #6f5987;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

.home section.magazine p i {
	margin: 0 0 0 8px;
}

section.magazine iframe {
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	clear: both;
}

main.magazine {
	display: block;
	margin: 0;
	padding: 40px 20px 0;
	clear: both;
}

main.magazine .column {
	margin: 0;
	padding: 0;
	clear: both;
}

main.magazine .column.border {
	padding: 40px 0 0 0;
	border-top: 1px solid #ddd;
}

main.magazine .column div {
	display: inline-block;
	position: relative;
	margin: 0 0 40px 0;
	padding: 0 0 0 0;
	width: 50%;
	float: left;
}

section.magazine:after,
main.magazine .column:after,
main.magazine .column div:after {
	display: block;
	content: '';
	clear: both;
}

main.magazine .column div a {
	display: block;
}

main.magazine .column div img {
	margin: 0 0 16px 0;
	padding: 0;
	width: 100%;
	height: auto;
	clear: both;
}

main.magazine .column div h3 {
	margin: 0 16px;
	padding: 0;
	font-size: 1.2em;
	font-weight: 500;
	clear: both;
}

main.magazine .column div h3 span {
	display: inline-block;
	position: absolute;
	top: 0;
	margin: 0;
	padding: 8px;
	font-size: 0.8em;
	line-height: 1;
	color: #fff;
	background: #6f5987;
}

main.magazine .column div p.like {
	position: relative;
	margin: 0 !important;
	padding: 0 0 0 18px;
	color: #d6294a;
	border: none;
	clear: none;
	float: right;
}

main.magazine .column div p.like:before {
	content: '';
	position: absolute;
	top: 5px;
	left: 0;
	width: 14px;
	height: 13px;
	background: url(../../assets3/images/icon_clip.svg) no-repeat;
}

main.magazine .column div ul {
	margin: 8px 0 0 0;
	padding: 0;
	clear: both;
}

main.magazine .column div ul li {
	margin: 0 8px 0 0;
	padding: 0;
	float: left;
}

main.magazine .like {
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #ddd;
	clear: both;
}

main.magazine .like:after {
	display: block;
	content: '';
	clear: both;
}

main.magazine .like div {
	display: table;
	margin: 0 auto;
	padding: 0;
	clear: both;
}

main.magazine .like p {
	position: relative;
	margin: 0 0 40px 0;
	padding: 0 0 0 18px;
	font-size: 1.2em;
	color: #d6294a;
	clear: none;
	float: right;
}

main.magazine .like p:before {
	content: '';
	position: absolute;
	top: 6px;
	left: 0;
	width: 14px;
	height: 13px;
	background: url(../../assets3/images/icon_clip.svg) no-repeat;
}

main.magazine .like ul {
	margin: 0;
	padding: 0;
	float: right;
}

main.magazine .like ul li a {
	display: block;
	margin: 0 0 0 8px;
	padding: 0 16px;
	font-size: 0.9em;
	line-height: 24px;
	color: #fff;
	background: #d6294a;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.magazine .like ul li a.registered {
	background: #999;
}

main.magazine .entry {
	margin: 40px 0;
	padding: 0;
	clear: both;
}

main.magazine .entry:after {
	display: block;
	content: '';
	clear: both;
}

main.magazine .entry h3 {
	margin: 16px 0 0 0;
	font-size: 2.2em !important;
	line-height: normal;
	font-weight: 500;
	color: #6f5987;
}

main.magazine .entry h4 {
	margin: 16px 0 0 0;
	font-size: 2em !important;
	line-height: normal;
	font-weight: 500;
	color: #6f5987;
}

main.magazine .entry h5 {
	margin: 16px 0 0 0;
	font-size: 1.8em !important;
	line-height: normal;
	font-weight: 500;
	color: #6f5987;
}

main.magazine .entry h6 {
	margin: 16px 0 0 0;
	font-size: 1.6em !important;
	line-height: normal;
	font-weight: 500;
	color: #6f5987;
}

main.magazine .entry p {
	margin: 16px 0 0 0;
	font-size: 1.2em !important;
	line-height: normal;
}

main.magazine .entry img {
	width: 100% !important;
	height: auto !important;
	clear: both !important;
}

main.magazine .entry p.cart a {
	display: block;
	margin: 40px 0 0 0;
	padding: 20px;
	width: 100%;
	font-size: 1.4em;
	font-weight: 500;
	line-height: 1;
	color: #fff;
	text-align: center;
	text-decoration: none;
	background: #b09cc9;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.magazine .entry p.cart i {
	margin: 0 8px 0 0;
}

main.magazine .post {
	margin: 0 0 40px 0;
	padding: 24px 0 0 0;
	text-align: center;
	border-top: 1px solid #ddd;
	clear: both;
}

main.magazine .pagination {
	margin: 0 0 40px 0;
	padding: 0;
	clear: both;
}

main.magazine .pagination:after {
	display: block;
	content: '';
	clear: both;
}

main.magazine .pagination ul {
	display: table;
	margin: 0 auto;
	padding: 0;
	clear: both;
}

main.magazine .pagination ul li {
	margin: 0;
	padding: 0;
	font-size: 1.2em;
	line-height: 1;
	text-align: center;
	float: left;
}

main.magazine .pagination ul li a {
	display: block;
	margin: 0 5px;
	padding: 10px 0;
	width: 40px;
	border: 1px solid #ddd;
	clear: both;
}

main.magazine .pagination ul li.active a {
	color: #fff;
	background: #6f5987;
	border: 1px solid #6f5987;
}

.keyword {
	margin: 0 0 40px 0;
	padding: 40px;
	color: #6f5987;
	background: #ecf0f2;
	clear: both;
}

.keyword:after {
	display: block;
	content: '';
	clear: both;
}

.keyword p {
	margin: 0 !important;
	padding: 0;
	font-size: 1.4em !important;
	font-weight: bold;
	line-height: 30px;
	text-align: center;
	color: #6f5987;
	clear: both;
}

.keyword ul {
	margin: 0;
	padding: 0;
	font-size: 1.2em;
	clear: both;
}

.keyword ul li {
	margin: 16px 0 0 0;
	padding: 0;
	clear: both;
}

.keyword ul li a {
	display: block;
	padding: 0 12px;
	line-height: 30px;
	text-align: center;
	color: #6f5987;
	border: 2px solid #6f5987;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.magazine a:link,
main.magazine a:visited,
main.magazine a:active,
main.magazine a:hover {
	text-decoration: none;
}


/* event
----------------------------------------------- */
.event p a {
	display: block;
	margin: 40px 20px 0;
	padding: 0;
	font-size: 1.2em !important;
	font-weight: 500;
	line-height: 40px;
	color: #fff;
	text-align: center;
	text-decoration: none;
	background: #6f5987;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

.event p i {
	margin: 0 8px 0 0;
}


/* event
----------------------------------------------- */
.event p a {
	display: block;
	margin: 40px 20px 0;
	padding: 0;
	font-size: 1.4em;
	font-weight: 500;
	line-height: 40px;
	color: #fff;
	text-align: center;
	text-decoration: none;
	background: #6f5987;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

.event p i {
	margin: 0 8px 0 0;
}


/* layout
----------------------------------------------- */
main {
	display: block;
}

main.news {
	display: block;
	margin: 0;
	padding: 40px 0 0 0;
	clear: both;
}

main.news h2 {
	margin: 80px 0;
	padding: 0;
	font-size: 2.4em;
	font-weight: 300;
	line-height: 1;
	text-align: center;
	clear: both;

	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	letter-spacing: 0.02em;

}

main.news h2 span {
	display: block;
	margin: 16px 0 0 0;
	padding: 0;
	font-size: 0.6em;
	line-height: 1;
	clear: both;
}

main.news h2 span a {
	display: inline-block;
	position: relative;
	top: -4px;
	margin: 0 0 0 8px;
	padding: 0;
	width: 30px;
	height: 30px;
	font-size: 0.6em;
	line-height: 30px;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: #6f5887;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.news h2 span a i {
	margin: 0 0 0 3px;
}

main.news article {
	margin: 0;
	padding: 0 0 80px 0;
	clear: both;
}

main.news article p {
	margin: 0 20px;
	padding: 20px;
	font-size: 1.2em;
	font-weight: normal;
	text-align: center;
	background: #eee;
	clear: both;
}

main.news .entry {
	margin: 0 20px;
	padding: 0 0 40px 0;
	clear: both;
}

main.news .entry a {
	display: inline-block;
	margin: 0;
	padding: 0;
	background: none;
	clear: both;
}

main.news .entry .container {
	margin: 16px 0 0 0;
	padding: 24px 0 0 0;
	border-top: 1px solid #ddd;
	clear: both;
}

main.news .entry .container:after {
	display: block;
	content: '';
	clear: both;
}

main.news .entry h3 {
	margin: 0;
	padding: 0;
	font-size: 1.8em;
	font-weight: normal;
	clear: both;
}

main.news .entry p {
	margin: 16px 0 0 0;
	padding: 0;
	font-size: 1.1em;
	clear: both;
}

main.news .entry p.date {
	margin: 8px 0 0 0;
}

main.news .entry table.gw {
	margin: 15px 0;
	padding: 0;
	width: 100%;
	border-collapse: collapse;
	clear: both;
}

main.news .entry table.gw td {
	margin: 0;
	padding: 15px;
	width: 10%;
	text-align: center;
	border: 1px solid #ddd;
	background: #eee;
}

main.news .entry table.gw td.holiday {
	color: #dd0000;
	background: #fce5e5;
}

main.event {
	display: block;
	margin: 0;
	padding: 40px 0 0 0;
	clear: both;
}

main.event h2 {
	margin: 80px 0;
	padding: 0;
	font-size: 2.4em;
	font-weight: 300;
	line-height: 1;
	text-align: center;
	clear: both;

	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	letter-spacing: 0.02em;

}

main.event h2 span {
	display: block;
	margin: 16px 0 0 0;
	padding: 0;
	font-size: 0.6em;
	line-height: 1;
	clear: both;
}

main.event h2 span a {
	display: inline-block;
	position: relative;
	top: -4px;
	margin: 0 0 0 8px;
	padding: 0;
	width: 30px;
	height: 30px;
	font-size: 0.6em;
	line-height: 30px;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: #6f5887;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.event h2 span a i {
	margin: 0 0 0 3px;
}

main.event .caption {
	margin: 0 0 100px 0;
	padding-top: 50%;
	width: 100%;
	height: 0;
	background: url(../../assets3/images/event-2x.jpg) no-repeat left top;
	background-size: 150% auto;
	clear: both;
}

main.event .caption h3 {
	margin: 20px;
	padding: 0;
	font-size: 1.4em;
	font-weight: normal;
	clear: both;
}

main.event article {
	margin: 0;
	padding: 40px 20px;
	text-align: center;
	clear: both;
}

main.event article div a {
	display: block;
	margin: 0;
	padding: 20px 0;
	text-align: left;
	border-top: 1px solid #ddd;
	clear: both;
}

main.event article div:last-of-type a {
	border-bottom: 1px solid #ddd;
}

main.event article div a {
	display: block;
	text-decoration: none;
}

main.event article:after,
main.event article div a:after {
	display: block;
	content: '';
	clear: both;
}

main.event article h3 {
	margin: 0 0 8px 0;
	padding: 0;
	font-size: 2em;
	font-weight: normal;
	clear: both;
}

main.event article h4 {
	margin: 0;
	padding: 0;
	font-size: 1.4em;
	font-weight: 500;
	clear: both;
}

main.event article h4 span {
	display: block;
	margin: 8px 0 0 0;
	padding: 0;
	font-size: 0.8em;
	text-align: center;
	color: #fff;
	background: #6f5987;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.event article h5 {
	margin: 0;
	padding: 20px 0;
	font-size: 1.2em;
	font-weight: normal;
	background: #eee;
	clear: both;
}

main.event article p {
	margin: 0 0 40px 0;
	padding: 0;
	font-size: 1em;
	clear: both;
}

main.event article p:last-child {
	margin: 40px 0 0 0;
	text-align: left;
}

main.event article div p span {
	display: block;
	margin: -20px 0 0 0;
	padding: 0;
	font-size: 1em;
	line-height: 40px;
	text-align: center;
	color: #fff;
	background: #6f5987;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.event article ul {
	margin: 8px 0 0 0;
	padding: 0;
	font-size: 1.1em;
	color: #666;
	clear: both;
}

main.event article i {
	margin: 0 8px 0 0;
}

main.event ol {
	margin: 0;
	padding: 0;
	width: 100%;
	clear: both;
}

main.event ol li a {
	display: block;
	margin: 0;
	padding: 0;
	width: 50%;
	font-size: 1.4em;
	line-height: 80px;
	text-align: center;
	text-decoration: none;
	color: #666;
	background: #ecf0f2;
	float: left;
}

@media only screen and (max-width: 321px) {
	main.event ol li a {
		font-size: 1.2em;
	}
}

main.event ol li.current a {
	color: #fff;
	background: #6f5887;
}

main.store {
	display: block;
	margin: 0;
	padding: 40px 0 0 0;
	clear: both;
}

main.store h2 {
	margin: 80px 0;
	padding: 0;
	font-size: 2.4em;
	font-weight: 300;
	line-height: 1;
	text-align: center;
	clear: both;

	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	letter-spacing: 0.02em;

}

main.store h2 span {
	display: block;
	margin: 16px 0 0 0;
	padding: 0;
	font-size: 0.6em;
	line-height: 1;
	clear: both;
}

main.store h2 span a {
	display: inline-block;
	position: relative;
	top: -4px;
	margin: 0 0 0 8px;
	padding: 0;
	width: 30px;
	height: 30px;
	font-size: 0.6em;
	line-height: 30px;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: #6f5887;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.store h2 span a i {
	margin: 0 0 0 3px;
}

main.store h3 {
	margin: 0;
	padding: 40px 0 0 0;
	font-size: 1.8em;
	font-weight: normal;
	line-height: 1;
	clear: both;
}

main.store h4 {
	margin: 0 0 24px 0;
	padding: 0;
	font-weight: normal;
	line-height: normal;
	clear: both;
}

main.store .container {
	margin: 0;
	padding: 0;
	clear: both;
}

main.store .container:after {
	display: block;
	content: '';
	clear: both;
}

main.store .container div {
	display: block;
	margin: 0 0 1px 0;
	padding: 40px 20px;
	width: 100%;
	background: #ecf0f2;
	clear: both;
}

main.store .container .shop {
	float: left;
}

main.store .container .event {
	float: right;
}

main.store .container .event article {
	margin: 0;
	padding: 0;
	clear: both;
}

main.store .container div ul {
	margin: 0;
	padding: 0;
	clear: both;
}

main.store .container div ul li {
	margin: 0 0 8px 0;
	padding: 0;
	font-size: 1.6em;
	clear: both;
}

main.store .container div ul li:last-child {
	margin: 0;
}

main.store .container div ol {
	margin: 0;
	padding: 0;
	clear: both;
}

main.store .container div ol li {
	margin: 0 0 16px 0;
	padding: 0;
	text-align: center;
	clear: both;
}

main.store .container div ol li a {
	display: block;
	margin: 0;
	padding: 20px;
	font-size: 1.1em;
	color: #fff;
	clear: both;
}

main.store .container div ol li.tbc a {
	color: #0d285b;
	background: #fff;
}

main.store .container div ol li.biccamera a {
	background: #e60012;
}

main.store .container div ol li.tbc a span {
	display: block;
	margin: 0 auto;
	padding-top: 16.43%;
	width: 213px;
	height: 0;
	background: url(../../assets3/images/tbc.svg) no-repeat;
	background-size: contain;

	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;

}

main.store .container div ol li.biccamera a span {
	display: block;
	margin: 0 auto;
	padding-top: 16.43%;
	width: 213px;
	height: 0;
	background: url(../../assets3/images/biccamera.svg) no-repeat;
	background-size: contain;

	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;

}

main.store .container .event h5 {
	margin: 0;
	padding: 10px 0 40px 0;
	font-size: 1.2em;
	font-weight: normal;
	text-align: center;
	clear: both;
}

main.store .container .event p a {
	display: block;
	margin: 0;
	padding: 16px 0;
	font-size: 1.1em;
	line-height: 1;
	text-align: center;
	color: #fff;
	background: #6f5987;
	clear: both;
}

main.store .container .event p a span {
	display: inline-block;
	position: relative;
	top: -1px;
	margin: 0 8px 0 0;
	padding: 4px 8px;
	font-size: 0.8em;
	color: #6f5887;
	background: #fff;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.store .container .event a {
	display: block;
	margin: 0;
	padding: 0;
	border-top: 1px solid #ddd;
	clear: both;
}

main.store .container .event a:after {
	display: block;
	content: '';
	clear: both;
}

main.store .container .event a dl {
	margin: 0;
	padding: 24px 0;
	clear: both;
}

main.store .container .event a dl dt {
	margin: 0;
	padding: 0;
	font-size: 1.4em;
	clear: both;
}

main.store .container .event a dl dd {
	margin: 4px 0 0 0;
	padding: 0;
	font-size: 1.1em;
	clear: both;
}

main.store .container .event a dl dd i {
	position: relative;
	top: 2px;
	margin: 0 8px 0 0;
	font-size: 1em;
	float: left;
}

main.store .search {
	margin: 0 0 1px 0;
	padding: 0 20px 40px;
	background: #ecf0f2;
	clear: both;
}

main.store .search:after {
	display: block;
	content: '';
	clear: both;
}

main.store .search article {
	margin: 0;
	padding: 0;
	clear: both;
}

main.store .search dl {
	margin: 0;
	padding: 20px 0;
	border-bottom: 1px solid #ddd;
	clear: both;
}

main.store .search dl:after {
	display: block;
	content: '';
	clear: both;
}

main.store .search dl dt {
	cursor: pointer;
	margin: 0;
	padding: 0;
	font-size: 1.4em;
	clear: both;
}

main.store .search dl dt a {
	color: #666;
	pointer-events: none;
}

main.store .search dl dd {
	display: none;
	margin: 16px 0 0 0;
	padding: 0;
	font-size: 1.2em;
	line-height: 2;
	clear: both;
}

main.store .search dl dd a {
	display: block;
	margin: 0;
	padding: 0;
	width: 50%;
	float: left;
}

main.store .search dl dt i {
	position: relative;
	top: 6px;
	margin: 0;
	padding: 0;
	float: right;
}

main.store .search dl dt i:before {
	font-size: 1em;
	font-family: Flaticon;
	font-style: normal;
	content: "\f116";
}

main.store .search dl dt.open i:before {
	font-family: Flaticon;
	content: "\f118";
}

main.store .search ul {
	margin: 0;
	padding: 0;
	clear: both;
}

main.store .search ul li {
	margin: 16px 0 0 0;
	padding: 0;
	font-size: 1.2em;
	clear: both;
}

main.store .list {
	margin: 0 0 1px 0;
	padding: 40px 0;
	background: #ecf0f2;
	clear: both;
}

main.store .list:after {
	display: block;
	content: '';
	clear: both;
}

main.store .list article {
	margin: 0;
	padding: 0 20px;
	clear: both;
}

main.store .list div {
	margin: 0;
	padding: 20px 40px 40px;
	background: #fff;
	clear: both;
}

main.store .list p {
	margin: 20px 0 0 0;
	padding: 0;
	clear: both;
}

main.store .list dl {
	margin: 0;
	padding: 40px 0;
	border-bottom: 1px solid #ddd;
	clear: both;
}

main.store .list dl:last-of-type {
	border: none;
}

main.store .list dl:after {
	display: block;
	content: '';
	clear: both;
}

main.store .list dl dt {
	margin: 0;
	padding: 4px 0;
	font-size: 0.9em;
	line-height: 1;
	color: #fff;
	line-height: normal;
	text-align: center;
	clear: both;
}

main.store .list dl dt.salon {
	background: #0099ff;
}

main.store .list dl dt.salon:after {
	content: 'サロン';
}

main.store .list dl dt.specialty {
	background: #0033ff;
}

main.store .list dl dt.specialty:after {
	content: '専門店';
}

main.store .list dl dt.department {
	background: #000066;
}

main.store .list dl dt.department:after {
	content: '百貨店';
}

main.store .list dl dt.clinic {
	background: #6f5887;
}

main.store .list dl dt.clinic:after {
	content: 'クリニック';
}

main.store .list dl dd.name {
	margin: 16px 0;
	padding: 0;
	font-size: 1.3em;
	line-height: normal;
	clear: both;
}

main.store .list dl dd.name small {
	display: block;
	margin: 4px 0 0 0;
	padding: 0;
}

main.store .list dl dd.address {
	margin: 0;
	padding: 0;
	font-size: 1.1em;
	line-height: normal;
	clear: both;
}

main.store .list dl dd.address a {
	display: block;
	margin: 8px 0 0 0;
	padding: 4px 10px;
	font-size: 0.8em;
	text-align: center;
	color: #fff;
	background: #6f5987;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.store .list dl dd.tel {
	margin: 16px 0 0 0;
	padding: 0;
	font-size: 1.8em;
	line-height: normal;
	text-align: center;
	clear: both;
}

main.store .list dl dd.tel span {
	display: block;
	margin: 8px 0 0 0;
	padding: 4px 8px;
	font-size: 0.5em;
	line-height: 1;
	text-align: center;
	color: #fff;
	background: #666;
}

main.store .list dl dd.icon {
	margin: 16px 0 0 0;
	padding: 0;
	clear: both;
}

main.store .list dl dd.icon span {
	display: block;
	margin: 0 0.5% 0.5% 0;
	padding: 8px 0;
	width: 49.5%;
	font-size: 0.8em;
	line-height: 1;
	text-align: center;
	color: #fff;
	background: #666;
	float: left;
}

main.store .list dl dd i {
	margin: 0 8px 0 0;
}

main.store .list ul {
	margin: 0;
	padding: 0;
	clear: both;
}

main.store .list ul:after {
	display: block;
	content: '';
	clear: both;
}

main.store .list ul li {
	margin: 20px 0 0 0;
	padding: 0;
	text-align: center;
	clear: both;
}

main.store .list ul li span {
	display: block;
	margin: 0 0 8px 0;
	padding: 4px 0;
	width: 100%;
	font-size: 0.9em;
	color: #fff;
	line-height: normal;
	clear: both;
}

main.store .list ul li span.clinic {
	background: #6f5887;
}

main.store .list ul li span.salon {
	background: #0099ff;
}

main.store .list ul li span.specialty {
	background: #0033ff;
}

main.store .list ul li span.department {
	background: #000066;
}

main.store .map {
	margin: 0;
	padding: 0;
	clear: both;
}

main.store .map form {
	margin: 0;
	padding: 0;
	border: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	vertical-align: baseline;
}

main.store .map #gmap {
	margin: 0;
	padding: 0;
	width: 100%;
	height: 400px;
	clear: both;
}

main.store .map .controller {
	margin: 0;
	padding: 0;
	width: 100%;
	background: #fff;
	clear: both;
}

main.store .map .controller ol {
	margin: 0;
	padding: 0;
	clear: both;
}

main.store .map .controller ol li a {
	display: block;
	margin: 0;
	padding: 0;
	width: 50%;
	font-size: 1.1em;
	font-weight: 500;
	line-height: 70px;
	text-align: center;
	color: #666;
	background: #ecf0f2;
	float: left;
}

main.store .map .controller ol li.active a {
	color: #fff;
	background: #6f5887;
}

main.store .map .use,
main.store .map .location {
	display: inline-block;
	margin: 0;
	width: 100%;
	padding: 20px 20px 0 20px;
	clear: both;
}

main.store .map .use.none,
main.store .map .location {
	display: none;
}

main.store .map .location.active {
	display: block;
}

main.store .map .select {
	display: inline-block;
	position: relative;
	overflow: hidden;
	margin: 0;
	width: 100%;
	border: 1px solid #ddd;
	background: #fff;
	border-radius: 4px;
}

main.store .map .select:before,
main.store .map .select:after {
	content: '';
	position: absolute;
	z-index: 2;
	top: 12px;
	right: 12px;
	width: 0;
	height: 0;
	border: 4px dashed;
	border-color: #666 transparent;
	pointer-events: none;
}

main.store .map .select:before {
	border-bottom-style: solid;
	border-top: none;
}

main.store .map .select:after {
	margin-top: 7px;
	border-top-style: solid;
	border-bottom: none;
}

main.store .map select {
	margin: 0;
	padding: 10px;
	width: 100%;
	font-size: 1em;
	line-height: 16px;
	text-shadow: none;
	border: none;
	border-radius: none;
	-webkit-appearance: none;
}

main.store .map input[type="text"] {
	margin: 0; 
	padding: 10px; 
	width: 100%;
	font-size: 1em;
	line-height: 16px;
	border: solid 1px #ddd;
	border-radius: 4px;
	box-sizing: border-box;
	clear: both;
}

main.store .map #loc-list {
	overflow-y: auto;
	overflow-x: hidden;
	margin: 20px 0 0 0;
	padding: 0;
	height: 400px;
	border-top: solid 1px #ddd;
	clear: both;
}

main.store .map #loc-list::-webkit-scrollbar {
	width: 8px;
	background: #fff;
}

main.store .map #loc-list::-webkit-scrollbar-thumb {
	background: #ccc;
}

main.store .map #loc-list ul {
	margin: 0;
	padding: 0;
	clear: both;
}

main.store .map #loc-list ul li {
	cursor: pointer;
	margin: 0;
	padding: 20px;
	border-bottom: solid 1px #ddd;
	clear: both;
}

main.store .map #loc-list ul li:hover {
	border-bottom: solid 1px #6f5987;
}

main.store .map #loc-list ul li:after {
	display: block;
	content: '';
	clear: both;
}

main.store .map #loc-list ul li.list-focus {
	background: #eee;
}

main.store .map #loc-list .loc-label {
	margin: 0;
	padding: 0;
	width: 15%;
	height: 40px;
	font-size: 0.7em;
	line-height: 1;
	text-align: center;
	color: #fff;
	float: left;
}

main.store .map #loc-list .loc-label.salon {
	line-height: 40px;
	background: #0099ff;
}

main.store .map #loc-list .loc-label.salon:after {
	content: 'サロン';
}

main.store .map #loc-list .loc-label.specialty {
	line-height: 40px;
	background: #0033ff;
}

main.store .map #loc-list .loc-label.specialty:after {
	content: '専門店';
}

main.store .map #loc-list .loc-label.department {
	line-height: 40px;
	background: #000066;
}

main.store .map #loc-list .loc-label.department:after {
	content: '百貨店';
}

main.store .map #loc-list .loc-label.clinic {
	padding: 10px 0 0 0;
	background: #6f5887;
}

main.store .map #loc-list .loc-label.clinic:after {
	content: 'クリ\Aニック';
	white-space: pre;
}

main.store .map #loc-list .loc-name {
	margin: -4px 0 0 0;
	padding: 0;
	width: 80%;
	font-size: 1.1em;
	line-height: 1.5;
	color: #6f5887;
	float: right;
}

main.store .map #loc-list .loc-name span {
	display: block;
	margin: 0;
	font-size: 0.9em;
	color: #666;
	clear: both;
}

#gmap .gm-style-iw {
	padding: 20px;
}

#gmap .gm-style-iw button {
	display: none !important;
}

#gmap .loc-name {
	margin: 0;
	padding: 0;
	font-size: 1.4em;
	font-weight: 500;
	clear: both;
}

#gmap .loc-name a {
	text-decoration: none;
}

#gmap .loc-dist {
	margin: 0;
	padding: 5px 0 0 0;
	clear: both;
}

#gmap .loc-open {
	margin: 0;
	padding: 5px 0 0 0;
	clear: both;
}

#gmap .loc-phone {
	margin: 0;
	padding: 5px 0 0 0;
	font-size: 1.4em;
	font-weight: 500;
	clear: both;
}

#gmap .loc-store {
	margin: 0;
	padding: 5px 0 0 0;
	clear: both;
}

main.store .notice {
	margin: 20px;
	padding: 20px 40px 40px;
	background: #ecf0f2;
	clear: both;
}

main.store .notice p {
	margin: 20px 0 0 0;
	padding: 0;
	clear: both;
}

main.store .notice ul {
	margin: 0;
	padding: 0;
	clear: both;
}

main.store .notice ul:after {
	display: block;
	content: '';
	clear: both;
}

main.store .notice ul li {
	margin: 20px 0 0 0;
	padding: 0;
	text-align: center;
	clear: both;
}

main.store .notice ul li span {
	display: block;
	margin: 0 0 8px 0;
	padding: 4px 0;
	width: 100%;
	font-size: 0.9em;
	color: #fff;
	line-height: normal;
	clear: both;
}

main.store .notice ul li span.clinic {
	background: #6f5887;
}

main.store .notice ul li span.salon {
	background: #0099ff;
}

main.store .notice ul li span.specialty {
	background: #0033ff;
}

main.store .notice ul li span.department {
	background: #000066;
}

main.store a {
	text-decoration: none;
}

main.store i {
	position: relative;
	top: -2px;
	margin: 0 0 0 8px;
	font-size: 0.8em;
}

main.product {
	display: block;
	margin: 0;
	padding: 40px 20px;
	clear: both;
}

main.product div {
	margin: 40px 0 0 0;
	padding: 0;
	text-align: center;
	clear: both;
}

main.product div:after {
	display: block;
	content: '';
	clear: both;
}

main.product div.newa-lift {
	margin: 0;
}

main.product h2 {
	margin: 80px 0;
	padding: 0;
	font-size: 2.4em;
	font-weight: 300;
	line-height: 1;
	text-align: center;
	clear: both;

	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	letter-spacing: 0.02em;

}

main.product h2 span {
	display: block;
	margin: 16px 0 0 0;
	padding: 0;
	font-size: 0.6em;
	line-height: 1;
	clear: both;
}

main.product h2 span a {
	display: inline-block;
	position: relative;
	top: -4px;
	margin: 0 0 0 8px;
	padding: 0;
	width: 30px;
	height: 30px;
	font-size: 0.6em;
	line-height: 30px;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: #6f5887;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.product h2 span a i {
	margin: 0 0 0 3px;
}

main.product h3 {
	margin: 0;
	padding: 0;
	font-size: 1.8em;
	font-weight: 500;
	line-height: normal;
	color: #6f5887;
	clear: both;
}

main.product h3 span {
	display: block;
	margin: 0 0 16px 0;
	padding: 8px 0;
	font-size: 0.6em;
	color: #fff;
	background: #6f5887;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.product h3 em {
	display: block;
	margin: 0 auto;
	padding: 0;
	width: 120px;
	height: 40px;
	background: url(../../assets3/newa-lift/logo.svg) no-repeat;
	background-size: 120px 40px;
	clear: both;

	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;

}

main.product h4 {
	margin: 0 0 16px 0;
	padding: 8px 0;
	font-size: 1.2em;
	font-weight: 500;
	line-height: normal;
	text-align: center;
	color: #fff;
	background: #666;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.product h5 {
	margin: 0;
	padding: 0;
	font-size: 1.4em;
	font-weight: 500;
	clear: both;
}

main.product p {
	margin: 16px 0 0 0;
	padding: 0;
	font-size: 1.1em;
	clear: both;
}

main.product .newa-lift ul,
main.product .essence ul,
main.product .other ul {
	margin: 0;
	padding: 0;
	clear: both;
}

main.product .newa-lift ul li a,
main.product .essence ul li a,
main.product .other ul li a {
	display: block;
	margin: 40px 0 0 0;
	padding: 0;
	width: 50%;
	font-size: 1.3em;
	font-weight: 500;
	float: left;

	font-feature-settings: "palt";
	-webkit-font-feature-settings: "palt";
	letter-spacing: 0.02em;

}

main.product .newa-lift ul li a span,
main.product .essence ul li a span,
main.product .other ul li a span {
	display: block;
	margin: 0;
	padding: 0;
	font-size: 0.8em;
}

main.product .newa-lift ul li a em,
main.product .essence ul li a em,
main.product .other ul li a em {
	display: block;
	margin: 4px 20px;
	padding: 2px 8px;
	font-size: 0.6em;
	color: #fff;
	background: #6f5887;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.product .newa-lift ul li a strong,
main.product .essence ul li a strong,
main.product .other ul li a strong {
	display: block;
	margin: 8px 0 0 0;
	font-size: 1.2em;
	font-weight: 500;
	color: #666;
}

main.product .newa-lift ul li a strong em,
main.product .essence ul li a strong em,
main.product .other ul li a strong em {
	background: #666;
}

main.product .newa-lift img,
main.product .essence img,
main.product .other img {
	display: block;
	margin: 0 auto;
	padding: 0;
	width: 80%;
	height: auto;
	clear: both;
}

main.product article figure {
	margin: 40px 0 0 0;
	padding: 0;
	clear: both;
}

main.product article figure .photo {
	margin: 0;
	padding: 0;
	border-top: 1px solid #ddd;
	background: #fff;
	clear: both;
}

main.product article figure figcaption {
	margin: 40px 0 0 0;
	padding: 0;
	clear: both;
}

main.product article figure .photo div {
	margin: 0;
	padding: 0;
}

main.product article div.repeat {
	margin: 20px 0 0 0;
	padding: 20px;
	text-align: left;
	background: #ecf0f2;
	clear: both;
}

main.product article figure dl {
	margin: 20px 0 0 0;
	padding: 0 0 20px 0;
	font-size: 1.4em;
	font-weight: 500;
	border-bottom: 1px solid #ddd;
	clear: both;
}

main.product article figure dl:after {
	display: block;
	content: '';
	clear: both;
}

main.product article figure dl:last-of-type {
	padding: 0;
	border: none;
}

main.product article figure dl dt {
	margin: 0;
	padding: 0;
	text-align: center;
	clear: both;
}

main.product article figure dl dd {
	margin: 16px 0 0 0;
	padding: 0;
	clear: both;
}

main.product article figure dl dt span {
	font-size: 1.8em;
}

main.product article figure dl dt em {
	display: inline-block;
	position: relative;
	top: -2px;
	margin: 0 8px;
	padding: 2px 8px;
	font-size: 0.6em;
	color: #fff;
	background: #666;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.product article figure dl dd a {
	display: block;
	margin: 0;
	padding: 8px 0;
	font-size: 1.2em;
	text-align: center;
	color: #fff;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.product article figure dl.normal dd a {
	background: #666;
}

main.product article figure dl.repeat dd a {
	background: #6f5987;
}

main.product article ul,
main.product table ul {
	margin: 0;
	padding: 0;
	clear: both;
}

main.product article ul li {
	margin: 2px 0 2px 1.5em;
	padding: 0;
	font-size: 1.1em;
	list-style: square;
	clear: both;
}

main.product table ul li {
	margin: 2px 0 2px 1.5em;
	padding: 0;
	list-style: square;
	clear: both;
}

main.product table {
	margin: 40px 0 0 0;
	padding: 0;
	width: 100%;
	font-size: 1.1em;
	border-collapse: collapse;
	text-align: left;
	clear: both;
}

main.product table th,
main.product table td {
	margin: 0;
	padding: 16px;
	vertical-align: middle;
	border: 1px solid #fff;
}

main.product table th {
	width: 30%;
	color: #fff;
	background: #6f5887;
}

main.product table td {
	width: 70%;
	background: #ecf0f2;
}

main.product i {
	margin: 0 8px 0 0;
}

main.product a:link,
main.product a:visited,
main.product a:active,
main.product a:hover {
	text-decoration: none;
}

main.page,
main.contact {
	display: block;
	margin: 0;
	padding: 40px 20px;
	clear: both;
}

main.page div {
	margin: 40px 0 0 0;
	padding: 0;
	clear: both;
}

main.page div:after {
	display: block;
	content: '';
	clear: both;
}

main.page .background {
	margin: 20px 0 0 0;
	padding: 20px;
	background: #ecf0f2;
	clear: both;
}

main.page .line {
	margin: 20px 0 0 0;
	padding: 20px;
	border: 1px solid #ddd;
	clear: both;
}

main.page h2,
main.magazine h2,
main.contact h2 {
	margin: 80px 0;
	padding: 0;
	font-size: 2.4em;
	font-weight: 300;
	line-height: 1;
	text-align: center;
	clear: both;

	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	letter-spacing: 0.02em;

}

main.page h2.multi,
main.contact h2.multi {
	line-height: normal;
}

main.page h2 span,
main.magazine h2 span,
main.contact h2 span {
	display: block;
	margin: 16px 0 0 0;
	padding: 0;
	font-size: 0.6em;
	line-height: 1;
	clear: both;
}

main.page h2 span a,
main.magazine h2 span a,
main.contact h2 span a {
	display: inline-block;
	position: relative;
	top: -4px;
	margin: 0 0 0 8px;
	padding: 0;
	width: 30px;
	height: 30px;
	font-size: 0.6em;
	line-height: 30px;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: #6f5887;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.page h2 span a i,
main.magazine h2 span a i,
main.contact h2 span a i {
	margin: 0 0 0 3px;
}

main.page h3,
main.contact h3 {
	margin: 0;
	padding: 0;
	font-weight: 500;
	color: #6f5887;
	clear: both;
}

main.page .care h3 {
	text-align: center;
}

main.page .care h3 span {
	display: block;
	margin: 0 0 8px 0;
	padding: 6px 0;
	font-size: 0.6em;
	text-align: center;
	color: #fff;
	background: #6f5887;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.page h4 {
	margin: 0;
	padding: 0;
	font-weight: 500;
	color: #6f5887;
	clear: both;
}

main.page p,
main.contact p {
	margin: 16px 0 0 0;
	padding: 0;
	font-size: 1.1em;
	clear: both;
}

main.page ul.customer {
	margin: 8px 0;
	padding: 0;
	clear: both;
}

main.page ul.customer li {
	margin: 0;
	padding: 0;
	clear: both;
}

main.page ul.customer li.form a {
	display: block;
	margin: 0;
	padding: 8px 0;
	font-size: 1.4em;
	font-weight: 500;
	text-align: center;
	color: #fff;
	background: #6f5887;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.page ul.customer li.tel {
	display: block;
	margin: 16px 0 0 0;
	padding: 8px;
	font-size: 2.2em;
	font-family: "din-condensed",sans-serif;
	font-weight: 500;
	text-align: center;
	color: #fff;
	background: #6f5887;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.page ul.customer li.tel i {
	display: none;
}

main.page ul.square {
	margin: 16px 0 0 0;
	padding: 0;
	font-size: 1.1em;
	clear: both;
}

main.page ul.square li {
	margin: 2px 0 2px 1.5em;
	padding: 0;
	list-style: square;
	clear: both;
}

main.page ol.decimal {
	margin: 16px 0 0 0;
	padding: 0;
	font-size: 1.1em;
	clear: both;
}

main.page ol.decimal li {
	margin: 2px 0 2px 1.5em;
	padding: 0;
	list-style: decimal;
	clear: both;
}

main.page table {
	margin: 0;
	padding: 0;
	width: 100%;
	border-collapse: collapse;
	text-align: left;
	clear: both;
}

main.page table th,
main.page table td {
	margin: 0;
	padding: 16px;
	vertical-align: middle;
	border: 1px solid #fff;
}

main.page table th {
	width: 30%;
	color: #fff;
	background: #6f5887;
}

main.page table td {
	width: 70%;
	background: #ecf0f2;
}

main.page div figure.medical h4 {
	margin: 16px 0 0 0;
}

main.page div figure.medical figcaption {
	margin: 0;
	padding: 0;
	clear: both;
}

main.page div figure.medical img {
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
	clear: both;
}

main.page .care article {
	margin: 40px 0 0 0;
	padding: 0;
	clear: both;
}

main.page .care p {
	margin: 20px 0 0 0;
}

main.page .care ul {
	margin: 0;
	padding: 0;
	clear: both;
}

main.page .care ul li {
	margin: 20px 0 0 0;
	padding: 0 0 20px 0;
	font-size: 1.4em;
	border-bottom: 1px solid #ddd;
	clear: both;
}

main.page .care ul li:last-child {
	padding: 0;
	border: none;
}

main.page .care ul li span {
	display: block;
	margin: 8px 0 0 0;
	padding: 0;
	font-size: 0.8em;
	clear: both;
}

main.page .faq article {
	margin: 0 0 40px 0;
	padding: 0;
	clear: both;
}

main.page .faq article:after {
	display: block;
	content: '';
	clear: both;
}

main.page .faq h3 {
	margin: 0;
	padding: 20px 0;
	line-height: 1;
	text-align: center;
	border-top: 2px solid #6f5887;
	clear: both;
}

main.page .faq ul {
	margin: 12px 0 0 0;
	padding: 0;
	clear: both;
}

main.page .faq ul li {
	margin: 8px 0 0 0;
	padding: 0;
	font-size: 1.2em;
	clear: both;
}

main.page .faq ol.square,
main.page .faq ol.decimal {
	margin: 8px 0 0 0;
	padding: 0;
	clear: both;
}

main.page .faq ol.square li {
	margin: 2px 0 2px 1.5em;
	padding: 0;
	list-style: square;
	clear: both;
}

main.page .faq ol.decimal li {
	margin: 2px 0 2px 1.5em;
	padding: 0;
	list-style: decimal;
	clear: both;
}

main.page .faq i {
	position: relative;
	top: -0.05em;
	font-size: 0.8em;
}

main.page .faq dl {
	margin: 0 0 40px 0;
	padding: 0 0 40px 2.6em;
	font-size: 1.1em;
	border-bottom: 1px solid #ddd;
	clear: both;
}

main.page .faq dl:last-of-type {
	margin: 0 0 40px 0;
}

main.page .faq dl:after {
	display: block;
	content: '';
	clear: both;
}

main.page .faq dl dt {
	display: block;
	margin: 0;
	padding: 0;
	font-weight: 500;
	color: #6f5887;
	clear: both;
}

main.page .faq dl dd {
	display: block;
	margin: 16px 0 0 0;
	padding: 0;
	clear: both;
}

main.page .faq dl dt::before {
	display: block;
	position: relative;
	top: 0;
	margin-left: -1.6em;
	width: 1.6em;
	font-size: 1.6em;
	font-family: Flaticon;
	content: "\f10d";
	color: #6f5887;
	float: left;
}

main.page .faq dl dd::before {
	display: block;
	position: relative;
	top: 0px;
	margin-left: -1.6em;
	width: 1.6em;
	font-size: 1.6em;
	font-family: Flaticon;
	content: "\f10c";
	float: left;
}

main.page .faq span a {
	display: inline-block;
	margin: 8px 0 0 0;
	padding: 8px 16px;
	line-height: 1;
	color: #fff;
	text-align: center;
	background: #6f5887;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.page .order article {
	margin: 40px 0;
	padding: 0;
	text-align: center;
	clear: both;
}

main.page .order h4 {
	margin: 0;
	padding: 20px 0;
	line-height: 1;
	border-top: 2px solid #6f5887;
	clear: both;
}

main.page .order h5 {
	display: table;
	margin: 16px auto 0;
	padding: 0 0 0 55px;
	font-size: 3.6em;
	font-family: "din-condensed",sans-serif;
	font-weight: 400;
	line-height: 1;
	letter-spacing: -0.04em;
	background: url(../../assets3/images/tel.svg) no-repeat left center;
	background-size: 45px 40px;
	clear: both;
}

main.page .order ul {
	margin: 0;
	padding: 0;
	clear: both;
}

main.page .order ul li {
	margin: 16px 0 0 0;
	padding: 0;
	clear: both;
}

main.page .order ul li a {
	display: block;
	margin: 0;
	padding: 16px 0;
	font-size: 1.4em;
	font-weight: 500;
	line-height: 1;
	color: #fff;
	background: #6f5887;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.page .order ul li span {
	display: block;
	margin: 8px 0 0 0;
	font-size: 0.8em;
}

main.page .flow {
	margin: 40px 0 0 0;
	padding: 20px;
	text-align: center;
	background: #ecf0f2;
	clear: both;
}

main.page .flow p a {
	display: block;
	margin: 20px 0 0 0;
	padding: 8px 0;
	font-size: 1em;
	font-weight: 500;
	line-height: normal;
	color: #fff;
	background: #6f5887;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.page .flow ol {
	display: table;
	margin: 0 auto;
	padding: 0;
	clear: both;
}

main.page .flow ol li {
	margin: 20px 0 0 0;
	padding: 0;
	font-size: 1.2em;
	font-weight: 500;
	text-align: center;
	clear: both;
}

main.page .flow ol li:nth-child(2),
main.page .flow ol li:nth-child(4),
main.page .flow ol li:nth-child(6),
main.page .flow ol li:nth-child(8) {
	display: none;
}

main.page .flow span {
	display: block;
	margin: 4px 0 0 0;
	font-size: 0.8em;
	font-weight: normal;
}

main.page .repeat {
	margin: 40px 0 0 0;
	padding: 0;
	clear: both;
}

main.page .repeat ol {
	display: table;
	margin: 0 auto;
	padding: 0;
	clear: both;
}

main.page .repeat ol li {
	margin: 20px 5% 0 5%;
	padding: 0;
	width: 40%;
	font-size: 1.4em;
	font-weight: 500;
	text-align: center;
	float: left;
}

main.page .repeat span {
	display: block;
	margin: 8px 0 0 0;
	font-size: 0.6em;
	font-weight: normal;
}

main.page .repeat i {
	display: block;
	margin: 0;
	font-size: 2em;
}

main.page .pay article {
	margin: 40px 0 0 0;
	padding: 0;
	clear: both;
}

main.page .pay h4 {
	margin: 0;
	padding: 20px 0;
	line-height: 1;
	text-align: center;
	border-top: 2px solid #6f5887;
	clear: both;
}

main.page .pay h4 span {
	display: inline-block;
	position: relative;
	top: -3px;
	margin: 0 0 0 8px;
	padding: 6px 16px;
	font-size: 0.6em;
	color: #fff;
	background: #6f5887;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.page .pay h5 {
	display: block;
	margin: 16px 0 0 0;
	padding: 6px 0;
	color: #fff;
	font-size: 1.1em;
	line-height: 1;
	text-align: center;
	background: #666;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.page .pay table {
	margin: 16px 0 0 0;
	padding: 0;
	width: 100%;
	border-collapse: collapse;
	text-align: left;
	clear: both;
}

main.page .pay table th,
main.page .pay table td {
	margin: 0;
	padding: 8px;
	width: 50%;
	font-weight: normal;
	text-align: center;
	color: #666;
	vertical-align: middle;
	background: none;
	border: 1px solid #ddd;
}

main.page .pay img {
	display: table;
	margin: 0 auto;
}

main.page .ship article {
	margin: 40px 0 0 0;
	padding: 0;
	clear: both;
}

main.page .ship h4 {
	margin: 0;
	padding: 20px 0;
	line-height: 1;
	text-align: center;
	border-top: 2px solid #6f5887;
	clear: both;
}

main.page .ship h4.caption {
	margin: 16px 0;
	padding: 20px 0;
	font-size: 1.8em;
	line-height: normal;
	border: none !important;
	background: #ecf0f2;
	clear: both;
}

main.page .ship h4 span {
	display: block;
	margin: 8px 20px 0;
	padding: 6px 16px;
	font-size: 0.6em;
	color: #fff;
	background: #6f5887;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

main.page .ship dl {
	margin: 16px 0;
	padding: 0;
	clear: both;
}

main.page .ship dl:after {
	display: block;
	content: '';
	clear: both;
}

main.page .ship dl dt {
	margin: 0;
	padding: 0;
	width: 20%;
	float: left;
}

main.page .ship dl dd {
	margin: 0;
	padding: 0;
	width: 80%;
	float: left;
}

main.page .ship table {
	margin: 16px 0 0 0;
	padding: 0;
	width: 100%;
	border-collapse: collapse;
	text-align: left;
	clear: both;
}

main.page .ship table th {
	margin: 0;
	padding: 16px;
	width: 20%;
	text-align: center;
	color: #6f5887;
	background: none;
	border: 1px solid #ddd;
}

main.page .ship table td {
	margin: 0;
	padding: 16px;
	width: 40%;
	font-weight: normal;
	text-align: center;
	color: #666;
	background: none;
	border: 1px solid #ddd;
}

main.page .ship img.gift {
	margin: 0 16px 0 0;
	padding: 0;
	width: 25%;
	height: auto;
	float: left;
}

main.page i {
	margin: 0 8px 0 0;
}

main.page a:link,
main.page a:visited,
main.page a:active,
main.page a:hover {
	text-decoration: none;
}


/* support
----------------------------------------------- */
.support {
	margin: 0;
	padding: 40px 0;
	text-align: center;
	background: #ecf0f2;
	clear: both;
}

.support article {
	margin: 0 20px;
	padding: 0;
	clear: both;
}

.support:after,
.support article:after {
	display: block;
	content: '';
	clear: both;
}

.support div {
	margin: 0 0 16px 0;
	padding: 0;
	clear: both;
}

.support h3 {
	margin: 0;
	padding: 0;
	font-size: 1.6em;
	font-weight: 500;
	line-height: 1.4;
	color: #6f5987;
	clear: both;

	font-feature-settings: "palt";
	-webkit-font-feature-settings: "palt";
	letter-spacing: 0.02em;

}

.support h4 {
	margin: 24px 0 0 0;
	padding: 0;
	font-size: 1.6em;
	font-weight: normal;
	line-height: 1;
	color: #6f5887;
	clear: both;
}

.support h4 span {
	display: inline-block;
	position: relative;
	top: -3px;
	margin: 0 8px 0 0;
	padding: 6px 16px;
	font-size: 0.6em;
	color: #fff;
	background: #6f5887;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

.support h5 {
	margin: 20px 0 0 0;
	padding: 0;
	font-size: 1.6em;
	line-height: 1;
	color: #6f5887;
	clear: both;
}

.support h6 {
	display: table;
	margin: 0 auto;
	padding: 0 0 0 49px;
	font-size: 3em;
	font-family: "din-condensed",sans-serif;
	font-weight: 400;
	line-height: 1;
	letter-spacing: -0.04em;
	background: url(../../assets3/images/tel.svg) no-repeat left center;
	background-size: 39px 35px;
	clear: both;
}

.support p {
	margin: 8px 0;
	padding: 0;
	font-size: 1em;
	clear: both;
}

.support p a {
	display: block;
	margin: 20px 0 0 0;
	padding: 8px 0;
	font-size: 1.4em;
	font-weight: 500;
	color: #fff;
	text-decoration: none;
	background: #6f5887;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

.support ul {
	display: table;
	margin: 0 auto;
	padding: 0;
	text-align: left;
	clear: both;
}

.support ul li {
	margin: 4px 0 0 1.5em;
	padding: 0;
	font-size: 1.05em;
	list-style: square;
	clear: both;
}

.support i {
	margin: 0 8px 0 0;
}


/* sns
----------------------------------------------- */
.sns {
	margin: 40px 20px;
	padding: 0;
	clear: both;
}

.sns:after {
	display: block;
	content: '';
	clear: both;
}

.sns .facebook {
	margin: 0 0 0 0;
	padding: 0;
	width: 100%;
	clear: both;
}

.sns .twitter {
	margin: 40px 0 0 0;
	padding: 0;
	width: 100%;
	border: 1px solid #eee;
	box-sizing: border-box;
	clear: both;
}

.sns .instagram {
	margin: 40px 0 0 0;
	padding: 0;
	width: 100%;
	clear: both;
}

.sns ul {
	margin: 0;
	padding: 0;
	clear: both;
}

.sns ul li {
	margin: 0;
	padding: 0;
	width: 33.3%;
	float: left;
}

.sns ul li img {
	width: 100%;
	height: auto;
}

.share {
	margin: 0;
	padding: 0;
	width: 100%;
	clear: both;
}

.share p {
	margin: 0;
	padding: 20px 0;
	font-size: 1.4em;
	font-weight: bold;
	text-align: center;
	color: #999;
	clear: both;
}

.share p span {
	display: block;
	margin: 0 0 8px 0;
}

.share p a {
	display: inline-block;
	margin: 0 0 0 16px;
	font-size: 1.2em;
}

.share p a i.line {
	display: block;
	position: relative;
	top: 3px;
	margin: 0;
	padding: 0;
	width: 25px;
	height: 24px;
	background: url(../../assets3/images/line.svg) no-repeat;
	background-size: auto 24px;
	clear: both;
}

.share a:link,
.share a:visited,
.share a:hover {
	color: #999;
	text-decoration: none;
}


/* scroll
----------------------------------------------- */
.scroll {
	margin: 0;
	padding: 0;
	width: 100%;
	clear: both;
}

.scroll p a {
	display: block;
	margin: 0;
	padding: 0;
	font-size: 1em;
	font-weight: bold;
	line-height: 40px;
	text-align: center;
	background: #666;
	clear: both;
}

.scroll p a i {
	margin: 0 5px 0 0;
}

.scroll a:link,
.scroll a:visited {
	color: #fff;
	text-decoration: none;
}

.scroll a:hover {
	opacity: 0.6;
}


/* banner
----------------------------------------------- */
.newa-lift-lp .banner {
	margin: 0;
	padding: 0;
	clear: both;
}

.newa-lift-lp .banner:after {
	display: block;
	content: '';
	clear: both;
}

.newa-lift-lp .banner h3 {
	display: block;
	margin: 0;
	padding-top: 88.54%;
	width: 100%;
	height: 0;
	background: url(../../assets/cp/joy-page-sp-01.jpg) no-repeat;
	background-size: contain;
	clear: both;

	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;

}

.newa-lift-lp .banner h4.tel a {
	display: block;
	margin: 0;
	padding-top: 21.77%;
	width: 100%;
	height: 0;
	background: url(../../assets/cp/joy-page-sp-02.jpg) no-repeat;
	background-size: contain;
	clear: both;

	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;

}

.newa-lift-lp .banner h4.net a {
	display: block;
	margin: 0;
	padding-top: 20.41%;
	width: 100%;
	height: 0;
	background: url(../../assets/cp/joy-page-sp-03.jpg) no-repeat;
	background-size: contain;
	clear: both;

	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;

}

.newa-lift-lp .banner h5 {
	display: block;
	margin: 0;
	padding-top: 46.87%;
	width: 100%;
	height: 0;
	background: url(../../assets/cp/joy-page-sp-04.jpg) no-repeat;
	background-size: contain;
	clear: both;

	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;

}

.newa-lift-lp .banner p a {
	display: block;
	margin: 0;
	padding-top: 107.1%;
	width: 100%;
	height: 0;
	background: url(../../assets/cp/joy-page-sp-05.jpg) no-repeat;
	background-size: contain;
	clear: both;

	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;

}

.newa-lift-lp .banner a:hover {
	opacity: 1;
}

.page .banner2 {
	margin: 0;
	padding: 0;
	background: #46b034;
	clear: both;
}

.page .banner2:after {
	display: block;
	content: '';
	clear: both;
}

.page .banner2 p a img {
	display: block;
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
	clear: both;
}

.page .prize {
	margin: 40px 0 0 0;
	padding: 0;
	width: 100%;
	background: #e4007f;
	clear: both;
}

.page .prize:after {
	display: block;
	content: '';
	clear: both;
}

.page .prize h3 a img {
	display: block;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	height: auto;
	clear: both;
}

.page .photo {
	margin: 0;
	padding: 0;
	width: 100%;
	background: #6f5887;
	clear: both;
}

.page .photo:after {
	display: block;
	content: '';
	clear: both;
}

.page .photo h3 a img {
	display: block;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	height: auto;
	clear: both;
}


/* announce
----------------------------------------------- */
.announce {
	margin: 40px 0 0 0;
	padding: 0;
	clear: both;
}

.announce p a {
	display: block;
	margin: 0;
	padding: 0;
	border-radius: 0 !important;
	background: none !important;
	clear: both;
}

.announce img {
	width: 100%;
	height: auto;
}


/* holiday
----------------------------------------------- */
.holiday {
	margin: 40px auto 0;
	padding: 20px;
	text-align: center;
	background: #ecf0f2;
	clear: both;
}

.home .holiday {
	margin: 0 auto 1px;
}

.holiday:after {
	display: block;
	content: '';
	clear: both;
}

.holiday a {
	display: block;
	margin: 0;
	padding: 0;
	clear: both;
}

.holiday h4 {
	display: block;
	margin: 0;
	padding: 10px 20px;
	font-size: 1.4em;
	line-height: 1.4;
	color: #fff;
	background: #dd0000;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}

.holiday p {
	margin: 15px 0 0 0 !important;
	padding: 0;
	font-size: 1.2em !important;
	line-height: 1;
	clear: both;
}

.holiday a:link,
.holiday a:visited,
.holiday a:active {
	color: #6f5987;
	text-decoration: none;
}

.holiday a:hover {
	opacity: 0.6;
}


/* asp
----------------------------------------------- */
main.asp {
	display: block;
	margin: 0;
	padding: 120px 0 40px 0;
	clear: both;
}

main.asp:after {
	display: block;
	content: '';
	clear: both;
}

.logout {
	margin: 0;
	padding: 0;
	clear: both;
}

.logout p a {
	display: block;
	margin: 30px 20px 20px;
	padding: 0;
	font-size: 1.4em;
	font-weight: bold;
	line-height: 40px;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: #6f5887;
	clear: both;

	border-radius: 100px;
	-webkit-border-radius: 100px;

}


/* footer
----------------------------------------------- */
footer {
	margin: 0;
	padding: 20px 0;
	text-align: center;
	clear: both;
}

footer h6 a {
	display: block;
	margin: 0 auto;
	padding: 0;
	width: 75px;
	line-height: 40px;
	background: url(../../assets3/images/jmec.svg) no-repeat left center;
	clear: both;

	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;

}

footer ul {
	margin: 20px 0;
	padding: 0;
	border-top: 1px solid #ddd;
	clear: both;
}

footer ul:after {
	display: block;
	content: '';
	clear: both;
}

footer ul li {
	margin: 0;
	padding: 0;
	width: 50%;
	text-align: center;
	border-bottom: 1px solid #ddd;
	box-sizing: border-box;
	float: left;
}

footer ul li a {
	display: block;
	margin: 0;
	padding: 10px 0;
	font-size: 0.9em;
	line-height: 1;
}

footer ul li:nth-child(odd) {
	border-right: 1px solid #ddd;
}

footer address {
	margin: 0;
	padding: 0;
	font-size: 0.7em;
	font-style: normal;
	clear: both;
}

footer a:link,
footer a:visited,
footer a:active {
	color: #666;
	text-decoration: none;
}

footer a:hover {
	opacity: 0.6;
}
