@charset "utf-8";
/*
editor : W3G,LLC. Ryo Ueda ( ueda.ryo@w3g.jp );
*/
/* ----------------------------------------------------------------
	HTML5 display definitions
----------------------------------------------------------------- */
main, article, aside, details, figcaption, figure, footer, header, hgroup, nav, section, summary{
	display:block;
}

audio, canvas, video{
	display:inline-block;
}

audio:not([controls]){
	display:none;
	height:0;
}

[hidden]{
	display:none;
}

/* ----------------------------------------------------------------
	Base
----------------------------------------------------------------- */
html{
	margin:0;
	padding:0;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-webkit-font-smoothing:subpixel-antialiased;
}
@media only screen and (-webkit-min-device-pixel-ratio : 2),only screen and (min--moz-device-pixel-ratio : 2),only screen and (min-device-pixel-ratio : 2) {
	html{
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
}

body{
	margin:0;
	padding:0;
	color:#333;
	font-size:16px;
	background-color:#fff;
}
legend, hr{
	display:none;
}

/* ----------------------------------------------------------------
	Typography
----------------------------------------------------------------- */
body,button, input, select, textarea{
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}
html:lang(en) body,html:lang(en) button, html:lang(en) input, html:lang(en) select, html:lang(en) textarea{
	font-family: "Helvetica Neue", "Lucida Grande", "segoe UI", Arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}

h1, h2, h3, h4, h5, h6{
	margin:0;
	padding:0;
	position:relative;
	font-size:100%;
	font-weight:bold;
}

p{
	margin:0;
	padding:0;
}

strong{
	font-weight:bold;
}

b, em{
	font-style:normal;
	font-weight:bold;
}

abbr[title]{
	border-bottom:1px dotted;
}

pre{
	white-space:pre;
	white-space:pre-wrap;
	word-wrap:break-word;
}

q{
	quotes:none;
}

q:before,
q:after{
	content:'';
	content:none;
}

small{
	font-size:77%;
}

sub, sup{
	position:relative;
	line-height:1;
	vertical-align:baseline;
	font-size:77%;
}

sup{
	top:-0.5em;
}

sub{
	bottom:-0.25em;
}

applet, object, iframe, blockquote, abbr, acronym, address, mark,
pre, big, cite, code, del, dfn, ins, kbd, samp, q, s,
small, strike, sub, sup, tt, var, b, u, i{
	margin:0;
	padding:0;
	font-style:normal;
	font-weight:normal;
}

/* ----------------------------------------------------------------
	Links
----------------------------------------------------------------- */
a{
	color:#d31d00;
	text-decoration:underline;
	outline:0 none;
}

a:focus{
	text-decoration:underline;
}

a:hover,
a:active{
	color:#e98d7d;
	outline:0 none;
	text-decoration:none;
}
/* ----------------------------------------------------------------
	Lists
----------------------------------------------------------------- */
menu, ul, ol, dl{
	margin:0;
	padding:0;
	list-style:none;
}
menu > :last-child, ul > :last-child, ol > :last-child, dl > :last-child{
	margin-bottom:0 !important;
}
menu p, menu ul, menu ol, menu dl, menu table, ul p, ul ul, ul ol, ul dl, ul table, ol p, ol ul, ol ol, ol dl, ol table, dl p, dl ul, dl ol, dl dl, dl table{
	margin-top:5px;
	font-size:100%;
}

ol{
	list-style-type:decimal;
}
ol li ol{
	list-style-type:decimal;
}
dd{
	margin:0;
}

/* ----------------------------------------------------------------
	Tables
----------------------------------------------------------------- */
table{
	margin:0;
	padding:0;
	border-spacing:0;
	width:100%;
	font-size:inherit;
}
table p, table ul, table ol, table dl, table table{
	margin-bottom:5px;
	font-size:100%;
}
table td > :last-child{
	margin-bottom:0 !important;
}

/* ----------------------------------------------------------------
	Embedded content
----------------------------------------------------------------- */
img{
	border:0;
	line-height:1;
	max-width:100%;
	height:auto;
	vertical-align:bottom;
}
svg:not(:root){
	overflow:hidden;
}

/* ----------------------------------------------------------------
	Figures
----------------------------------------------------------------- */
figure{
	margin:0;
}

/* ----------------------------------------------------------------
	Forms
----------------------------------------------------------------- */
form, fieldset{
	margin:0;
	padding:0;
	border:0;
}

button, input, select, textarea{
	margin:0;
	vertical-align:baseline;
	font-size:100%;
}

button, input{
	line-height:normal;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"]{
	cursor:pointer;
}

button[disabled], input[disabled]{
	cursor:default;
}

input[type="checkbox"],
input[type="radio"]{
	padding:0;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}

select{
	line-height:normal;
	vertical-align:middle;
}

textarea{
	overflow:auto;
	vertical-align:top;
}
/* ----------------------------------------------------------------
	common
----------------------------------------------------------------- */
#navigation a:before,
.koukokuSec dt:after,
.contactSec li a:before,
.contactSec a:after,
#pagetop a:before,
#contentinfo .content a:before,
.interview .target-link a:after,
.interview .more a:after,
.toc li a:after,
#access .map dt:after,
.persons li:before,
.about #history dl:after,
.tellclub .theme li a:after,
.tellclub footer a:after,
.area .theme li a:after,
.area footer a:after,
.blog .nav-links .meta-nav{
	background-image:url(../img/gnavicons_ie8.png);
}
html:root #navigation a:before,
html:root .koukokuSec dt:after,
html:root .contactSec li a:before,
html:root .contactSec a:after,
html:root #pagetop a:before,
html:root #contentinfo .content a:before,
html:root .interview .target-link a:after,
html:root .interview .more a:after,
html:root .toc li a:after,
html:root #access .map dt:after,
html:root .persons li:before,
html:root .about #history dl:after,
html:root .tellclub .theme li a:after,
html:root .tellclub footer a:after,
html:root .area .theme li a:after,
html:root .area footer a:after,
html:root .blog .nav-links .meta-nav{
	background-image:url(../img/gnavicons.png);
	background-size:310px 75px;
}
.tel{
	text-decoration:none;
	color:#333;
	cursor:text;
	position:relative;
}
.tel:hover,
.tel:active{
	color:#333;
}
@media(max-width: 720px) {
	.tel{
		color:#d31d00;
		text-decoration:underline;
	}
	.tel:hover,
	.tel:active{
		color:#e98d7d;
		text-decoration:none;
	}
}

#header{
	width:100%;
	height:92px;
	position:absolute;
	top:0;
	left:0;
	background:#de543e url(../img/headerbg.png) repeat-x 0 0;
	z-index:100;
}
@media(min-height: 830px) and (min-width: 1200px) {
	#header{
		position:fixed;
	}
}

#header h1{
	height:92px;
	width:100%;
	max-width:1000px;
	margin:0 auto;
	padding:0;
	position:relative;
}
#header h1 a{
	display:block;
	padding:92px 0 0 0;
	color:#000;
	font-size:100%;
	width:34%;
	height:0;
	margin:0 auto;
	outline:0 none;
	position:relative;
	overflow:hidden;
	z-index:2;
	background:url(../img/centerlogo.png) no-repeat 50% 50%;
}
#header h1 a:before{
	content:"";
	display:none;
	position:absolute;
	top:0;
	left:10px;
	width:100%;
	height:100%;
	background:url(../img/logo.png) no-repeat 0 50%;
}
#navigation{
	width:100%;
	height:100%;
	margin:0;
	padding:0;
	position:absolute;
	top:0;
	left:0;
}
#navigation ul{
	width:100%;
	height:100%;
	max-width:1000px;
	margin:0 auto;
	padding:0;
	overflow:hidden;
	position:relative;
}
#navigation > ul{
	z-index:1;
}
#navigation li{
	float:left;
	margin:0;
	padding:0;
	width:11%;
	height:100%;
	position:relative;
}
#navigation .nav-home{
	display:none;
}
#navigation .nav-tellclub,
#navigation .nav-technic,
#navigation .nav-taiken{
	float:right;
}
#navigation a{
	height:100%;
	padding:54px 0 25px 0;
	line-height:1;
	display:block;
	color:#fff;
	font-size:13px;
	text-decoration:none;
	text-align:center;
	position:relative;
}
#navigation a:before{
	content:"";
	display:block;
	position:absolute;
	top:12.5%;
	left:50%;
	margin-left:-12.5px;
	width:25px;
	height:25px;
}
.nav-about a:before {
	background-position:0 0;
}
.nav-phone-h a:before {
	background-position:-25px 0;
}
.nav-hitoduma a:before {
	background-position:-50px 0;
}
.nav-tellclub a:before {
	background-position:-75px 0;
}
.nav-technic a:before {
	background-position:-100px 0;
}
.nav-taiken a:before {
	background-position:-125px 0;
}

#navigation a:after{
	content:"";
	display:block;
	position:absolute;
	top:0;
	right:0;
	width:100%;
	height:100%;
	background-color:transparent;
	z-index:-2;
	-webkit-transition:background-color 0.3s ease;
	transition:background-color 0.3s ease;
}
#navigation a:hover:after{
	background-color:#d31d00;
}
#navigation .active a:after{
	background-color:#d31d00;
}
#navigation li:before{
	content:"";
	display:block;
	height:100%;
	width:1px;
	background:#e98d7d;
	position:absolute;
	top:0;
	right:0;
	z-index:-1;
}
#navigation .nav-tellclub:before,
#navigation .nav-technic:before{
	right:auto;
	left:0;
}
#navigation .nav-taiken:before,
#navigation .nav-hitoduma:before{
	display:none;
}
#navigation ul:before,
#navigation ul:after{
	content:"";
	display:block;
	height:92px;
	width:1px;
	background:#e98d7d;
	position:absolute;
	top:0;
	z-index:-1;
}
#navigation ul:before{
	left:0;
}
#navigation ul:after{
	right:0;
}
#navigation .locale-switcher{
	width:100%;
	height:40px;
	max-width:1000px;
	margin:-40px auto 0 auto;
	position:relative;
}
#navigation .locale-options{
	position:absolute;
	bottom:-40px;
	right:0;
	width:11%;
	height:100%;
	background:#fff;
	border-left:1px solid #f9f9f9;
	border-right:1px solid #ddd;
	border-bottom:1px solid #ddd;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	-webkit-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.15);
	box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.15);
}
#navigation .locale-options li{
	height:100%;
	width:50%;
	float:left;
	margin:0;
	padding:0;
	background:none;
}
#navigation .locale-options abbr{
	text-decoration: none;
	border-bottom:0 none;
	font-weight: bold;
}
#navigation .locale-options a{
	background:none;
	padding:0;
	height:100%;
	line-height:40px;
	width:100%;
	text-align:center;
	display:block;
	color:#aaa;
}
html:lang(ja) #navigation .locale-options li:first-child a{
	color:#d31d00;
}

#navigation .locale-options:before,
#navigation .locale-options:after,
#navigation .locale-options li:before,
#navigation .locale-options li:after,
#navigation .locale-options a:before,
#navigation .locale-options a:after{
	display:none;
}
#navigation .locale-options:before{
	content:"\2F";
	position:absolute;
	width:0.5em;
	height:1em;
	line-height:1;
	top:50%;
	left:50%;
	margin:-0.5em 0 0 -0.25em;
	display:block;
	color:#d31d00;
	background:none;
	z-index:1;
}
html:root a[href$=".pdf"]:after {
	content:"";
	display:inline-block;
	width:1em;
	height:1em;
	background:url(/img/pdf.png) no-repeat right 50%;
	background-size:auto 100%;
	margin:0 0 0 0.3em;
	vertical-align:middle;
}
/* ----------------------------------------------------------------
	footer
----------------------------------------------------------------- */
#contentinfo{
	background:#d31d00;
	position:relative;
}
#contentinfo .content{
	margin:0 auto;
	max-width:1000px;
	position:relative;
	height:50px;
	line-height:50px;
}
#pagetop{
	position:absolute;
	bottom:20px;
	left:50%;
	width:80px;
	height:80px;
	margin:0 0 0 -40px;
	z-index:100;
}
#pagetop a{
	display:block;
	width:100%;
	height:0;
	position:relative;
	padding:80px 0 0 0;
	overflow:hidden;
}
#pagetop a:before{
	content:"";
	display:block;
	height:60px;
	width:60px;
	position:absolute;
	bottom:0;
	left:10px;
	background-position:-250px 0;
	-webkit-transition:-webkit-transform 0.3s;
	transition:transform 0.3s;
}
#pagetop a:hover:before{
	-webkit-transform: translateY(-10px);
	transform: translateY(-10px);
}

#contentinfo .content > a{
	position:absolute;
	top:0;
	left:0;
	width:auto;
	height:100%;
	padding:0 30px 0 10px;
	display:block;
	color:#fff;
	text-align:center;
	font-size:12px;
	background-color:#de543e;
	text-decoration: none;
	-webkit-transition:background-color 0.5s;
	transition:background-color 0.5s;
}
#contentinfo .content > a:before{
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 10px;
	margin: -8px 0 0 0;
	height:15px;
	width:12px;
	background-position:-230px -35px;
}
#contentinfo .content > a:hover{
	background-color:#ba1900;
}
#contentinfo small{
	color:#fae2df;
	display:block;
	text-align:right;
	font-size:100%;
	line-height:50px;
	font-family:'Trebuchet MS',monospace;
}
#contentinfo small abbr{
	text-decoration: none;
	border-bottom:0 none;
}
#contentinfo small a{
	color:#fae2df;
	text-decoration:none;
}
html:root #contentinfo small a{
	display:inline-block;
	overflow:hidden;
	padding:50px 0 0 0;
	height:0;
	vertical-align:top;
	background-size:100% auto;
}

/* ----------------------------------------------------------------
	main
----------------------------------------------------------------- */
#loading {
	display:none;
	position: fixed;
	z-index: 10001;
	top: 50%;
	left: 50%;
	width: 60px;
	height: 60px;
	margin: -30px 0 0 -30px;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	border: 2px solid transparent;
	border-color: transparent #d31d00 transparent #d31d00;
	border-radius: 100%;
	font-size: 0;
	line-height: 0;
	-webkit-animation: rotate-loading 1s linear 0s infinite;
	animation: rotate-loading 1s linear 0s infinite;
	-webkit-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
}
@-webkit-keyframes rotate-loading{
	0%{
		-webkit-transform:rotate(0deg);
	}
	100%{
		-webkit-transform:rotate(360deg);
	}
}
@keyframes rotate-loading{
	0%{
		transform:rotate(0deg);
	}
	100%{
		transform:rotate(360deg);
	}
}

/* ----------------------------------------------------------------
	main
----------------------------------------------------------------- */
#under-construction{
	font-size:20px;
	font-weight:bold;
	max-width:1000px;
	margin:0 auto;
	padding:50px 10px 0 10px;
	text-align:center;
}
#oldData{
	position:relative;
}
#oldData ~ *{
	opacity:0 !important;
	overflow:hidden !important;
	height:0 !important;
	width:0 !important;
	max-height:0 !important;
	max-width:0 !important;
	margin:0 !important;
	padding:0 !important;
}

#main{
	margin:0;
	padding:92px 0 0 0;
}
.change .top #main,
.complete .top #main,
.top #main{
	padding:0;
}

