@charset "utf-8";

/* ------ FontAwesome ------ */

@font-face {
	font-family: 'FontAwesome';
	src: url('../font/FontAwesome/fontawesome-webfont.eot?v=4.0.3');
	src: url('../font/FontAwesome/fontawesome-webfont.eot?#iefix&v=4.0.3') format('embedded-opentype'), url('../font/FontAwesome/fontawesome-webfont.woff?v=4.0.3') format('woff'), url('../font/FontAwesome/fontawesome-webfont.ttf?v=4.0.3') format('truetype'), url('../font/FontAwesome/fontawesome-webfont.svg?v=4.0.3#fontawesomeregular') format('svg');
	font-weight: normal;
	font-style: normal
}

/* ------ common ------ */

* {
	margin: 0;
	padding: 0;
	word-break: normal;
	line-break: strict;
	outline: none;
	box-sizing: border-box
}

html {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 62.5%;
	font-style: normal;
	line-height: 1.6;
	font-feature-settings: "palt";
	-webkit-overflow-scrolling: touch
}
 
body {                                                                                                                    
	height: 100%; 
	color: #000;
	font-size: 1.2rem;
	font-weight: 500;
	background: #fff;
	overflow-x: hidden;
	overflow-y: scroll;
    -webkit-text-size-adjust: 100%
}

h1, h2, h3, h4, h5, h6 {
	line-height: 1.0
}

img { max-width: 100% }
ol, ul, li {
  list-style: none
}

table {
	border-spacing: 0;
	border-collapse: collapse
}

form label { cursor: pointer }
button,
textarea,
input[type="text"],
input[type="submit"] {
	border-radius: 0;
	-webkit-appearance: none
}

a {
	color: #000;
	text-decoration: none;
	transition: all 0.3s ease-in-out
}

a:hover { transition: all 0.3s ease-in-out }
a:focus { outline: none }
a,
input[type=radio],
input[type=checkbox],
input[type=submit],
button, select {
  cursor: pointer;
  transition: all 0.3s ease-in-out;
}

a img { border: none }
.cf:after {
	content: '';
	display: block;
	clear: both
}

::-moz-selection {
	color: #fff;
	background: #000
}

::selection {
	color: #fff;
	background: #000
}

::-webkit-input-placeholder { color: #999 }
::-moz-placeholder {
	color: #999;
	opacity: 1
}

:-ms-input-placeholder { color: #999 }
.red { color: #f00 }
.bold { font-weight: 600 }


/* ------ header ------ */

header .inner {
	width: 1000px;
	font-size: 0;
	margin: 0 auto
}

header .logo {
	width: 200px;
	vertical-align: top;
	margin-right: 10px;
	display: inline-block
}

header .headerMain {
	width: 790px;
	vertical-align: top;
	display: inline-block
}

header .headerTop { border: 2px solid #000 }
header .headerTopObi {
	text-align: right;
	padding: 3px 10px 6px;
	background: #000
}

header .headerTopInner { font-size: 0 }
header .headerTopTitle {
	width: 460px;
	padding: 4px 0;
	display: inline-block
}
	
header .headerTopBtn {
	width: 284px;
	margin-top: 6px;
	float: right
}

header .headerTopBtn ul { font-size: 0 }
header .headerTopBtn li:nth-child(1) {
	width: 109px;
	vertical-align: top;
	margin-right: 10px;
	display: inline-block
}

header .headerTopBtn li:nth-child(2) {
	width: 145px;
	vertical-align: top;
	margin-right: 20px;
	display: inline-block
}

header .headerTxtTop {
	font-size: 0;
    margin-top: 10px
}

header .headerTxtTitle {
    width: 550px;
    vertical-align: middle;
	display: inline-block
}

header .headerTxtTitle h1 {
	font-size: 2.4rem;
	font-weight: 900
}

header .headerTxtTitle.regist h1 { font-size: 2rem }
header .headerRss {
	width: 240px;
	font-size: 1.4rem;
	vertical-align: middle;
	text-align: right;
	display: inline-block
}

header .headerRss a {
	color: #11c;
	text-decoration: underline;
	position: relative
}

header .headerRss a::before {
	content: "";
    width: 16px;
    height: 16px;
    margin: auto;
    background: url(../img/rss_icon.gif) no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: -26px
}

header .headerTxt {
    font-size: 1.2rem;
	line-height: 1.4;
    margin-top: 10px
}

body.ems header .headerTxt { font-size: 1.5rem }

@media screen and (min-width: 769px) {
	header .headerTopBtn .menu-btn { display: none }
}

@media screen and (max-width: 768px) {
	header .inner { width: 100% }
	header .logo { display: none }
	header .headerMain {
		width: 100%;
		display: block
	}

	header .headerTop {
		border: none;
		border-bottom: 1px solid #c1c1c1
	}

	header .headerTopObi { padding: 6px 4% }
	header .headerTopInner {
		width: 100%;
		height: 60px;
		padding: 6px 4% 6px 0;
		background: #fff
	}
	
	body.fixed header .headerTopInner {
		border-bottom: 1px solid #c1c1c1;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 9999
	}
	
	header .headerTopTitle {
		width: calc(100% - 58px);
		vertical-align: middle;
		padding: 0;
		margin-right: 10px;
		display: inline-block
	}
	
	header .headerTopBtn {
		width: 48px;
		vertical-align: middle;
		text-align: center;
		margin-top: 0;
		display: inline-block;
		float: none
	}

	header .headerTxtTitle {
		width: 100%;
		padding: 0 4%;
		display: block
	}

	body.fixed header .headerTxtTitle { padding-top: 60px }
	header .headerTxtTitle h1 { font-size: 1.8rem }
	header .headerTxtTitle.regist h1 {
		font-size: 1.8rem;
		line-height: 1.3
	}
	
	header .headerRss {
		width: 100%;
		padding: 0 4%;
		margin-top: 10px;
		display: block
	}

	header .headerTxt { padding: 0 4% }
	body.paging header .headerTxt,
	body.newrelease header .headerTxt,
	body.alltitle header .headerTxt,
	body.faq header .headerTxt,
	body.policy header .headerTxt,
	body.leagle header .headerTxt,
	body.cast header .headerTxt,
	body.contact header .headerTxt,
	body.contactForm header .headerTxt {
		display: none
	}
	
	
	/* menu trigger */
	
	header .headerTopBtn li:nth-child(3) a {
		height: 48px;
		line-height: 1;
		padding: 4px 0;
		border: 2px solid #1f1f1f;
		position: relative;
		display: block
	}
	
	.menu-trigger,
	.menu-trigger span {
		transition: all .4s;
		display: inline-block
	}
	
	.menu-trigger .menu-icon {
		width: 20px;
		height: 16px;
		margin: 0 auto 8px;
		position: relative;
		top: 3px;
		display: inline-block
	}
	
	.menu-trigger span {
		width: 100%;
		height: 2px;
		background: #1f1f1f;
		position: absolute;
		left: 0;
		border-radius: 4px
	}
	
	.menu-trigger span:nth-of-type(1) { top: 0 }
	.menu-trigger span:nth-of-type(2) { top: 7px }
	.menu-trigger span:nth-of-type(3) { bottom: 0 }
	.menu-trigger span:nth-of-type(1) { animation: menu-bar01 .75s forwards }
	.menu-trigger.active span:nth-of-type(1) { transform: translateY(7px) rotate(-45deg) }
	.menu-trigger.active span:nth-of-type(2) {
		left: 50%;
		animation: active-menu-bar02 .8s forwards;
		opacity: 0
	}
	
	@-webkit-keyframes active-menu-bar02 {
		100% { height: 0 }
	}
	
	@keyframes active-menu-bar02 {
		100% { height: 0 }
	}
	
	.menu-trigger.active span:nth-of-type(3) { transform: translateY(-7px) rotate(45deg) }
	.menu-trigger p { font-size: 1rem }

}


/* ------ nav ------ */

.headerNav nav {
	width: 100%;
	height: 40px;
	//background: url(../img/nav_bg.jpg) repeat;
	margin-top: 10px
}

.headerNav nav .inner {
	width: 1000px;
	margin: 0 auto;
	border-top: 1px solid #000;
    border-bottom: 1px solid #000;
	background: linear-gradient(#efefef,#c1c1c1)
}

.headerNav nav ul {
	width: 1000px;
  	display: -webkit-box;
  	display: -ms-flexbox;
  	display: flex;
  	-webkit-box-orient: horizontal;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: row;
  	flex-direction: row;
	-ms-flex-pack: distribute;
	justify-content: space-evenly
}

.headerNav nav li {
	height: 40px;
	line-height: 40px;
	vertical-align: top;
	text-align: center;
	display: inline-block
}

.headerNav nav li a {
	color: #fff;
	font-size: 2rem;
	font-weight: 900;
	text-shadow: 1px 1px 0 #000, -1px -1px 0 #000, -1px 1px 0 #000, 1px -1px 0 #000, 0px 1px 0 #000, 0-1px 0 #000, -1px 0 0 #000, 1px 0 0 #000;
	display: block
}

.headerNav nav li a .red {
	text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, 0px 1px 0 #fff, 0-1px 0 #fff, -1px 0 0 #fff, 1px 0 0 #fff;
	transition: all 0.3s ease-in-out
}

.headerNav nav li.current a,
.headerNav nav li a:hover {
	color: #000;
	text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, 0px 1px 0 #fff, 0-1px 0 #fff, -1px 0 0 #fff, 1px 0 0 #fff
}

.headerNav nav li.current a .red,
.headerNav nav li a:hover .red {
	color: #fff;
	text-shadow: 1px 1px 0 #f00, -1px -1px 0 #f00, -1px 1px 0 #f00, 1px -1px 0 #f00, 0px 1px 0 #f00, 0-1px 0 #f00, -1px 0 0 #f00, 1px 0 0 #f00
}

@media screen and (max-width: 768px) {
	.headerNav nav { display: none }
}


/* drawer menu */

@media screen and (min-width: 769px) {
	.topNav { display: none }
}

@media screen and (max-width: 768px) {
	.topNav nav {
		width: 100%;
		height: 100%;
		padding-bottom: 200px;
		background: rgba(255,255,255,0.98);
		position: fixed;
		top: 82px;
		transition: top 0.3s;
		display: none;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		z-index: 3
	}

	body.fixed .topNav nav { top: 60px }
	.topNav #spNav { width: 100% }
	.topNav #spNav > li {
		width: 100%;
		position: relative
	}
	
	.topNav #spNav > li + li { margin-top: 0 }
	.topNav #spNav .link {
		height: 50px;
		font-size: 1.4rem;
		line-height: 50px;
		padding: 0 10px 0 calc(4% + 30px);
		border-bottom: 1px dashed #c1c1c1;
		background: #efefef;
		position: relative;
		pointer-events: all;
		cursor: pointer
	}
	
	.topNav #spNav li:nth-child(1) .link::before,
    .topNav #spNav li:nth-child(2) .link::before {
		content: "";
		width: 20px;
		height: 20px;
		margin: auto;
		background: url(../img/icon/icon_menu.png) no-repeat;
		background-size: contain;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 4%
	}
	
	.topNav #spNav li:nth-child(3) .link::before {
		content: "";
		width: 20px;
		height: 20px;
		margin: auto;
		background: url(../img/icon/icon_genre.png) no-repeat;
		background-size: contain;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 4%
	}

	.topNav #spNav .link::after {
		content: '';
		width: 8px;
		height: 8px;
		margin: auto;
		border: 0;
		border-top: 1px solid #000;
		border-right: 1px solid #000;
		transform: rotate(135deg);
		position: absolute;
		top: 0;
		right: 14px;
		bottom: 0;
		transition: all 0.3s ease-in-out
	}
	
	.topNav #spNav .open .link::after { transform: rotate(315deg) }
	.topNav #spNav .submenu {
		padding-top: 0;
		margin-top: 0;
		border-top: none;
		display: none
	}

	.topNav #spNav li:nth-child(1) .submenu { display: block }
	.topNav #spNav li:nth-child(1) .submenu li,
	.topNav #spNav li:nth-child(2) .submenu li,
	.topNav #spNav li:nth-child(3) .submenu li {
		width: 100%;
		height: 50px;
		font-size: 1.4rem;
		line-height: 50px;
		padding-left: 10px;
		margin-right: 0;
		margin-bottom: 0;
		border-bottom: 1px dashed #c1c1c1;
		display: block
	}

	.topNav #spNav li:nth-child(1) .submenu a,
	.topNav #spNav li:nth-child(2) .submenu a,
	.topNav #spNav li:nth-child(3) .submenu a {
		padding-left: 10px;
		position: relative;
		display: block
	}
	
	.topNav #spNav li:nth-child(1) .submenu a::after,
	.topNav #spNav li:nth-child(2) .submenu a::after,
	.topNav #spNav li:nth-child(3) .submenu a::after {
		content: '';
		width: 6px;
		height: 6px;
		margin: auto;
		border: 0;
		border-top: 1px solid #000;
		border-right: 1px solid #000;
		transform: rotate(45deg);
		position: absolute;
		top: 0;
		right: 14px;
		bottom: 0
	}
}


/* ------ content wrap ------ */

.contentWrap {
	width: 1000px;
	padding-top: 10px;
	margin: 0 auto
}

@media screen and (max-width: 768px) {
	.contentWrap { width: 100% }
}


/* ------ main wrap ------ */

.mainWrap {
	width: 760px;
	float: right
}

@media screen and (max-width: 768px) {
	.mainWrap {
		width: 100%;
		float: none
	}	
}


/* blog banner */

