html, body {
    height: 100%;
    margin: 0;
	padding: 0;
}

body {
    color: #333;
    margin: 0;
    padding: 0;
	height:100%;
	font-family: "myriad-pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	font-weight: 400;
	font-style: normal;
	letter-spacing: .05rem;
}

#wrap {
    margin: 0;
    padding: 0;
	position:relative;
}

.caption{
	font-size:9px;
	position:absolute;
	bottom:-20px;
	right:0px;
	color:#aaa;
	z-index:1;
	line-height: 18px;
	letter-spacing: .0rem;
}

.clearfix:after {  
  content: ".";   
  display: block;   
  height: 0px;   
  clear: both;   
  visibility: hidden;  
}
  
.clearfix { display: inline-table; }  
  
/* Hides from IE-mac \*/  
* html .clearfix { height: 1%; }  
.clearfix { display: block; }  
/* End hide from IE-mac */ 

a{
	text-decoration:none;
}

a:hover{
	filter: alpha(opacity=50);
	-moz-opacity:0.5;
	opacity:0.5;
}


ul {
	list-style: none;
	margin:0;
	padding:0;
}

.content{
	padding:0 40px;
	min-height:calc(100vh - 160px);
	margin:100px 0px 0px;
}
#legal{
	margin-bottom:50px;
}
.slides li{
	aspect-ratio: 2000 / 2850;
	display:grid!important;
	align-items: end;
}
.slides img{
	width:100%;
}

h2{
	margin:20px 0;
	padding:0;
	font-size:22px;
	line-height:22px;
}

@media print, screen and (min-width: 601px) {
	body{
		margin:0 auto;
		max-width:440px;
	}
	body#top{
		aspect-ratio: 1000 / 3200;
	}
	br.sp{
		display:none;
	}
}

#footer{
	margin:0px 40px 20px;
	padding:0px;
	width:calc(100% - 80px);
	height:40px;
}
#footer .copy{
	text-align:left;
	margin:0px;
	padding:0px 0px 20px;
	font-size:13px;
	line-height:40px;
	display:block;
}

a{
	color:#000;
}

p{
	margin:0;
	padding:0;
	display:block;
}

p.small{
	line-height:18px!important;
	font-size: 10px;
	text-align:left;
}
dt{
	border-top: 1px #999 solid;
	float:left;
	padding:7px 10px 7px 0;
	margin:0px;
	clear: left;
}
dd{
	border-top: 1px #999 solid;
	float:left;
	padding:7px 0;
	margin:0px;
}
dt.en,
dd.en{
	border-top: none;
	padding-top:0;
	margin-top:-5px;
}

a.link {
	font-size:14px;
	line-height:20px;
	color:#666;
	display:block;
	clear:left;
	margin-top:10px;
}

/* PC（最小1001px） */
@media print, screen and (min-width: 601px) {
	.smp{
	 display:none;
	}
}

/* 埋め込みgooglemap */
div.googlemap{
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	margin-bottom:26px;
}
 
div.googlemap iframe,
div.googlemap object,
div.googlemap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* スマートフォン（最大1000px） */
@media only screen and (max-width: 440px) {
	.pc{
	 display:none;
	}
	p a{
	word-break: break-all;
	}
}
#profile img{
	width:100%;
	margin-bottom:30px;
}
b.en{
	font-size:17px;
}
b{
	font-size:15px;
	line-height:20px;
	clear:both;
	margin:20px 0 5px;
	padding:0;
	display:inline-block;
}
p{
	font-size:13px;
	line-height:26px;
	width:100%;
	display:block;
	margin:0 0 26px;
	padding:0;
	text-align: justify;
}
dl{
	font-size:13px;
	width:100%;
	line-height:26px;
	margin:0 0 50px;
	display:grid;
	grid-template-columns: 30% 1fr;
}
#legal h3 span{
	font-size:14px;
}
#legal h3{
	font-size:16px;
	line-height:28px;
}
h3{
	font-size:22px;
	line-height:24px;
	margin:25px 0px 25px 0;
}
h4.sub{
	font-size:13px;
	line-height:26px;
	margin:26px 0;
	display:inline-block;
}

.flex-direction-nav{
	position:absolute;
	height: 40px;
	width:100%;
	left: 0px;
	top: 0px;
	z-index:-1;
}
.flex-direction-nav li{
	position:absolute;
	height: 40px;
	width:18px;
}
.flex-direction-nav li:first-child{
	left: -20px;
}
.flex-direction-nav li:last-child{
	right: -20px;
}

.flex-direction-nav .flex-prev {
	background-image:url(../robots/images/slide_prev.png);
}
.flex-direction-nav .flex-next {
	background-image:url(../robots/images/slide_next.png);
}
.flex-direction-nav a {
	display: block;
    width: 18px;
    height: 18px;
    margin: 0;
    position: absolute;
    top: 2px;
    z-index: 10;
	overflow: hidden;
	text-indent:100%;
	background-size:contain;
    opacity: 1;
	cursor: pointer;
	opacity:0.3;
}