#main main{
	position:relative;
	margin:0;
	padding:0;
	overflow:hidden;
	-webkit-animation:fadeIn 1s;
	animation:fadeIn 1s;
}
.change #main main{
	opacity:0;
	-webkit-animation:fadeOut 0.35s;
	animation:fadeOut 0.35s;
}
.complete #main main{
	-webkit-animation:fadeIn 1s;
	animation:fadeIn 1s;
}
@-webkit-keyframes fadeOut{
	0%{
		opacity:1;
	}
	100%{
		opacity:0;
	}
}
@keyframes fadeOut{
	0%{
		opacity:1;
	}
	100%{
		opacity:0;
	}
}
@-webkit-keyframes fadeIn{
	0%{
		opacity:0;
	}
	100%{
		opacity:1;
	}
}
@keyframes fadeIn{
	0%{
		opacity:0;
	}
	100%{
		opacity:1;
	}
}
/* ----------------------------------------------------------------
	breadcrumbs
----------------------------------------------------------------- */
#breadcrumbs{
	line-height:1;
	height:auto;
	width:100%;
	font-size:12px;
	margin:0;
	padding:0;
	overflow:hidden;
	padding:0;
	border-bottom: 1px solid #ddd;
	background-color:#fff;
	background-color:rgba(255,255,255,0.7);
	text-shadow:0px 1px 1px #fff;
	color:#000;
	text-overflow:ellipsis;
	white-space:nowrap;
	position:absolute;
	top:0;
	left:0;
}
#breadcrumbs ol{
	max-width:1000px;
	margin:0 auto;
	padding:0;
	list-style:none;
}
#breadcrumbs li{
	margin:0;
	padding:0 0 0 1em;
	display:inline-block;
	position:relative;
}
#breadcrumbs li:first-child{
	padding:0;
}
#breadcrumbs li:before{
	content:"\3E";
	position:absolute;
	top:50%;
	left:0;
	display:inline;
	margin-top:-0.5em;
}
#breadcrumbs li:first-child:before{
	display:none;
}
#breadcrumbs li a{
	color:#000;
	display:inline-block;
	padding-top:18px;
	padding-bottom:18px;
}
#breadcrumbs li:first-child a span{
	display:none;
}
#breadcrumbs li:first-child a:before{
	content:"HOME";
}
/* ----------------------------------------------------------------
	build-menu
----------------------------------------------------------------- */
#build-menu-button{
	position:absolute;
	top:0;
	right:0;
	margin-top:0;
	width:90px;
	height:80px;
	z-index:1000;
	cursor:pointer;
}
#build-menu-button,
.build-menu-open #build-menu-button{
	display:none;
}
#build-menu {
	visibility: visible;
	opacity: 1;
	-webkit-transform: none;
	transform: none;
	display: none;
	width: 220px;
	float:right;
	padding:0;
	position: relative;
	top: 0;
	left: 0;
	z-index: 0;
	height: 100%;
	overflow-y: auto;
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;
	-webkit-box-shadow: 2px 0 3px rgba(0,0,0,0.5) inset;
	box-shadow: 2px 0 3px rgba(0,0,0,0.5) inset;
	background-color: #f9f9f9;
}
#build-menu > ul{
	margin:0 0 0 3px;
	padding:70px 0;
	position:relative;
}
#build-menu > ul:before,
#build-menu > ul:after{
	content:"";
	display:block;
	width:100%;
	height:1px;
	position:absolute;
	left:0;
}
#build-menu > ul:before{
	top:-1px;
	background-color:#ddd;
}
#build-menu > ul:after{
	bottom:-1px;
	background-color:#fff;
}

#build-menu .megamenu{
	display:none;
}
#build-menu > ul li{
	margin:0;
	padding:0;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #ddd;
}

#build-menu > ul li a{
	height:48px;
	line-height:48px;
	font-size:14px;
	padding:0 20px 0 10px;
	text-shadow:1px 1px 0 #fff;
	display:block;
	text-decoration:none;
	color:#000;
	position:relative;
}
#build-menu > ul li.active a{
	color:#d31d00;
}
#build-menu > ul li a:before{
	content:"";
	display:block;
	position:absolute;
	top:50%;
	right:2px;
	margin:-8px 0 0 0;
	border: 8px solid transparent;
	border-left: 8px solid #d31d00;
}
#build-menu > ul li a:after{
	content:"";
	display:block;
	position:absolute;
	top:50%;
	right:5px;
	margin:-8px 0 0 0;
	border: 8px solid transparent;
	border-left: 8px solid #f9f9f9;
}
#build-menu-close{
	width:42px;
	height:42px;
	line-height:42px;
	text-align:center;
	background-color:#d31d00;
	color:#fff;
	position:absolute;
	top:15px;
	right:10px;
	z-index:1;
	cursor:pointer;
}

#build-menu .locale-switcher{
	position:absolute;
	top:15px;
	left:10px;
	width:146px;
	height:40px;
	border:1px solid #ddd;
}
#build-menu .locale-options{
	width:100%;
	height:100%;
	background:#fff;
	overflow:hidden;
}
#build-menu .locale-options:before{
	content:"\2F";
	position:absolute;
	width:0.5em;
	height:1em;
	line-height:1;
	top:50%;
	left:50%;
	margin:-0.5em 0 0 -0.25em;
	display:block;
	color:#d31d00;
	background:none;
	z-index:1;
}

#build-menu .locale-options li{
	width:50%;
	margin:0;
	padding:0;
	float:left;
}
#build-menu .locale-options li a{
	width:100%;
	height:100%;
	display:block;
	text-align:center;
	line-height:40px;
	color:#aaa;
	text-decoration: none;
	font-weight:bold;
}
html:lang(ja) #build-menu .locale-options li:first-child a{
	color:#d31d00;
}
html:lang(en-US) #build-menu .locale-options li:first-child a,
html:lang(en) #build-menu .locale-options li:first-child a{
	color:#aaa;
}
html:lang(en-US) #build-menu .locale-options li:first-child + li a,
html:lang(en) #build-menu .locale-options li:first-child + li a{
	color:#d31d00;
}
#build-menu abbr{
	font-weight:bold;
	text-decoration: none;
	border-bottom:0 none;
}
#build-menu-page {
	background:#fff;
}
.build-menu-animating #build-menu-page {
	position: fixed;
	overflow: hidden;
	width: 100%;
	top: 0;
	bottom: 0;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	-webkit-transform: translateX(0);
	transform: translateX(0);
}
.build-menu-animating.build-menu-close #build-menu-page,
.build-menu-animating.build-menu-open #build-menu-page {
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}
.build-menu-animating.build-menu-open #build-menu-page {
	-webkit-transform: translateX(-220px);
	transform: translateX(-220px);
}
.build-menu-animating #build-menu {
	display: block
}
.build-menu-open #build-menu {
	display: block;
	-webkit-transition-delay: 0s, 0s, 0s;
	transition-delay: 0s, 0s, 0s;
}
.build-menu-open #build-menu,
.build-menu-close #build-menu {
	-webkit-transition: -webkit-transform 0.3s, opacity 0.3s, visibility 0.3s;
	transition: transform 0.3s, opacity 0.3s, visibility 0.3s;
}
#build-menu-overlay{
	position:absolute;
	top:0;
	bottom:0;
	right:0;
	left:0;
	z-index:10002;
	background:#000;
	width:0;
	opacity:0.5;
	visibility:hidden;
}
.build-menu-open #build-menu-overlay,
.build-menu-close #build-menu-overlay {
	-webkit-transition: opacity 0.6s, visibility 0.6s, width 0s;
	transition: opacity 0.6s, visibility 0.6s, width 0s;
}
.build-menu-close #build-menu-overlay{
	width:0;
	opacity: 0;
	visibility:hidden;
	-webkit-transition-delay: 0s, 0s, 0.6s;
	transition-delay: 0s, 0s, 0.6s;
}
.build-menu-open #build-menu-overlay{
	width:100%;
	opacity: 0.5;
	visibility:visible;
}

/* ----------------------------------------------------------------
	top
----------------------------------------------------------------- */
#slide {
	display:none;
	width:100%;
	height:705px;
	margin:0;
	padding:0;
	position:relative;
	overflow:hidden;
	z-index:1;
	background:url(../img/loader.gif) no-repeat 50% 50%;
}
#slide.available{
	display:block;
	background:url(../img/topheaderbg.png) repeat 0 0;
}
#slide .circle{
	position:absolute;
}
#slide .p1{
	top:45%;
	left:60%;
}
#slide .p2{
	top:-40%;
	right:42.5%;
}
#slide.available.rotation .circle{
	-webkit-animation: rotate-bg 20s linear 0s infinite;
	animation: rotate-bg 20s linear 0s infinite;
	-webkit-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
}
@-webkit-keyframes rotate-bg{
	0%{
		-webkit-transform:rotate(0deg);
	}
	40%{
		-webkit-transform:rotate(0deg);
	}
	50%{
		-webkit-transform:rotate(360deg);
	}
	90%{
		-webkit-transform:rotate(360deg);
	}
	100%{
		-webkit-transform:rotate(0deg);
	}
}
@keyframes rotate-bg{
	0%{
		transform:rotate(0deg);
	}
	40%{
		transform:rotate(0deg);
	}
	50%{
		transform:rotate(360deg);
	}
	90%{
		transform:rotate(360deg);
	}
	100%{
		transform:rotate(0deg);
	}
}
#slide ul{
	margin:0 auto;
	padding:0;
	width:100%;
	height:100%;
	overflow:hidden;
	list-style:none;
	position:relative;
	z-index:1;
}
#slide li{
	width:100%;
	height:100%;
	display:block;
	margin:0;
	padding:0;
	position:absolute;
	top:0;
	left:0;
	text-align:center;
	opacity:0;
	visibility:hidden;
	-webkit-transition: opacity 2s, visibility 2s;
	transition: opacity 2s, visibility 2s;
}
#slide li.active{
	opacity:1;
	visibility:visible;
}
#slide li .project{
	position:absolute;
	bottom:10%;
	left:0;
	width:100%;
	z-index:3;
	display:block;
}
#slide li .text{
	position:relative;
	max-width:1000px;
	margin:0 auto;
	color:#333;
	font-size:45px;
	font-weight:bold;
	text-align:center;
	width:100%;
	line-height:1.3;
	display:block;
	text-shadow: 1px 1px 1px #fff;
	background-color:rgba( 255, 255, 255, 0.35 );
}
#slide li .text em{
	font-size:70px;
}
#slide li .text .keyword{
	color:#d31d00;
}
#slide li.active .project{
	-webkit-animation: tagline-text 2s ease 1;
	animation: tagline-text 2s ease 1;
}
.change #slide li.active .project{
	-webkit-animation: none;
	animation:none;
}
@-webkit-keyframes tagline-text{
	0% {
		-webkit-transform: translateY(100%);
	}
	100% {
		-webkit-transform: translateY(0px);
	}
}
@keyframes tagline-text{
	0% {
		transform: translateY(100%);
	}
	100% {
		transform: translateY(0px);
	}
}
#slide li.active a:after{
	-webkit-animation: tagline-obj 2s ease 1;
	animation: tagline-obj 2s ease 1;
}
@-webkit-keyframes tagline-obj{
	0% {
		-webkit-transform: translateY(-100%);
	}
	100% {
		-webkit-transform: translateY(0px);
	}
}
@keyframes tagline-obj{
	0% {
		transform: translateY(-100%);
	}
	100% {
		transform: translateY(0px);
	}
}
.change #slide.available.rotation .circle,
.change #slide li.active .project,
.change #slide li.active a:after{
	-webkit-animation: none;
	animation: none;
}
#slide li:before{
	content:"";
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	z-index:9999;
}
#slide li a{
	position:relative;
	display:block;
	width:100%;
	height:100%;
	text-decoration:none;
}
#slide li a:before,
#slide li a:after{
	content:"";
	display:block;
	width:100%;
	height:100%;
	background-repeat:no-repeat;
	background-position:50% 50%;
	background-size:auto 100%;
	position:absolute;
	top:0;
	left:0;
}
#slide #slide-01.loaded a:after{
	background-image:url(../img/area/hokaido.png);
	max-height:100%;
}
#slide #slide-02.loaded a:after{
	background-image:url(../img/area/tohoku.png);
	max-height:100%;
}
#slide #slide-03.loaded a:after{
	background-image:url(../img/area/hokuriku.png);
	max-height:100%;
}
#slide #slide-04.loaded a:after{
	background-image:url(../img/area/kanto.png);
	max-height:100%;
}
#slide #slide-05.loaded a:after{
	background-image:url(../img/area/tokai_koshinetsu.png);
	max-height:100%;
}
#slide #slide-06.loaded a:after{
	background-image:url(../img/area/kansai.png);
	max-height:100%;
}
#slide #slide-07.loaded a:after{
	background-image:url(../img/area/chugoku_shikoku.png);
	max-height:100%;
}
#slide #slide-08.loaded a:after{
	background-image:url(../img/area/kyushu.png);
	max-height:100%;
}
#slideControler{
	display:block;
	z-index:10;
	width:100%;
	height:35px;
	line-height:35px;
	background:#ededed url(../img/repeatbg.gif) repeat 0 0;
}
#slideControlerWrapper{
	max-width:1000px;
	height:100%;
	margin:0 auto;
	padding:0;
	position:relative;
	display:none;
}
:root #slideControlerWrapper{
	display:block;
}
#slideControlerWrapper .inner{
	width:100%;
	height:100%;
	text-align:center;
	padding:0;
}
#slideControler span{
	width:20px;
	height:0;
	overflow:hidden;
	display:inline-block;
	margin:0;
	padding:35px 0 0 0;
	position: relative;
	cursor:pointer;
}
#slideControler span:before{
	content:"";
	width:10px;
	height:10px;
	position:absolute;
	top:50%;
	left:50%;
	margin:-5px 0 0 -5px;
	border-radius:10px;
	background:#fff;
	-webkit-box-shadow : -1px 1px 2px rgba(0,0,0,0.3) inset;
	box-shadow : -1px 1px 2px rgba(0,0,0,0.3) inset;
	-webkit-transition:background-color 0.3s;
	transition:background-color 0.3s;
}
#slideControler span.active:before{
	background-color:#d31d00;
}
@media(max-width: 1000px) {
	#slide{
		height:auto;
		max-height:705px;
	}
	#slide ul{
		height:0;
		padding-top:56.25%;
	}
	#slide li .text{
		font-size:34px;
	}
	#slide li .text em{
		font-size:58px;
	}
}
@media(max-width: 900px) {
	#slide li .text{
		font-size:32px;
	}
	#slide li .text em{
		font-size:54px;
	}
}
@media(max-width: 800px) {
	#slide li .text{
		font-size:30px;
	}
	#slide li .text em{
		font-size:50px;
	}
}
@media(max-width: 720px) {
	#slide li .project{
		bottom:5%;
	}
	#slide li .text{
		font-size:28px;
	}
	#slide li .text em{
		font-size:46px;
	}
}
@media(max-width: 600px) {
	#slide li .text{
		font-size:24px;
	}
	#slide li .text em{
		font-size:40px;
	}
}
@media(max-width: 480px) {

	#slide li .text{
		font-size:18px;
	}
	#slide li .text em{
		font-size:32px;
	}
}
@media(max-width: 360px) {

	#slide li .text{
		font-size:16px;
	}
	#slide li .text em{
		font-size:28px;
	}
}
@media(max-width: 321px) {

	#slide li .text{
		font-size:14px;
	}
	#slide li .text em{
		font-size:24px;
	}
}
.top h2{
	color:#d31d00;
	margin:0;
	padding:1em 0;
	text-align:center;
	font-size:45px;
}
.top h2 .sub{
	font-size:70%;
	display:block;
	padding-top:0.5em;
	color:#dc4e4e;
}
.top h3{
	font-size:30px;
	padding:1.5em 0 1em 0;
	margin:0;
}
.top p{
	line-height:2;
}
.introSec{
	max-width:1000px;
	margin:0 auto;
}
.introSec h2{
	padding-top:1.5em;
	border-bottom:1px dotted #7f7f7f;
}
.introSec section{
	background:url(../img/intro_img3.jpg) no-repeat right center;
	background-size:49% auto;
	padding:0 50% 5% 0;
}
.introSec section + section{
	background:url(../img/intro_img2.jpg) no-repeat left center;
	background-size:49% auto;
	padding:0 0 5% 51%;
}
.introSec section + section + section{
	background:url(../img/intro_img1.jpg) no-repeat right center;
	background-size:49% auto;
	padding:0 50% 5% 0;
}
.introSec section + section + section + section{
	background:url(../img/intro_img4.jpg) no-repeat left center;
	background-size:49% auto;
	padding:0 0 5% 51%;
}
.top .koukokuSec{
	background:url(../img/projetcbg.jpg) no-repeat center top;
	background-size:cover;
	width:100%;
	margin:0;
	padding:0 0 3em 0;
	max-width:100%;
}
.koukokuSec h2{
	color:#000;
	border-bottom:0 none;
}
.koukokuSec .primary{
	max-width:1000px;
	margin:0 auto;
	overflow:hidden;
}
.koukokuSec .secondary{
	max-width:1000px;
	margin:0 auto;
	overflow:hidden;
}