.blogBn { border: 1px solid #c1c1c1 }
.blogBn img {
	width: 100%;
	display: block
}

@media screen and (max-width: 768px) {
	.blogBn {
		width: 92%;
		margin: 0 auto
	}
}


/* affiliate banner */

.affiliateBn {
    text-align: center;
    padding: 10px;
    margin-top: 20px;
    border: 1px solid #c1c1c1
}

.affiliateBn img {
	width: 100%;
	display: block
}

.affiliateBn p {
	font-size: 1.3rem;
	margin-top: 10px
}

.affiliateBn a {
	color: #11c;
	text-decoration: underline
}

@media screen and (max-width: 768px) {
	.affiliateBn {
		width: 92%;
		text-align: left;
		margin: 20px auto 0
	}

	.affiliateBn p { font-size: 1.2rem }
	.affiliateBn p br { display: none }
}


/* main slider */

.mainSlider {
    text-align: center;
    padding: 10px;
    margin-top: 20px;
    border: 1px solid #c1c1c1
}

.mainSlider .sliderWrap { overflow: hidden }
.mainSlider img {
	width: 100%;
	display: block
}

.mainSlider p {
	font-size: 1.3rem;
	margin-top: 10px
}

.mainSlider a {
	color: #11c;
	text-decoration: underline
}

@media screen and (max-width: 768px) {
	.mainSlider {
		width: 92%;
		text-align: left;
		margin: 20px auto 0
	}

	.mainSlider p { font-size: 1.2rem }
	.mainSlider p br { display: none }
}


/* new works banner */

.newWorksBn { margin-top: 20px }
.newWorksBn li + li { margin-top: 20px }
.newWorksBn li img {
	width: 100%;
	display: block
}

@media screen and (max-width: 768px) {
	.newWorksBn { padding: 0 4% }
}


/* streaming info */

.streamingInfo {
	font-size: 0;
	padding: 10px;
	margin-top: 20px;
	background: #000;
	display: flex
}

.streamingInfoBox {
    width: 365px;
	font-size: 0;
    vertical-align: top;
    padding: 8px;
    border: 2px solid #fff;
    display: inline-block
}

.streamingInfoBox + .streamingInfoBox { margin-left: 10px }
.streamingInfoBox .imageWrap {
	width: 150px;
	height: 200px;
	vertical-align: top;
	margin-right: 10px;
	display: inline-block;
	overflow: hidden
}

.streamingInfoBox .imageWrap img { width: 100% }
.streamingInfoBox .txtWrap {
	width: 185px;
	color: #fff;
	font-size: 1.2rem;
	vertical-align: top;
	display: inline-block
}

.streamingInfoBox .streamingInfoBoxTop { font-size: 0 }
.streamingInfoBox .position {
	width: 105px;
	color: #f90;
	font-size: 1.2rem;
	vertical-align: middle;
	display: inline-block
}

.streamingInfoBox .tag {
	width: 80px;
    height: 20px;
    color: #000;
    font-size: 1.3rem;
    font-weight: 600;
    line-height: 20px;
    vertical-align: middle;
    text-align: center;
    background: #f90;
    border-radius: 10px;
	text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, 0px 1px 0 #fff, 0-1px 0 #fff, -1px 0 0 #fff, 1px 0 0 #fff;
    display: inline-block
}

.streamingInfoBox .tag.now { color: #f00 }
.streamingInfoBox .txt p:nth-child(2) {
    color: #ff0000;
	font-size: 1.3rem
}

.streamingInfoBox .txt p:nth-child(3) { line-height: 1.4 }
.streamingInfoBox .btn { margin-top: 10px }
.streamingInfoBox .btn img {
	width: 100%;
	max-width: 185px;
	height: 30px
}

@media screen and (max-width: 768px) {
	.streamingInfo {
		padding: 10px 4%;
		display: block
	}
	
	.streamingInfoBox {
		width: 100%;
		display: block
	}

	.streamingInfoBox + .streamingInfoBox {
		margin-top: 10px;
		margin-left: 0;
	}

	.streamingInfoBox .imageWrap {
		width: 140px;
		height: 196px
	}

	.streamingInfoBox .txtWrap { width: calc(100% - 150px) }
	.streamingInfoBox .position { width: calc(100% - 80px) }
}


/* info wrap */

.infoWrap {
	font-size: 0;
	margin-top: 20px
}

.infoWrap .blurayWrap {
	width: 460px;
	vertical-align: top;
	margin-right: 10px;
	display: inline-block
}

.infoWrap .blurayContent {
	font-size: 0;
	padding: 10px;
	border: 1px solid #c1c1c1;
	border-top: none
}

.infoWrap .blurayContent .imageWrap {
	width: 150px;
	vertical-align: top;
	margin-right: 10px;
	display: inline-block
}

.infoWrap .blurayContent .txtWrap {
    width: 278px;
    font-size: 1.2rem;
	line-height: 1.4;
    vertical-align: top;
    display: inline-block;
}

.infoWrap .blurayContent .txtWrap p:nth-child(1) {
	color: #cc00ff;
	font-size: 1.3rem
}

.infoWrap .blurayContent .txtWrap p + p { margin-top: 10px }
.infoWrap .blurayContent .txtWrap a {
	color: #f00;
	text-decoration: underline
}

.infoWrap .rightWrap {
	width: 290px;
	vertical-align: top;
	display: inline-block
}

.infoWrap .rightWrap .updateWrapTitle { border: 1px solid #c1c1c1 }
.infoWrap .rightWrap .updateContent {
	height: 140px;
    padding: 10px 0;
    border: 1px solid #c1c1c1;
    border-top: none;
	overflow: auto
}

.infoWrap .rightWrap .affiliateWrap { margin-top: 10px }
.infoWrap .rightWrap .affiliateWrapTitle { border: 1px solid #c1c1c1 }
.infoWrap .rightWrap .affiliateContent {
	font-size: 1.2rem;
	line-height: 1.4;
	padding: 10px;
	border: 1px solid #c1c1c1;
	border-top: none
}

.infoWrap .rightWrap .affiliateContent p + p { margin-top: 10px }
.infoWrap .rightWrap .affiliateContent a {
    color: #11c;
    text-decoration: underline
}

@media screen and (max-width: 768px) {
	.infoWrap .blurayWrap {
		width: 100%;
		padding: 0 4%;
		margin-right: 0;
		display: block
	}
	
	.infoWrap .blurayWrapTitle img { width: 100% }
	.infoWrap .blurayContent .imageWrap {
		width: 240px;
		margin: 0 auto 20px;
		display: block
	}
	
	.infoWrap .blurayContent .txtWrap { width: 100% }
	.infoWrap .rightWrap {
		width: 100%;
		padding: 0 4%;
		margin-top: 20px;
		display: block
	}

	.infoWrap .rightWrap .updateWrapTitle img { width: 100% }
	.infoWrap .rightWrap .updateContent { height: 200px }
	.infoWrap .rightWrap .updateContent iframe {
		width: 100%;
		height: 100%
	}

	.infoWrap .rightWrap .affiliateWrap { margin-top: 20px }
	.infoWrap .rightWrap .affiliateWrapTitle img { width: 100% }
}


/* news wrap */

.newsWrap { margin-top: 20px }
.newsWrap .newsWrapTitle {
	height: 30px;
	font-size: 1.4rem;
    font-weight: 600;
	line-height: 30px;
    letter-spacing: 0.05em;
    padding: 0 10px 0 36px;
	border: 1px solid #c1c1c1;
    background: #efefef;
	position: relative
}

.newsWrap .newsWrapTitle::before {
    content: "";
    width: 20px;
    height: 20px;
    margin: auto;
    background: url(../img/icon/icon_info.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 10px
}

.newsWrap .newsWrapContent {
	padding: 10px 0 10px 10px;
	border: 1px solid #c1c1c1;
	border-top: none;
	overflow: auto
}

@media screen and (max-width: 768px) {
	.newsWrap { padding: 0 4% }
	.newsWrap .newsWrapContent {
		height: 200px;
		padding: 10px
	}
	
	.newsWrap .newsWrapContent iframe {
		width: 100%;
		height: 100%
	}
}


/* iframe news */

.iframeNews {
	width: 738px;
	margin: 0 auto
}

.iframeNews li + li {
	padding-top: 20px;
	margin-top: 20px;
	border-top: 1px dashed #c1c1c1
}

.iframeNews .iframeNewsContent {
	font-size: 0;
	margin-top: 6px
}

.iframeNews .iframeNewsContent .imageWrap {
	width: 200px;
	vertical-align: top;
	margin-right: 20px;
	display: inline-block
}

.iframeNews .iframeNewsContent .txtWrap {
	width: calc(100% - 240px);
	font-size: 1.2rem;
	vertical-align: top;
	display: inline-block
}

.iframeNews .iframeNewsContent .txtWrap a {
	color: #11c;
	font-size: 1.3rem;
	text-decoration: underline
}

.iframeNews .iframeNewsContent .txtWrap span {
    color: #36f;
    font-size: 1.3rem
}

@media screen and (max-width: 685px) {
	.iframeNews { width: 100% }
	.iframeNews .iframeNewsContent .imageWrap {
		width: 200px;
		margin: 0 auto;
		display: block
	}

	.iframeNews .iframeNewsContent .imageWrap img { width: 100% }
	.iframeNews .iframeNewsContent .txtWrap {
		width: 100%;
		margin-top: 10px;
		display: block
	}
}

/* Unsubscribe*/	
	
.Unsubscribe {
    position: relative;
    margin: 2em 0;
    padding: 25px 10px 7px;
	background: #FFC107;
    border: solid 2px #ffa500;
}

.Unsubscribe .Unsubscribe-title {
    position: absolute;
    display: inline-block;
    top: -2px;
    left: -2px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #ff8c00;
    color: #ffffff;
    font-weight: bold;
}
.Unsubscribe p {
    margin: 0; 
    padding: 0;
}


/* new work wrap */

.newworkWrap { margin-top: 20px }
.newworkWrap .newworkWrapTitle {
	font-size: 0;
	border: 1px solid #c1c1c1
}

.newworkWrap .newworkWrapTitle .imageWrap {
	width: 580px;
	vertical-align: middle;
	margin-right: 10px;
	display: inline-block
}

.newworkWrap .newworkWrapTitle .more {
	width: 132px;
	vertical-align: middle;
	text-align: right;
	margin-right: 10px;
	display: inline-block
}

.newworkWrap .newworkWrapTitle .more a {
    color: #11c;
	font-size: 1.2rem;
    text-decoration: underline;
    position: relative
}

.newworkWrap .newworkWrapTitle .more a::before {
    content: "";
    width: 20px;
    height: 20px;
    margin: auto;
    background: url(../e-motion/main/img/b025.gif) no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: -26px;
}

.newworkWrap .newworkWrapTitle .rssWrap {
	width: 16px;
	vertical-align: middle;
	margin-right: 10px;
	display:inline-block
}

.newworkWrap .newworkListWrap {
	padding: 10px 10px 20px;
	border: 1px solid #c1c1c1;
	border-top: none
}

.newworkWrap .newworkListBox { font-size: 0 }
.newworkWrap .newworkListBox + .newworkListBox {
	padding-top: 20px;
	margin-top: 20px;
	border-top: 1px dashed #c1c1c1
}

.newworkWrap .newworkListBox .imageWrap {
	width: 210px;
	vertical-align: top;
	margin-right: 10px;
	display: inline-block
}

.newworkWrap .newworkListBox .imageWrap .image img { display: block }
.newworkWrap .newworkListBox .imageWrap .btn { margin-top: 10px }
.newworkWrap .newworkListBox .imageWrap .btn img {
	width: 100%;
	max-width: 210px;
	height: 40px
}

.newworkWrap .newworkListBox .imageWrap .media {
    font-size: 0;
    margin-top: 10px
}

.newworkWrap .newworkListBox .imageWrap .media img.blurayBtn,
.newworkWrap .newworkListBox .imageWrap .media img.dvdBtn {
    width: 80px;
    margin-right: 6px
}

.newworkWrap .newworkListBox .imageWrap .media img.xBtn { width: 124px }
.newworkWrap .newworkListBox .txtWrap {
	width: 518px;
	font-size: 1.2rem;
	line-height: 1.4;
	vertical-align: top;
	display: inline-block
}

.newworkWrap .newworkListBox .txtWrap .title {
	padding: 10px;
	background: #bcbc78
}

.newworkWrap .newworkListBox .txtWrap .title a { text-decoration: underline }
.newworkWrap .newworkListBox .txtWrap .title a:nth-child(1) { color: #11c }
.newworkWrap .newworkListBox .txtWrap p { margin-top: 10px }
.newworkWrap .newworkListBox .txtWrap .name {
	color: #f00;
	font-size: 1.3rem;
	font-weight: 600
}

.newworkWrap .newworkListBox .txtWrap .description a {
	color: #11c;
	text-decoration: underline
}

.newworkWrap .newworkListBox .txtWrap .date + .time { margin-left: 20px }


@media screen and (max-width: 768px) {
	.newworkWrap {
		padding: 80px 4% 0;
		margin-top: -60px
	}
	
	.pagingWrap + .newworkWrap { padding: 80px 4% 0 }
	.newworkWrap .newworkWrapTitle {
		padding-bottom: 10px;
		border-top: none;
		border-bottom: none
	}
	
	.newworkWrap .newworkWrapTitle .imageWrap {
		width: 100%;
		margin-right: 0;
		margin-bottom: 10px;
		border-top: 1px solid #c1c1c1;
		border-bottom: 1px solid #c1c1c1;
		display: block
	}

	.newworkWrap .newworkWrapTitle .more { width: calc(100% - 36px) }
	.newworkWrap .newworkListBox .imageWrap {
		width: 100%;
		font-size: 0;
		vertical-align: top;
		margin-right: 0;
		display: inline-block
	}
	.newworkWrap .newworkListBox .imageWrap .image {
		width: 140px;
		vertical-align: middle;
		margin-right: 10px;
		display: inline-block
	}
	
	.newworkWrap .newworkListBox .imageWrap .image img {
		vertical-align: middle;
		display: block
	}
	
	.newworkWrap .newworkListBox .imageWrap .btnWrap {
		width: calc(100% - 150px);
		vertical-align: middle;
		display: inline-block
	}

	.newworkWrap .newworkListBox .imageWrap .btn { margin-top: 0 }
    .newworkWrap .newworkListBox .imageWrap .media img.blurayBtn,
    .newworkWrap .newworkListBox .imageWrap .media img.dvdBtn {
        width: 34%;
        max-width: 80px;
        margin-right: 2%
    }

    .newworkWrap .newworkListBox .imageWrap .media img.xBtn {
        width: 64%;
        max-width: 124px
    }
    
	.newworkWrap .newworkListBox .txtWrap {
		width: 100%;
		margin-top: 10px;
		display: block
	}
}


/* paging wrap */

.pagingWrap { text-align: center }
.pagingWrap .title { margin-top: 10px }
.pagingWrap h2 {
	font-size: 2.4rem;
    font-weight: 900;
	text-align: left
}

.pagingWrap .txt {
    font-size: 1.4rem;
    margin: 10px 0
}

.newworkWrap + .pagingWrap { margin-top: 20px }
.pagingWrap ul { font-size: 0 }
.pagingWrap li {
	font-size: 1.3rem;
	vertical-align:middle;
	display: inline-block
}

.pagingWrap li.current {
	padding: 0 6px;
	border: 1px solid #000
}

.pagingWrap li + li { margin-left: 10px }
.pagingWrap li a {
	color: #fff;
	padding: 0 6px;
	border: 1px solid #000;
	background: #000;
	display: block
}

.pagingWrap li a:hover {
	color: #000;
	background: #fff;
}

@media screen and (min-width: 769px) {
	.pagingWrap li.spList { display: none }
}

@media screen and (max-width: 768px) {
	body.paging .pagingWrap .title { display: none }
	.pagingWrap h2 {
		font-size: 1.8rem;
		padding: 0 4%
	}
}


/* membership banner */

.membershipBn { margin-top: 20px }
.membershipBn img {
	width: 100%;
	display: block
}

@media screen and (max-width: 768px) {
	/*.membershipBn { padding: 0 4% }*/
	.membershipBn { display: none }
}


/* recommendation box */

.recommendationBox { margin-top: 20px }
.recommendationBox .recommendationTitle {
	height: 30px;
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 30px;
    letter-spacing: 0.05em;
    padding: 0 10px 0 36px;
    border: 1px solid #c1c1c1;
    background: #efefef;
	position: relative
}

.recommendationBox .recommendationTitle::before {
    content: "";
    width: 20px;
    height: 20px;
    margin: auto;
    background: url(../img/icon/icon_pc.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 10px
}

.recommendationBox .recommendationWrap {
	font-size: 0;
	padding: 10px;
	border: 1px solid #c1c1c1;
	border-top: none
}

.recommendationBox .recommendationWrap .txtWrap {
	width: 510px;
	font-size: 1.2rem;
	line-height: 1.4;
	vertical-align: middle;
	margin-right: 10px;
	display: inline-block
}

.recommendationBox .recommendationWrap .imageWrap {
	width: 218px;
	vertical-align: middle;
	display: inline-block
}

.recommendationBox .recommendationWrap .imageWrap ul { font-size: 0 }
.recommendationBox .recommendationWrap .imageWrap li:nth-child(1) {
	width: 120px;
	vertical-align: middle;
	margin-right: 10px;
	display: inline-block
}

.recommendationBox .recommendationWrap .imageWrap li:nth-child(2) {
	width: 88px;
	vertical-align: middle;
	display: inline-block
}

@media screen and (max-width: 768px) {
	.recommendationBox { padding: 0 4% }
	.recommendationBox .recommendationWrap .txtWrap {
		width: 100%;
		display: block
	}

	.recommendationBox .recommendationWrap .imageWrap {
		width: 100%;
		margin-top: 10px;
		display: block
	}
}


/* watching box */

.watchingBox { margin-top: 20px }
.watchingBox .watchingTitle {
	height: 30px;
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 30px;
    letter-spacing: 0.05em;
	text-align: center;
    padding: 0 10px;
    border: 1px solid #c1c1c1;
    background: #efefef
}

.watchingBox .watchingList {
	text-align: center;
	padding: 10px;
	border: 1px solid #c1c1c1;
	border-top: none
}

.watchingBox .watchingList ul { font-size: 0 }
.watchingBox .watchingList li {
	font-size: 0;
	vertical-align: middle;
	display: inline-block
}

.watchingBox .watchingList > ul > li + li { margin-left: 40px }
.watchingBox .watchingList li .icon {
	vertical-align: middle;
	margin-right: 20px;
	display: inline-block
}

.watchingBox .watchingList li:nth-child(1) .icon { width: 40px }
.watchingBox .watchingList li:nth-child(2) .icon { width: 80px }
.watchingBox .watchingList li .txt {
	font-size: 1.2rem;
	text-align: left;
	vertical-align: middle;
	display: inline-block
}

@media screen and (max-width: 768px) {
	.watchingBox { padding: 0 4% }
	.watchingBox .watchingTitle {
		height: auto;
		line-height: 1.3;
		text-align: left;
		padding: 6px 10px
	}
	
	.watchingBox .watchingList { text-align: left }
	.watchingBox .watchingList > ul > li { display: block }
	.watchingBox .watchingList > ul > li + li {
		margin-top: 10px;
		margin-left: 0
	}

	.watchingBox .watchingList li .icon { margin-right: 10px }
	.watchingBox .watchingList li:nth-child(1) .icon {
		text-align: center;
		width: 60px
	}
	
	.watchingBox .watchingList li:nth-child(1) .icon img { width: 30px }
	.watchingBox .watchingList li:nth-child(2) .icon { width: 60px }
	.watchingBox .watchingList li:nth-child(2) li { width: 30px }
	.watchingBox .watchingList li:nth-child(2) .icon img { width: 100% }
}


/* regist btn */

@media screen and (max-width: 768px) {
	.mainWrap .registBtn { margin-top: 20px }
	.mainWrap .registBtn img {
		margin: 0 auto;
		display: block
	}
}


/* affilliate info */

.affilliateInfo { margin-top: 20px }
.affilliateInfo .affilliateInfoTitle {
	height: 40px;
    padding: 5px 0;
    border: 1px solid #c1c1c1
}

.affilliateInfo .inner {
	padding: 10px;
	border: 1px solid #c1c1c1;
	border-top: none
}

.affilliateInfo .inner .imageWrap img {
	width: 100%;
    display: block
}

.affilliateInfo .inner .txtWrap {
	font-size: 1.4rem;
	margin-top: 10px
}

.affilliateInfo .inner .txtWrap a {
	color: #11c;
	text-decoration: underline
}

@media screen and (max-width: 768px) {
	.affilliateInfo { padding: 0 4% }
	.affilliateInfo .affilliateInfoTitle { height: auto }
	.affilliateInfo .inner .txtWrap { font-size: 1.2rem }
}


/* ------ side wrap ------ */

.sideWrap {
	width: 220px;
	display: inline-block
}

@media screen and (max-width: 768px) {
	.sideWrap {
		width: 100%;
		padding: 0 4%;
		display: block
	}
}


/* regist btn */

.sideWrap .registBtn { margin-top: 10px }
.sideWrap .registBtn img { display: block }

@media screen and (max-width: 768px) {
	.sideWrap .registBtn { display: none }
	/*.sideWrap .registBtn { margin-top: 20px }
	.sideWrap .registBtn img { margin: 0 auto }*/
}


/* menu wrap */

.sideWrap .menuWrap { margin-top: 20px }
.sideWrap .menuTitle {
	height: 30px;
	font-size: 1.4rem;
    font-weight: 600;
	line-height: 30px;
    letter-spacing: 0.05em;
    padding: 0 10px 0 36px;
	border: 1px solid #c1c1c1;
    background: #efefef;
	position: relative
}

.sideWrap .registTitle {
	height: 30px;
	font-size: 1.2rem;
    font-weight: 600;
	line-height: 30px;
    letter-spacing: 0.05em;
    padding: 0 10px 0 36px;
	border: 1px solid #c1c1c1;
    background: #efefef;
	position: relative
}

.sideWrap .menuTitle::before {
    content: "";
    width: 20px;
    height: 20px;
    margin: auto;
    background: url(../img/icon/icon_menu.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 10px
}

.sideWrap .menuWrap .listWrap {
	font-size: 1.4rem;
	padding: 10px;
    border: 1px solid #c1c1c1;
	border-top: none
}

.sideWrap .menuWrap .listWrap li + li { margin-top: 2px }
.sideWrap .menuWrap .listWrap a {
	padding-left: 14px;
	position: relative;
	display: block
}

.sideWrap .menuWrap .listWrap li a::before {
	content: "・";
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0
}

.sideWrap .menuWrap .listWrap a:hover {
	color: #fff;
	background: #000
}

@media screen and (max-width: 768px) {
	.sideWrap .menuWrap { display: none }
}


/* genre wrap */

.sideWrap .genreWrap { margin-top: 20px }
.sideWrap .genreTitle {
	height: 30px;
	font-size: 1.4rem;
    font-weight: 600;
	line-height: 30px;
    letter-spacing: 0.05em;
    padding: 0 10px 0 36px;
	border: 1px solid #c1c1c1;
    background: #efefef;
	position: relative
}

.sideWrap .genreTitle::before {
    content: "";
    width: 20px;
    height: 20px;
    margin: auto;
    background: url(../img/icon/icon_genre.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 10px
}

.sideWrap .genreWrap .listWrap {
	font-size: 1.4rem;
	padding: 10px;
    border: 1px solid #c1c1c1;
	border-top: none
}

.sideWrap .genreWrap .listWrap li + li { margin-top: 2px }
.sideWrap .genreWrap .listWrap a {
	padding-left: 14px;
	position: relative;
	display: block
}

.sideWrap .genreWrap .listWrap li a::before {
	content: "・";
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0
}

.sideWrap .genreWrap .listWrap a:hover {
	color: #fff;
	background: #000
}

@media screen and (max-width: 768px) {
	.sideWrap .genreWrap { display: none }
}


/* affiliate wrap */

.sideWrap .affiliateWrap { margin-top: 20px }
.sideWrap .affiliateTitle {
	height: 30px;
	font-size: 1.4rem;
    font-weight: 600;
	line-height: 30px;
    letter-spacing: 0.05em;
    padding: 0 10px 0 36px;
	border: 1px solid #c1c1c1;
    background: #efefef;
	position: relative
}

.sideWrap .affiliateTitle::before {
    content: "";
    width: 20px;
    height: 20px;
    margin: auto;
    background: url(../img/icon/icon_guide.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 10px
}

.sideWrap .affiliateWrap .imageWrap {
	padding: 10px;
	border: 1px solid #c1c1c1;
	border-top: none
}

.sideWrap .affiliateWrap .imageWrap img {
    margin: 0 auto;
    display: block
}

@media screen and (max-width: 768px) {
	.sideWrap .affiliateWrap { display: none }
}


/* search wrap */

.sideWrap .searchWrap { margin-top: 20px }
.sideWrap .searchTitle {
	height: 30px;
	font-size: 1.4rem;
    font-weight: 600;
	line-height: 30px;
    letter-spacing: 0.05em;
    padding: 0 10px 0 36px;
	border: 1px solid #c1c1c1;
    background: #efefef;
	position: relative
}

.sideWrap .searchTitle::before {
    content: "";
    width: 20px;
    height: 20px;
    margin: auto;
    background: url(../img/icon/icon_search.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 10px
}

.sideWrap .searchWrap .formWrap fieldset {
    font-size: 1.4rem;
    padding: 0 10px 10px;
    margin-top: 10px;
    border: 1px solid #c1c1c1
}

.sideWrap .searchWrap .formWrap fieldset label { font-size: 1.2rem }
.sideWrap .searchWrap .formWrap fieldset input[type=text] {
    width: 100%;
    height: 30px;
    font-size: 1.4rem;
    padding: 10px;
    margin-top: 4px;
    border: 1px solid #000
}

.sideWrap .searchWrap .formWrap fieldset input[type=submit] {
    width: 100%;
    height: 30px;
    color: #fff;
    font-size: 1.2rem;
    margin-top: 4px;
    border: none;
    background: #999
}

@media screen and (max-width: 768px) {
	.sideWrap .searchWrap .formWrap fieldset input[type=text] { font-size: 1.6rem }
}


/* login wrap */

.sideWrap .loginWrap { margin-top: 20px }
.sideWrap .loginTitle {
	height: 30px;
	font-size: 1.4rem;
    font-weight: 600;
	line-height: 30px;
    letter-spacing: 0.05em;
    padding: 0 10px 0 36px;
	border: 1px solid #c1c1c1;
    background: #efefef;
	position: relative
}

.sideWrap .loginTitle::before {
    content: "";
    width: 20px;
    height: 20px;
    margin: auto;
    background: url(../img/icon/icon_login.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 10px
}

.sideWrap .loginWrap .btnWrap {
	padding-top: 10px;
	border-right: 1px solid #c1c1c1;
	border-left: 1px solid #c1c1c1
}

.sideWrap .loginWrap .btnWrap img {
    margin: 0 auto;
	display: block
}

.sideWrap .loginWrap .listWrap {
	font-size: 1.2rem;
	padding: 10px;
    border: 1px solid #c1c1c1;
	border-top: none
}

.sideWrap .loginWrap .listWrap li + li { margin-top: 2px }
.sideWrap .loginWrap .listWrap a {
	padding-left: 14px;
	position: relative;
	display: block
}

.sideWrap .loginWrap .listWrap li a::before {
	content: "・";
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0
}

.sideWrap .loginWrap .listWrap a:hover {
	color: #fff;
	background: #000
}

@media screen and (max-width: 768px) {
	.sideWrap .loginWrap .btnWrap a { width: calc(100% - 20px) }
}


/* mens recruit wrap */

.sideWrap .mensRecruit { margin-top: 20px }
.sideWrap .mensRecruit .imageWrap img {
	margin: 0 auto;
	display: block
}

.sideWrap .mensRecruit .txtWrap {
	font-size: 1.2rem;
	margin-top: 10px
}

.sideWrap .mensRecruit .txtWrap a {
	color: #11c;
	text-decoration: underline
}

@media screen and (max-width: 768px) {
	.sideWrap .mensRecruit { display: none }
}


/* ------ footer ------ */

footer { margin-top: 80px }
footer nav {
	padding: 20px;
	border-top: 1px solid #c1c1c1;
	border-bottom: 1px solid #c1c1c1;
	background: #efefef
}

footer #footerNav > li {
	width: 1000px;
	margin: 0 auto
}

footer #footerNav > li + li { margin-top: 40px }
footer #footerNav .link {
	height: 30px;
    font-size: 1.4rem;
    line-height: 30px;
    padding: 0 10px 0 30px;
    position: relative
}

footer #footerNav li:nth-child(1) .link::before {
    content: "";
    width: 20px;
    height: 20px;
    margin: auto;
    background: url(../img/icon/icon_menu.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0
}

footer #footerNav li:nth-child(1) li:nth-child(10) a { color: #f00 }
footer #footerNav li:nth-child(2) .link::before {
    content: "";
    width: 20px;
    height: 20px;
    margin: auto;
    background: url(../img/icon/icon_genre.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0
}

footer #footerNav .submenu {
	font-size: 0;
	padding-top: 10px;
	margin-top: 6px;
    border-top: 1px dashed #c1c1c1
}

footer #footerNav li:nth-child(1) .submenu li {
	width: 168px;
	font-size: 1.3rem;
	vertical-align: top;
	margin-right: 40px;
	margin-bottom: 10px;
	position: relative;
	display: inline-block
}

footer #footerNav li:nth-child(1) .submenu li::before { content: "・" }
footer #footerNav li:nth-child(1) .submenu a:hover {
	color: #f00;
	text-decoration: underline
}

footer #footerNav li:nth-child(1) .submenu li:nth-child(5),
footer #footerNav li:nth-child(1) .submenu li:nth-child(10) {
    margin-right: 0
}

footer #footerNav li:nth-child(1) .submenu li:nth-child(5n+14) { margin-right: 208px }
footer #footerNav li:nth-child(2) .submenu li {
	width: 168px;
	font-size: 1.3rem;
	vertical-align: top;
	margin-right: 40px;
	margin-bottom: 10px;
	position: relative;
	display: inline-block
}

footer #footerNav li:nth-child(2) .submenu li::before { content: "・" }
footer #footerNav li:nth-child(2) .submenu a:hover {
	color: #f00;
	text-decoration: underline
}

footer #footerNav li:nth-child(2) .submenu li:nth-child(5n) { margin-right: 0 }
footer .copyright {
	text-align: center;
	margin: 10px auto
}

footer .copyright small { font-size: 1.2rem }

@media screen and (min-width: 769px) {
	footer nav li ul { display: block !important }
	footer nav li:nth-child(2) { display: none }
	footer .copyright small {
		width: 974px;
		height: 40px;
		line-height: 40px;
		margin: 0 auto;
		background: url(../img/copy.jpg) no-repeat;
		display: block
	}
}

@media screen and (max-width: 768px) {
	footer { margin-top: 40px }
	footer nav { padding: 20px 4% }
	footer #footerNav > li { width: 100% }
	footer #footerNav > li + li { margin-top: 0 }
	footer #footerNav .link {
		height: 50px;
		font-size: 1.4rem;
		line-height: 50px;
		border-bottom: 1px dashed #c1c1c1;
		pointer-events: all;
		cursor: pointer
	}
	
	footer #footerNav > li:nth-child(1) .link { border-top: 1px dashed #c1c1c1 }
	footer #footerNav .link::after {
		content: '';
		width: 8px;
		height: 8px;
		margin: auto;
		border: 0;
		border-top: 1px solid #000;
		border-right: 1px solid #000;
		transform: rotate(135deg);
		position: absolute;
		top: 0;
		right: 14px;
		bottom: 0;
		transition: all 0.3s ease-in-out
	}
	
	footer #footerNav .open .link::after { transform: rotate(315deg) }
	footer #footerNav > ul > li:nth-child(1) .link { border-top: 1px solid #c1c1c1 }
	footer #footerNav .submenu {
		padding-top: 0;
		margin-top: 0;
		border-top: none;
		display: none
	}

	footer #footerNav li:nth-child(1) .submenu { display: block }
    footer #footerNav li:nth-child(1) li:nth-child(5) a { color: #000 }
    footer #footerNav li:nth-child(1) li:last-child a { color: #f00 }
    footer #footerNav li:nth-child(1) .submenu li:nth-child(5n+9) { margin-right: 0 }
	footer #footerNav li:nth-child(1) .submenu li,
	footer #footerNav li:nth-child(2) .submenu li {
		width: 100%;
		height: 50px;
		font-size: 1.4rem;
		line-height: 50px;
		margin-right: 0;
		margin-bottom: 0;
		border-bottom: 1px dashed #c1c1c1;
		background: #fff;
		display: block
	}
	
	footer #footerNav li:nth-child(1) .submenu li::before,
	footer #footerNav li:nth-child(2) .submenu li::before {
		content: ""
	}

	footer #footerNav li:nth-child(1) .submenu a,
	footer #footerNav li:nth-child(2) .submenu a {
		padding-left: 10px;
		display: block
	}
	
	footer #footerNav li:nth-child(1) .submenu a::after,
	footer #footerNav li:nth-child(2) .submenu a::after {
		content: '';
		width: 6px;
		height: 6px;
		margin: auto;
		border: 0;
		border-top: 1px solid #000;
		border-right: 1px solid #000;
		transform: rotate(45deg);
		position: absolute;
		top: 0;
		right: 14px;
		bottom: 0
	}
	
	footer .copyright { margin: 20px auto 60px }
}