.koukokuSec .primary ul{
	display:table;
	margin:0 auto 20px auto ;
	max-width:1000px;
}
.koukokuSec .secondary ul{
	max-width:1000px;
}
.koukokuSec li{
	display:table-cell;
	width:33.333333%;
	height:100%;
}
.koukokuSec .primary li{
	width:50%;
}
.koukokuSec a{
	display:block;
	color:#333;
	text-decoration:none;
}
.koukokuSec dl{
	border:5px solid #f5f5f5;
	border-bottom:0 none;
	background-color:#fff;
	background-color:rgba(255,255,255,0.7);
	margin:0;
	padding:20px 0 40px 0;
	position:relative;
	-webkit-transition: background-color 0.3s;
	transition: background-color 0.3s;
}

.koukokuSec li:first-child dl{
	margin:0 10px 0 0;
}
.koukokuSec li:last-child dl{
	margin:0 0 0 10px;
}

.koukokuSec a:hover dl{
	background-color:#fff;
}
.koukokuSec dt{
	font-weight:bold;
	font-size:18px;
	color:#990000;
	text-align:center;
	position:relative;
	line-height:1;
	height:1em;
	padding:0 20px 0 0;
	overflow:hidden;
	text-overflow:ellipsis;
}
.koukokuSec dt:after{
	content:"";
	display:block;
	background-position:-220px -35px;
	width:8px;
	height:17px;
	position:absolute;
	top:50%;
	right:10px;
	margin-top:-8px;
}
.koukokuSec dd{
	line-height:1.4;
	height:17.0em;
	padding:15px 20px 0px 20px;
	margin:0;
	overflow:hidden;
}
.koukokuSec dd > span{
	display:block;
	border-top:5px solid #f5f5f5;
	height:180px;
	position:absolute;
	bottom:0;
	left:-5px;
	margin:0;
	background-color: rgba(33, 221, 63, 0.6);
	background-color: rgba(33, 221, 63, 1.0);
	padding:0 5px;
	width:100%;
	color:#fff;
	line-height:1;
	-webkit-transition: background-color 0.5s;
	transition: background-color 0.5s;
}
.koukokuSec a:hover dd > span{
	background-color: rgba(33, 221, 63, 0.1);
}
.koukokuSec dd > span:before{
	content:"";
	display:block;
	position:absolute;
	top:0;
	left:20px;
	margin: 0;
	border: 15px solid transparent;
	border-top: 10px solid #f5f5f5;
}
.koukokuSec dd span[itemprop="name"]{
	text-align:center;
	display:block;
	padding:10px 0px 0px 0px;
	font-size:100%;
	font-weight:bold;
}
.koukokuSec dd span[itemprop="image"]{
	position:absolute;
	margin:20px 0px;
	right:2%;
	left:2%;
}
.koukokuSec a:hover dd img{
	opacity:0.8;
}


.interviewSec{
	max-width:1000px;
	margin:5% auto;
}
.interviewSec h2{
	padding-bottom:0;
}
.interviewSec h3{
	text-align:center;
}
.interviewSec ul{
	overflow:hidden;
	margin:0 -10px;
}
.interviewSec li{
	width:33.333333%;
	display:inline-block;
}
.interviewSec .hide li{
	display:none;
}
.interviewSec .hide li.show{
	display:inline-block;
}
.interviewSec li a{
	display:block;
	text-align:center;
	text-decoration:none;
	color:#333;
	margin:0 5px;
}
.interviewSec .post{
	padding:0 0.5em 0 0;
	font-size:12px;
}
.interviewSec span[itemprop="name"]{
	font-size:16px;
	font-weight:bold;
	display:block;
	margin-bottom:0.5em;
}
.interviewSec dt{
	background:#fff;
}
.interviewSec dt img{
	-webkit-transition:opacity 0.3s;
	transition:opacity 0.3s;
}
.interviewSec a:hover dt img{
	opacity:0.9;
}
.interviewSec dd{
	border:1px solid #333;
	padding:1em;
	margin:-1.5em 7.5% 0 7.5%;
	line-height:1;
	background-color:#fff;
	background-color:rgba(255,255,255,0.85);
	color:#333;
	position:relative;
	-webkit-transition: 0.3s;
	transition:0.3s;
}
.interviewSec a:hover dd{
	border-color:#aaa;
	background-color:#fff;
	color:#666;
}
.interviewSec section + section{
	margin-top:2.5em;
	margin-bottom:4em;
}
.interviewSec section + section　dd{
	margin-top:-2.25em;
}
.top .contactSec{
	background:url(../img/footer.jpg) no-repeat center bottom;
	max-width:100%;
	padding-bottom:200px;
	padding-left:100px;
	padding-right:100px;
}

.mini-resolution .top .contactSec{
	background-image:url(../img/footer_s.jpg);
	padding-bottom:100px;
}
.contactSec .appoint{
	display:block;
	text-align:center;
}
.contactSec .appoint a{
	color:#333;
	text-decoration: none;
	position:relative;
	display:block;
	background:#f7f7f7 url(../img/header_circle2.png) no-repeat 50% 35%;
	border:1px solid #e5e5e5;
	padding:3em 0 4em 0;
	border-radius:3px;
	-webkit-transition:background-color 0.3s;
	transition:background-color 0.3s;
}
.contactSec a{
	background-color:#f7f7f7;
	-webkit-transition:background-color 0.3s;
	transition:background-color 0.3s;
}
.contactSec a:hover{
	background-color:#fff;
}
.contactSec a:after{
	content:"";
	display:block;
	width:17px;
	height:8px;
	background-position:-200px -35px;
	margin-top:-4px;
	margin-left:-9px;
	position:absolute;
	bottom:2.5em;
	left:50%;
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}

.contactSec a:hover:after{
	-webkit-transform: translateY(0.5em);
	transform: translateY(0.5em);
}
.contactSec .appoint em{
	background-color:#f0cbc6;
	color:#d31d00;
	display:inline-block;
	padding:0.5em 2em;
	margin-top:1.5em;
}
.contactSec .appoint dt{
	font-size:22px;
	font-weight:bold;
	margin-bottom:1em;
}
.contactSec .appoint dd{
	padding:0 10px;
}
.contactSec ul{
	margin:30px 0 0 0;
}
.contactSec ul:before,
.contactSec ul:after{
	content:"";
	display:block;
}
.contactSec ul:after{
	clear:both;
}
.contactSec li{
	width:50%;
	float:left;
}
.contactSec li a{
	display:block;
	margin-left:15px;
	color:#333;
	text-decoration: none;
	position:relative;
	background-color:#f7f7f7;
	border:1px solid #e5e5e5;
	padding:80px 0 50px 0;
	border-radius:3px;
	text-align:center;
	font-weight:bold;
	font-size:14px;
}
.contactSec li:first-child a{
	margin-right:15px;
	margin-left:0;
}
.contactSec li a:after{
	bottom:30px;
}
.contactSec li a:before{
	content:"";
	display:block;
	position:absolute;
	top:35px;
	left:50%;
	background-position:-200px 0;
	width:47px;
	height:32px;
	margin-left:-24px;
}
.contactSec li:first-child a:before{
	background-position:-150px 0;
	width:48px;
	height:46px;
	top:25px;
}


/* ----------------------------------------------------------------
	content
----------------------------------------------------------------- */
article{
	padding:360px 0 100px 0;
	background-position:50% 0;
	background-repeat:no-repeat;
}
article > header{
	background:#ededed url(../img/repeatbg.gif) repeat 0 0;
	position:relative;
}
article > header:before{
	content:"";
	display:block;
	height:80px;
	width:100%;
	background:#fbfbfb;
	position:absolute;
	top:0;
	left:0;
}
header .title,
header h2{
	margin:0 auto;
	padding:0;
	text-indent:-100%;
	height:80px;
	overflow:hidden;
	max-width:1000px;
	position:relative;
}
header .title:before,
header h2:before{
	content:"";
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-position:0 0;
	background-repeat:no-repeat;
}
header .title:after,
header h2:after{
	content:"";
	display:block;
	position:absolute;
	top:0;
	right:0;
	width:50%;
	height:100%;
	background-position:100% 50%;
	background-repeat:no-repeat;
}
header .title + h2{
	background:none;
	text-indent:0;
	padding:1em 0;
	height:auto;
	font-weight:normal;
}
header .title + h2:before,
header .title + h2:after{
	display:none;
}
.entry{
	font-size:100%;
	line-height:1.8;
	max-width:1000px;
	margin:0 auto;
	padding:20px 0;
}
.entry:before,
.entry:after{
	content:"";
	display:block;
}
.entry:after{
	clear:both;
}
.entry{
	font-size:14px;
}
.top article h2{
	font-size:44px;
}
article h2{
	font-size:35px;
}
.blog .entry-title,
article h3{
	font-size:30px;
}
article  h4{
	font-size:25px;
}
.entry p{
	margin:1em 0;
}


.entry ul{
	margin:1.5em 0;
	list-style:disc none outside;
	line-height:1.8;
}
.entry ol{
	margin:1.5em 0;
	line-height:1.8;
}
.entry ul ul,
.entry ol ol,
.entry ol ul,
.entry ul ol,
.entry table ul,
.entry table ol{
	margin:0;
}
.entry li{
	margin:0.25em 0 0.25em 2em;
	padding:0;
}
.entry b,
.entry strong{
	font-weight:bold;
}
.entry em,
.entry i{
	font-weight:normal;
	font-style:italic;
}
.entry s,
.entry strike,
.entry del{
	text-decoration : line-through ;
}
.entry u,
.entry ins{
	text-decoration : underline ;
}
.entry blockquote{
	margin: 0 0 0 1.618em;
	padding: 0 1.618em;
	border-left: 3px solid #ddd;
}
.entry p img{
	vertical-align:middle;
}
.entry table{
	width:100%;
	font-size:14px;
	margin:20px 0;
	border-top: 1px solid #ddd;
	border-right: 1px solid #ddd;
	overflow:auto;
	border-collapse:collapse;
	border-spacing:0;
	empty-cells:show;
	width:100%;
}
.entry table caption{
	text-align:left;
	padding:0 0 0.75em 0;
	font-weight:bold;
}
.entry table th{
	border-bottom: 1px solid #ddd;
	border-left: 1px solid #ddd;
	background-color: #fbfbfb;
	text-shadow:1px 1px 0px #fff;
	margin:0;
	padding:1em 0;
	text-align:center;
	vertical-align:middle ;
	font-weight:normal;
	font-size:100%;
}
.entry table td{
	border-bottom: 1px solid #ddd;
	border-left: 1px solid #ddd;
	margin:0;
	padding:1em;
	position:relative;
	font-size:100%;
}
.mt-image-none{
	clear:both;
	display:block;
}
.mt-image-left{
	clear:left;
}
.mt-image-right{
	clear:right;
}
.alignleft {
	float: left;
}
.alignright {
	float: right;
}
.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
figure.alignleft,
figure.alignright,
figure.aligncenter{
	width:100% !important;
	max-width:1000px !important;
}
img.alignleft,
.wp-caption.alignleft {
	margin: 12px 24px 12px 0;
	margin: 0.857142857rem 1.714285714rem 0.857142857rem 0;
}
img.alignright,
.wp-caption.alignright {
	margin: 12px 0 12px 24px;
	margin: 0.857142857rem 0 0.857142857rem 1.714285714rem;
}
img.aligncenter,
.wp-caption.aligncenter {
	clear: both;
	margin-top: 12px;
	margin-top: 0.857142857rem;
	margin-bottom: 12px;
	margin-bottom: 0.857142857rem;
}

.entryMeta{
	border-top:1px dotted #ddd;
	padding:15px 0 0 0;
	margin:50px 0 30px 0;
	text-align:right;
	font-size:12px;
	line-height:12px;
	color:#aaa;
	position:relative;
	display:inline-block;
	clear:both;
}
.entryMeta{
	display:block;
}
.entryMeta:before,
.entryMeta:after{
	content:"";
	display:block;
}
.entryMeta:after{
	clear:both;
}
.pager{
	display:inline-block;
	margin:30px 0;
	padding:0;
	position:relative;
	line-height:40px;
	height:40px;
	font-weight:bold;
	font-size:14px;
}
.pager{
	display:block;
}
.pager:before,
.pager:after{
	content:"";
	display:block;
}
.pager:after{
	clear:both;
}
.pager li{
	width:5em;
	background:none;
	border:0 none;
	margin:0;
	padding:0;
	position:absolute;
	list-style:none;
	line-height:40px;
	height:40px;
}
.pager .prev{
	top:0;
	left:0;
}
.pager .next{
	top:0;
	right:0;
}
.pager .more{
	top:0;
	left:50%;
	margin:0 0 0 -4em;
	width:8em;
}
.pager li span,
.pager li a{
	display:block;
	text-align:center;
	line-height:38px;
	height:38px;
	border:1px solid #ddd;
	color:#333;
	text-decoration:none;
	padding:0;
	text-shadow:none;
	-webkit-transition:color 0.3s, background-color 0.3s;
	transition:color 0.3s, background-color 0.3s;
}
.pager li span{
	color:#fff;
	border:0 none;
}
.pager li a:hover{
	background-color:#d80000;
	color:#fff;
}
.pager .more a:before{
	content:"\2261";
	font-size:16px;
	margin:0 0.5em 0 0;
}
.pdfico{
	vertical-align:middle;
	margin:0 0 0 0.5em;
}
.real{
	font-weight:bold;
	color:#d31d00;
}
.more{
	margin:4em 0;
	text-align:center;
}
.more-link,
.more a{
	margin:0 auto;
	display:block;
	max-width:35%;
	padding:1.25em 0;
	line-height:1;
	color:#fff;
	font-weight:bold;
	text-decoration: none;
	position:relative;
	z-index:1;
	border:1px solid #d31d00;
	border-radius:2em;
	background:#de543e url(../img/headerbg.png) repeat-x 0 0;
}
.more-link{
	clear:both;
	margin:50px auto 0 auto;
	text-align:center;
	background:#fff;
	border:1px solid #666;
	color:#666;
	-webkit-transition:color 0.3s ease, border-color 0.3s, text-indent 0.3s;
	transition:color 0.3s ease, border-color 0.3s, text-indent 0.3s;
}
.more-link:hover{
	color:#aaa;
	border-color:#aaa;
	text-indent:1em;
}

.more-link:before,
.more-link:after,
.more a:before,
.more a:after{
	content:"";
	display:block;
	border-radius:2em;
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	opacity:1;
}

.more a:before{
	z-index:-1;
	background:#de543e url(../img/headerbg.png) repeat-x 0 0;
	-webkit-transition:opacity 0.3s ease;
	transition:opacity 0.3s ease;
}

.more a:after {
	z-index:-2;
	background:#d31d00;
}
.more a:hover{
	background:transparent none;
}

.more a:hover:before{
	opacity:0;
}

.more2{
	margin-top:2em;
	text-align:center;
}
.more2-link,
.more2 a{
	margin:0 auto;
	display:block;
	max-width:50%;
	padding:1.25em 0;
	line-height:1;
	color:#fff;
	font-weight:bold;
	text-decoration: none;
	position:relative;
	z-index:1;
	border:1px solid #d31d00;
	border-radius:2em;
	background:#de543e url(../img/headerbg.png) repeat-x 0 0;
}
.more2-link{
	clear:both;
	margin:50px auto 0 auto;
	text-align:center;
	background:#fff;
	border:1px solid #666;
	color:#666;
	-webkit-transition:color 0.3s ease, border-color 0.3s, text-indent 0.3s;
	transition:color 0.3s ease, border-color 0.3s, text-indent 0.3s;
}
.more2-link:hover{
	color:#aaa;
	border-color:#aaa;
	text-indent:1em;
}

.more2-link:before,
.more2-link:after,
.more2 a:before,
.more2 a:after{
	content:"";
	display:block;
	border-radius:2em;
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	opacity:1;
}

.more2 a:before{
	z-index:-1;
	background:#de543e url(../img/headerbg.png) repeat-x 0 0;
	-webkit-transition:opacity 0.3s ease;
	transition:opacity 0.3s ease;
}

.more2 a:after {
	z-index:-2;
	background:#d31d00;
}
.more2 a:hover{
	background:transparent none;
}

.more2 a:hover:before{
	opacity:0;
}
/* ----------------------------------------------------------------
	page content
----------------------------------------------------------------- */