/* ------ breadcrumb ------ */

.breadcrumbWrap { margin-top: 10px }
.breadcrumbWrap li { display: inline-block }
.breadcrumbWrap li::after {
    font-family: FontAwesome;
    content: "\f105";
    font-size: 1.6rem;
	margin: 0 8px
}

.breadcrumbWrap li:last-child:after { content: "" }
.breadcrumbWrap a {
	color: #11c;
	text-decoration: underline
}

@media screen and (max-width: 768px) {
	.breadcrumbWrap {
		width: 92%;
		margin: 10px auto 0
	}

	.breadcrumbWrap li { letter-spacing: 0 }
	.breadcrumbWrap li:after { margin: 0 4px }
	.breadcrumbWrap a { text-decoration: underline }
}


/* new release wrap & all title wrap */

.listTile {
    font-size: 0;
    margin-top: 20px
}

.listTile .imageWrap {
    width: 72px;
    vertical-align: middle;
    padding: 4px 4px 4px 6px;
    border: 1px solid #c1c1c1;
    display: inline-block
}

.listTile .imageWrap img { width: 60px }
.listTile .txtWrap {
    width: calc(100% - 82px);
    font-size: 3rem;
    vertical-align: middle;
    margin-left: 10px;
    display: inline-block
}

.newreleaseWrap,
.alltitleWrap {
	margin-top: 20px
}

.newreleaseWrap .newreleaseWrapTitle,
.alltitleWrap .alltitleWrapTitle {
	font-size: 0;
	border: 1px solid #c1c1c1
}

.newreleaseWrap .newreleaseWrapTitle .imageWrap {
	width: 300px;
	vertical-align: middle;
	display: inline-block
}

.newreleaseWrap .newreleaseWrapTitle .btnWrap {
	width: 458px;
	font-size: 0;
	vertical-align: middle;
	text-align: right;
	display: inline-block
}

.newreleaseWrap .newreleaseWrapTitle .btnWrap .txt {
	width: 348px;
	font-size: 1.2rem;
	vertical-align: middle;
	margin-right: 10px;
	display: inline-block
}

.alltitleWrap .alltitleWrapTitle .imageWrap {
	width: 350px;
	font-size: 0;
	vertical-align: middle;
	display: inline-block
}

.alltitleWrap .alltitleWrapTitle .imageWrap .image {
	width: 150px;
	vertical-align: middle;
	margin-right: 10px;
	display: inline-block
}

.alltitleWrap .alltitleWrapTitle .imageWrap .swich {
	width: 190px;
	vertical-align: middle;
	display: inline-block
}

.alltitleWrap .alltitleWrapTitle .imageWrap .swich ul { font-size: 0 }
.alltitleWrap .alltitleWrapTitle .imageWrap .swich li {
    font-size: 1.2rem;
    vertical-align: middle;
    padding: 0 10px;
    border-left: 1px solid #c1c1c1;
    display: inline-block
}

.alltitleWrap .alltitleWrapTitle .imageWrap .swich li:nth-child(2) { border-right: 1px solid #c1c1c1 }
.alltitleWrap .alltitleWrapTitle .imageWrap .swich a {
	color: #11c;
	text-decoration: underline
}

.alltitleWrap .alltitleWrapTitle .btnWrap {
	width: 408px;
	font-size: 0;
	vertical-align: middle;
	text-align: right;
	display: inline-block
}

.alltitleWrap .alltitleWrapTitle .btnWrap .txt {
	width: 298px;
	font-size: 1.2rem;
	vertical-align: middle;
	margin-right: 10px;
	display: inline-block
}

.newreleaseWrap .newreleaseWrapTitle .btnWrap .btn,
.alltitleWrap .alltitleWrapTitle .btnWrap .btn {
	width: 90px;
	vertical-align: middle;
	margin-right: 10px;
	display:inline-block
}

.newreleaseWrap .newreleaseListWrap,
.alltitleWrap .alltitleListWrap {
	padding: 10px;
	border: 1px solid #c1c1c1;
	border-top: none
}

.newreleaseWrap .newreleaseListBox,
.alltitleWrap .alltitleListBox {
	font-size: 0
}

.newreleaseWrap .newreleaseListBox + .newreleaseListBox,
.alltitleWrap .alltitleListBox + .alltitleListBox {
	padding-top: 20px;
	margin-top: 20px;
	border-top: 1px dashed #c1c1c1
}

.newreleaseWrap .newreleaseListBox .imageWrap,
.alltitleWrap .alltitleListBox .imageWrap {
	width: 210px;
	vertical-align: top;
	margin-right: 10px;
	display: inline-block
}

.newreleaseWrap .newreleaseListBox .imageWrap .image img,
.alltitleWrap .alltitleListBox .imageWrap .image img {
	display: block
}

.newreleaseWrap .newreleaseListBox .imageWrap .btn,
.alltitleWrap .alltitleListBox .imageWrap .btn {
	margin-top: 10px
}

.newreleaseWrap .newreleaseListBox .imageWrap .btn img,
.alltitleWrap .alltitleListBox .imageWrap .btn img {
    width: 100%;
    max-width: 210px;
    height: 40px
}

.newreleaseWrap .newreleaseListBox .imageWrap .media,
.alltitleWrap .alltitleListBox .imageWrap .media {
    font-size: 0;
    margin-top: 10px
}

.newreleaseWrap .newreleaseListBox .imageWrap .media img.blurayBtn,
.newreleaseWrap .newreleaseListBox .imageWrap .media img.dvdBtn,
.alltitleWrap .alltitleListBox .imageWrap .media img.blurayBtn,
.alltitleWrap .alltitleListBox .imageWrap .media img.dvdBtn {
    width: 80px;
    margin-right: 6px
}

.newreleaseWrap .newreleaseListBox .imageWrap .media img.xBtn,
.alltitleWrap .alltitleListBox .imageWrap .media img.xBtn {
    width: 124px
}

.newreleaseWrap .newreleaseListBox .txtWrap,
.alltitleWrap .alltitleListBox .txtWrap {
	width: 518px;
	font-size: 1.2rem;
	line-height: 1.4;
	vertical-align: top;
	display: inline-block
}

.newreleaseWrap .newreleaseListBox .txtWrap .title,
.alltitleWrap .alltitleListBox .txtWrap .title {
	padding: 10px;
	background: #bcbc78
}

.newreleaseWrap .newreleaseListBox .txtWrap .title a,
.alltitleWrap .alltitleListBox .txtWrap .title a {
	text-decoration: underline
}

.newreleaseWrap .newreleaseListBox .txtWrap .title a:nth-child(1),
.alltitleWrap .alltitleListBox .txtWrap .title a:nth-child(1) {
	color: #11c
}

.newreleaseWrap .newreleaseListBox .txtWrap p,
.alltitleWrap .alltitleListBox .txtWrap p {
	margin-top: 10px
}

.newreleaseWrap .newreleaseListBox .txtWrap .name,
.alltitleWrap .alltitleListBox .txtWrap .name {
	color: #f00;
	font-size: 1.3rem;
	font-weight: 600
}

.newreleaseWrap .newreleaseListBox .txtWrap .description a,
.alltitleWrap .alltitleListBox .txtWrap .description a {
	color: #11c;
	text-decoration: underline
}

.newreleaseWrap .newreleaseListBox .txtWrap .date + .time,
.alltitleWrap .alltitleListBox .txtWrap .date + .time {
	margin-left: 20px
}

.newreleaseWrap .mediaBtn,
.alltitleWrap .mediaBtn {
	margin-top: 10px
}

.newreleaseWrap .mediaBtn .btnWrap,
.alltitleWrap .mediaBtn .btnWrap {
	width: 760px;
	font-size: 0;
	vertical-align: middle;
	text-align: right;
	display: inline-block
}

.newreleaseWrap .mediaBtn .btnWrap .txt,
.alltitleWrap .mediaBtn .btnWrap .txt {
	width: 650px;
	font-size: 1.2rem;
	vertical-align: middle;
	margin-right: 10px;
	display: inline-block
}

.newreleaseWrap .mediaBtn .btnWrap .btn,
.alltitleWrap .mediaBtn .btnWrap .btn {
	width: 90px;
	vertical-align: middle;
	margin-right: 10px;
	display:inline-block
}

@media screen and (max-width: 768px) {
    .listTile {
        width: 92%;
        margin: 20px auto 0
    }

    .listTile .imageWrap {
        width: 61px;
        padding: 4px 4px 4px 5px
    }

    .listTile .imageWrap img { width: 50px }
    .listTile .txtWrap {
        width: calc(100% - 71px);
        font-size: 1.8rem
    }
    
	.newreleaseWrap,
	.alltitleWrap {
		padding: 0 4%
	}
	
	.newreleaseWrap .newreleaseWrapTitle,
	.alltitleWrap .alltitleWrapTitle {
		padding-bottom: 10px;
		border-top: none;
		border-bottom: none
	}
	
	.newreleaseWrap .newreleaseWrapTitle .imageWrap,
	.alltitleWrap .alltitleWrapTitle .imageWrap {
		width: 100%;
		margin-right: 0;
		margin-bottom: 10px;
		border-top: 1px solid #c1c1c1;
		border-bottom: 1px solid #c1c1c1;
		display: block
	}

	.alltitleWrap .alltitleWrapTitle .imageWrap .swich {
		width: calc(100% - 160px);
		text-align: right
	}
	
	.newreleaseWrap .newreleaseWrapTitle .btnWrap,
	.alltitleWrap .alltitleWrapTitle .btnWrap {
		width: 100%
	}
	
	.newreleaseWrap .newreleaseWrapTitle .btnWrap .txt,
	.alltitleWrap .alltitleWrapTitle .btnWrap .txt {
		width: calc(100% - 110px)
	}
	
	.newreleaseWrap .newreleaseListBox .imageWrap,
	.alltitleWrap .alltitleListBox .imageWrap {
		width: 100%;
		font-size: 0;
		vertical-align: top;
		margin-right: 0;
		display: inline-block
	}
	
	.newreleaseWrap .newreleaseListBox .imageWrap .image,
	.alltitleWrap .alltitleListBox .imageWrap .image {
		width: 140px;
		vertical-align: middle;
		margin-right: 10px;
		display: inline-block
	}
	
	.newreleaseWrap .newreleaseListBox .imageWrap .image img,
	.alltitleWrap .alltitleListBox .imageWrap .image img {
		vertical-align: middle;
		display: block
	}
	
	.newreleaseWrap .newreleaseListBox .imageWrap .btnWrap,
	.alltitleWrap .alltitleListBox .imageWrap .btnWrap {
		width: calc(100% - 150px);
		vertical-align: middle;
		display: inline-block
	}

	.newreleaseWrap .newreleaseListBox .imageWrap .btn,
	.alltitleWrap .alltitleListBox .imageWrap .btn {
		margin-top: 0
	}

    .newreleaseWrap .newreleaseListBox .imageWrap .media img.blurayBtn,
    .newreleaseWrap .newreleaseListBox .imageWrap .media img.dvdBtn,
    .alltitleWrap .alltitleListBox .imageWrap .media img.blurayBtn,
    .alltitleWrap .alltitleListBox .imageWrap .media img.dvdBtn {
        width: 34%;
        max-width: 80px;
        margin-right: 2%
    }

    .newreleaseWrap .newreleaseListBox .imageWrap .media img.xBtn,
    .alltitleWrap .alltitleListBox .imageWrap .media img.xBtn {
        width: 64%;
        max-width: 124px
    }
	
	.newreleaseWrap .newreleaseListBox .txtWrap,
	.alltitleWrap .alltitleListBox .txtWrap {
		width: 100%;
		margin-top: 10px;
		display: block
	}
	
	.newreleaseWrap .mediaBtn .btnWrap,
	.alltitleWrap .mediaBtn .btnWrap {
		width: 100%
	}
	
	.newreleaseWrap .mediaBtn .btnWrap .txt,
	.alltitleWrap .mediaBtn .btnWrap .txt {
		width: calc(100% - 100px)
	}
	
	.newreleaseWrap .mediaBtn .btnWrap .btn,
	.alltitleWrap .mediaBtn .btnWrap .btn {
		margin-right: 0
	}
}


/* list bottom wrap */

.listBottomWrap {
	margin-top: 20px;
	border: 1px solid #c1c1c1
}

.listBottomWrap .blurayContent {
	font-size: 0;
	padding: 10px
}

.listBottomWrap .blurayContent .imageWrap {
	width: 150px;
	vertical-align: top;
	margin-right: 10px;
	display: inline-block
}

.listBottomWrap .blurayContent .txtWrap {
    width: 578px;
    font-size: 1.2rem;
	line-height: 1.4;
    vertical-align: top;
    display: inline-block;
}

.listBottomWrap .blurayContent .txtWrap p:nth-child(1) {
	color: #cc00ff;
	font-size: 1.3rem
}

.listBottomWrap .blurayContent .txtWrap p + p { margin-top: 10px }
.listBottomWrap .blurayContent .txtWrap a {
	color: #f00;
	text-decoration: underline
}

@media screen and (max-width: 768px) {
	.listBottomWrap {
		width: 92%;
		margin: 20px auto 0
	}
	
	.listBottomWrap .blurayWrapTitle img { width: 100% }
	.listBottomWrap .blurayContent .imageWrap {
		width: 240px;
		margin: 0 auto 20px;
		display: block
	}
	
	.listBottomWrap .blurayContent .txtWrap { width: 100% }
}


/* ------ ems wrap ------ */

.emsWrap .movieTxt { color: #11c }
.emsWrap .movieWrap {
	width: 760px;
	margin-top: 10px
}

.emsWrap .btnWrap {
	font-size: 0;
	margin-top: 10px
}

.emsWrap .btnWrap .sampleWrap {
	width: 482px;
	font-size: 0;
	vertical-align: middle;
	padding: 12.5px 10px;
	margin-right: 10px;
	border: 1px solid #c1c1c1;
	background: #efefef;
	display: inline-block
}

.emsWrap .btnWrap .sampleWrap .txt {
	width: 328px;
	font-size: 1.2rem;
	vertical-align: middle;
	margin-right: 10px;
	display: inline-block
}

.emsWrap .btnWrap .sampleWrap .txt p {
    color: #f00;
    text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, 0px 1px 0 #fff, 0-1px 0 #fff, -1px 0 0 #fff, 1px 0 0 #fff;
}

.emsWrap .btnWrap .sampleWrap .btn {
	width: 122px;
	vertical-align: middle;
	display: inline-block
}

.emsWrap .btnWrap .innerBtn {
	width: 268px;
	vertical-align: middle;
	padding: 10px;
	background: #c1c1c1;
	display: inline-block
}

.emsWrap .btnWrap .innerBtn ul { font-size: 0 }
.emsWrap .btnWrap .innerBtn li {
	width: 108px;
	vertical-align: middle;
	display: inline-block
}

.emsWrap .btnWrap .innerBtn li:nth-child(1) { width: 128px }
.emsWrap .btnWrap .innerBtn li + li { margin-left: 10px }
.emsWrap .providerWrap {
    margin-top: 20px;
    border: 1px solid #c1c1c1
}

.emsWrap .providerBox { font-size: 0 }
.emsWrap .providerBox .imageWrap {
    width: 115px;
    vertical-align: top;
    padding: 6px 6px 6px 8px;
    border-right: 1px solid #c1c1c1;
    display: inline-block
}

.emsWrap .providerBox .txtWrap {
    width: calc(100% - 155px);
    vertical-align: top;
    padding: 10px 0;
    margin-left: 20px;
    display: inline-block
}

.emsWrap .providerBox .txtWrap .title {
    font-size: 2.2rem;
    padding-bottom: 2px;
    margin-bottom: 6px;
    border-bottom: 1px solid #c1c1c1
}

.emsWrap .providerBox .txtWrap .txt { font-size: 1.4rem }
.emsWrap .topTxtWrap {
	font-size: 0;
	margin-top: 20px
}

.emsWrap .topTxtWrap .profile,
.emsWrap .topTxtWrap .date {
	width: 360px;
	vertical-align: top;
	display: inline-block
}

.emsWrap .topTxtWrap .profile { margin-right: 40px }
.emsWrap .topTxtWrap .profileTitle,
.emsWrap .topTxtWrap .dateTitle {
	font-size: 1.4rem
}

.emsWrap .topTxtWrap .profile li,
.emsWrap .topTxtWrap .date li {
    font-size: 1.2rem;
    padding: 4px 10px;
    border-bottom: 1px dashed #c1c1c1
}

.emsWrap .topTxtWrap .date .snsWrap { text-align: center }
.emsWrap .topTxtWrap .date .snsWrap p {
    color: #11c;
    font-size: 1.4rem;
    margin: 10px 0 6px
}

.emsWrap .description { margin-top: 20px }
.emsWrap .descriptionTitle {
	font-size: 1.4rem;
	padding-bottom: 4px;
	border-bottom: 3px solid #000
}

.emsWrap .description .txt { margin-top: 10px }
.emsWrap .galleryWrap {
	margin-top: 40px;
	border: 1px solid #c1c1c1
}

.emsWrap .galleryTitle { border-bottom: 1px solid #c1c1c1 }
.emsWrap .galleryTitle img {
	width: 100%;
	display: block
}

.emsWrap .downloadBtn {
	font-size: 0;
	padding: 0 10px;
	margin-top: 10px
}

.emsWrap .downloadBtn .txt {
	width: 606px;
	font-size: 1.2rem;
	vertical-align: middle;
	display: inline-block
}

.emsWrap .downloadBtn .btn {
	width: 132px;
	vertical-align: middle;
	display: inline-block
}

.emsWrap .galleryWrap .listWrap {
	width: 734px;
	margin: 20px auto 0
}

.emsWrap .galleryWrap .listWrap ul { font-size: 0 }
.emsWrap .galleryWrap .listWrap li {
	width: 114px;
	vertical-align: top;
	margin-right: 10px;
	margin-bottom: 10px;
	display: inline-block
}

.emsWrap .galleryWrap .listWrap li:nth-child(6n) { margin-right: 0 }
.emsWrap .galleryWrap .listWrap li img {
	width: 100%;
	display: block
}

.emsWrap .galleryWrap .listWrap li img { border: 1px solid #000 }
.emsWrap .galleryWrap .listWrap li a img { border: 1px solid #f00 }
.emsWrap .dvdBox {
	margin-top: 20px;
	border: 1px solid #c1c1c1
}

.emsWrap .dvdBoxTitle { border-bottom: 1px solid #c1c1c1 }
.emsWrap .dvdBoxTitle img {
	width: 100%;
	display: block
}

.emsWrap .dvdBoxWrap {
	font-size: 0;
	padding: 10px
}

.emsWrap .dvdBoxWrap .imageWrap {
	width: 240px;
	vertical-align: top;
	margin-right: 20px;
	display: inline-block
}

.emsWrap .dvdBoxWrap .txtWrap {
	width: 478px;
	vertical-align: top;
	display: inline-block
}

.emsWrap .dvdBoxWrap .txtWrap .dvdBoxWrapTitle {
	font-size: 0;
    padding-bottom: 6px;
    border-bottom: 1px solid #c1c1c1
}

.emsWrap .dvdBoxWrap .txtWrap .dvdBoxWrapTitle .txt {
	width: 368px;
	font-size: 1.3rem;
	vertical-align: middle;
	margin-right: 20px;
	display: inline-block
}

.emsWrap .dvdBoxWrap .txtWrap .dvdBoxWrapTitle .txt a {
	color: #11c;
	text-decoration: underline
}

.emsWrap .dvdBoxWrap .txtWrap .dvdBoxWrapTitle .image {
	width: 90px;
	vertical-align: middle;
	display: inline-block
}

.emsWrap .dvdBoxWrap .txtWrap .detail { margin-top: 20px }
.emsWrap .dvdBoxWrap .txtWrap .detail li { font-size: 1.2rem }
.emsWrap .dvdBoxWrap .txtWrap .detail li a {
	color: #11c;
	text-decoration: underline
}

.emsWrap .dvdBoxWrap .txtWrap .detail p { margin-top: 10px }
.emsWrap .dvdBoxWrap .txtWrap .detail p a {
	color: #f60;
	font-size: 1.3rem;
	text-decoration: underline
}

.emsWrap .dvdBoxWrap .txtWrap .introduction {
    font-size: 1.2rem;
    padding: 10px;
    margin-top: 10px;
    border: 1px solid #c1c1c1;
    background: #efefef
}

.emsWrap .dvdBoxWrap .txtWrap .introduction p + p { margin-top: 10px }

@media (max-width: 768px) {
	.emsWrap .movieWrap {
		width: 100%;
		padding: 0 4%
	}
	
	.emsWrap .movieTxt { padding: 0 4% }
	.emsWrap .btnWrap { padding: 0 4% }
	.emsWrap .btnWrap .sampleWrap {
		width: 100%;
		font-size: 0;
		padding: 10px;
		margin-right: 0;
		display: block
	}

	.emsWrap .btnWrap .sampleWrap .txt { width: calc(100% - 132px) }
	.emsWrap .btnWrap .innerBtn {
		width: 100%;
		margin-top: 10px;
		display: block
	}

	.emsWrap .btnWrap .innerBtn ul { text-align: center }
    .emsWrap .providerWrap {
        width: 92%;
        margin: 20px auto 0
    }

    .emsWrap .providerBox .imageWrap {
        width: 91px;
        padding: 4px 4px 4px 6px;
        border-right: none
    }

    .emsWrap .providerBox .imageWrap img { width: 80px }
    .emsWrap .providerBox .txtWrap {
        width: calc(100% - 101px);
        padding: 4px 0 10px 8px;
        margin-left: 0;
        border-left: 1px solid #c1c1c1
    }

    .emsWrap .providerBox .txtWrap .title { font-size: 1.6rem }
    .emsWrap .providerBox .txtWrap .txt { font-size: 1.2rem }
	.emsWrap .topTxtWrap { padding: 0 4% }
	.emsWrap .topTxtWrap .profile,
	.emsWrap .topTxtWrap .date {
		width: 100%;
		display: block
	}

	.emsWrap .topTxtWrap .profile {
		margin-right: 0;
		margin-bottom: 20px
	}
	
	.emsWrap .topTxtWrap .profileTitle img,
	.emsWrap .topTxtWrap .dateTitle img {
		width: 100%
	}
	
	.emsWrap .description { padding: 0 4% }
	.emsWrap .galleryWrap {
		width: 92%;
		margin: 40px auto 0
	}

	.emsWrap .downloadBtn .txt {
		width: 100%;
		display: block
	}

	.emsWrap .downloadBtn .btn {
		margin-top: 10px;
		margin-left: calc(100% - 132px);
		display: block
	}

	.emsWrap .galleryWrap .listWrap {
		width: 100%;
		padding: 0 2%
	}

	.emsWrap .galleryWrap .listWrap li {
		width: 21%;
		margin: 0 2% 10px
	}

	.emsWrap .galleryWrap .listWrap li:nth-child(6n) { margin-right: 2% }
	.emsWrap .dvdBox {
		width: 92%;
		margin: 20px auto 0
	}

	.emsWrap .dvdBoxWrap .imageWrap {
		width: 240px;
		margin: 0 auto;
		display: block
	}

	.emsWrap .dvdBoxWrap .txtWrap {
		width: 100%;
		margin-top: 10px;
		display: block
	}

	.emsWrap .dvdBoxWrap .txtWrap .dvdBoxWrapTitle .txt { width: calc(100% - 110px) }
}


/* ------ back link ------ */

.backLink { margin-top: 10px }
.backLink a {
	color: #11c;
	text-decoration: underline
}

@media (max-width: 768px) {
	.backLink { padding: 0 4% }
}


/* faq */

.faqWrap { margin-top: 20px }
.faqWrap .faqBanner { border: 1px solid #c1c1c1 }
.faqWrap .faqBanner img {
	margin: 0 auto;
	display: block
}

.faqWrap .faqIntroduction { margin-top: 20px }
.faqWrap .faqIntroduction li p:nth-child(1) {
	color: #fff;
	padding: 6px 10px;
	background: #00f
}

.faqWrap .faqIntroduction li p:nth-child(2) { padding: 10px 10px 20px }
.faqWrap .indexBox { border: 1px solid #c1c1c1 }
.faqWrap .indexBoxTitle {
    height: 40px;
    padding-top: 5px;
    border-bottom: 1px solid #c1c1c1
}

.faqWrap .indexBox .listWrap { padding: 10px }
.faqWrap .indexBox .listWrap > ul > li + li { margin-top: 20px }
.faqWrap .indexBox .listWrap p { font-size: 1.4rem }
.faqWrap .indexBox .listWrap p + ul { margin-top: 6px }
.faqWrap .indexBox .listWrap ul ul li {
    text-indent: -1em;
    padding-left: 1em
}

.faqWrap .indexBox .listWrap ul ul li::before {
    content: "・";
    margin-right: 4px;
}

.faqWrap .indexBox .listWrap a {
	color: #11c;
	text-decoration: underline
}

.faqWrap .faqBoxWrap { margin-top: 20px }
.faqWrap .faqBox + .faqBox { margin: 20px }
.faqWrap .faqBox h3 {
	color: #fff;
	padding: 10px;
	background: #00f
}

.faqWrap .faqBox h3 + ul { margin-top: 10px }
.faqWrap .faqBox > ul > li + li { margin-top: 20px }
.faqWrap .faqBox li h4 {
	color: #fff;
	padding: 6px 10px;
	background: #36f
}

.faqWrap .faqBox li h4 + p,
.faqWrap .faqBox li h4 + ul,
.faqWrap .faqBox li p + ul,
.faqWrap .faqBox li ul + p,
.faqWrap .faqBox li p + p {
	padding: 10px 10px 0
}

.faqWrap .faqBox li p + p { margin-top: 10px }
.faqWrap .faqBox li h4 + p span,
.faqWrap .faqBox li h4 + ul span,
.faqWrap .faqBox li ul + p span {
	color: #f00;
	text-decoration: underline
}

.faqWrap .faqBox li p + ul,
.faqWrap .faqBox li ul + p {
	margin-top: 10px
}

.faqWrap .faqBox li a {
	color: #00f;
	text-decoration: underline
}

.faqWrap .faqBoxWrap:nth-child(4) ul ul li,
.faqWrap .faqBoxWrap:nth-child(5) ul ul li,
.faqWrap .faqBoxWrap:nth-child(6) .faqBox > ul > li:nth-child(1) li,
.faqWrap .faqBoxWrap:nth-child(6) .faqBox > ul > li:nth-child(3) li,
.faqWrap .faqBoxWrap:nth-child(6) .faqBox > ul > li:nth-child(4) li > p {
    text-indent: -1em;
    padding-left: 1em
}

.faqWrap .faqBoxWrap:nth-child(4) ul ul li + li,
.faqWrap .faqBoxWrap:nth-child(5) ul ul li + li,
.faqWrap .faqBoxWrap:nth-child(6) .faqBox > ul > li:nth-child(1) li + li,
.faqWrap .faqBoxWrap:nth-child(6) .faqBox > ul > li:nth-child(3) li + li,
.faqWrap .faqBoxWrap:nth-child(6) .faqBox > ul > li:nth-child(4) > ul > li + li {
	margin-top: 10px
}

.faqWrap .faqBoxWrap:nth-child(4) ul ul li::before,
.faqWrap .faqBoxWrap:nth-child(5) ul ul li::before,
.faqWrap .faqBoxWrap:nth-child(6) .faqBox > ul > li:nth-child(1) li::before,
.faqWrap .faqBoxWrap:nth-child(6) .faqBox > ul > li:nth-child(3) li::before {
    content: "■";
    margin-right: 4px
}

.faqWrap .faqBoxWrap:nth-child(6) .faqBox > ul > li:nth-child(4) li > p::before {
    content: "●";
    margin-right: 4px
}

.faqWrap .faqBoxWrap:nth-child(6) .faqBox > ul > li:nth-child(2) li {
    margin-left: 14px;
    list-style: decimal
}

.faqWrap .faqBoxWrap:nth-child(6) .faqBox > ul > li:nth-child(2) li li { list-style: upper-alpha }
.faqWrap .faqBoxWrap:nth-child(6) .faqBox > ul > li:nth-child(2) li p + ul,
.faqWrap .faqBoxWrap:nth-child(6) .faqBox > ul > li:nth-child(4) li p + ul,
.faqWrap .faqBoxWrap:nth-child(8) p + ul {
	padding: 0
}

.faqWrap .faqBoxWrap:nth-child(6) .faqBox > ul > li:nth-child(4) li li,
.faqWrap .faqBoxWrap:nth-child(8) ul ul li {
    margin-left: 28px;
    list-style: decimal
}

@media screen and (max-width: 768px) {
	.faqWrap {
		width: 92%;
		margin: 20px auto 0
	}
	
	.faqWrap .indexBoxTitle {
		height: auto;
		padding: 5px 0
	}

	.faqWrap .faqBox > ul > li {
		padding-top: 60px;
		margin-top: -60px;
	}
	
	.faqWrap .faqBox li h4 { line-height: 1.4 }
}


/* policy */

.policyWrap { margin-top: 20px }
.policyWrap .policyWrapTitle {
	font-size: 0;
	border: 1px solid #c1c1c1
}

.policyWrap .policyWrapTitle .imageWrap {
	width: 300px;
	vertical-align: middle;
	display: inline-block
}

.policyWrap .policyBox {
    margin-top: 20px;
    border: 1px solid #c1c1c1
}

.policyWrap .policyBoxTitle {
    height: 30px;
	font-size: 0;
    border-bottom: 1px solid #c1c1c1
}

.policyWrap .policyBox:nth-child(2) .policyBoxTitle { padding-top: 2.5px }
.policyWrap .policyBox:nth-child(3) .policyBoxTitle { padding-top: 6.5px }
.policyWrap .policyBoxTitle .imageWrap,
.policyWrap .policyBoxTitle .txtWrap {
	font-size: 1.2rem;
	vertical-align: middle;
	margin-left: 10px;
	display: inline-block
}

.policyWrap .policyBoxTxt { padding: 10px }
.policyWrap .policyBoxTxt .txtWrap { margin-top: 10px }
.policyWrap .policyBoxTxt .listWrap { margin-top: 20px }
.policyWrap .policyBox:nth-child(3) .listWrap,
.policyWrap .policyBox:nth-child(5) .listWrap {
	margin-top: 0
}

.policyWrap .policyBoxTxt .listWrap > ul > li + li { margin-top: 20px }
.policyWrap .policyBox:nth-child(3) .listWrap > ul > li + li { margin-top: 0 }
.policyWrap .policyBoxTxt .listWrap h4 {
    font-size: 1.3rem;
    padding-bottom: 6px;
    margin-bottom: 6px;
    border-bottom: 1px dashed #c1c1c1
}

.policyWrap .policyBoxTxt .listWrap > ul > li > ul { margin-top: 10px }
.policyWrap .policyBoxTxt .listWrap > ul > li > ul > li {
    margin-left: 14px;
    list-style: decimal
}

.policyWrap .policyBoxTxt .listWrap > ul > li:nth-child(4) > ul > li + li,
.policyWrap .policyBoxTxt .listWrap > ul > li:nth-child(5) > ul > li + li {
	margin-top: 10px
}

.policyWrap .policyBoxTxt .listWrap > ul > li > ul > li > ul > li {
    margin-left: 14px;
    list-style: upper-alpha
}

.policyWrap .policyBoxTxt .listWrap > ul > li > ul > li > ul > li > ul > li {
    margin-left: 14px;
    list-style: lower-alpha
}

.policyWrap .policyBoxTxt .helpdesk {
    text-align: right;
    margin-top: 40px
}

.policyWrap .policyBoxTxt .helpdesk p:nth-child(1) {
	font-size: 1.3rem;
	font-weight: 600
}

.policyWrap .policyBoxTxt .helpdesk p + p { margin-top: 10px }
.policyWrap .policyBoxTxt .helpdesk a {
	color:#11c;
	text-decoration: underline
}

.policyWrap .policyBox + .policyBox li {
    margin-left: 14px;
    list-style: decimal
}

@media screen and (max-width: 768px) {
	.policyWrap { padding: 0 4% }
	.policyWrap .policyBox:nth-child(3) .policyBoxTitle {
		height: auto;
		padding: 6.5px 10px
	}
	
	.policyWrap .policyBoxTitle .imageWrap,
	.policyWrap .policyBoxTitle .txtWrap {
		margin-left: 0;
		display: block
	}
}


/* leagle */

.leagleWrap {
	margin-top: 20px;
	border: 1px solid #c1c1c1
}

.leagleWrap .leagleWrapTitle {
	height: 30px;
	padding: 2.5px 0;
	border-bottom: 1px solid #c1c1c1
}

.leagleWrap .tableWrap { padding: 10px }
.leagleWrap .tableWrap table {
    width: 100%;
    border: 1px solid #c1c1c1
}

.leagleWrap .tableWrap th,
.leagleWrap .tableWrap td {
	vertical-align: top;
	text-align: left;
	padding: 10px;
	border: 1px solid #c1c1c1
}

.leagleWrap .tableWrap th {
	width: 200px;
	background: #efefef
}

.leagleWrap .tableWrap td .card { color: #11c }
.leagleWrap .tableWrap td .bank { color: #0c3 }

@media screen and (max-width: 768px) {
	.leagleWrap {
		width: 92%;
		margin: 20px auto 0
	}

	.leagleWrap .tableWrap table { border-bottom: none }
	.leagleWrap .tableWrap th,
	.leagleWrap .tableWrap td {
		width: 100%;
		border: none;
		border-bottom: 1px solid #c1c1c1;
		display: block
	}
}


/* regist */

.registWrap { margin-top: 20px }
.registWrap .registWrapTitle {
	font-size: 0;
	border: 1px solid #c1c1c1
}

.registWrap .registWrapTitle .imageWrap {
	width: 300px;
	vertical-align: middle;
	display: inline-block
}

.registWrap .registBox {
    margin-top: 20px;
    border: 1px solid #000
}

.registWrap .registBox:nth-child(2) { border: 1px solid #c1c1c1 }
/*.registWrap .registBox:nth-child(5) { margin-top: 40px }*/
.registWrap .registBoxTitle {
    height: 30px;
	font-size: 0;
    border-bottom: 1px solid #000
}

.registWrap .registBox:nth-child(3) .registBoxTitle,
.registWrap .registBox:nth-child(4) .registBoxTitle {
	padding-top: 2.5px
}

.registWrap .registBox:nth-child(5) .registBoxTitle { padding-top: 6.5px }
.registWrap .registBox:nth-child(6) .registBoxTitle { padding-top: 5px }
.registWrap .registBoxTitle .imageWrap,
.registWrap .registBoxTitle .txtWrap {
	font-size: 1.2rem;
	vertical-align: middle;
	margin-left: 10px;
	display: inline-block
}

.registWrap .registBoxTxt { padding: 10px }
.registWrap .registBox:nth-child(5) .registBoxTxt { padding-bottom: 20px }
.registWrap .registBoxTxt .txtWrap { margin-top: 10px }
.registWrap .registBox:nth-child(2) .txtWrap { margin-top: 0 }
.registWrap .registBox:nth-child(2) .txtWrap li + li { margin-top: 6px }
.registWrap .registBox:nth-child(2) .txtWrap li:nth-child(1) .red { text-decoration: underline }
.registWrap .registBox:nth-child(2) .txtWrap p:nth-child(1)::before {
	content: "●";
	color: #f00;
	margin-right: 4px
}

.registWrap .registBox:nth-child(2) .txtWrap li:nth-child(1) p + p span { text-decoration: underline }
.registWrap .registBox:nth-child(3) .listWrap { margin-top: 10px }
.registWrap .registBoxTxt .listWrap li + li { margin-top: 0 }
.registWrap .registBoxTxt .listWrap h4 {
    font-size: 1.3rem;
    padding-bottom: 6px;
    margin-bottom: 6px;
    border-bottom: 1px dashed #c1c1c1
}

.registWrap .registBoxTxt .listWrap li {
	text-indent: -1em;
	padding-left: 1em
}

.registWrap .registBox:nth-child(6) .registBoxTxt .listWrap li {
	text-indent: 0;
	padding-left: 0
}

.registWrap .registBoxTxt .listWrap li::before,
.registWrap .registBox:nth-child(3) .registBoxTxt .listWrap li:nth-child(1) p::before {
	content: "■";
	margin-right: 4px
}

.registWrap .registBox:nth-child(6) .registBoxTxt .listWrap li::before { display: none }
.registWrap .registBox:nth-child(3) .registBoxTxt .listWrap li:nth-child(1)::before { display: none }
.registWrap .registBox:nth-child(3) .registBoxTxt .listWrap li:nth-child(1) span { color: #60f }
.registWrap .registBox:nth-child(3) .registBoxTxt .listWrap a,
.registWrap .registBox:nth-child(5) .registBoxTxt .listWrap a {
	color: #11c;
	text-decoration: underline
}

.registWrap .registBox:nth-child(6) .registBoxTxt .listWrap li {
    margin-left: 14px;
    list-style: decimal
}

.registWrap .registBoxTxt .tableWrap { margin-top: 20px }
.registWrap .registBoxTxt .tableWrap table {
	width: 100%;
	margin-top: 10px;
	border: 3px double #666
}

.registWrap .registBoxTxt .tableWrap th,
.registWrap .registBoxTxt .tableWrap td {
	width: 50%;
	font-size: 1.4rem;
	font-weight: 500;
	text-align: center;
	padding: 20px;
	border: 3px double #666
}

.registWrap .registBoxTxt .tableWrap th { background: #ccc }
.registWrap .registBox:nth-child(3) .registBoxTxt .tableWrap tr + tr td { color: #00f }
.registWrap .registBox:nth-child(4) .registBoxTxt .tableWrap tr:nth-child(1) span { color: #00f }
.registWrap .registBox:nth-child(4) .registBoxTxt .tableWrap tr:nth-child(2) span { color: #090 }
.registWrap .registBox:nth-child(5) .supportBox {
    padding: 4px 4px 10px;
    margin-bottom: 10px;
    border: 1px solid #c1c1c1
}

.registWrap .registBox:nth-child(5) .supportList { margin-top: 10px }
.registWrap .registBox:nth-child(5) .supportBox ul { font-size: 0 }
.registWrap .registBox:nth-child(5) .supportBox li {
    width: calc(100% / 3);
    vertical-align: top;
    text-align: center;
    display: inline-block
}

.registWrap .registBox:nth-child(5) .supportBox img {
    margin: 0 auto;
    display: block
}

.registWrap .registBox:nth-child(5) .supportBox img + img { margin-top: 10px }
.registWrap .registBoxTxt .btnWrap {
    width: 180px;
    height: 60px;
	text-align: center;
	padding-top: 15px;
    margin: 20px auto 0;
    border: 3px double #666;
    background: #ccc;
}

.registWrap .registBoxTxt .btnWrap input {
	height: 24px;
    color: #333;
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 24px;
    letter-spacing: 0.1em;
    padding: 1px 6px;
    border: 1px solid #999;
	background: #ddd
}

.registWrap .registBoxTxt .btnWrap a {
    height: 24px;
    color: #333;
    font-size: 1.2rem;
    font-weight: 600;
    font-family: auto;
    line-height: 24px;
    letter-spacing: 0.1em;
    padding: 3px 6px 2px;
    border: 1px solid #999;
    background: #ddd
}

.registWrap .registBoxTxt .caution {  margin-top: 20px }
.registWrap .registBoxTxt .caution li:nth-child(1),
.registWrap .registBoxTxt .caution li:nth-child(2) {
	text-indent: -1em;
	padding-left: 1em
}

.registWrap .registBoxTxt .caution li:nth-child(3) { padding-left: 1em }
.registWrap .registBoxTxt .caution li + li { margin-top: 10px }
.registWrap .registBoxTxt .caution li a {
	color: #11c;
	text-decoration: underline
}

.registWrap .registBoxTxt .caution p { color: #f00 }
.registWrap .registBoxTxt .caution p span { text-decoration: underline }
.registWrap .registBoxTxt .secedeWrap { margin-top: 20px }
.registWrap .registBoxTxt .secedeWrap p {
	color: #f00;
	text-decoration: underline
}

.registWrap .registBoxTxt .secedeWrap a {
	color: #60f;
    font-size: 1.3rem;
    text-align: center;
    margin-top: 10px;
    text-decoration: underline;
    display: block
}


@media screen and (max-width: 768px) {
	.registWrap { padding: 0 4% }
	.registWrap .registBoxTxt .tableWrap table { border-bottom: none }
	.registWrap .registBoxTxt .tableWrap th,
	.registWrap .registBoxTxt .tableWrap td {
		width: 100%;
		border: none;
		border-bottom: 3px double #666;
		display: block
	}

	.registWrap .registBox:nth-child(5) .registBoxTitle {
		height: auto;
		padding: 6.5px 10px
	}
    
	/*
    .registWrap .registBox:nth-child(5) .registBoxTitle img {
        width: 100%;
        max-width: 369px
    }
    
    .registWrap .registBox:nth-child(5) .supportBox { padding: 0 10px 10px }
    .registWrap .registBox:nth-child(5) .supportBox li {
        width: 100%;
        display: block
    }
    
    .registWrap .registBox:nth-child(5) .supportBox li + li { margin-top: 20px }
	.registWrap .registBox:nth-child(6) .registBoxTitle {
		height: auto;
		padding: 6.5px 10px
	}
	*/
    
	.registWrap .registBoxTitle .imageWrap,
	.registWrap .registBoxTitle .txtWrap {
		margin-left: 0;
		display: block
	}
}


/* web customer support */

.webCusSupBox {
    margin-top: 20px;
    border: 1px solid #c1c1c1
}

.webCusSupBox .webCusSupBoxTitle {
    height: 30px;
	font-size: 0;
    padding-top: 2.5px;
    border-bottom: 1px solid #c1c1c1
}

.webCusSupBox .webCusSupBoxTitle .imageWrap {
	font-size: 1.2rem;
	vertical-align: middle;
	margin-left: 10px;
	display: inline-block
}

.webCusSupBox .webCusSupBoxTxt { padding: 10px 10px 20px }
.webCusSupBox .webCusSupBoxTxt .listWrap li + li { margin-top: 0 }
.webCusSupBox .webCusSupBoxTxt .listWrap li {
	text-indent: -1em;
	padding-left: 1em
}

.webCusSupBox .webCusSupBoxTxt .listWrap li::before {
	content: "■";
	margin-right: 4px
}

.webCusSupBox .supportBox {
    padding: 4px 4px 10px;
    margin-bottom: 10px;
    border: 1px solid #c1c1c1
}

.webCusSupBox .supportBox .supportList { margin-top: 10px }
.webCusSupBox .supportBox ul { font-size: 0 }
.webCusSupBox .supportBox li {
    width: calc(100% / 3);
    vertical-align: top;
    text-align: center;
    display: inline-block
}

.webCusSupBox .supportBox img {
    margin: 0 auto;
    display: block
}

.webCusSupBox .supportBox img + img { margin-top: 10px }
.webCusSupBox .webCusSupBoxTxt .btnWrap {
    width: 180px;
    height: 60px;
	text-align: center;
	padding-top: 15px;
    margin: 20px auto 0;
    border: 3px double #666;
    background: #ccc;
}

.webCusSupBox .webCusSupBoxTxt .btnWrap a {
    height: 24px;
    color: #333;
    font-size: 1.2rem;
    font-weight: 600;
    font-family: auto;
    line-height: 24px;
    letter-spacing: 0.1em;
    padding: 3px 6px 2px;
    border: 1px solid #999;
    background: #ddd
}


@media screen and (max-width: 768px) {
    .webCusSupBox {
        width: 92%;
        margin: 20px auto 0
    }
    
	.webCusSupBox .webCusSupBoxTitle img {
        width: 100%;
        max-width: 369px
    }
    
    .webCusSupBox .supportBox { padding: 0 10px 10px }
    .webCusSupBox .supportBox li {
        width: 100%;
        display: block
    }
    
    .webCusSupBox .supportBox li + li { margin-top: 20px }
	.webCusSupBox .webCusSupBoxTitle .imageWrap {
		margin-left: 0;
		display: block
	}
}


/* recruit */

.recruitWrap { margin-top: 10px }
.recruitWrap .recruitWrapTxt {
	color: #11c;
	text-align: center
}

.recruitWrap .recruitBox {
	padding: 10px;
	margin-top: 10px;
	border: 1px solid #c1c1c1
}

.recruitWrap .recruitBox .imageWrap img {
	width: 100%;
	display: block
}

.recruitWrap .recruitBox .txtWrap { margin-top: 10px }
.recruitWrap .recruitBox .txtWrap h3 { 
	color: #f0c;
	font-size: 2.4rem
}

.recruitWrap .recruitBox .txtWrap p { margin-top: 10px }
.recruitWrap .recruitBox .txtWrap span { text-decoration: underline }
.recruitWrap .recruitBox .txtWrap p:nth-child(4) {
	font-weight: 600;
	text-decoration: underline
}

.recruitWrap .recruitBox .application,
.recruitWrap .recruitBox .caution {
	margin-top: 20px
}

.recruitWrap .recruitBox .application p,
.recruitWrap .recruitBox .caution p {
	font-size: 1.4rem
}

.recruitWrap .recruitBox .application ul,
.recruitWrap .recruitBox .caution ul {
	margin-top: 6px
}

.recruitWrap .recruitBox .application li,
.recruitWrap .recruitBox .caution li {
    text-indent: -1em;
    padding-left: 1em
}

.recruitWrap .recruitBox .application li::before,
.recruitWrap .recruitBox .caution li::before {
    content: "●";
    margin-right: 4px
}

.recruitWrap .recruitBox .btnWrap {
	padding: 10px;
	margin-top: 20px;
	border: 1px solid #36f
}

.recruitWrap .recruitBox .btnWrap input {
    width: 300px;
    height: 40px;
	font-weight: 600;
    line-height: 40px;
    margin: 10px auto;
    border: 1px solid #c1c1c1;
    background: #efefef;
    display: block
}

@media screen and (max-width: 768px) {
	.recruitWrap {
		width: 92%;
		margin: 20px auto 0
	}

	.recruitWrap .recruitWrapTxt { text-align: left }
}


/* contact cast form */

.contactCastFormWrap {
	padding-bottom: 20px;
	margin-top: 20px;
	border: 1px solid #c1c1c1
}

.contactCastFormWrap .contactFormWrapTitle {
	height: 30px;
	padding: 3px 0;
	border-bottom: 1px solid #c1c1c1
}

.contactCastFormWrap .contactFormWrapList { padding: 10px 10px 0 }
.contactCastFormWrap .contactFormWrapList li::before { content: "・" }
.contactCastFormWrap .contactFormWrapList .ul { text-decoration: underline }
.contactCastFormWrap .contactFormWrapCaution { padding: 10px }
.contactCastFormWrap .contactFormWrapCaution ul {
	font-weight: 600;
	margin-top: 6px
}

.contactCastFormWrap .contactFormWrapCaution li::before {
	content: "●";
	margin-right: 6px
}

.contactCastFormWrap .contactFormWrapTxt { padding: 0 10px }
.contactCastFormWrap .contactFormBox {
	padding: 0 10px 20px;
	margin-top: 20px
}

.contactCastFormWrap .contactFormBox iframe { display: block }
.contactCastFormWrap .contactFormBox table + table { margin-top: 6px }
.contactCastFormWrap .contactFormBox table:nth-child(2) font { color: #bf0000 } 
.contactCastFormWrap .contactFormBox table:nth-child(3) {
	width: 100%;
	border: 1px solid #c1c1c1
}

.contactCastFormWrap .contactFormBox table:nth-child(3) td:nth-child(1) {
    vertical-align: top;
    padding: 10px
}

.contactCastFormWrap .contactFormBox table:nth-child(3) tr + tr td:nth-child(1) { border-top: 1px solid #fff }
.contactCastFormWrap .contactFormBox table:nth-child(3) td:nth-child(1) font {
	font-size: 1.3rem;
	font-weight: 600
}

.contactCastFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) {
    vertical-align: top;
    padding: 10px;
	background: #fff
}

.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(1) td:nth-child(2) input,
.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(2) td:nth-child(2) input,
.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) input,
.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(4) td:nth-child(2) select,
.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(4) td:nth-child(2) input {
	height: 30px;
    padding: 0 10px;
	border: 1px solid #c1c1c1
}

.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(1) td:nth-child(2) input,
.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(2) td:nth-child(2) input {
	width: 121px
}

.contactCastFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) font { font-size: 1.3rem }
.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(1) td:nth-child(2) font:nth-child(1),
.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(1) td:nth-child(2) font:nth-child(3),
.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(2) td:nth-child(2) font:nth-child(1),
.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(2) td:nth-child(2) font:nth-child(3) {
	margin-right: 10px
}

.contactCastFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) font { font-size: 1.3rem }
.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) br { display: none }
.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) font {
	font-size: 1.2rem;
	display: block
}

.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) input + font { margin-top: 6px }
.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(4) td:nth-child(2) input {
	margin-top: 6px;
	display: block
}

.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(7) td:nth-child(2) font { margin-left: 6px }
.contactCastFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) textarea {
    padding: 10px;
	border: 1px solid #c1c1c1
}

.contactCastFormWrap .contactFormBox form > br { display: none }
.contactCastFormWrap .contactFormBox form > input {
    width: 300px;
    height: 40px;
    font-weight: 600;
    line-height: 40px;
    margin: 20px auto 0;
    border: 1px solid #c1c1c1;
    background: #efefef;
    display: block;
}


@media screen and (max-width: 768px) {
	.contactCastFormWrap {
		width: 92%;
		margin: 20px auto 0
	}

	.contactCastFormWrap .contactFormWrapTitle {
		height: auto;
		padding: 2.5px 0 2.5px 10px
	}
	
	.contactCastFormWrap .contactFormBox { overflow: hidden }
	.contactCastFormWrap .contactFormBox iframe { width: 100% }
	.contactCastFormWrap .contactFormBox table:nth-child(3) td:nth-child(1) {
		width: 100%;
		display: block
	}
	
	.contactCastFormWrap .contactFormBox table:nth-child(3) tr + tr td:nth-child(1) { border-top: none }
	.contactCastFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) {
		width: 100%;
		display: block
	}

	.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) input,
	.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(4) td:nth-child(2) input {
		width: 100%
	}
	
	.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(1) td:nth-child(2) input,
	.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(2) td:nth-child(2) input,
	.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) input,
	.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(4) td:nth-child(2) select,
	.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(4) td:nth-child(2) input {
		font-size: 1.6rem
	}
	
	.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(1) td:nth-child(2) input,
	.contactCastFormWrap .contactFormBox table:nth-child(3) tr:nth-child(2) td:nth-child(2) input {
		width: 110px
	}

	.contactCastFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) textarea {
		width: 100%;
		font-size: 1.6rem
	}
	
	.contactCastFormWrap .contactFormBox form > input {
		width: 100%;
		font-size: 1.6rem
	}
}


/* contact */

.contactWrap {
	margin-top: 20px;
	border: 1px solid #c1c1c1
}

.contactWrap .contactWrapTitle {
	height: 30px;
	padding: 2.5px 0;
	border-bottom: 1px solid #c1c1c1
}

.contactWrap .contactWrapBox { padding: 10px }
.contactWrap .contactWrapBox .contactWrapTxt a {
	color: #11c;
	text-decoration: underline
}

.contactWrap .contactWrapBox .confirmBox { margin-top: 20px }
.contactWrap .contactWrapBox .confirmBox p:nth-child(1) {
	color: #f00;
	font-size: 1.3rem;
	font-weight: 600
}

.contactWrap .contactWrapBox .confirmBox ul { margin-top: 10px }
.contactWrap .contactWrapBox .confirmBox li {
	margin-left: 14px;
    list-style: decimal
}

.contactWrap .contactWrapBox .listWrap { margin-top: 20px }
.contactWrap .contactWrapBox .listWrap li {
	width: 238px;
	font-size: 1.2rem;
	vertical-align: top;
	border: 1px solid #c1c1c1;
	position: relative;
	display: inline-block
}

.contactWrap .contactWrapBox .listWrap li h3 {
	font-size: 1.2rem;
	text-align: center;
	padding: 10px;
	background: #999;
	position: relative
}

.contactWrap .contactWrapBox .listWrap li h3::after {
	content: "";
	width: 100%;
	height: 1px;
	border-bottom: 1px solid #c1c1c1;
	position: absolute;
	bottom: 5px;
	left: 0
}

.contactWrap .contactWrapBox .listWrap li .btnWrap img { display: block }

@media screen and (min-width: 769px) {
	.contactWrap .contactWrapBox .listWrap ul {
		font-size: 0;
		display: flex;
		justify-content: space-between
	}
	
	.contactWrap .contactWrapBox .listWrap li + li { margin-left: 12px }
	.contactWrap .contactWrapBox .listWrap li p { padding: 10px 10px 80px }
	.contactWrap .contactWrapBox .listWrap li .btnWrap {
		width: 200px;
		margin: auto;
		position: absolute;
		right: 0;
		bottom: 20px;
		left: 0
	}
}

@media screen and (max-width: 768px) {
	.contactWrap {
		width: 92%;
		margin: 20px auto 0
	}

	.contactWrap .contactWrapBox .listWrap li {
		width: 100%;
		display: block
	}

	.contactWrap .contactWrapBox .listWrap li + li { margin-top: 10px }
	.contactWrap .contactWrapBox .listWrap li h3 { font-size: 1.4rem }
	.contactWrap .contactWrapBox .listWrap li p { padding: 10px }
	.contactWrap .contactWrapBox .listWrap li .btnWrap {
		width: 200px;
		margin: 0 auto 10px
	}
}


/* contact JaL form */

.contactJalFormWrap {
	margin-top: 20px;
	border: 1px solid #c1c1c1
}

.contactJalFormWrap .contactFormWrapTitle {
	height: 30px;
	padding: 2.5px 0 2.5px 20px;
	border-bottom: 1px solid #c1c1c1
}

.contactJalFormWrap .contactFormWrapTxt { padding: 10px 10px 0 }
.contactJalFormWrap .contactFormBox {
	padding: 0 10px 20px;
	margin-top: 20px
}

.contactJalFormWrap .contactFormBox iframe { display: block }
.contactJalFormWrap .contactFormBox table + table { margin-top: 6px }
.contactJalFormWrap .contactFormBox table:nth-child(2) font { color: #bf0000 } 
.contactJalFormWrap .contactFormBox table:nth-child(3) {
	width: 100%;
	border: 1px solid #c1c1c1
}

.contactJalFormWrap .contactFormBox table:nth-child(3) td:nth-child(1) {
    vertical-align: top;
    padding: 10px
}

.contactJalFormWrap .contactFormBox table:nth-child(3) tr + tr td:nth-child(1) { border-top: 1px solid #fff }
.contactJalFormWrap .contactFormBox table:nth-child(3) td:nth-child(1) font {
	font-size: 1.3rem;
	font-weight: 600
}

.contactJalFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) {
    vertical-align: top;
    padding: 10px;
	background: #fff
}

.contactJalFormWrap .contactFormBox table:nth-child(3) tr:nth-child(1) td:nth-child(2) input,
.contactJalFormWrap .contactFormBox table:nth-child(3) tr:nth-child(2) td:nth-child(2) input,
.contactJalFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) input,
.contactJalFormWrap .contactFormBox table:nth-child(3) tr:nth-child(4) td:nth-child(2) input {
	height: 30px;
    padding: 0 10px;
	border: 1px solid #c1c1c1
}

.contactJalFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) font { font-size: 1.3rem }
.contactJalFormWrap .contactFormBox table:nth-child(3) tr:nth-child(1) td:nth-child(2) font:nth-child(1),
.contactJalFormWrap .contactFormBox table:nth-child(3) tr:nth-child(1) td:nth-child(2) font:nth-child(3),
.contactJalFormWrap .contactFormBox table:nth-child(3) tr:nth-child(2) td:nth-child(2) font:nth-child(1),
.contactJalFormWrap .contactFormBox table:nth-child(3) tr:nth-child(2) td:nth-child(2) font:nth-child(3) {
	margin-right: 10px
}

.contactJalFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) font { font-size: 1.3rem }
.contactJalFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) br { display: none }
.contactJalFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) font {
	font-size: 1.2rem;
	display: block
}

.contactJalFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) br + font { margin-top: 6px }
.contactJalFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) textarea {
    padding: 10px;
	border: 1px solid #c1c1c1
}

.contactJalFormWrap .contactFormBox form > br { display: none }
.contactJalFormWrap .contactFormBox form > input {
    width: 300px;
    height: 40px;
    font-weight: 600;
    line-height: 40px;
    margin: 20px auto 0;
    border: 1px solid #c1c1c1;
    background: #efefef;
    display: block;
}


@media screen and (max-width: 768px) {
	.contactJalFormWrap {
		width: 92%;
		margin: 20px auto 0
	}

	.contactJalFormWrap .contactFormWrapTitle {
		height: auto;
		padding: 2.5px 0 2.5px 10px
	}
	
	.contactJalFormWrap .contactFormBox { overflow: hidden }
	.contactJalFormWrap .contactFormBox iframe { width: 100% }
	.contactJalFormWrap .contactFormBox table:nth-child(3) td:nth-child(1) {
		width: 100%;
		display: block
	}
	
	.contactJalFormWrap .contactFormBox table:nth-child(3) tr + tr td:nth-child(1) { border-top: none }
	.contactJalFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) {
		width: 100%;
		display: block
	}

	.contactJalFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) input,
	.contactJalFormWrap .contactFormBox table:nth-child(3) tr:nth-child(4) td:nth-child(2) input {
		width: 100%
	}
	
	
	.contactJalFormWrap .contactFormBox table:nth-child(3) tr:nth-child(1) td:nth-child(2) input,
	.contactJalFormWrap .contactFormBox table:nth-child(3) tr:nth-child(2) td:nth-child(2) input,
	.contactJalFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) input,
	.contactJalFormWrap .contactFormBox table:nth-child(3) tr:nth-child(4) td:nth-child(2) input {
		font-size: 1.6rem
	}

	.contactJalFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) textarea {
		width: 100%;
		font-size: 1.6rem
	}
	
	.contactJalFormWrap .contactFormBox form > input {
		width: 100%;
		font-size: 1.6rem
	}
}