.entry figure{
	text-align:center;
	margin:20px 0;
	display:block;
}
.entry figcaption{
	font-weight:bold;
	padding:0.5em 0;
	display:block;
	text-align:center;
}

/* ----------------------------------------------------------------
	about
----------------------------------------------------------------- */
.about article{
	background-image:url(../img/about/h2_bg.jpg);
}

.about header .title:before,
.about header h2:before{
	background-image:url(../img/about/h2_title.png);
}
.about header .title:after,
.about header h2:after{
	background-image:url(../img/about/h2_after.png);
	background-size:auto 110%;
	background-position:90% 0;
}

.about header{
	margin:0;
	padding:0;
	width:100%;
	color:#660000;
	line-height: 1;
	position:relative;

}

.about footer a{
	display: block;
	height:116px;
	margin:0;
	background-color:#f5f5f5;
	padding:0;
	width:100%;
	color:#333;
	line-height: 1;
	position:relative;

}
.about footer span[itemprop="place"]{
	display:block;
	padding:40px 0 0 20px;
	font-size:26px;
}
.about footer span.place{
	padding:0 0.5em 0 0;
	line-height:1;
}
.about footer span[itemprop="image"]{
	position:absolute;
	top:10px;
	right:10px;
	height:116px;
	width:116px;
}

.about footer a:after,
.about li a:after{
	content: "";
	display: block;
	background-position: -220px -35px;
	width: 8px;
	height: 17px;
	position: absolute;
	top: 50%;
	right: 20px;
	margin-top: -8px;
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}
.about footer a:hover:after,
.about li a:hover:after{
	-webkit-transform: translateX(10px);
	transform: translateX(10px);
}
.about footer a:hover:after{
	background-position:-200px -45px;
}
.about footer{
	margin:50px auto 0 auto;
	max-width:1000px;
}
.about footer dt{
	font-weight:bold;
	margin:0 0 20px 0;
	font-size:180%;
	color:#006600;
        text-align: center;
}
.about footer dd + dd{
	margin-top:1.5em;
}
.about footer a{
	display:block;
	text-decoration:none;
	position:relative;
	-webkit-transition: background-color 0.3s, color 0.3s;
	transition: background-color 0.3s, color 0.3s;
}
.about footer a:hover{
	background-color:#de543e;
	color:#fff;
}

.about footer a + a{
	margin-top:1.5em;
}
.about footer .type{
	padding:1em 30px 0 125px;
	display:block;
}

@media(max-width: 1000px) {
	.about .theme{
		margin-left:10px;
		margin-right:10px;
	}
	.about .entry,
	.about footer,
	header .title + h2{
		padding-left:10px;
		padding-right:10px;
	}
}
@media(max-width: 720px) {
	.about .theme .specialty{
		padding-top:0.5em;

	}
	.about .theme .specialty .type{
		display:block;
		padding:0 0 0.5em 0;
	}
}
@media(max-width: 480px) {
	.about footer span[itemprop="place"]{
		display:block;
		padding:50px 0 0 15px;
		font-size:16px;
	        color:#cc0000;
	}
	.about footer dt{
		font-size:150%;
		color:#006600;
	        text-align: center;
        }
}



/* ----------------------------------------------------------------
	tellclub
----------------------------------------------------------------- */
.tellclub article{
	background-image:url(../img/tellclub/h2_bg.jpg);
}

.tellclub header .title:before,
.tellclub header h2:before{
	background-image:url(../img/tellclub/h2_title.png);
}
.tellclub header .title:after,
.tellclub header h2:after{
	background-image:url(../img/tellclub/h2_after.png);
	background-size:auto 100%;
	background-position:90% 0;
}
.tellclub .theme{
	padding:50px 0 0 0;
	margin:0 auto;
	max-width:1000px;
	position:relative;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;

}
.tellclub footer a,
.tellclub .theme header{
	display: block;
	height:116px;
	margin:0;
	background-color: rgba(185, 140, 113, 0.2);
	padding:0;
	width:100%;
	color:#333;
	line-height: 1;
	position:relative;

}
.tellclub .theme h3 span[itemprop="name"]{
	display:block;
	padding:25px 125px 0 10px;
}
.tellclub .theme h3 span[itemprop="image"]{
	position:absolute;
	top:3px;
	right:10px;
}

.tellclub .tell-club{
	max-width:1000px;
	background-image:url(../img/tellclub/tell_club.jpg);
	margin:0 auto;
	position:relative;
}

.tellclub .entry{
	margin:40px 0px 0px 0px;
}


.tellclub .entry h4{
	background-color: rgba(185, 140, 113, 0.2);
	border:1px solid #999;
	margin:20px 15px 10px 15px;
        border-radius: 15px;
	padding:15px;
}
.tellclub .entry p{
	padding:0 15px;
	line-height: 1;
	color:#666;
}

.tellclub .theme .specialty{
	padding:1em 115px 0 10px;
}
.tellclub .theme ul{
	margin:0;
	padding:0;
	list-style:none;
	border:5px solid #f5f5f5;
}
.tellclub .theme li{
	margin:0;
	padding:0;
}
.tellclub .theme li + li{
	border-top:1px solid #eee;
}
.tellclub .theme li a{
	padding:1.5em 30px 1.5em 10px;
	margin:0;
	line-height:1.4;
	display:block;
	text-decoration:none;
	color:#333;
	position:relative;
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f9f9f9));
	background: -webkit-linear-gradient(top, #fff, #f9f9f9);
	background: linear-gradient(to bottom, #fff, #f9f9f9);
}
.tellclub .theme li a:hover{
	background: -webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#fff));
	background: -webkit-linear-gradient(top, #f9f9f9, #fff);
	background: linear-gradient(to bottom, #f9f9f9, #fff);
}


.tellclub .theme li a:after{
	content: "";
	display: block;
	background-position: -220px -35px;
	width: 8px;
	height: 17px;
	position: absolute;
	top: 50%;
	right: 20px;
	margin-top: -8px;
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}
.tellclub .theme li a:hover:after{
	-webkit-transform: translateX(10px);
	transform: translateX(10px);
}



.tellclub .tellsex_play{
	padding:2em 10%;
	margin:0.5em 0 0 0;
}


.tellclub .tellsex_play a{
	border:1px solid #666;
	background-color: rgba(255, 255, 255, 0.5);
	border-radius:2.5em;
	line-height:1;
	height:1em;
	font-size:16px;
	font-weight:bold;
	text-align:center;
	text-decoration: none;
	color:#666;
	display:block;
	padding:1.25em 0 1.25em 0.8em;
	position:relative;
	-webkit-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.05);
	box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.05);
}


.tellclub .tellsex_play a:hover{
	background: #de543e url(../img/headerbg.png) repeat-x 0 0;
	color:#fff;
	border-color:#d31d00;
}



.tellclub .tellsex_play a:after{
	content: "";
	display: block;
	background-position: -220px -35px;
	width: 8px;
	height: 17px;
	position: absolute;
	top: 50%;
	right: 2em;
	margin-top: -8px;
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}

.tellclub .tellsex_play a:hover:after{
	-webkit-transform: translateX(1em);
	transform: translateX(1em);
}
.tellclub .tellsex_play a.active:hover:after{
	-webkit-transform: translateX(0);
	transform: translateX(0);
}
.tellclub .tellsex_play a:hover:after,
.tellclub .tellsex_play a.active:after{
	background-position:-200px -45px;
}



@media(max-width: 1000px) {
	.tellclub .theme{
		margin-left:10px;
		margin-right:10px;
	}
	.tellclub .entry,
	.tellclub footer,
	header .title + h2{
		padding-left:10px;
		padding-right:10px;
	}
}
@media(max-width: 720px) {
	.tellclub .theme .specialty{
		padding-top:0.5em;

	}
	.tellclub .theme .specialty .type{
		display:block;
		padding:0 0 0.5em 0;
	}
}

@media(max-width: 480px) {
	.tellclub .theme .specialty{
		padding-top:0.5em;
		font-size:14px;
	}
	.tellclub .theme .specialty .type{
		display:block;
		padding:0 0 0.5em 0;
	}
}

/* ----------------------------------------------------------------
	interview
----------------------------------------------------------------- */
.interview article{
	background-image:url(../img/interview/h2_bg.jpg);
}
.interview.staffs article{
	padding-bottom:0;
}

.interview header h2:before{
	background-image:url(../img/interview/h2_title.png);
}

.interview header h2:after{
	background-image:url(../img/interview/h2_after.png);
	background-size:auto 110%;
	background-position:90% 0;
}
.interview .target-link{
	background:#000 url(../img/repeatbg2.gif) repeat 0 0;
}
.interview .target-link ul{
	max-width:1000px;
	margin:0 auto;
	overflow:hidden;
}
.interview .target-link li{
	width:44%;
	padding:3em 3%;
	margin:0;
	float:left;
}
.interview .more a,
.interview .target-link a{
	border:1px solid #666;
	background:#fff;
	border-radius:2.5em;
	line-height:1;
	height:1em;
	font-size:16px;
	font-weight:bold;
	text-decoration: none;
	color:#666;
	display:block;
	padding:1.25em 0 1.25em 0.8em;
	position:relative;
	-webkit-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.05);
	box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.05);
}
.interview .more a:hover,
.interview .target-link a:hover{
	background: #de543e url(../img/headerbg.png) repeat-x 0 0;
	color:#fff;
	border-color:#d31d00;
}
.interview .target-link a.active,
.interview .target-link a:hover.active{
	background: #787878 url(../img/tilebg.png) repeat-x 0 0;
	color:#fff;
	border-color:#787878;
}
.interview .more a:after,
.interview .target-link a:after{
	content: "";
	display: block;
	background-position: -220px -35px;
	width: 8px;
	height: 17px;
	position: absolute;
	top: 50%;
	right: 2em;
	margin-top: -8px;
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}
.interview .more a:hover:after,
.interview .target-link a:hover:after{
	-webkit-transform: translateX(1em);
	transform: translateX(1em);
}
.interview .target-link a.active:hover:after{
	-webkit-transform: translateX(0);
	transform: translateX(0);
}
.interview .more a:hover:after,
.interview .target-link a:hover:after,
.interview .target-link a.active:after{
	background-position:-200px -45px;
}
#main .interview .entry section{
	padding:0;
	margin:0;
	min-height:905px;
	max-height:905px;
	background-position:50% 30%;
	background-repeat:no-repeat;
}






.interview #honeyline{
	background-image:url(../img/interview/honeyline.jpg);
	background-color:#fff;
}
.interview #sweet{
	background-image:url(../img/interview/sweet.jpg);
	background-color:#e7e7e7;
}
.interview #honeytalk{
	background-image:url(../img/interview/honeytalk.jpg);
	background-color:#e7e7e7;
}
.interview #lovecall{
	background-image:url(../img/interview/lovecall.jpg);
	background-color:#fff;
}
.interview #vip{
	background-image:url(../img/interview/vip.jpg);
	background-color:#fff;
}
.interview #manzoku{
	background-image:url(../img/interview/manzoku.jpg);
	background-color:#fff;
}
.interview #miyabi{
	background-image:url(../img/interview/miyabi.jpg);
	background-color:#fff;
}
.interview .entry{
	max-width:100%;
	padding:0;
}

.interview .entry-box{
	padding-top:10em;
	max-width:1000px;
	margin:0 auto;
	overflow:hidden;
}
.interview .entry-content{
	background-color:#fff;
	background-color:rgba(255,255,255,0.9);
	min-height:200px;
	width:60%;
	text-shadow:1px 1px 1px #fff;
	padding:0 0 20px 0;
}
.interview .scroll{
	max-height:30em;
	min-height:30em;
	overflow-x:hidden;
	overflow-y:scroll;
	-webkit-overflow-scrolling: touch;
}






#honeyline .entry-content,
#vip .entry-content,
#honeytalk .entry-content{
	float:right;
}
.interview .entry h3{
	margin:0;
	padding:20px 20px 0 20px;
	background:transparent;
	color:#333;
	font-size:30px;
	font-weight:bold;
	line-height:1;
}
.interview .entry .post{
	font-size:14px;
	padding:0 1em 0 0;
}
.interview .specialty{
	margin:0 20px 10px 20px;
}
.interview p{
	margin:1em 20px;
}
.interview .more{
	padding-top:5em;
	padding-bottom:5em;
	margin:0 auto;
	max-width:1000px;
}
.interview .more a{
	background-image:none;
	background-color:#fff;
	background-color:rgba(255,255,255,0.8);
	padding-left:0;
	font-size:14px;
	max-width:100%;
}





#honeyline .more a,
#vip .more a,
#honeytalk .more a,
#lovecall .more a{
	margin-left:50%;
	margin-right:10%;
}
#sweet .more a,
#manzoku .more a,
#lovecall .more a,
#miyabi .more a{
	margin-left:10%;
	margin-right:50%;
}






.interview .more a:before{
	display:none;
}
.interview .more a:after{
	left:auto;
	z-index:1;
	border-radius: 0;
	background-color:transparent;
}




#main .interview.phone-h .entry section{
	padding:100px 0;
	margin:0 auto;
	min-height:0;
	max-height:none;
	max-width:1000px;
	background-position:50% 0;
	background-repeat:no-repeat;
	clear:both;
}
#main .interview.phone-h .entry section + section{
	padding-bottom:0;
}

.interview.phone-h .entry section:before,
.interview.phone-h .entry section:after{
	content:"";
	display:block;
}
.interview.phone-h .entry section:after{
	clear:both;
}

.interview.phone-h h3{
	margin:0 !important;
	padding:0 !important;
}
.interview.phone-h .post{
	display:block;
	margin:0 0 0.5em 0;
	padding:0;
}
.interview.phone-h p{
	margin:1em 0;
	line-height:2.2;
}
.interview.phone-h #washio figure,
.interview.phone-h #seraj figure,
.interview.phone-h #okamoto figure{
	float:left;
	padding:0 20px 20px 0;
	margin:0;
}
.interview.phone-h #goshima figure,
.interview.phone-h #ryugo figure{
	float:right;
	padding:0 0 20px 20px;
	margin:0;
}

/* ----------------------------------------------------------------
	technic
----------------------------------------------------------------- */
.technic article{
	background-image:url(../img/technic/h2_bg.jpg);
}
.technic header h2:before{
	background-image:url(../img/technic/h2_title.png);
}

.technic header h2:after{
	background-image:url(../img/technic/h2_after.png);
	background-size:auto 110%;
	background-position:90% 0;
}
.technic article > section + section{
	margin-top:50px;
}
.technic section header{
	background-color: rgba(202, 94, 128, 0.4);
}
.technic h3{
	max-width:1000px;
	margin:0 0 0 0.3em;
	padding:1.0em 0;
	color:#996699;
}
.technic section section{
	max-width:1000px;
	margin:0 auto;
	padding:0;
}
.technic h4{
	font-weight:normal;
	margin:0.8em 0 0.5em 0.3em;
	color:#cc6600;

}
.technic .gion{
	font-weight:normal;
	margin:1.0em 0 1.0em 0.8em;
	font-size:1.0em;
	color:#333;
	line-height:1.8em;
	padding:0 0 0.5em 0;
}

.technic section ol{
	margin:0;
	padding:0;
	list-style:none;
	counter-reset : item ;
}
.technic section ol li{
	margin:0 0 1em 0;
	padding:0 0 0 3em;
	position:relative;
}
.technic section ol li:before{
	content: counters(item, "") "";
	counter-increment: item ;
	position:absolute;
	top:0.4em;
	left:0;
	color:#fff;
	background:#b7b7b7;
	width:1.5em;
	height:1em;
	line-height:1;
	padding:0.4em;
	text-align:center;
}

.technic .theme{
	max-width:1000px;
        background-image:url(../img/technic/technic_ss.jpg);
	margin:0 auto;
	position:relative;
        }


.toc{
	max-width:1000px;
	margin:0 auto;
	font-weight:bold;
	padding:2em 0;
}
.toc ul{
	overflow:hidden;
	border-bottom:1px solid #ddd;
	border-right:1px solid #ddd;
}
.toc li{
	float:left;
	width:33.333333%;
}
.toc li a{
	border-top:1px solid #ddd;
	border-left:1px solid #ddd;
	display:block;
	padding:1.5em 1em 1.5em 1em;
	position:relative;
	line-height:1;
}

.toc li a:after{
	content: "";
	display: block;
	width: 17px;
	height: 8px;
	background-position: -200px -35px;
	margin-top: -4px;
	position: absolute;
	top: 50%;
	right: 10px;
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}





.technic .tellsex_play{
	padding:2em 10%;
	margin:0 0 3.5em 0;
}


.technic .tellsex_play a{
	border:1px solid #666;
	background-color: rgba(255, 255, 255, 0.5);
	border-radius:2.5em;
	line-height:1;
	height:1em;
	font-size:16px;
	font-weight:bold;
	text-align:center;
	text-decoration: none;
	color:#666;
	display:block;
	padding:1.25em 0 1.25em 0.8em;
	position:relative;
	-webkit-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.05);
	box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.05);
}


.technic .tellsex_play a:hover{
	background: #de543e url(../img/headerbg.png) repeat-x 0 0;
	color:#fff;
	border-color:#d31d00;
}



.technic .tellsex_play a:after{
	content: "";
	display: block;
	background-position: -220px -35px;
	width: 8px;
	height: 17px;
	position: absolute;
	top: 50%;
	right: 2em;
	margin-top: -8px;
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}

.technic .tellsex_play a:hover:after{
	-webkit-transform: translateX(1em);
	transform: translateX(1em);
}
.technic .tellsex_play a.active:hover:after{
	-webkit-transform: translateX(0);
	transform: translateX(0);
}
.technic .tellsex_play a:hover:after,
.technic .tellsex_play a.active:after{
	background-position:-200px -45px;
}






/* ----------------------------------------------------------------
	contact
----------------------------------------------------------------- */
.contact article{
	background-image:url(/img/contact/h2_bg.jpg);
}
.contact header h2:before{
	background-image:url(/img/contact/h2_title.png);
}
html:lang(en-US) .contact header h2:before,
html:lang(en) .contact header h2:before{
	background-image:url(/img/contact/h2_title_en.png);
}
.contact header h2:after{
	background-image:url(/img/contact/h2_after.png);
	background-size:auto 160%;
}
.contact .appoint{
	background:#ebebeb url(/img/header_circle2.png) no-repeat 50% 70%;
	width:100%;
	padding:0;
	display:block;
	text-align:center;
	position:relative;
	padding:3em 0;
}
.contact .appoint dt{
	font-size:34px;
	font-weight:bold;
}
.contact .appoint dd{
	margin-top:1em;
}
.contact .appoint em {
	background-color: #f0cbc6;
	color: #d31d00;
	display: inline-block;
	padding: 0.5em 2em;
	margin-top: 1.5em;
}
.contact .appoint .note{
	font-size:12px;
	padding:1.5em 10px 0 10px;
}
.entry .cross{
	margin:1.5em 0;
	padding:0;
	list-style:none;
}
.cross:before,
.cross:after{
	content:"";
	display:block;
}
.cross:after{
	clear:both;
}
.cross li{
	padding:10% 0 10% 50%;
	margin:0;
	position:relative;
	min-height:389px;
	list-style:none;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
.cross li:first-child{
	padding:10% 50% 10% 0;
	background-position:0 0;
}
.cross li:before{
	content:"";
	display:block;
	width:50%;
	height:100%;
	background-repeat:no-repeat;
	background-position:0 0;
	background-size:100% auto;
	position:absolute;
	top:0;
	left:0;
}
.cross li:first-child:before{
	left:auto;
	right:0;
}
.cross li dl{
	padding:0 0 0 20px;
	margin:0;
}
.cross li:first-child dl{
	padding:0 20px 0 0;
	margin:0;
}
.cross dt{
	margin:0;
	padding:0;
	font-size:24px;
	font-weight:bold;
}
.contact .cross li:before{
	background-image:url(/img/contact/img2.jpg);
}
.contact .cross li:first-child:before{
	background-image:url(/img/contact/img1.jpg);
}
#contact-address{
	background:#fbefed url(/img/about/repeatbg.jpg) repeat-x left bottom;
	padding:3em 0 250px 0;
	margin:0;
	text-align:center;
}
.vcard{
	margin:1em 0;
	padding:100px 0 0 0;
	background:url(/img/contact/contact-constructerbg_ie8.gif) no-repeat 50% 0;
}
html:root .vcard{
	background-image:url(../img/contact-constructerbg.gif);
	background-size:90px 85px;
}
.contact .vcard{
	margin-bottom:3em;
}
.vcard span{
	display:block;
}
.vcard span.type{
	display:inline-block;
}

.vcard .mail{
	display:block;
	width:12em;
	margin:0 auto;
}


.vcard em{
	font-size:125%;
	display:block;
	padding:0.5em 0;
}
#contact-address p{
	max-width:1000px;
	padding:0 10px 3em 10px;
	margin:0 auto;
}
#floormap h3,
#access h3{
	margin:0 0 1em 0;
	text-align:center;
}
#access ol{
	margin:0;
	padding:0;
	list-style:none;
}
#access ol:before,
#access ol:after{
	content:"";
	display:block;
}
#access ol:after{
	clear:both;
}
#access li{
	float:left;
	width:33.333333%;
	padding:0;
	margin:0 0 2em 0;
}
#access dl{
	max-width:320px;
	margin:0 auto;
}
#access li:nth-child(4){
	clear:left;
}
#access li dt img{
	max-width:320px;
	width:100%;
	margin:0 auto;
	padding:0;
	vertical-align:top;
}
#access .map a{
	color:#333;
	text-decoration:none;
}
#access .map dt{
	padding:62.5% 0 0 0;
	margin:0;
	display:block;
	height:0;
	max-width:320px;
	position:relative;
	background-color:transparent;
	z-index:1;
	text-align:center;
	font-weight:bold;
	overflow:hidden;
}
#access .map em{
	position:absolute;
	top:50%;
	left:0;
	padding:30px 0 0 0;
	margin-top:-1em;
	font-style: normal;
	font-weight:bold;
	width:100%;
	text-align:center;
	z-index:2;
}
#access .map dt:before{
	content:"";
	display:block;
	width:100%;
	height:100%;
	background-color:#fff;
	border:1px solid #ebebeb;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	position:absolute;
	top:0;
	left:0;
	z-index:-1;
	-webkit-transition:background-color 0.3s ease;
	transition:background-color 0.3s ease;
}
#access .map a:hover dt:before{
	background-color:#fbefed;
}

#access .map dt:after{
	content: "";
	display: block;
	z-index:1;
	position: absolute;
	top: 30%;
	left: 50%;
	background-position: -150px 0;
	width: 48px;
	height: 46px;
	margin-left:-24px;
	-webkit-transition:-webkit-transform 0.3s;
	transition:transform 0.3s;
}
#access .map a:hover dt:after{
	-webkit-transform: translateY(10px);
	transform: translateY(10px);
}

.contact section{
	padding:50px 0 0 0;
}

/* ----------------------------------------------------------------
	shareThis
----------------------------------------------------------------- */
#shareThis{
	text-align:center;
	padding:30px 0;
	height:20px;
	line-height:1;
	margin:0;
	position:relative;
	overflow:hidden;
}
#shareThis .twitter-share-button,
#shareThis .hatena-bookmark-button-frame{
	display:inline-block;
	height:20px !important;
	line-height:1 !important;
	padding:0 !important;
	border:0 none !important;
	text-align:left;
}
#shareThis .hatena-bookmark-button-frame{
	margin:0 0 0 15px;
	width:80px !important;
}
#shareThis .twitter-share-button{
	margin:0;
	width:56px !important;
}
#shareThis .fb-like{
	margin:0 15px 0 0 ;
	display:inline-block !important;
	width:92px !important;
	height:20px !important;
	position:relative;
}
#shareThis .fb-like > span{
	width:92px !important;
	height:20px !important;
	text-align:left !important;
	position:absolute !important;
	display:block !important;
	top:0;
	left:0;
}
#shareThis #fblikebtn{
	margin:0 15px 0 0;
	padding:0;
	border:0 none;
	display:inline-block !important;
	width:92px !important;
	height:20px !important;
	overflow:hidden;
	position:relative;
}
#shareThis a.hatena-bookmark-button,
#shareThis a.twitter-share-button{
	display:none;
}





.livechat {
	margin:7% 15%;
}
.livechat h3{
	text-align:center;
}












/* ----------------------------------------------------------------
	responsive
----------------------------------------------------------------- */
@media(min-height: 900px) and (min-width: 1180px) {
	#pagetop{
		position:fixed;
		margin-left:520px;
	}
}

@media(max-width: 1000px) {
	#slide .p1{
		height:100%;
	}
	#slide .p2{
		height:200%;
	}
	#navigation ul:before,
	#navigation ul:after{
		display:none;
	}
	#breadcrumbs ol{
		padding:0 10px;
	}
	.top .introSec,
	.top .contactSec{
		padding-left:10px;
		padding-right:10px;
	}
	.koukokuSec ul{
		padding:0 5px;
	}
	#main .interviewSec{
		padding:0 5px;
	}
	.interviewSec ul{
		margin:0;
	}
	#main .blogSec,
	.blogSec ul{
		padding:0;
		margin:0;
	}
	.top .contactSec{
		background-size:110% auto;
	}
	.contactSec .appoint a{
		background-size:100% auto;
	}
	#contentinfo small{
		padding-right:10px;
	}

	article{
		padding-top:340px;
		background-size:auto 340px;
	}
	article > header:before,
	header .title,
	header h2{
		height:70px;
	}
	header .title:before,
	header h2:before{
		background-size:auto 70px;
	}

	/*interview*/
	.interview .target-link ul{
		padding:0 10px;
	}
	.interview .target-link li{
		width:47.5%;
		padding-left:2.5%;
		padding-right:0;
	}
	.interview .target-link li:first-child{
		padding-left:0;
		padding-right:2.5%;
	}
	#main .interview .entry section{
		min-height:0;
		max-height:none;
		background-size:auto 100%;
	}
	.interview .entry-box{
		padding-top:8em;
	}
	#honeyline .entry-content,
	#hana .entry-content,
	#ecstacy2 .entry-content{
		margin-right:10px;
	}
	#sweet .entry-content,
	#ecstacy .entry-content{
		margin-left:10px;
	}
	.interview .more{
		padding-top:4em;
		padding-bottom:4em;
	}
	#main .interview.students .entry section{
		padding-left:10px;
		padding-right:10px;
	}
	/*technic*/
	.technic section h3,
	.toc,
	.technic section section{
		padding-left:10px;
		padding-right:10px;
	}
	/*contact*/
	.cross li{
		padding:0 10px 0 50%;
		min-height:300px;
	}
	.cross li:first-child{
		padding:0 50% 0 10px;
	}
	.cross dl{
		display:table;
		vertical-align:middle;
	}
	#floormap{
		padding-left:10px;
		padding-right:10px;
	}
	#access ol{
		margin:0 5px;
	}
	#access li dl{
		margin:0 5px;
	}

	/*phone-h*/

	#main .phone-h .phone_sex section{
		padding-left:10px;
		padding-right:10px;
	}


}
@media(max-width: 900px) {
	#header,
	#header h1,
	#navigation ul:before,
	#navigation ul:after{
		height:81px;
	}
	#header h1 a{
		padding-top:81px;
		background-size:auto 100%;
	}
	#navigation a{
		padding:48px 0 25px 0;
	}
	#navigation a{
		font-size:12px;
	}
	#navigation .locale-switcher{
		height:30px;
	}
	#navigation .locale-options a{
		line-height:30px;
	}
	#main,
	.change .top #main{
		padding-top:81px;
	}
	.top #main h2{
		font-size:42px;
	}
	#main h2{
		font-size:32px;
	}
	.blog .entry-title,
	#main h3{
		font-size:28px;
	}
	#main h4{
		font-size:24px;
	}
	#breadcrumbs li a {
		padding-top:14px;
		padding-bottom:14px;
	}
	article{
		padding-top:300px;
		background-size:auto 300px;
	}
	article > header:before,
	header .title,
	header h2{
		height:60px;
	}
	header .title:before,
	header h2:before{
		background-size:auto 60px;
	}
	.interview.students figure {
		width:50%;
	}
	/*blog*/
	.blog.inside article{
		padding-top:41px;
	}
	/*hitoduma*/
	.hitoduma .toc li{
		width:100%;
	}

}
@media(max-width: 800px) {
	#header,
	#header h1,
	#navigation ul:before,
	#navigation ul:after{
		height:70px;
	}
	#header h1 a{
		padding-top:70px;
	}
	#navigation a{
		padding:42px 0 20px 0;
		font-size:11px;
	}
	#navigation a:before{
		top:10%;
	}
	#main,
	.change .top #main{
		padding-top:70px;
	}
	.top #main h2{
		font-size:40px;
	}
	#main h2{
		font-size:30px;
	}
	.blog .entry-title,
	#main h3{
		font-size:26px;
	}
	#main h4{
		font-size:22px;
	}
	.koukokuSec .primary,
	.koukokuSec .primary ul,
	.koukokuSec ul{
		display:block;
		max-width:100%;
	}
	.koukokuSec .secondary ul{
		margin-top:0;
	}
	.koukokuSec .primary li,
	.koukokuSec li{
		width:50%;
		height:100%;
		margin:1.0em 0;
	}
	.koukokuSec dl{
		margin:0 !important;
	}
	.koukokuSec dd{
		padding-bottom:1.5em;
	}

	.koukokuSec dd{
		padding-bottom:0.5em;
		height:18.0em;
	}

	.koukokuSec dd > span{
		height:160px;

	}

	.koukokuSec dd span[itemprop="image"]{
		position:absolute;
		margin:20px 0px;
		right:2%;
		left:2%;
	}



	article{
		padding-top:260px;
		background-size:auto 260px;
	}
	/*interview*/
	.interview .target-link li{
		padding-top:2em;
		padding-bottom:2em;
	}
	.interview .target-link a{
		font-size:14px;
	}
	.interview .entry-box{
		padding-top:7em;
	}
	.interview .more{
		padding-top:3.5em;
		padding-bottom:3.5em;
	}
	/*contact*/
	.cross li{
		min-height:250px;
	}

	.cross dl{
		vertical-align:top;
		display:block;
	}

}
@media(max-width: 720px) {
	#header{
		position:relative !important;
	}
	#main{
		padding-top:0 !important;
	}
	#header,
	#header h1{
		height:81px;
	}
	#header h1 a{
		padding-top:81px;
		background-image:url(../img/logobg.png) !important;
		background-size:auto 100%;
		background-position:0 0;
		width:100%;
		margin:0;
		cursor:default;
	}
	#header h1 a:before{
		display:block;
		background-size:auto 100%;
	}
	#header h1 a:after{
		content:"";
		display:block;
		position:absolute;
		bottom:0;
		left:0;
		width:100%;
		border-bottom:1px solid #eee;
	}
	#build-menu-button{
		display:block;
	}
	#navigation > div,
	#navigation > ul > li{
		display:none;
	}
	#navigation{
		left:auto;
		right:10px;
		top:15px;
		background:#fff;
		background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f9f9f9));
		background: -webkit-linear-gradient(top, #fff, #f9f9f9);
		background: linear-gradient(to bottom, #fff, #f9f9f9);
		-webkit-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
		box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
		width:80px;
		height:50px;
		z-index:2;
		cursor:pointer;
	}
	#navigation:before{
		content:"MENU";
		font-family:monospace;
		color: #fff;
		font-weight:normal;
		font-size:10px;
		height:18px;
		line-height:18px;
		letter-spacing: 0.1em;
		background: #de543e url(../img/headerbg.png) repeat-x 0 0;
		width:100%;
		position:absolute;
		top:0;
		left:0;
		padding:0;
		text-align:center;
	}
	#navigation:after{
		content:"\2261";
		font-family:'Courier New', monospace;
		display:block;
		position:absolute;
		bottom:0;
		left:0;
		margin:0;
		padding:0;
		font-weight:normal;
		font-size:30px;
		line-height:30px;
		height:30px;
		width:100%;
		text-shadow: 1px 1px 1px #fff;
		vertical-align: middle;
		text-align:center;
	}
	#navigation > ul{
		position:absolute;
		top:0;
		left:0;
		width:100%;
		height:100%;
		-webkit-box-sizing:border-box;
		-moz-box-sizing:border-box;
		box-sizing:border-box;
		border-left:1px solid #fff;
		border-right:1px solid #fff;
		border-bottom:1px solid #fff;
	}
	.introSec h3{
		text-align:center;
		background-color:rgba(255,255,255,0.5);
	}



	.introSec section{
		background-position:50% 20px;
		background-size:auto 60%;
		padding:35% 0 0 0;
	}
	.introSec section + section{
		background-position:50% 50px;
		background-size:auto 60%;
		padding:35% 0 0 0;
	}
	.introSec section + section + section{
		background-position:50% 20px;
		background-size:auto 55%;
		padding:35% 0 0 0;
	}
	.introSec section + section + section + section{
		background-position:50% 50px;
		background-size:auto 60%;
		padding:35% 0 0 0;
	}

	.koukokuSec .primary,
	.koukokuSec .primary ul,
	.koukokuSec ul{
		display:block;
		max-width:100%;
	}
	.koukokuSec .secondary ul{
		margin-top:0;
	}
	.koukokuSec .primary li,
	.koukokuSec li{
		display:block;
		width:100%;
		height:100%;
		margin:1.0em 0;
	}
	.koukokuSec dl{
		margin:0 !important;
	}
	.koukokuSec dd{
		padding-bottom:0.5em;
		height:20.0em;
	}

	.koukokuSec dd > span{
		height:248px;

	}

	.koukokuSec dd span[itemprop="image"]{
		position:absolute;
		margin:4% 0px;
		right:2%;
		left:2%;
	}




	.interviewSec li{
		width:50%;
	}
	.interviewSec li:nth-child(3),
	.interviewSec li:nth-child(3) ~ li{
		display:none !important;
	}
	.top .contactSec{
		padding-bottom:200px;
		background-image:url(../img/footer_s.jpg);
	}
	.area .areaSec{
		padding-bottom:50px;
		background-image:url(../img/area/area_s.jpg);
	}
        .hitoduma #article{
		padding-bottom:50px;
	        background:url(../img/area/area_s.jpg);
        }
        .tellclub .tell-club{
        	background-image:url(../img/area/area_s.jpg);
        }
        .technic .theme{
        	background-image:url(../img/technic/technic_s3.jpg);
        }
	.contactSec ul{
		margin-top:20px;
	}
	.contactSec li a{
		margin-left:10px;
	}
	.contactSec li:first-child a{
		margin-right:10px;
		margin-left:0;
	}
	article{
		padding-top:220px;
		padding-bottom:50px;
		background-size:auto 220px;
	}
	.top #main h2{
		font-size:35px;
	}
	#main h2{
		font-size:28px;
	}
	.blog .entry-title,
	#main h3{
		font-size:24px;
                color:#ff0000;
	}
	#main h4{
		font-size:22px;
	}
	.more a{
		max-width:50%;
	}
	.more2 a{
		max-width:75%;
	}
	.entry{
		font-size:14px;
	}
	.mt-image-none,
	.mt-image-left,
	.mt-image-right{
		display:block !important;
		float:none !important;
		clear:both !important;
		margin-left:auto !important;
		margin-right:auto !important;
	}
	.entryMeta{
		margin-top:30px;
		text-align:center;
	}
	.entry table th{
		width:8em;
	}
	.entry table td{
		padding:1em 0.25em 1em 0.75em;
	}

	#main .toc,
	#main .relate{
		padding-left:10px;
		padding-right:10px;
	}
	#main .toc h3,
	#main .relate h3{
		margin-bottom: 10px;
	}
	.entry table{
		font-size:12px;
	}
	.entry table th{
		padding-top:0.75em;
		padding-bottom:0.75em;
	}
	.entry table td{
		padding:0.75em;
	}



	/*interview*/
	#main .interview.staffs .entry{
		background: #fff url(../img/tilebg.png) repeat 0 0;
	}
	#main .interview .entry section{
		background-size:240% auto;
		background-color:transparent;
	}
	.interview .entry-box{
		padding:0 10px;
	}
	.interview .entry-content{
		width:100%;
		max-width:720px;
		margin:45% 0 0 0 !important;
		float:none;
	}
	.interview .more{
		/*background: #ededed url(/img/repeatbg.gif) repeat 0 0;*/
		padding:1.5em 0;
	}
	.interview #ecstacy2 .more{
		padding-bottom:50px;
	}
	.interview .more a{
		margin:0 auto !important;
		max-width:80% !important;
		background-color:#fff !important;
	}
	#main .interview .scroll{
		max-height:15em;
		min-height:0;
	}
	/*technic*/
	.technic .toc li{
		width:50%;
	}
	/*hitoduma*/
	.hitoduma .toc li{
		width:100%;
	}
	/*contact*/
	.contact .appoint{
		background-size:120% auto;
		padding:2em 0;
	}
	.contact .appoint dt{
		font-size:28px;
	}
	.contact .appoint dd{
		padding:0 10px;
	}
	/*contact*/
	.cross li,
	.cross li:first-child{
		min-height:0;
		padding:40% 0 0 0;
		width:50%;
		float:left;
	}
	.cross li dl,
	.cross li:first-child dl{
		padding:0 10px;
		background:#fff;
		position:relative;
	}
	.cross li:before{
		width:100%;
		background-position:0 0;
		background-size:100% auto;
	}
	.cross dt{
		font-size:20px;
		text-align:center;
	}
	#join-us,
	#contact-address{
		background-size:auto 125px;
		padding-bottom:125px;
	}
	#access ol{
		margin:0 10px;
	}
	#access li{
		width:50%;
	}
	#access li:nth-child(2n+1){
		clear:left;
	}
	#access li:nth-child(4){
		clear:none;
	}
	#access li dl,
	#access li:nth-child(even) dl,
	#access li:nth-child(odd) dl{
		margin:0 auto;
	}

	/*phone-h*/

	#main .phone-h .phone_sex section{
		padding-top:50px;
		padding-bottom:0;
	}
	#main .phone-h .phone_sex section + section{
		padding-bottom:0;
	}
	#main .phone-h .scroll{
		max-height:15em;
		min-height:0;
	}

        .tellclub .tell-club{
	         background-image:url(../img/tellclub/tell_club_s2.jpg);
        }