/* contact IP form */

.contactIPFormWrap {
	margin-top: 20px;
	border: 1px solid #c1c1c1
}

.contactIPFormWrap .contactFormWrapTitle {
	height: 30px;
	padding: 2.5px 0 2.5px 20px;
	border-bottom: 1px solid #c1c1c1
}

.contactIPFormWrap .contactFormWrapTxt { padding: 10px 10px 0 }
.contactIPFormWrap .contactFormBox {
	padding: 0 10px 20px;
	margin-top: 20px
}

.contactIPFormWrap .contactFormBox iframe { display: block }
.contactIPFormWrap .contactFormBox table + table { margin-top: 6px }
.contactIPFormWrap .contactFormBox table:nth-child(2) font { color: #bf0000 } 
.contactIPFormWrap .contactFormBox table:nth-child(3) {
	width: 100%;
	border: 1px solid #c1c1c1
}

.contactIPFormWrap .contactFormBox table:nth-child(3) td:nth-child(1) {
    vertical-align: top;
    padding: 10px
}

.contactIPFormWrap .contactFormBox table:nth-child(3) tr + tr td:nth-child(1) { border-top: 1px solid #fff }
.contactIPFormWrap .contactFormBox table:nth-child(3) td:nth-child(1) font {
	font-size: 1.3rem;
	font-weight: 600
}

.contactIPFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) {
    vertical-align: top;
    padding: 10px;
	background: #fff
}

.contactIPFormWrap .contactFormBox table:nth-child(3) tr:nth-child(1) td:nth-child(2) input,
.contactIPFormWrap .contactFormBox table:nth-child(3) tr:nth-child(2) td:nth-child(2) input,
.contactIPFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) input,
.contactIPFormWrap .contactFormBox table:nth-child(3) tr:nth-child(4) td:nth-child(2) input,
.contactIPFormWrap .contactFormBox table:nth-child(3) tr:nth-child(5) td:nth-child(2) input {
	height: 30px;
    padding: 0 10px;
	border: 1px solid #c1c1c1
}

.contactIPFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) font { font-size: 1.3rem }
.contactIPFormWrap .contactFormBox table:nth-child(3) tr:nth-child(1) td:nth-child(2) font:nth-child(1),
.contactIPFormWrap .contactFormBox table:nth-child(3) tr:nth-child(1) td:nth-child(2) font:nth-child(3),
.contactIPFormWrap .contactFormBox table:nth-child(3) tr:nth-child(2) td:nth-child(2) font:nth-child(1),
.contactIPFormWrap .contactFormBox table:nth-child(3) tr:nth-child(2) td:nth-child(2) font:nth-child(3) {
	margin-right: 10px
}

.contactIPFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) font { font-size: 1.3rem }
.contactIPFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) br { display: none }
.contactIPFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) font {
	font-size: 1.2rem;
	display: block
}

.contactIPFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) input + font { margin-top: 6px }
.contactIPFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) textarea {
    padding: 10px;
	border: 1px solid #c1c1c1
}

.contactIPFormWrap .contactFormBox form > br { display: none }
.contactIPFormWrap .contactFormBox form > input {
    width: 300px;
    height: 40px;
    font-weight: 600;
    line-height: 40px;
    margin: 20px auto 0;
    border: 1px solid #c1c1c1;
    background: #efefef;
    display: block;
}