.livechat {
	margin:5% 5%;
}


}
@media(max-width: 600px) {
	.introSec section{
		padding:45% 0 0 0;
	}
	.top .contactSec{
		padding-bottom:150px;
	}
	.contactSec .appoint dt{
		font-size:20px;
	}
	article{
		padding-top:200px;
		background-size:auto 200px;
	}
	article > header:before,
	header .title,
	header h2{
		height:50px;
	}
	header .title:before,
	header h2:before{
		background-size:auto 50px;
	}
	.top #main h2,
	#main h2{
		font-size:26px;
	}
	.blog .entry-title,
	#main h3{
		font-size:22px;
	}
	#main h4{
		font-size:22px;
	}
	.table-frame{
		overflow: auto;
		-webkit-overflow-scrolling: touch;
		width: 100%;
		position: relative;
	}
	.entry .table-frame table{
		width:600px;
	}
	.table-frame:before{
		content:"";
		display:block;
		width:89px;
		height:121px;
		position:absolute;
		top:50%;
		left:100px;
		margin-top:-60px;
		background:url(../img/swipe_icon.png) no-repeat 0 0;
		background-size:100% auto;
		z-index:1;
	}
	.table-frame.touched:before{
		-webkit-animation: fadeIn 2s;
		animation: fadeIn 2s;
	}
	.table-frame.nowtouch:before,
	.table-frame:hover:before{
		left:-100px;
	}


	/*interview*/
	.interview .target-link li{
		padding-top:1.5em;
		padding-bottom:1.5em;
	}
	.interview .target-link a{
		padding:1em 0 1em 1.5em;
	}
	.interview .target-link a:after{
		right:1.25em;
	}
	.interview .target-link a:hover:after{
		-webkit-transform: translateX(0.5em);
		transform: translateX(0.5em);
	}
	/*contact*/
	#access li:nth-child(even) dl{
		margin:0 0 0 5px;
	}
	#access li:nth-child(odd) dl{
		margin:0 5px 0 0;
	}

        .tellclub .tell-club{
	         background-image:url(../img/tellclub/tell_club_ss2.jpg);
        }
	.koukokuSec .primary,
	.koukokuSec .primary ul,
	.koukokuSec ul{
		display:block;
		max-width:100%;
	}
	.koukokuSec .secondary ul{
		margin-top:0;
	}
	.koukokuSec .primary li,
	.koukokuSec li{
		display:block;
		width:100%;
		height:100%;
		margin:1.0em 0;
	}
	.koukokuSec dl{
		margin:0 !important;
	}
	.koukokuSec dd{
		padding-bottom:1.5em;
	}
	.koukokuSec dd{
		padding-bottom:0.5em;
		height:20.0em;
	}

	.koukokuSec dd > span{
		height:220px;

	}

	.koukokuSec dd span[itemprop="image"]{
		position:absolute;
		margin:30px 0px;
		right:2%;
		left:2%;
	}


.livechat {
	margin:3% 2%;
}


}


@media(max-width: 540px) {
	article{
		padding-top:175px;
		background-size:auto 175px;
	}
	/*contact*/
	.contact .appoint{
		padding:1.5em 0;
	}
	.contact .appoint dt{
		font-size:24px;
	}
	.contact .appoint dd{
		margin-top:0.5em;
	}
	.contact .appoint em{
		margin-top:0.5em;
	}
	.koukokuSec .primary,
	.koukokuSec .primary ul,
	.koukokuSec ul{
		display:block;
		max-width:100%;
	}
	.koukokuSec .secondary ul{
		margin-top:0;
	}
	.koukokuSec .primary li,
	.koukokuSec li{
		display:block;
		width:100%;
		height:100%;
		margin:1.0em 0;
	}
	.koukokuSec dl{
		margin:0 !important;
	}
	.koukokuSec dd{
		padding-bottom:1.5em;
	}

	.koukokuSec dd{
		padding-bottom:0.5em;
		height:19.0em;
	}

	.koukokuSec dd > span{
		height:190px;

	}

	.koukokuSec dd span[itemprop="image"]{
		position:absolute;
		margin:20px 0px;
		right:2%;
		left:2%;
	}

.livechat {
	margin:3% 2%;
	height:200%;
}
.livechat h3{
	font-size:14px;
}


}
@media(max-width: 480px) {
	.respond{
		display:none;
	}
	#contentinfo small{
		font-size:14px;
	}
	#header,
	#header h1{
		height:70px;
	}
	#header h1 a{
		padding-top:70px;
		background-size:auto 100%;
	}
	#build-menu-button{
		width:80px;
		height:70px;
	}
	#navigation{
		top:10px;
		width:70px;
	}
	#breadcrumbs{
		font-size:10px;
	}
	#breadcrumbs li a {
		padding-top:10px;
		padding-bottom:10px;
	}
	#breadcrumbs li.current span{
		overflow:hidden;
		text-overflow:ellipsis;
		white-space:nowrap;
		max-width:10em;
		display:inline-block;
	}
	article{
		padding-top:150px;
		background-size:auto 150px;
	}
	article > header:before,
	header .title,
	header h2{
		height:40px;
	}
	header .title:before,
	header h2:before{
		background-size:auto 40px;
	}
	.top #main h2,
	#main h2{
		font-size:22px;
	}
	.blog .entry-title,
	#main h3{
		font-size:22px;
	}
	#main h4{
		font-size:22px;
	}
	#main h5{
		font-size:38px;
	}
	.more a{
		max-width:80%;
	}
	.entry h3{
		font-size:16px;
	}
	.entry .table-frame table{
		width:540px;
	}
	.entry table th{
		padding-top:0.5em;
		padding-bottom:0.5em;
	}
	.entry table td{
		padding:0.5em;
	}
	.introSec section{
		padding:70% 0 10% 0;
	}
	.introSec section + section{
		padding:70% 0 10% 0;
	}
	.introSec section + section + section{
		padding:65% 0 10% 0;
	}
	.introSec section + section + section + section{
		padding:70% 0 10% 0;
	}
	.interviewSec .post{
		padding:0 0 0.5em 0;
		display:block;
	}
	.interviewSec .post,
	.interviewSec dd{
		font-size:10px;
	}
	.interviewSec span[itemprop="name"]{
		font-size:14px;
	}
	.top .contactSec{
		padding-bottom:100px;
	}
	.contactSec ul{
		margin-top:10px;
	}
	.contactSec li a{
		margin-left:5px;
	}
	.contactSec li:first-child a{
		margin-right:5px;
		margin-left:0;
	}
	.contactSec .appoint dt{
		font-size:18px;
	}
	.koukokuSec .primary,
	.koukokuSec .primary ul,
	.koukokuSec ul{
		display:block;
		max-width:100%;
	}
	.koukokuSec .secondary ul{
		margin-top:0;
	}
	.koukokuSec .primary li,
	.koukokuSec li{
		display:block;
		width:100%;
		height:100%;
		margin:1.0em 0;
	}
	.koukokuSec dl{
		margin:0 !important;
	}
	.koukokuSec dd{
		padding-bottom:1.5em;
	}
	.koukokuSec dd{
		padding-bottom:0.5em;
		height:18.0em;
	}

	.koukokuSec dd > span{
		height:160px;

	}

	.koukokuSec dd span[itemprop="image"]{
		position:absolute;
		margin:20px 0px;
		right:2%;
		left:2%;
	}




	/*interview*/
	.interview .target-link li{
		padding-top:1.25em;
		padding-bottom:1.25em;
	}
	.interview .target-link a{
		padding:1em 0 1em 1.25em;
	}
	.interview .entry h3{
		padding:10px 10px 0 10px;
	}
	.interview .specialty,
	.interview p{
		margin-left:10px;
		margin-right:10px;
	}
	.interview .entry-content{
		padding-bottom:10px;
	}
	/*contact*/
	.contact .appoint dt{
		font-size:20px;
	}
	.contact .cross{
		margin:-20px 0 0 0;
	}
	.cross li,
	.cross li:first-child{
		min-height:0;
		padding:40% 0 0 0;
		margin:0 0 20px 0;
		width:100%;
		float:none;
	}
	.cross li dl,
	.cross li:first-child dl{
		padding:0 10px;
		background:#fff;
		position:relative;
	}
	.cross dt{
		padding:0.5em 0;
	}
	#join-us,
	#contact-address{
		background-size:auto 75px;
		padding-bottom:75px;
	}
	#contact-address p{
		font-size:12px;
	}
	.vcard span.type{
		display:block;
		padding:0;
	}
	/*tell_club*/

        .tellclub .tell-club{
	         background-image:url(../img/tellclub/tell_club_s.jpg);
        }
        .technic .theme{
        	background-image:url(../img/technic/technic2.jpg);
        }



}
@media(max-width: 400px) {
	article{
		padding-top:125px;
		background-size:auto 125px;
	}
	/*interview*/
	.interview .target-link a{
		font-size:13px;
	}

	.interview.students figure{
		float:none;
		width:100%;
		margin:0 0 20px 0;
		padding:0;
	}
	/*technic*/
	.technic .toc li a{
		font-size:12px;
		font-weight:normal;
		text-overflow:ellipsis;
		white-space:nowrap;
		overflow:hidden;
		padding-right:2.5em;
	}
	/*hitoduma*/
	.hitoduma .toc li a{
		font-size:12px;
		font-weight:normal;
		text-overflow:ellipsis;
		white-space:nowrap;
		overflow:hidden;
		padding-right:2.5em;
	}
	/*contact*/
	#access .map dt:after{
		top:20px;
	}

	/*phone-h*/

	.phone-h figure{
		float:none;
		width:100%;
		margin:0 0 20px 0;
		padding:0;
	}

	.koukokuSec .primary,
	.koukokuSec .primary ul,
	.koukokuSec ul{
		display:block;
		max-width:100%;
	}
	.koukokuSec .secondary ul{
		margin-top:0;
	}
	.koukokuSec .primary li,
	.koukokuSec li{
		display:block;
		width:100%;
		height:100%;
		margin:1.0em 0;
	}
	.koukokuSec dl{
		margin:0 !important;
	}
	.koukokuSec dd{
		padding-bottom:1.5em;
	}
	.koukokuSec dd{
		padding-bottom:0.5em;
		height:16.5em;
	}

	.koukokuSec dd > span{
		height:150px;

	}

	.koukokuSec dd span[itemprop="image"]{
		position:absolute;
		margin:20px 0px;
		right:2%;
		left:2%;
	}

}