@media screen and (max-width: 768px) {
	.contactIPFormWrap {
		width: 92%;
		margin: 20px auto 0
	}

	.contactIPFormWrap .contactFormWrapTitle {
		height: auto;
		padding: 2.5px 0 2.5px 10px
	}
	
	.contactIPFormWrap .contactFormBox { overflow: hidden }
	.contactIPFormWrap .contactFormBox iframe { width: 100% }
	.contactIPFormWrap .contactFormBox table:nth-child(3) td:nth-child(1) {
		width: 100%;
		display: block
	}
	
	.contactIPFormWrap .contactFormBox table:nth-child(3) tr + tr td:nth-child(1) { border-top: none }
	.contactIPFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) {
		width: 100%;
		display: block
	}

	.contactIPFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) input,
	.contactIPFormWrap .contactFormBox table:nth-child(3) tr:nth-child(4) td:nth-child(2) input {
		width: 100%
	}
	
	
	.contactIPFormWrap .contactFormBox table:nth-child(3) tr:nth-child(1) td:nth-child(2) input,
	.contactIPFormWrap .contactFormBox table:nth-child(3) tr:nth-child(2) td:nth-child(2) input,
	.contactIPFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) input,
	.contactIPFormWrap .contactFormBox table:nth-child(3) tr:nth-child(4) td:nth-child(2) input {
		font-size: 1.6rem
	}

	.contactIPFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) textarea {
		width: 100%;
		font-size: 1.6rem
	}
	
	.contactIPFormWrap .contactFormBox form > input {
		width: 100%;
		font-size: 1.6rem
	}
}


/* contact form */

.contactFormWrap {
	margin-top: 20px;
	border: 1px solid #c1c1c1
}

.contactFormWrap .contactFormWrapTitle {
	height: 30px;
	padding: 6.5px 0 6.5px 20px;
	border-bottom: 1px solid #c1c1c1
}

.contactFormWrap .contactFormWrapTxt { padding: 10px 10px 0 }
.contactFormWrap .contactFormBox {
	padding: 0 10px 20px;
	margin-top: 20px
}

.contactFormWrap .contactFormBox iframe { display: block }
.contactFormWrap .contactFormBox table + table { margin-top: 6px }
.contactFormWrap .contactFormBox table:nth-child(2) font { color: #bf0000 } 
.contactFormWrap .contactFormBox table:nth-child(3) {
	width: 100%;
	border: 1px solid #c1c1c1
}

.contactFormWrap .contactFormBox table:nth-child(3) td:nth-child(1) {
    vertical-align: top;
    padding: 10px
}

.contactFormWrap .contactFormBox table:nth-child(3) tr + tr td:nth-child(1) { border-top: 1px solid #fff }
.contactFormWrap .contactFormBox table:nth-child(3) td:nth-child(1) font {
	font-size: 1.3rem;
	font-weight: 600
}

.contactFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) {
    vertical-align: top;
    padding: 10px;
	background: #fff
}

.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(2) td:nth-child(2) input,
.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) input,
.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(4) td:nth-child(2) input,
.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(5) td:nth-child(2) input,
.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(6) td:nth-child(2) input,
.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(7) td:nth-child(2) input {
	height: 30px;
    padding: 0 10px;
	border: 1px solid #c1c1c1
}

.contactFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) font { font-size: 1.3rem }
.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(1) td:nth-child(2) font { margin-left: 6px }
.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(5) td:nth-child(2) font:nth-child(1),
.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(5) td:nth-child(2) font:nth-child(3),
.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(6) td:nth-child(2) font:nth-child(1),
.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(6) td:nth-child(2) font:nth-child(3) {
	margin-right: 10px
}

.contactFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) textarea {
    padding: 10px;
	border: 1px solid #c1c1c1
}

.contactFormWrap .contactFormBox form > br { display: none }
.contactFormWrap .contactFormBox form > input {
    width: 300px;
    height: 40px;
    font-weight: 600;
    line-height: 40px;
    margin: 20px auto 0;
    border: 1px solid #c1c1c1;
    background: #efefef;
    display: block;
}

@media screen and (max-width: 768px) {
	.contactFormWrap {
		width: 92%;
		margin: 20px auto 0
	}

	.contactFormWrap .contactFormWrapTitle {
		height: auto;
		padding: 6.5px 0 6.5px 10px
	}
	
	.contactFormWrap .contactFormBox { overflow: hidden }
	.contactFormWrap .contactFormBox iframe { width: 100% }
	.contactFormWrap .contactFormBox table:nth-child(3) td:nth-child(1) {
		width: 100%;
		display: block
	}
	
	.contactFormWrap .contactFormBox table:nth-child(3) tr + tr td:nth-child(1) { border-top: none }
	.contactFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) {
		width: 100%;
		display: block
	}

	.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(2) td:nth-child(2) input,
	.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) input,
	.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(4) td:nth-child(2) input,
	.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(7) td:nth-child(2) input {
		width: 100%
	}
	
	.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(2) td:nth-child(2) input,
	.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(3) td:nth-child(2) input,
	.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(4) td:nth-child(2) input,
	.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(5) td:nth-child(2) input,
	.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(6) td:nth-child(2) input,
	.contactFormWrap .contactFormBox table:nth-child(3) tr:nth-child(7) td:nth-child(2) input {
		font-size: 1.6rem
	}

	.contactFormWrap .contactFormBox table:nth-child(3) td:nth-child(2) textarea {
		width: 100%;
		font-size: 1.6rem
	}
	
	.contactFormWrap .contactFormBox form > input {
		width: 100%;
		font-size: 1.6rem
	}
}


/* error */

.errorBox {
	text-align: center;
    padding: 20px;
    border: 1px solid #c1c1c1
}

.errorBox h2 {
	color: #fff;
	font-size: 1.8rem;
    padding: 6px;
    margin-bottom: 20px;
    background: #69f
}

.errorBox p { font-size: 1.4rem }
.errorBox p + p { margin-top: 10px }
.errorBox p span { font-weight: 600 }
.errorBox a {
	color: #11c;
    text-decoration: underline
}

@media screen and (max-width: 768px) {
	.errorBox {
		width: 92%;
		padding: 10px;
		margin: 0 auto
	}
}


/* ------ to top ------ */

#toTop {
    position: fixed;
    bottom: 40px;
    right: 20px;
    z-index: 100
}

#toTop a {
    width: 50px;
    height: 50px;
    text-align: center;
    background: #000;
	position: relative;
    border-radius: 50%;
	display: block
}

#toTop a:hover { background: rgba(0, 0, 0, 0.8) }
#toTop a::before {
	content: '';
    width: 12px;
    height: 12px;
    margin: auto;
    border: 0px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: rotate(315deg);
    position: absolute;
    top: 0;
	right: 0;
	bottom: 0;
    left: 0
}

@media screen and (max-width: 768px) {
	#toTop { display: none }
}


/* ------ fixed btn ------ */

@media (max-width: 768px) {
	.footerBtn {
		width: 100%;
		height: 40px;
		position: fixed;
		bottom: 0;
		right: 0;
		z-index: 9999
	}
	
	.footerBtn ul { font-size: 0 }
	.footerBtn li {
		width: 50%;
		height: 40px;
		line-height: 36px;
		vertical-align: middle;
		text-align: center;
		display: inline-block
	}
	
	.footerBtn li:nth-child(1) a {
		color: #fff;
		font-size: 1.4rem;
		border: 2px solid #db0000;
		background: #db0000;
		display: block
	}
	
	.footerBtn li:nth-child(2) a {
		color: #ff9933;
		font-size: 1.4rem;
		border: 2px solid #ff9933;
		background: #fff;
		display: block
	}
}


/* ------ キャンペーン ------ */

/*  main visual */

.mainVisual {
	margin-top: 10px;
    background: url(../img/main_visual.jpg) center center no-repeat;
    background-size: cover
}

.mainVisualInner {
	padding: 40px 0;
	margin: 0 auto
}

.mainVisualTxt {
    width: 620px;
    margin: 0 auto
}

.mainVisualTxt img {
	width: 100%;
	display: block
}

.mainVisualDate {
	width: 690px;
	height: 40px;
	color: #fff;
	font-size: 2.4rem;
	font-weight: 900;
	line-height: 40px;
	text-align: center;
	margin: 20px auto 0;
	background: #b48233
}

.mainVisualGreeting {
	width: 650px;
	font-size: 1.4rem;
	padding: 20px;
	margin: 20px auto 0;
	border: 1px solid #b48233;
	background: rgba(255,255,255,0.8)
}

.mainVisualGreeting p {
	line-height: 1.6;
	margin: 0
}

.mainVisualGreeting p + p { margin-top: 10px }
.mainVisualGreeting p:nth-child(1) {
	font-size: 1.6rem;
    padding-left: 22px;
    position: relative
}

.mainVisualGreeting p:nth-child(1)::before {
    content: "";
    width: 12px;
    height: 12px;
    margin: auto;
    background: #333;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    border-radius: 50%
}

.mainVisualGreeting p:nth-child(2) {
	padding-top: 10px;
    margin-top: 10px;
    border-top: 1px solid #c1c1c1
}

.mainVisualGreeting p span {
    color: #e5006b;
    font-size: 1.8rem;
    font-weight: 900;
    border-bottom: 1px dashed #e5006b
}


/* banner */

.banner {
    width: 100%;
	margin: 40px auto
}

.banner img { display: block }


/* introduction */

#introduction .title {
	height: 120px;
	text-align: center;
	background: #828282
}

#introduction .title h2 {
	color: #fff;
	font-size: 3.2rem;
	font-weight: 900;
	line-height: 120px
}

#introduction .inner {
    width: 100%;
	margin: 0 auto
}

#introduction .listWrap { margin-top: 40px }
#introduction .listWrap ul {
	font-size: 0;
	padding: 0
}

#introduction .listWrap li {
	width: 100%;
	font-size: 0;
	padding: 20px;
	border: 1px solid #c1c1c1;
	display: block
}

#introduction .listWrap li + li { margin-top: 20px }
#introduction .listWrap .imageWrap {
	width: 120px;
	vertical-align: top;
	margin-right: 30px;
	display: inline-block
}

#introduction .listWrap img {
    margin: 0 auto;
    display: block
}

#introduction .listWrap .txtWrap {
	width: 568px;
	vertical-align: top;
	display: inline-block
}

#introduction .listWrap h3 {
	color: #b48233;
	font-size: 2.4rem;
	font-weight: 900;
	margin: 20px 0 0
}

#introduction .listWrap p {
	font-size: 1.4rem;
	line-height: 1.6;
	margin: 20px 0 0
}

#introduction .listWrap p a {
    color: #b48233;
    text-decoration: underline
}


/* campaign */

#campaign .inner {
    width: 100%;
	padding: 60px 0 40px;
	margin: 0 auto
}

#campaign .title { position: relative }
#campaign .title h2 {
    font-size: 4.2rem;
    font-weight: 900;
    line-height: 1.3;
    text-align: center;
	margin: 0
}

#campaign .title:after {
	content: "";
	width: 0;
	height: 0;
	margin: auto;
	position: absolute;
	right: 0;
	bottom: -90px;
	left: 0;
	border-style: solid;
	border-color: #e5006b transparent transparent transparent;
	border-width: 50px 80px 0 80px;
	z-index: 1
}

#campaign .campaignAbout {
	font-size: 0;
	margin-top: 150px
}

#campaign .campaignAbout .imageWrap {
	width: 340px;
	vertical-align: top;
	margin-right: 40px;
	display: inline-block
}

#campaign .campaignAbout .imageWrap img { width: 100% }
#campaign .campaignAbout .txtWrap {
	width: 380px;
	vertical-align: top;
	padding-top: 20px;
	display: inline-block
}

#campaign .campaignAbout .txtWrap h3 {
    color: #b48233;
    font-size: 2rem;
    font-weight: 900;
    line-height: 1.3;
	margin: 0
}

#campaign .campaignAbout .txtWrap > p {
    font-size: 1.4rem;
    line-height: 1.6;
	margin-top: 20px
}

#campaign .campaignAbout .txtWrap > p a {
    color: #b48233;
	text-decoration: underline
}

#campaign .listWrap { margin-top: 20px }
#campaign .listWrap ul {
	font-size: 0;
	padding: 0
}

#campaign .listWrap li {
	width: 360px;
	font-size: 0;
	vertical-align: top;
	display: inline-block
}

#campaign .listWrap li + li { margin-left: 40px }
#campaign .listWrap .case {
	width: 60px;
	height: 60px;
	vertical-align: top;
	text-align: center;
	margin-right: 10px;
	background: #b48233;
	border-radius: 50%;
	display: inline-block
}

#campaign .listWrap .case p {
	color: #fff;
	font-size: 1.4rem;
	font-weight: 600;
	padding-top: 6px
}

#campaign .listWrap .case p span {
	font-size: 2.4rem;
	margin-top: -6px;
	display: block
}

#campaign .listWrap .txt {
	width: 290px;
	vertical-align: top;
	display: inline-block
}

#campaign .listWrap .txt h4 {
	font-size: 2rem;
	font-weight: 900;
	padding-top: 10px;
	margin: 0
}

#campaign .listWrap .txt p {
	font-size: 1.4rem;
    line-height: 1.6;
	margin-top: 10px
}