@media(max-width: 360px) {
	.introSec section{
		padding:55% 0 0 0;
		background-size:100% auto !important;
	}
	.introSec section + section{
		padding:65% 0 0 0;
	}
	.interviewSec dd{
		margin-left:5%;
		margin-right:5%;
	}
	.top .contactSec{
		padding-bottom:80px;
	}
	.contactSec .appoint dd{
		font-size:12px;
	}
	article{
		padding-top:100px;
		background-size:auto 100px;
	}
	.top #main h2,
	#main h2{
		font-size:20px;
	}
	.blog .entry-title,
	#main h3{
		font-size:20px;
	}
	#main h4{
		font-size:18px;
	}
	#main h5 a{
		font-size:30px;
	}
	.areaSec em a{
		font-size:28px;
	}
	.entry .table-frame table{
		width:480px;
	}
	/*contact*/
	.contact .appoint dt{
		font-size:18px;
	}
	.introSec section{
		padding:60% 0 10% 0;
	}
	.introSec section + section{
		padding:60% 0 10% 0;
	}
	.introSec section + section + section{
		padding:60% 0 10% 0;
	}
	.introSec section + section + section + section{
		padding:60% 0 10% 0;
	}
	.koukokuSec .primary,
	.koukokuSec .primary ul,
	.koukokuSec ul{
		display:block;
		max-width:100%;
	}
	.koukokuSec .secondary ul{
		margin-top:0;
	}
	.koukokuSec .primary li,
	.koukokuSec li{
		display:block;
		width:100%;
		height:100%;
		margin:1.0em 0;
	}
	.koukokuSec dl{
		margin:0 !important;
	}
	.koukokuSec dd{
		padding-bottom:1.5em;
	}
	.koukokuSec dd{
		padding-bottom:0.5em;
		height:15.5em;
	}

	.koukokuSec dd > span{
		height:125px;

	}

	.koukokuSec dd span[itemprop="image"]{
		position:absolute;
		margin:15px 0px;
		right:2%;
		left:2%;
	}



}















/* ----------------------------------------------------------------
	jscrollpane
----------------------------------------------------------------- */
.jspScrollable{
	outline:0 none !important;
}
.jspContainer{
	overflow: hidden;
	position: relative;
	outline:0 none !important;
}
.jspPane{
	position: absolute;
	outline:0 none !important;
	width:100% !important;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	padding:0 0 0 0 !important;
}
.jspVerticalBar{
	position: absolute;
	top: 0;
	right: 0;
	width: 5px;
	height: 100%;
	background: transparent;
}
.jspHorizontalBar{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 5px;
	background: transparent;
}
.jspVerticalBar *,
.jspHorizontalBar *{
	margin: 0;
	padding: 0;
}
.jspCap{
	display: none;
}
.jspHorizontalBar .jspCap{
	float: left;
}
.jspTrack{
	position: relative;
	background-color: #f1f1f1;
	border-radius:5px;
}
.jspDrag{
	background-color: #ddd;
	position: relative;
	top: 0;
	left: 0;
	cursor: pointer;
	border-radius:5px;
}

.jspHorizontalBar .jspTrack,
.jspHorizontalBar .jspDrag{
	float: left;
	height: 100%;
}
.jspArrow{
	background: #50506d;
	text-indent: -20000px;
	display: block;
	cursor: pointer;
}
.jspArrow.jspDisabled{
	cursor: default;
	background: #80808d;
}
.jspVerticalBar .jspArrow{
	height: 16px;
}
.jspHorizontalBar .jspArrow{
	width: 16px;
	float: left;
	height: 100%;
}
.jspVerticalBar .jspArrow:focus{
	outline: none;
}
.jspCorner{
	background: #eeeef4;
	float: left;
	height: 100%;
}
* html .jspCorner{
	margin: 0 -3px 0 0;
}


/* ----------------------------------------------------------------
	hitoduma
----------------------------------------------------------------- */
.hitoduma article{
	background-image:url(../img/hitoduma/h2_bg.jpg);
}
.hitoduma header h2:before{
	background-image:url(../img/hitoduma/h2_title.png);
}

.hitoduma header h2:after{
	background-image:url(../img/hitoduma/h2_after.png);
	background-size:auto 100%;
	background-position:80% 0;
}
.hitoduma article > section + section{
	margin-top:50px;
}
.hitoduma section header{
	background:#ededed url(../img/repeatbg.gif) repeat 0 0;
}


.hitoduma #article{
	background:url(../img/area/area.jpg) repeat center;
	max-width:1000px;
	margin:0 auto;
	position:relative;
}

.hitoduma h3{
	background-color: rgba(219, 172, 136, 0.6);
	border-radius:20px;
	max-width:1000px;
	margin:0 auto;
	padding:1.0em 0.8em;
	color:#990000;
}
.hitoduma section section{
	max-width:1000px;
	margin:1.5em auto;
	padding:0;
}
.hitoduma h4{
	font-weight:normal;
	margin:1.5em 0 1.0em 1.0em;
	color:#cc0000;
}

.hitoduma .comment_1{
	font-weight:normal;
	margin:1.0em 0 0.5em 0.8em;
	font-size:1.0em;
	color:#333;
	line-height:1.8em;
	padding:0 0 5em 0;
}

.hitoduma section ol{
	margin:0;
	padding:0;
	list-style:none;
	counter-reset : item ;
}
.hitoduma section ol li{
	margin:0 0 1em 0;
	padding:0.5em 0 0 3em;
	position:relative;
}
.hitoduma section ol li span{
	padding:0 0 0 0.3em;
	display: block;
	color:#666;
}
.hitoduma section ol li:before{
	content: counters(item, "") "";
	counter-increment: item ;
	position:absolute;
	top:0.4em;
	left:0;
	color:#fff;
	background:#b7b7b7;
	width:1.5em;
	height:1em;
	line-height:1;
	padding:0.4em;
	text-align:center;
}



.hitoduma .hitoduma_play{
	padding:2em 10%;
	margin:3em 0 1.0em 0;
}


.hitoduma .hitoduma_play a{
	border:1px solid #666;
	background-color: rgba(255, 255, 255, 0.5);
	border-radius:2.5em;
	line-height:1;
	height:1em;
	font-size:16px;
	font-weight:bold;
	text-align:center;
	text-decoration: none;
	color:#666;
	display:block;
	padding:1.25em 0 1.25em 0.8em;
	position:relative;
	-webkit-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.05);
	box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.05);
}


.hitoduma .hitoduma_play a:hover{
	background: #de543e url(../img/headerbg.png) repeat-x 0 0;
	color:#fff;
	border-color:#d31d00;
}



.hitoduma .hitoduma_play a:after{
	content: "";
	display: block;
	background-position: -220px -35px;
	width: 8px;
	height: 17px;
	position: absolute;
	top: 50%;
	right: 2em;
	margin-top: -8px;
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}

.hitoduma .hitoduma_play a:hover:after{
	-webkit-transform: translateX(1em);
	transform: translateX(1em);
}
.hitoduma .hitoduma_play a.active:hover:after{
	-webkit-transform: translateX(0);
	transform: translateX(0);
}
.hitoduma .hitoduma_play a:hover:after,
.hitoduma .hitoduma_play a.active:after{
	background-position:-200px -45px;
}





/* ----------------------------------------------------------------
	phone-h
----------------------------------------------------------------- */
.phone-h article{
	background-image:url(../img/phone-h/h2_bg.jpg);
}
.phone-h header h2:before{
	background-image:url(../img/phone-h/h2_title.png);
}

.phone-h header h2:after{
	background-image:url(../img/phone-h/h2_after.png);
	background-size:auto 100%;
	background-position:80% 0;
}
.phone-h article > section + section{
	margin-top:50px;
}
.phone-h section header{
	background:#ededed url(../img/repeatbg.gif) repeat 0 0;
}
.phone-h h3{
	max-width:1000px;
	margin:0 auto;
	padding:1.5em 0;
}
.phone-h section section{
	max-width:1000px;
	margin:0 auto;
	padding:0;
}
.phone-h h4{
	font-weight:bold;
	margin:2em 0 1em 0;
}
.phone-h section ol{
	margin:0;
	padding:0;
	list-style:none;
	counter-reset : item ;
}
.phone-h section ol li{
	margin:0 0 1em 0;
	padding:0 0 0 3em;
	position:relative;
}
.phone-h section ol li:before{
	content: counters(item, "") "";
	counter-increment: item ;
	position:absolute;
	top:0.4em;
	left:0;
	color:#fff;
	background:#b7b7b7;
	width:1.5em;
	height:1em;
	line-height:1;
	padding:0.4em;
	text-align:center;
}
.phone-h .target-link{
	background:#000 url(../img/repeatbg2.gif) repeat 0 0;
}
.phone-h .target-link ul{
	max-width:1000px;
	margin:0 auto;
	overflow:hidden;
}
.phone-h .target-link li{
	width:44%;
	padding:3em 3%;
	margin:0;
	float:left;
}
.phone-h .more a,
.phone-h .target-link a{
	border:1px solid #666;
	background:#fff;
	border-radius:2.5em;
	line-height:1;
	height:1em;
	font-size:16px;
	font-weight:bold;
	text-decoration: none;
	color:#666;
	display:block;
	padding:1.25em 0 1.25em 0.8em;
	position:relative;
	-webkit-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.05);
	box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.05);
}
.phone-h .more a:hover,
.phone-h .target-link a:hover{
	background: #de543e url(../img/headerbg.png) repeat-x 0 0;
	color:#fff;
	border-color:#d31d00;
}
.phone-h .target-link a.active,
.phone-h .target-link a:hover.active{
	background: #787878 url(../img/tilebg.png) repeat-x 0 0;
	color:#fff;
	border-color:#787878;
}
.phone-h .more a:after,
.phone-h .target-link a:after{
	content: "";
	display: block;
	background-position: -220px -35px;
	width: 8px;
	height: 17px;
	position: absolute;
	top: 50%;
	right: 2em;
	margin-top: -8px;
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}
.phone-h .more a:hover:after,
.phone-h .target-link a:hover:after{
	-webkit-transform: translateX(1em);
	transform: translateX(1em);
}
.phone-h .target-link a.active:hover:after{
	-webkit-transform: translateX(0);
	transform: translateX(0);
}
.phone-h .more a:hover:after,
.phone-h .target-link a:hover:after,
.phone-h .target-link a.active:after{
	background-position:-200px -45px;
}


#main .phone-h .phone_sex section{
	padding:50px 10px;
	margin:0 auto;
	min-height:0;
	max-height:none;
	max-width:1000px;
	background-position:50% 0;
	background-repeat:no-repeat;
	clear:both;
}
#main .phone-h .phone_sex section + section{
	padding-bottom:0;
}

.phone-h .phone_sex section:before,
.phone-h .phone_sex section:after{
	content:"";
	display:block;
}
.phone-h .phone_sex section:after{
	clear:both;
}

.phone-h h3{
	margin:0 !important;
	padding:0 !important;
}
.phone-h .sub_1{
	display:block;
	margin:0 0 0.3em 0;
	padding:0;
	font-size:16px;
}
.phone-h p{
	margin:1em 0;
	line-height:1.8;
}
.phone-h #telesex_1 figure{
	float:left;
	padding:0 20px 20px 0;
	margin:0;
}
.phone-h #telesex_2 figure{
	float:right;
	padding:0 0 20px 20px;
	margin:0;
}



.phone-h .tellsex_play{
	padding:2em 10%;
	margin:0.5em 0 1.0em 0;
}


.phone-h .tellsex_play a{
	border:1px solid #666;
	background-color: rgba(255, 255, 255, 0.5);
	border-radius:2.5em;
	line-height:1;
	height:1em;
	font-size:16px;
	font-weight:bold;
	text-align:center;
	text-decoration: none;
	color:#666;
	display:block;
	padding:1.25em 0 1.25em 0.8em;
	position:relative;
	-webkit-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.05);
	box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.05);
}


.phone-h .tellsex_play a:hover{
	background: #de543e url(../img/headerbg.png) repeat-x 0 0;
	color:#fff;
	border-color:#d31d00;
}



.phone-h .tellsex_play a:after{
	content: "";
	display: block;
	background-position: -220px -35px;
	width: 8px;
	height: 17px;
	position: absolute;
	top: 50%;
	right: 2em;
	margin-top: -8px;
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}

.phone-h .tellsex_play a:hover:after{
	-webkit-transform: translateX(1em);
	transform: translateX(1em);
}
.phone-h .tellsex_play a.active:hover:after{
	-webkit-transform: translateX(0);
	transform: translateX(0);
}
.phone-h .tellsex_play a:hover:after,
.phone-h .tellsex_play a.active:after{
	background-position:-200px -45px;
}






/* ----------------------------------------------------------------
	area
----------------------------------------------------------------- */
.area article{
	background-image:url(../img/area/h2_bg.jpg);
}

.area header .title:before,
.area header h2:before{
	background-image:url(../img/area/h2_title.png);
}
.area header .title:after,
.area header h2:after{
	background-image:url(../img/area/h2_after.png);
	background-size:auto 100%;
	background-position:90% 0;
}

.area .areaSec{
	background:url(../img/area/area.jpg) repeat center;
	max-width:1000px;
	margin:0 auto;
	position:relative;
}

.area .theme{
	padding:50px 0 0 0;
	margin:0 auto;
	max-width:1000px;
	position:relative;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
.area footer a,
.area .theme header{
	display: block;
	margin:0;
	background-color: rgba(160, 248, 148, 0.6);
	padding:0;
	width:100%;
	color:#333;
	line-height: 1;
	position:relative;
	border:2px solid #dda0dd;
        border-radius: 15px;
}
.area .theme h3 span[itemprop="name"]{
	display:block;
	padding:20px 0px 20px 30px;
	color:#2e8b57;
}
.area .theme .specialty{
	padding:0em 0px 20px 15px;
}
.area .theme ul{
	margin:0 0.3em;
	padding:0;
	list-style:none;
	border:2px solid #f5f5f5;
}
.area .theme li{
	margin:0;
	padding:0;
}
.area .theme li + li{
	border-top:1px solid #eee;
}
.area .theme li a{
	font-size:1.2em;
	padding:1.2em 30px 1.2em 10px;
	margin:0;
	line-height:1.4;
	display:block;
	text-decoration:none;
	color:#008080;
	position:relative;
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f9f9f9));
	background: -webkit-linear-gradient(top, #fff, #f9f9f9);
	background: linear-gradient(to bottom, #fff, #f9f9f9);
}
.area .theme li a:hover{
	background: -webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#fff));
	background: -webkit-linear-gradient(top, #f9f9f9, #fff);
	background: linear-gradient(to bottom, #f9f9f9, #fff);
}
.area footer a:after,
.area .theme li a:after{
	content: "";
	display: block;
	background-position: -220px -35px;
	width: 8px;
	height: 17px;
	position: absolute;
	top: 50%;
	right: 20px;
	margin-top: -8px;
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}
.area footer a:hover:after,
.area .theme li a:hover:after{
	-webkit-transform: translateX(10px);
	transform: translateX(10px);
}
.area footer a:hover:after{
	background-position:-200px -45px;
}
.areafooter{
	margin:0px auto 0 auto;
	max-width:1000px;
}
.area footer dt{
	font-weight:bold;
	margin:0 0 20px 0;
	font-size:120%;
}
.area footer a{
	display:block;
	text-decoration:none;
	position:relative;
	-webkit-transition: background-color 0.3s, color 0.3s;
	transition: background-color 0.3s, color 0.3s;
}
.area footer a:hover{
	background-color:#de543e;
	color:#fff;
}

.area footer a + a{
	margin-top:1.5em;
}
.area footer span[itemprop="name"]{
	display:block;
	padding:25px 30px 0 125px;
	font-size:120%;
	font-weight:bold;
}
.area footer .type{
	padding:1em 30px 0 125px;
	display:block;
}
.area footer span[itemprop="image"]{
	position:absolute;
	top:10px;
	left:10px;
}

.submit-botum2  {
	color: #6a6a6a;
	font-size: 0.75em;
}

@media(max-width: 1000px) {
	.area .theme{
		margin-left:10px;
		margin-right:10px;
	}
	.area .entry,
	.area footer,
	header .title + h2{
		padding-left:10px;
		padding-right:10px;
	}
}
@media(max-width: 720px) {
	.area .theme .specialty{
		padding-top:0.5em;

	}
	.area .theme .specialty .type{
		display:block;
		padding:0 0 0.5em 0;
	}
}
@media(max-width: 480px) {

}



/*********************************************************************************/
/* details                                                                    */
/*********************************************************************************/
details  {
	padding-left: 0.9em;
	padding-top: 1.0em;
	padding-bottom: 1.0em;
	padding-right: 0.9em;
	line-height: 2em;
	color: #6a6a6a;
	font-size: 1.5em;
	border-bottom: 1px solid #fff4ea;
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f9f9f9));
	background: -webkit-linear-gradient(top, #fff, #f9f9f9);
	background: linear-gradient(to bottom, #fff, #f9f9f9);
}

.submit-botum {
	width: 100%;
	height: 50px;
	font-size: 16px;
	color: #669966;
        border-radius: 10px;
	}
.submit-botum2 {
	width: 18px;
	height: 18px;
	font-size: 0.7em;
	margin-right:5px;
	}
.radio {
        display: block;
}
.radio:hover {
        background-color: #e2edd7;
}

/*
エリア
-------------------------------------------*/
.teltext{
	margin:25px 10px 50px 10px;
	background-color: rgba(255, 255, 255, 0.6);
	border:2px solid #dda0dd;
        border-radius: 15px;
}
.teltext h4{
	background-color: rgba(26, 155, 255, 0.1);
	font-size:38px;
	text-align:center;
        text-shadow: 0 -1px 2px #ff0033, -1px 0 2px #ff0033, 2px 2px 3px #6699cc;
  	color:#ff33cc;
	font-weight: bold;
	border-bottom-width: 2px;
	border-bottom-style: solid;
	border-bottom-color: #dda0dd;
	padding:20px 0;
        -webkit-border-top-right-radius: 15px;  
        -webkit-border-top-left-radius: 15px;  
        -moz-border-radius-topright: 15px;  
        -moz-border-radius-topleft: 15px; 
}
.teltext h5{
	text-align:center;
	font-size:42px;
	margin:0px;
	padding-top:30px;
	color:#FF0066;
}
.teltext h5 a {
	text-align:center;
	font-size:42px;
	margin:0px;
	color:#FF0066;
	text-decoration:none;
	background-color:#de543e;
	color:#fff;
        border-radius: 15px;
	padding:15px;
}
.teltext h5 a:hover{
	background-color:#ff6600;
	color:#fff;
        border-radius: 15px;
	padding:15px;
}
.teltext h6{
	text-align:center;
	margin:20px 0;
}
.text_area{
	font-size:14px;
	padding:0px 15px 15px 15px;
	color:#666;
	line-height:25px;
}
.text_area strong{
	color:#cc3399;
}
.text_area em{
	color:#cc3399;
}
.teltext a{
	font-size:14px;
}
.telkiyaku{
	background-color: rgba(26, 29, 255, 0.1);
	text-align:center;
 	width:100%;
	height:24px;
	padding-top:10px;
	margin-top:8px;
        -webkit-border-bottom-right-radius: 15px;  
        -webkit-border-bottom-left-radius: 15px;  
        -moz-border-radius-bottomright: 15px;  
        -moz-border-radius-bottomleft: 15px; 
}

.areaSec h3 {
	padding:20px 0px 20px 0px;
	font-size:30px;
	font-style:normal;
	text-align:center;
	color:#000000;
        background-color: rgba(0, 255, 0, 0.1);
}


.areaSec span{
	display:block;
}
.areaSec span.type{
	display:inline-block;
}
.areaSec span.code_1{
	display:inline-block;
	font-size:18px;
	color:#ff6600;
}
.areaSec span.code_2{
	display:inline-block;
	font-size:28px;
	color:#FF0066;
	margin:0 10px 0 10px;
}
.areaSec span.code_3{
	display:inline-block;
	font-size:24px;
	color:#000;
	font-weight: normal;
}

.areaSec em{
	font-size:140%;
	display:block;
	padding:0 0 0.5em 0;
	text-align:center;
}
.areaSec em a{
	font-size:140%;
	display:block;
	padding:0 0 0.5em 0;
	text-align:center;
	text-decoration:none;
}

#main .smartphone1 {
	font-size:12px;
}
#main .smartphone2 {
	font-size:12px;
}

.telimg{
	padding:5px;
 	max-width:480px;
	margin:0 auto;
	text-align: center;
}
.telimg img{
 	width:100%;
}






/* ----------------------------------------------------------------
	point
----------------------------------------------------------------- */
.point article{
	background-image:url(../img/point/h2_bg.jpg);
}

.point header .title:before,
.point header h2:before{
	background-image:url(../img/point/h2_title.png);
}
.point header .title:after,
.point header h2:after{
	background-image:url(../img/point/h2_after.png);
	background-size:auto 100%;
	background-position:90% 0;
}
.point .theme{
	padding:50px 0 0 0;
	margin:0 auto;
	max-width:1000px;
	position:relative;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}


.point .theme header{
	margin:0;
	background-color: rgba(224, 114, 92, 0.5);
	padding:0;
	width:100%;
	color:#333;
	line-height: 1;
	position:relative;
	border:2px solid #cc6633;
        border-radius: 15px;
}
.point .theme h3 span[itemprop="name"]{
	display:block;
	padding:20px 0px 20px 0px;
	color:#ff0033;
        text-shadow: 0 -1px 2px #990000, -1px 0 2px #990000, 2px 2px 3px #669966;
	text-align: center;
}
.point .theme .specialty{
	padding:0em 0px 20px 0px;
	text-align: center;
}
.point .theme ol{
	margin:1.5em 0.3em 0 0.3em;
	padding:0;
	list-style:none;
	border:2px solid #f5f5f5;
}
.point .theme li{
	margin:0;
	padding:0;
	text-align: center;
}
.point .theme li + li{
	border-top:2px solid #eee;
}
.point .theme li a{
	font-size:1.2em;
	padding:1.2em 10px 1.2em 10px;
	margin:0;
	line-height:1.4;
	display:block;
	text-decoration:none;
	color:#008080;
	position:relative;
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f9f9f9));
	background: -webkit-linear-gradient(top, #fff, #f9f9f9);
	background: linear-gradient(to bottom, #fff, #f9f9f9);
}
.point .theme li a:hover{
	background: -webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#fff));
	background: -webkit-linear-gradient(top, #f9f9f9, #fff);
	background: linear-gradient(to bottom, #f9f9f9, #fff);
}
.point .theme li a:after{
	content: "";
	display: block;
	background-position: -220px -35px;
	width: 8px;
	height: 17px;
	position: absolute;
	top: 50%;
	right: 20px;
	margin-top: -8px;
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}
.point .theme li a:hover:after{
	-webkit-transform: translateX(10px);
	transform: translateX(10px);
}



.point .target-link{
	background:#000 url(../img/repeatbg2.gif) repeat 0 0;
}
.point .target-link ul{
	max-width:1000px;
	margin:0 auto;
	overflow:hidden;
}
.point .target-link li{
	width:44%;
	padding:3em 3%;
	margin:0;
	float:left;
}
.point .target-link a{
	border:1px solid #666;
	background:#fff;
	border-radius:2.5em;
	line-height:1;
	height:1em;
	font-size:16px;
	font-weight:bold;
	text-decoration: none;
	color:#666;
	display:block;
	padding:1.25em 0 1.25em 0.8em;
	position:relative;
	-webkit-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.05);
	box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.05);
}
.point .target-link a:hover{
	background: #de543e url(../img/headerbg.png) repeat-x 0 0;
	color:#fff;
	border-color:#d31d00;
}
.point .target-link a.active,
.point .target-link a:hover.active{
	background: #787878 url(../img/tilebg.png) repeat-x 0 0;
	color:#fff;
	border-color:#787878;
}
.point .target-link a:after{
	content: "";
	display: block;
	background-position: -220px -35px;
	width: 8px;
	height: 17px;
	position: absolute;
	top: 50%;
	right: 2em;
	margin-top: -8px;
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}
.point .target-link a:hover:after{
	-webkit-transform: translateX(1em);
	transform: translateX(1em);
}
.point .target-link a.active:hover:after{
	-webkit-transform: translateX(0);
	transform: translateX(0);
}
.point .target-link a:hover:after,
.point .target-link a.active:after{
	background-position:-200px -45px;
}

.point h4{
	font-size:2.0em;
	font-weight:bold;
	text-decoration: none;
	color:#cc0099;
	padding-top:15px;
	margin: 0;
        text-shadow: 0 -1px 2px #990000, -1px 0 2px #990000, 2px 2px 3px #669966;
}

.point p.mpoint{
	font-size:1.5em;
	color:#ff0000;
	padding: 0;
	margin: 0;
}

.point p.img{
	margin:0.5em 0;

}

.point .contentBox h6{
	text-align:center;
	margin:10px 0;
}

.point span.code_1{
	display:inline-block;
	font-size:18px;
	color:#ff6600;
}
.point span.code_2{
	display:inline-block;
	font-size:28px;
	color:#000;
	margin:0 10px 0 10px;
}
.point span.code_3{
	display:inline-block;
	font-size:24px;
	color:#FF0066;
	font-weight: normal;
}


@media(max-width: 1000px) {
	.point .theme{
		margin-left:10px;
		margin-right:10px;
	}
	.point .entry,
	.point footer,
	header .title + h2{
		padding-left:10px;
		padding-right:10px;
	}
}
@media(max-width: 720px) {
	.point .theme .specialty{
		padding-top:0.5em;

	}
	.point .theme .specialty .type{
		display:block;
		padding:0 0 0.5em 0;
	}
}

@media(max-width: 480px) {
        .point .theme h3 span[itemprop="name"]{
		display:block;
		padding:20px 0px 20px 0px;
		color:#ff0033;
		-shadow: 0 -1px 2px #990000, -1px 0 2px #990000, 2px 2px 3px #669966;
		text-align: center;
		font-size:24px;
	}

}




/* ----------------------------------------------------------------
	ranking
----------------------------------------------------------------- */
.ranking article{
	background-image:url(../img/ranking/h2_bg.jpg);
}

.ranking header .title:before,
.ranking header h2:before{
	background-image:url(../img/ranking/h2_title.png);
}
.ranking header .title:after,
.ranking header h2:after{
	background-image:url(../img/ranking/h2_after.png);
	background-size:auto 100%;
	background-position:90% 0;
}
.ranking .theme{
	padding:50px 0 0 0;
	margin:0 auto;
	max-width:1000px;
	position:relative;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
.ranking .theme header{
	margin:0;
	background-color: rgba(224, 114, 92, 0.5);
	padding:0;
	width:100%;
	color:#333;
	line-height: 1;
	position:relative;
	border:2px solid #cc6633;
        border-radius: 15px;
}
.ranking .theme h3 span[itemprop="name"]{
	display:block;
	padding:20px 0px 20px 0px;
	color:#ff0033;
        text-shadow: 0 -1px 2px #990000, -1px 0 2px #990000, 2px 2px 3px #669966;
	text-align: center;
}
.ranking .theme .specialty{
	padding:0em 0px 20px 0px;
	text-align: center;
}
.ranking .theme ol{
	margin:1.5em 0.3em 0 0.3em;
	padding:0;
	list-style:none;
	border:2px solid #f5f5f5;
	counter-reset : item ;
}
.ranking .theme li{
	margin:0;
	padding:0;
	text-align: center;
}
.ranking .theme li + li{
	border-top:2px solid #eee;
}
.ranking .theme li a{
	font-size:1.2em;
	padding:1.2em 10px 1.2em 10px;
	margin:0;
	line-height:1.4;
	display:block;
	text-decoration:none;
	color:#008080;
	position:relative;
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f9f9f9));
	background: -webkit-linear-gradient(top, #fff, #f9f9f9);
	background: linear-gradient(to bottom, #fff, #f9f9f9);
}
.ranking .theme li a:hover{
	background: -webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#fff));
	background: -webkit-linear-gradient(top, #f9f9f9, #fff);
	background: linear-gradient(to bottom, #f9f9f9, #fff);
}
.ranking .theme li a:after{
	content: "";
	display: block;
	background-position: -220px -35px;
	width: 8px;
	height: 17px;
	position: absolute;
	top: 50%;
	right: 20px;
	margin-top: -8px;
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}
.ranking .theme li a:hover:after{
	-webkit-transform: translateX(10px);
	transform: translateX(10px);
}


.ranking section ol li a:before{
	content: counters(item, "") "";
	counter-increment: item ;
	position:absolute;
	top:1.0em;
	left:0;
	color:#fff;
	background:#ff3300;
	width:1.5em;
	height:1.5em;
	line-height:1.5;
	padding:1.0em;
	text-align:center;
}



.ranking .target-link{
	background:#000 url(../img/repeatbg2.gif) repeat 0 0;
}
.ranking .target-link ul{
	max-width:1000px;
	margin:0 auto;
	overflow:hidden;
}
.ranking .target-link li{
	width:44%;
	padding:3em 3%;
	margin:0;
	float:left;
}
.ranking .target-link a{
	border:1px solid #666;
	background:#fff;
	border-radius:2.5em;
	line-height:1;
	height:1em;
	font-size:16px;
	font-weight:bold;
	text-decoration: none;
	color:#666;
	display:block;
	padding:1.25em 0 1.25em 0.8em;
	position:relative;
	-webkit-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.05);
	box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.05);
}
.ranking .target-link a:hover{
	background: #de543e url(../img/headerbg.png) repeat-x 0 0;
	color:#fff;
	border-color:#d31d00;
}
.ranking .target-link a.active,
.ranking .target-link a:hover.active{
	background: #787878 url(../img/tilebg.png) repeat-x 0 0;
	color:#fff;
	border-color:#787878;
}
.ranking .target-link a:after{
	content: "";
	display: block;
	background-position: -220px -35px;
	width: 8px;
	height: 17px;
	position: absolute;
	top: 50%;
	right: 2em;
	margin-top: -8px;
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}
.ranking .target-link a:hover:after{
	-webkit-transform: translateX(1em);
	transform: translateX(1em);
}
.ranking .target-link a.active:hover:after{
	-webkit-transform: translateX(0);
	transform: translateX(0);
}
.ranking .target-link a:hover:after,
.ranking .target-link a.active:after{
	background-position:-200px -45px;
}

.ranking h4{
	font-size:2.0em;
	font-weight:bold;
	text-decoration: none;
	color:#cc0099;
	padding-top:15px;
	margin: 0;
        text-shadow: 0 -1px 2px #990000, -1px 0 2px #990000, 2px 2px 3px #669966;
}

.ranking p.mranking{
	font-size:1.5em;
	color:#ff0000;
	padding: 0;
	margin: 0;
}

.ranking p.img{
	margin:0.5em 0;

}

.ranking .contentBox h6{
	text-align:center;
	margin:10px 0;
}

.ranking span.code_1{
	display:inline-block;
	font-size:18px;
	color:#ff6600;
}
.ranking span.code_2{
	display:inline-block;
	font-size:28px;
	color:#FF0066;
	margin:0 10px 0 10px;
}
.ranking span.code_3{
	display:inline-block;
	font-size:24px;
	color:#000;
	font-weight: normal;
}


@media(max-width: 1000px) {
	.ranking .theme{
		margin-left:10px;
		margin-right:10px;
	}
	.ranking .entry,
	.ranking footer,
	header .title + h2{
		padding-left:10px;
		padding-right:10px;
	}
}
@media(max-width: 800px) {
        .ranking section ol li a:before{
        	content: counters(item, "") "";
        	counter-increment: item ;
        	position:absolute;
        	top:0.4em;
        	left:0;
        	color:#fff;
        	background:#ff3300;
        	width:1.0em;
        	height:1.0em;
        	line-height:1;
        	padding:0.4em;
        	text-align:center;
	}

}
@media(max-width: 720px) {
	.ranking .theme .specialty{
		padding-top:0.5em;

	}
	.ranking .theme .specialty .type{
		display:block;
		padding:0 0 0.5em 0;
	}

}

@media(max-width: 480px) {
        .ranking .theme h3 span[itemprop="name"]{
		display:block;
		padding:20px 0px 20px 0px;
		color:#ff0033;
		-shadow: 0 -1px 2px #990000, -1px 0 2px #990000, 2px 2px 3px #669966;
		text-align: center;
		font-size:24px;
	}

}