/* banner offer */

#bannerOffer .title {
    text-align: center;
    padding: 20px;
    background: #828282
}

#bannerOffer .title h2 {
    color: #fff;
    font-size: 3.2rem;
    font-weight: 900;
    line-height: 1.3;
    margin: 0
}

#bannerOffer .inner {
	padding: 0 0 40px;
	margin: 0 auto
}

#bannerOffer .txt {
	font-size: 1.6rem;
    text-align: center;
    line-height: 1.6;
    margin-top: 20px
}

#bannerOffer .listWrap { margin-top: 20px }
#bannerOffer .listWrap > ul {
	font-size: 0;
	padding: 0
}

#bannerOffer .listWrap > ul > li {
	width: 370px;
	vertical-align: top;
	text-align: left;
	display: inline-block
}

#bannerOffer .listWrap > ul > li + li { margin-left: 20px }
#bannerOffer .listWrap h3 {
    font-size: 2rem;
    font-weight: 900;
    line-height: 1.6;
    padding-left: 10px;
    border-left: 20px solid #b48233
}

#bannerOffer .listWrap ul ul {
	padding: 0;
	margin-top: 20px
}

#bannerOffer .listWrap ul ul p { font-size: 1.4rem }
#bannerOffer .listWrap ul ul li + li { margin-top: 10px }


/* advertisers */

#advertisers { background: #ffe7fd }
#advertisers .inner {
	padding: 40px 10px;
	margin: 0 auto
}

#advertisers .title h2 {
    font-size: 3.2rem;
    font-weight: 900;
    line-height: 1.3;
    text-align: center;
	margin: 0
}

#advertisers .listWrap { margin-top: 40px }
#advertisers .listWrap ul { padding: 0 }
#advertisers .listWrap li {
	font-size: 0;
	padding: 20px;
	background: #fff
}

#advertisers .listWrap li + li { margin-top: 20px }
#advertisers .listWrap li .imageWrap {
	width: 240px;
	vertical-align: top;
	margin-right: 30px;
	display: inline-block
}

#advertisers .listWrap li .imageWrap img { width: 100% }
#advertisers .listWrap li .txtWrap {
	width: 430px;
	vertical-align: top;
	display: inline-block
}

#advertisers .listWrap li .txtWrap h3 {
	font-size: 1.6rem;
	font-weight: 900
}

#advertisers .listWrap li .txtWrap p {
	font-size: 1.4rem;
	line-height: 1.5;
	margin-top: 10px
}

#advertisers .listWrap li .txtWrap h3 a {
	color: #11c;
	text-decoration: underline
}

#advertisers .listWrap li .txtWrap p a {
	color: #b48233;
	text-decoration: underline
}

#advertisers .listWrap li .tableWrap {
	width: 430px;
	font-size: 1.4rem;
	text-align: right;
	display: block
}

#advertisers .listWrap li .tableWrap p { color: #e5006b }
#advertisers .listWrap li .tableWrap table {
    width: 100%;
    margin-top: 4px;
    border: 1px solid #c1c1c1;
	border-collapse: collapse
}

#advertisers .listWrap li .tableWrap table th,
#advertisers .listWrap li .tableWrap table td {
    width: calc(100% / 3);
    font-weight: normal;
    padding: 2px 6px;
    border: 1px solid #c1c1c1
}

#advertisers .listWrap li .tableWrap table td span {
	font-size: 1rem;
    margin-top: -2px;
	display: block
}

#advertisers .listWrap li .tableWrap thead th {
	text-align: center;
    background: #f9f3f5
}

#advertisers .startWrap { margin-top: 40px }
#advertisers .startWrap .startTitle {
    width: 100%;
    height: 120px;
    text-align: center;
    background: #b48233
}

#advertisers .startWrap .startTitle p {
	color: #fff;
    font-size: 3.2rem;
    font-weight: 900;
    line-height: 120px;
	margin: 0
}

#advertisers .startWrap .startInner {
	text-align: center;
	padding: 40px;
	border: 2px solid #b48233;
	background: #fff;
	border-top: none
}

#advertisers .startWrap .startInner p {
	font-size: 2rem;
	line-height: 1.3;
	margin: 0
}

#advertisers .startWrap .startInner p:nth-child(1) span {
	color: #e5006b;
	font-size: 2.4rem;
	font-weight: 900
}

#advertisers .startWrap .startInner p:nth-child(2) {
	font-weight: 900;
	margin-top: 20px
}

#advertisers .startWrap .startInner .btnWrap .btn {
	width: 670px;
    height: 148px;
    text-align: left;
	padding: 20px 0 0;
    margin: 0 auto
}

#advertisers .startWrap .startInner .btnWrap .btn a {
	height: 100px;
    color: #fff;
	font-size: 3.2rem;
    font-weight: 900;
	line-height: 100px;
	padding-left: 127px;
    background: #1ac575;
    box-shadow: 0 8px 0 #139156;
	position: relative;
    border-radius: 12px;
	text-shadow: 3px 3px 0 rgba(0,0,0,0.2);
	text-decoration: none;
    display: block
}

#advertisers .startWrap .startInner .btnWrap .btn a::before {
    content: "";
    width: 67px;
    height: 47px;
    margin: auto;
    background: url(../img/icon_registration.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 30px;
}

#advertisers .startWrap .startInner .btnWrap .btn a:hover {
	margin-top: 8px;
    box-shadow: 0 0 0 #139156
}


/* first time campaign */

.firstTimeCampaign {
	text-align: center;
    padding: 20px;
    margin-top: 20px;
    border: 2px solid #e5006b
}

.firstTimeCampaign .firstTimeCampaignTitle {
    color: #fff;
    font-weight: 600;
	padding: 10px;
    background: #e5006b
}

.firstTimeCampaign .firstTimeCampaignTitle p {
    font-size: 1.8rem;
    line-height: 1.6
}

.firstTimeCampaign .firstTimeCampaignTxt > p {
    font-size: 1.6rem !important;
	font-weight: normal !important;
    margin-top: 10px !important
}

.firstTimeCampaign .firstTimeCampaignTxt .caution {
    padding: 10px;
    margin-top: 10px;
    background: #c1c1c1
}

.firstTimeCampaign .firstTimeCampaignTxt .caution p {
	font-size: 1.6rem !important;
	font-weight: normal !important
}

.firstTimeCampaign .firstTimeCampaignTxt .caution a {
    color: #1111cc;
    text-decoration: underline
}

@media screen and (max-width: 768px) {
	.campaignWrap { padding: 0 4% }
	
	/*  main visual */

	.mainVisualInner { padding: 20px 4% }
	.mainVisualTxt { width: 100% }
	.mainVisualDate {
		width: 100%;
		font-size: 1.6rem
	}

	.mainVisualGreeting {
		width: 100%;
		font-size: 1.4rem;
		padding: 10px
	}


	/* banner */
	
	.banner {
		width: 92%;
		margin: 20px auto
	}


/* introduction */

	#introduction .title {
		height: auto;
		padding: 10px 4%
	}

	#introduction .title h2 {
		font-size: 2rem;
		line-height: 1.6
	}

	#introduction .listWrap {
		padding: 0 4%;
		margin-top: 20px
	}
	
	#introduction .listWrap li { padding: 10px }
	#introduction .listWrap .imageWrap {
		width: 120px;
		margin: 0 auto;
		display: block
	}

	#introduction .listWrap .txtWrap {
		width: 100%;
		display: block
	}

	#introduction .listWrap h3 {
		font-size: 2rem;
		line-height: 1.6
	}

	#introduction .listWrap p { margin: 10px 0 0 }


	/* campaign */

	#campaign .inner { padding: 20px 0 }
	#campaign .title h2 {
		font-size: 2rem;
		line-height: 1.6
	}

	#campaign .title:after {
		bottom: -50px;
		border-width: 30px 60px 0 60px
	}

	#campaign .campaignAbout {
		padding: 0 4%;
		margin-top: 80px
	}

	#campaign .campaignAbout .imageWrap {
		width: 100%;
		max-width: 340px;
		margin: 0 auto;
		display: block
	}

	#campaign .campaignAbout .txtWrap {
		width: 100%;
		display: block
	}

	#campaign .campaignAbout .txtWrap h3 {
		font-size: 1.8rem;
		line-height: 1.6
	}

	#campaign .campaignAbout .txtWrap > p { margin-top: 10px }
	#campaign .listWrap { padding: 0 4% }
	#campaign .listWrap li {
		width: 100%;
		display: block
	}

	#campaign .listWrap li + li {
		margin-top: 20px;
		margin-left: 0
	}

	#campaign .listWrap .txt { width: calc(100% - 70px) }
	#campaign .listWrap .txt h4 {
		font-size: 1.6rem;
		padding-top: 4px
	}
	
	#campaign .listWrap .txt p { margin-top: 6px }


/* banner offer */

	#bannerOffer .title { padding: 10px 4% }
	#bannerOffer .title h2 {
		font-size: 2rem;
		line-height: 1.6
	}

	#bannerOffer .inner { padding: 0 4% 20px }
	#bannerOffer .txt { font-size: 1.4rem }
	#bannerOffer .listWrap > ul > li {
		width: 100%;
		display: block
	}
	
	#bannerOffer .listWrap > ul > li + li {
		margin-top: 20px;
		margin-left: 0
	}

	#bannerOffer .listWrap h3 { font-size: 1.8rem }


/* advertisers */

	#advertisers .inner { padding: 20px 4% }
	#advertisers .title h2 {
		font-size: 2rem;
		line-height: 1.6
	}

	#advertisers .listWrap { margin-top: 20px }
	#advertisers .listWrap li { padding: 20px 10px; }
	#advertisers .listWrap li .imageWrap {
		width: 240px;
		margin: 0 auto;
		display: block
	}

	#advertisers .listWrap li .txtWrap {
		width: 100%;
		margin-top: 20px;
		display: block
	}

	#advertisers .listWrap li .tableWrap {
		width: 100%;
		margin-top: 20px;
		display: block
	}

	#advertisers .startWrap { margin-top: 20px }
	#advertisers .startWrap .startTitle { height: 80px }
	#advertisers .startWrap .startTitle p {
		font-size: 1.8rem;
		line-height: 80px
	}

	#advertisers .startWrap .startInner { padding: 20px }
	#advertisers .startWrap .startInner p {
		font-size: 1.6rem;
		line-height: 1.6
	}

	#advertisers .startWrap .startInner p:nth-child(1) span { font-size: 2rem }
	#advertisers .startWrap .startInner .btnWrap .btn {
		width: 100%;
		height: 108px
	}

	#advertisers .startWrap .startInner .btnWrap .btn a {
		height: 60px;
		font-size: 1.6rem;
		line-height: 60px;
		padding-left: 44px
	}

	#advertisers .startWrap .startInner .btnWrap .btn a::before {
		width: 24px;
		height: 17px;
		left: 10px
	}

	#advertisers .startWrap .startInner .btnWrap .btn a:hover {
		margin-top: 0;
		box-shadow: 0 8px 0 #139156
	}

/* first time campaign */

	.firstTimeCampaign {
		padding: 10px;
		margin-top: 10px
	}
	
	.firstTimeCampaign .firstTimeCampaignTitle {
		font-size: 1.6rem;
		padding: 2px 10px
	}

	.firstTimeCampaign .firstTimeCampaignTxt br { display: none }
	.firstTimeCampaign .firstTimeCampaignTxt .caution a { display: block }
}


/* ------ kaitori ------ */

.kaitori .sliderWrap {
    margin-top: 10px;
    overflow: hidden
}
    
.kaitori .sliderWrap img { width: 100% }
.kaitori .intro {
    padding: 30px 20px;
    margin-top: 20px;
    border: 1px solid #c1c1c1;
    position: relative;
    overflow: hidden
}
    
.kaitori .intro::after {
    content: "";
    width: 302px;
    height: 614px;
    margin: auto;
    background: url(https://www.siro-hame.com/siro-hame/img/product/intro.png) no-repeat;
    background-size: contain;
    position: absolute;
    right: 10px;
    top: 120px
}
    
.kaitori .intro .title {
    font-size: 2.8rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-align: center;
    margin-bottom: 30px
}

.kaitori .intro .title span { color: #c00 }
.kaitori .intro .txt {
    font-size: 1.4rem;
    letter-spacing: 0.09em
}

.kaitori .intro .txt.bg {
    width: 440px;
    padding: 10px;
    background: #ffc7a2
}
    
.kaitori .intro .txt + .txt { margin-top: 10px }
.kaitori .gaiyou {
    padding: 20px;
    margin-top: 20px;
    border: 1px solid #c1c1c1
}

.kaitori .gaiyou .title { margin-bottom: 30px }
.kaitori .gaiyou .title p {
    color: #fff;
    font-size: 2.8rem;
    font-weight: 500;
    letter-spacing: 0.06em;
    line-height: 60px;
    text-align: center;
    background: #c00
}

.kaitori .gaiyou > ul li {
    font-size: 1.8rem;
    letter-spacing: 0.06em;
    padding-left: 26px;
    position: relative
}
    
.kaitori .gaiyou > ul li::before {
    content: "●";
    font-size: 2rem;
    position: absolute;
    top: 0;
    left: 0
}
    
.kaitori .gaiyou li span { color: #c00 }
.kaitori .gaiyou .box { margin-top: 40px }
.kaitori .gaiyou .boxTitle {
    margin-bottom: 30px;
    position: relative
}
    
.kaitori .gaiyou .performer .boxTitle::before {
    content: "";
    width: 40px;
    height: 40px;
    margin: auto;
    background: url(https://www.siro-hame.com/siro-hame/img/product/performer.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 20px
}
    
.kaitori .gaiyou .contents .boxTitle::before {
    content: "";
    width: 40px;
    height: 40px;
    margin: auto;
    background: url(https://www.siro-hame.com/siro-hame/img/product/contents.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 20px
}
    
.kaitori .gaiyou .copyright .boxTitle::before {
    content: "";
    width: 40px;
    height: 40px;
    margin: auto;
    background: url(https://www.siro-hame.com/siro-hame/img/product/copyright.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 20px
}
    
.kaitori .gaiyou .ban .boxTitle::before {
    content: "";
    width: 40px;
    height: 40px;
    margin: auto;
    background: url(https://www.siro-hame.com/siro-hame/img/product/ban.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 20px
}
    
.kaitori .gaiyou .boxTitle p {
    font-size: 2.4rem;
    font-weight: 500;
    letter-spacing: 0.06em;
    line-height: 60px;
    padding-left: 80px;
    border-top: 2px solid #c00;
    border-bottom: 2px solid #c00
}

.kaitori .gaiyou .box li {
    font-size: 1.4rem;
    letter-spacing: 0.06em;
    text-indent: -1em;
    padding-left: 1em
}

.kaitori .gaiyou .box li + li { margin-top: 6px }
.kaitori .gaiyou .box li em {
    font-style: normal;
    background: linear-gradient(transparent 80%, #ff0 0%)
}
    
.kaitori .btnWrap {
    text-align: center;
    padding: 20px;
    margin-top: 20px;
    border: 1px solid #c1c1c1
}

.kaitori .btnWrap .title {
    font-size: 2.4rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    margin-bottom: 10px
}

.kaitori .btnWrap a {
    width: 420px;
    color: #fff;
    font-size: 2rem;
    font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 0.06em;
    line-height: 60px;
    margin: 0 auto 20px;
    background: #c00;
    box-shadow: 0 6px 0 #600;
    border-radius: 10px;
    display: block
}

.kaitori .btnWrap a:hover { opacity: 0.8 }
.kaitori .btnWrap .txt {
    font-size: 1.4rem;
    letter-spacing: 0.09em
}
    
@media screen and (max-width: 768px) {
    .kaitori { padding: 0 4% }
    .kaitori .intro { padding: 20px 10px }
    .kaitori .intro::after {
        width: 160px;
        height: 325px;
        bottom: -340px
    }
    
    .kaitori .intro .title {
        font-size: 2rem;
        margin-bottom: 20px
    }

    .kaitori .intro .title br { display: none }
    .kaitori .intro .txt:nth-child(4),
    .kaitori .intro .txt:nth-child(5) {
        width: 55%
    }
    
    .kaitori .intro .txt br { display: none }
    .kaitori .intro .txt.bg { width: 100% }
    .kaitori .intro .txt span {
        margin-top: 10px;
        display: block
    }
    
    .kaitori .gaiyou { padding: 10px }
    .kaitori .gaiyou .title { margin-bottom: 10px }
    .kaitori .gaiyou .title p {
        font-size: 2rem;
        line-height: 50px
    }

    
    .kaitori .gaiyou > ul li::before { top: -3px }
    .kaitori .gaiyou .box { margin-top: 20px }
    .kaitori .gaiyou .boxTitle { margin-bottom: 10px }
    .kaitori .gaiyou .performer .boxTitle::before { left: 10px }
    .kaitori .gaiyou .contents .boxTitle::before { left: 10px }
    .kaitori .gaiyou .copyright .boxTitle::before { left: 10px }
    .kaitori .gaiyou .ban .boxTitle::before { left: 10px }
    .kaitori .gaiyou .boxTitle p {
        font-size: 2rem;
        line-height: 50px;
        padding-left: 60px
    }

    .kaitori .btnWrap .title { font-size: 2rem }
    .kaitori .btnWrap a {
        width: 100%;
        font-size: 1.6rem
    }
}


/* PC・SP SWICH */

.spOnly { display: none !important }

@media screen and (max-width: 768px) {
	.pcOnly { display: none !important }
	.spOnly { display: block !important }
}