
html, body{
	width: 100%;
	height: 100%;
	background-color: #dcdcdc;
	background-image: url(../images/hana3_1.png);
	background-repeat: space;
	margin: 0;
	padding: 0;
	position: relative;
	overflow-y: hidden;
}


h1{
	font-family: 'Sarpanch', sans-serif;
	font-size: 50px;
	text-shadow: 2px 2px 2px #fff;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 0;
	margin: auto;
	width: 600px;
	height: 50px;
	text-align: center
}

.sabu_t{
	font-size: 40px
}


button.top_b{
	display: none;
}


nav{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 0;
	margin: auto;
	width: 60%
}

nav ul{
	display: flex;
	flex-direction: row;
	justify-content: center;
	padding-top: 5%;
}

nav ul li{
	list-style: none;
	width: 40%;
	height: 30px;
	text-align: center;
	font-family: 'Sarpanch', sans-serif;
	text-shadow: 2px 2px 2px #fff;
	font-size: 18px;
	margin-left: 5%
}

nav ul li a{
	line-height: normal;
	display: block;
	text-decoration: none;
	height: 30px;
}

nav ul li:hover, nav ul li a:hover{
	text-decoration: none;
	/*font-size: 30px*/
	color: #e40a72
}

a:visited, a:link{
	color: black
}

.wrap{
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0
}

.wrap img{
	width: 100%;
	height: 100%;
	margin: 0;
	position: relative;
	animation-name: home_photo;
	animation-duration: 30s;
	animation-iteration-count: infinite;
	opacity: 0
}

.wrap img.home_p{
	display: block;
	margin: 0;
	animation-delay: 5s;
}

.wrap img.home_p1{
	position: absolute;
	top: 0;
	animation-delay: 10s;
}

.wrap img.home_p2{
	position: absolute;
	top: 0;
	animation-delay: 15s;
}

.wrap img.home_p3{
	position: absolute;
	top: 0;
	animation-delay: 20s;
}

.wrap img.home_p4{
	position: absolute;
	top: 0;
	animation-delay: 25s;
}

.wrap img.home_p5{
	position: absolute;
	top: 0;
	animation-delay: 30s;
}

@keyframes home_photo{
	0%{opacity: 0;}
	5%{opacity: 1;}
	10%{opacity: 1;}
	15%{opacity: 1;}
	20%{opacity: 1;}
	25%{opacity: 0;}
}


footer{
	position: relative;
	bottom: 10%;
	text-align: center;
	padding: 12px
}

small{
	color: #999;
	font-size: 14px
}


/* ===== WORKS ===== */

.html_works, .body_works{
	background-color: #dcdcdc;
	background-image: url(../images/hana3_1.png);
	background-repeat: space;
	overflow-y: auto;
	background-attachment: local;
	-webkit-overflow-scrolling: touch
}

nav.nav_works{
	position: static;
	display: block;
	width: 60%;
	height: 10%;
	margin-left: auto;
	margin-right: auto
}

.h1_works{
	position: static;
	display: block;
	font-family: 'Sarpanch', sans-serif;
	margin-top: 10%;
	margin-left: auto;
	margin-right: auto
}

.sabu_t{
	font-size: 40px
}

.article_works{
	position: static;
	margin-top: 10%;
	margin-left: auto;
	margin-right: auto
}

section{
/*	width: 75%;*/
	width: 1000px;
	height: 500px;
	display: table;
	margin-left: auto;
	margin-right: auto;
	background-color: white;
}


article figcaption{
	margin: 0 0 1% 18%;
	font-size: 20px;
}

section figure figcaption.comment{
	text-align: left;
	font-size: 14px;
	margin: 1% 0 2% 5%
}

article section > figure{
    display: table-cell;
    vertical-align: middle;
	text-align: center;
	
	/*jquery 画像キャプション表示のために追記*/
	position: relative
}

img.photo90{
    display: block;
    margin: 0 auto;
    max-height: 900px;
    max-width: 900px;
}

img.photo80{
    display: block;
    margin: 0 auto;
    max-height: 800px;
    max-width: 800px;
}

img.photo70{
    display: block;
    margin: 0 auto;
    max-height: 700px;
    max-width: 700px;
}

img.photo60{
    display: block;
    margin: 0 auto;
    max-height: 600px;
    max-width: 600px;
}

img.photo50{
    display: block;
    margin: 0 auto;
    max-height: 500px;
    max-width: 500px;
}

img.photo40{
    display: block;
    margin: 0 auto;
    max-height: 400px;
    max-width: 400px;
}

img.photo30{
    display: block;
    margin: 0 auto;
    max-height: 300px;
    max-width: 300px;
}

/* =====jQuery =====*/
figure div{
	position:absolute;
	display:none;
	width:25%;
	height:20%;
	padding:20px;
	background:rgba(230, 230, 230, 0.5);
	bottom:2%;
	right:1%;
	box-sizing:border-box;
	border-radius: 10px;
	text-align: left;
	font-size: 14px;
	line-height: 130%
}

figure div p{
	position:relative;
	top:10px;
}

figure p span{
	color: #ff1493
}


/* =====jQuery ここまで=====*/

.footer_works{
	position: relative;
	text-align: center;
	padding: 12px
}

.small_works{
	color: #999;
	font-size: 14px
}

div.backtotop img{
	position: fixed;
	right: 3%;
	bottom: 20%;
	animation-name: backtotop;
	animation-duration: 10s;
	animation-iteration-count: infinite
}

div.backtotop p.backto{
	position: fixed;
	right: 4.3%;
	bottom: 24%;
	text-align: center;
	font-size: 12px
}

@keyframes backtotop{
	0%{transform: rotate(0deg)}
	50%{transform: rotate(180deg)}
	100%{transform: rotate(0deg)}
}

div.backtopack img{
	width: 70px;
	height: 70px;
	position: fixed;
	right: 2%;
	bottom: 10%;
	z-index: 10;
	animation-name: backtopack;
	animation-duration: 10s;
	animation-iteration-count: infinite
}

div.backtopack p.backto1{
	position: fixed;
	right: 2.5%;
	bottom: 14%;
	text-align: center;
	font-size: 12px;
	z-index: 20
}

@keyframes backtopack{
	0%{transform: rotate(0deg)}
	50%{transform: rotate(90deg)}
	100%{transform: rotate(0deg)}
}

div.backtologo img{
	width: 70px;
	height: 70px;
	position: fixed;
	right: 5%;
	bottom: 2%;
	z-index: 10;
	animation-name: backtologo;
	animation-duration: 10s;
	animation-iteration-count: infinite
}

div.backtologo p.backto2{
	position: fixed;
	right: 6%;
	bottom: 6%;
	text-align: center;
	font-size: 12px;
	z-index: 20
}

@keyframes backtologo{
	0%{transform: rotate(0deg)}
	50%{transform: rotate(180deg)}
	100%{transform: rotate(0deg)}
}

/*===== ここまで =====*/

/* ===== PROFILE ===== */

.html_profile, .body_profile{
	width: 100%;
	height: 100%;
	background-color: #fff;
	background-image: url(../images/home/ki.jpg);
	background-repeat: no-repeat;
	margin: 0;
	padding: 0;
	background-size: 40% 100%;
	background-position: right;
	background-attachment: fixed;
	overflow-y: auto;

}

nav.nav_profile{
	position: static;
	display: block;
	width: 60%;
	height: 10%;
	margin-left: auto;
	margin-right: auto
}


.h1_profile{
	position: static;
	display: block;
	font-family: 'Sarpanch', sans-serif;
	margin-top: 10%;
	margin-left: auto;
	margin-right: auto
}	

.article_profile{
	position: static;
	display: block;
	margin-left: 20%;
	margin-top: 10%;
	line-height: initial;s
}

h2{
	font-size: 20px
}

ul.env{
	list-style-position: inside
}

footer{
	position: relative;
	top: 5%;
	text-align: center;
	padding: 12px;
}

small{
	color: #999;
	font-size: 14px;
}

/*===== ここまで =====*/

/* ===== CONTACT ===== */


html.contact_html, body.contact_html{
	width: 100%;
	height: 100%;
	background-image: url(../images/home/fish.jpg);
	background-repeat: no-repeat;
	margin: 0;
	background-size: cover;
	background-position: center center;
	background-attachment: fixed;
	overflow-y: auto;
	overflow-x: hidden;
}

nav.nav_contact{
	position: static;
	display: block;
	width: 60%;
	height: 10%;
	margin-left: auto;
	margin-right: auto
}

.h1_contact{
	position: static;
	display: block;
	font-family: 'Sarpanch', sans-serif;
	margin-top: 10%;
	margin-left: auto;
	margin-right: auto
}

dl.clearfix:after{
	content: "";
	display: block;
	clear: both
}

.contact_article{
	position: static;
	display: block;
	margin-top: 10%
}

article form.con_form{
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	color: #e0e0e0;
	padding-left: 8%
}

form.con_form dl{
	width: 75%;
	margin-left: auto;
	margin-right: auto;
}

form.con_form dl dt{
	float: left;
	margin-top: 1%
}

form.con_form dl dd{
	padding: 0 0 1% 20%;
}

input{
	width: 50%;
	height: 24px;
	border-radius: 5px
}

textarea{
	width: 50%;
	height: 100px;
	border-radius: 5px
}

.submitbt{
	text-align: center;
	padding-top: 20px;
	padding-right: 15%
}

.submitbt input{
	width: 100px;
	height: 40px;
	background-color: #696969;
	color: #ffffff;
	-webkit-appearance: none
}

/*===== ここまで =====*/

/* =====タブレット用の設定 HOME =====*/

@media only screen and (min-width: 600px) and (max-width: 899px){


}
/* =====タブレット用の設定 WORKS =====*/

@media only screen and (min-width: 600px) and (max-width: 899px){


	.h1_works{
		font-size: 46px;
	}

	article section{
		width: 720px;
		height: 300px;
	}
	
	article figcaption{
		margin: 0 0 1% 15%;
		font-size: 16px;
	}
	
	section figure figcaption.comment{
		font-size: 12px;
	}

	img.photo80{
	    display: block;
	    margin: 0 auto;
	    max-height: 700px;
	    max-width: 700px;
	}

	img.photo70{
	    display: block;
	    margin: 0 auto;
	    max-height: 600px;
	    max-width: 600px;
	}

	img.photo60{
	    display: block;
	    margin: 0 auto;
	    max-height: 500px;
	    max-width: 500px;
	}

	img.photo50{
	    display: block;
	    margin: 0 auto;
	    max-height: 400px;
	    max-width: 400px;
	}

	img.photo40{
	    display: block;
	    margin: 0 auto;
	    max-height: 300px;
	    max-width: 300px;
	}

	img.photo30{
	    display: block;
	    margin: 0 auto;
	    max-height: 200px;
	    max-width: 200px;
	}

div.backtotop img{
	right: 3%;
	bottom: 20%;
	width: 80px;
	height: 80px
}

div.backtotop p.backto{
	right: 4%;
	bottom: 23%;
}

div.backtopack img{
	width: 60px;
	height: 60px;
	right: 2%;
	bottom: 10%;
	z-index: 10;
}

div.backtopack p.backto1{
	right: 2%;
	bottom: 14%;
	z-index: 20
}

div.backtologo img{
	width: 60px;
	height: 60px;
	right: 5%;
	bottom: 2%;
	z-index: 10
}

div.backtologo p.backto2{
	right: 6%;
	bottom: 6%;
	text-align: center;
	z-index: 20
}


/* =====jQuery =====*/
figure div{
	position:absolute;
	display:none;
	width:25%;
	height:20%;
	padding:20px;
	background:rgba(230, 230, 230, 0.5);
	bottom:2%;
	right:1%;
	box-sizing:border-box;
	border-radius: 10px;
	text-align: left;
	font-size: 8px;
	line-height: 140%;
	padding: 0 2px 0 2px
}

figure div p{
	position:relative;
	top:10px;
}
/* =====jQuery ここまで=====*/
	
}

/* =====タブレット用の設定 PROFILE =====*/

@media only screen and (min-width: 600px) and (max-width: 899px){

	.h1_works{
		font-size: 46px;
		top: -50%;
	}

	article section{
		height: 300px;
	}
	
	article figcaption{
		font-size: 16px;
	}
	
	section figure figcaption.comment{
		font-size: 12px;
	}

}

/* =====タブレット用の設定 CONTACT =====*/

@media only screen and (min-width: 600px) and (max-width: 899px){

	form.con_form dl{
		width: 75%;
	}
	
	input{
		width: 70%;
	}
	
	textarea{
		width: 70%;
	}

	form.con_form dl dd{
		padding: 0 0 1% 30%;
	}

}

/* =====スマホ用の設定 HOME =====*/

@media only screen and (max-width: 599px){	

	h1{
		font-size: 30px;
		width: 200px;
	}

	.sabu_t{
		font-size: 10px	
	}

	nav ul li{
		font-size: 16px
	}

/*	
	nav ul li:hover, nav ul li a:hover{
		font-size: 20px
	}
*/
	
	small{
		font-size: 8px
	}


	nav{
		position: fixed;
		top: 0;
		bottom: 0;
		/*width: 200px;*/
		margin: 13% 0 0 100%;
		z-index: 1000;
	}

	nav ul{
		display: flex;
		flex-direction: column;
		background-color: rgba(220, 220, 220, 0.9);
		height: 90%;
		padding: 0;
		margin-top: 5%;
	}

	
	nav ul li{
		font-size: 30px;
		/*height: 90px;:*/
		height: 70px;
		margin: 0;
		width: 100%;
		text-align: center;
	}
	
	
	button.top_b{
		display: block;
		position: absolute;
		z-index: 1000;
	}
	
	
	img.bu{
		width: 45px;
	
	}
	
	
	button.top_b{
		display: block;
		height: 36px;
		margin: 2% 0 0 80%;
		background-color: rgba(0,0,0,0);
		border-color: #ffffff;
		border-style: none
	}


}


/* =====スマホ用の設定 WORKS =====*/

@media only screen and (max-width: 599px){

	.sabu_t{
		font-size: 10px
	}


	nav.nav_works{
		position: fixed;
		top: 0;
		bottom: 0;
		/*width: 200px;*/
		margin: 13% 0 0 100%;
		z-index: 1000;
	}


	nav.nav_works ul{
		display: flex;
		flex-direction: column;
		background-color: rgba(220, 220, 220, 0.9);
		/*height: auto;*/
		height: 760%;
		padding: 0;
		margin-top: 20%;
	}


	nav.nav_works ul li{
		font-size: 30px;
		/*height: 90px;:*/
		height: 70px;
		margin: 0;
		width: 100%;
		text-align: center;
	}
	
	
	button.top_b{
		display: block;
		position: absolute;
		z-index: 1000;
	}
	


/*
	nav ul li.li_woks{
		font-size: 16px;
		margin-left: 1%
	}
*/

/*
	nav ul li.li_works:hover, nav ul li a.a_works:hover{
		font-size: 20px
	}
*/
	
	.small_works{
		font-size: 8px
	}
	
	.article_works{
		top: 30%;
	}

	article section{
		width: 75%;
		height: 140px;
	}
	
	article figcaption{
		font-size: 12px;
	}

	section figure figcaption.comment{
		font-size: 10px;
	}

	img.photo80{
	    display: block;
	    margin: 0 auto;
	    max-height: 80%;
	    max-width: 80%;
	}

	img.photo70{
	    display: block;
	    margin: 0 auto;
	    max-height: 70%;
	    max-width: 70%;
	}

	img.photo60{
	    display: block;
	    margin: 0 auto;
	    max-height: 60%;
	    max-width: 60%;
	}

	img.photo50{
	    display: block;
	    margin: 0 auto;
	    max-height: 50%;
	    max-width: 50%;
	}

	img.photo40{
	    display: block;
	    margin: 0 auto;
	    max-height: 40%;
	    max-width: 40%;
	}

	img.photo30{
	    display: block;
	    margin: 0 auto;
	    max-height: 30%;
	    max-width: 30%;
	}

div.backtotop img{
	right: 3%;
	bottom: 15%;
	width: 50px;
	height: 50px
}

div.backtotop p.backto{
	right: 4.5%;
	bottom: 18%;
	font-size: 8px
}

div.backtopack img{
	width: 40px;
	height: 40px;
	right: 2%;
	bottom: 8%;
	z-index: 10;
}

div.backtopack p.backto1{
	right: 2%;
	bottom: 11%;
	font-size: 8px;
	z-index: 20
}

div.backtologo img{
	width: 40px;
	height: 40px;
	right: 5%;
	bottom: 1%;
	z-index: 10
}

div.backtologo p.backto2{
	right: 7%;
	bottom: 5%;
	text-align: center;
	font-size: 8px;
	z-index: 20
}

	
	
/* =====jQuery =====*/
figure div{
	position:absolute;
	display:none;
	width:98%;
	height:30%;
	padding:20px;
	background:rgba(230, 230, 230, 0.5);
	bottom:2%;
	right:1%;
	box-sizing:border-box;
	border-radius: 10px;
	text-align: left;
	font-size: 8px;
	line-height: 140%;
	padding: 0 2px 0 2px
}

figure div p{
	position:relative;
	top:10px;
}
/* =====jQuery ここまで=====*/

}

/* ===== スマホ用の設定 PROFILE =====*/

@media only screen and (max-width: 599px){

	.article_profile{
		margin-left: 10%;
		margin-top: 15%
	}


	.h1_profile{
		margin-top: 20%;
	}	

	h2{
		font-size: 16px
	}
	
	h3{
		font-size: 14px
	}
	
	article p, ul li{
		font-size: 12px
	}


	nav.nav_profile{
		position: fixed;
		top: 0;
		bottom: 0;
		/*width: 200px;*/
		margin: 13% 0 0 100%;
		z-index: 1000;
	}


	nav.nav_profile ul{
		display: flex;
		flex-direction: column;
		background-color: rgba(220, 220, 220, 0.9);
		/*height: auto;*/
		height: 760%;
		padding: 0;
		margin-top: 20%;
	}


	nav.nav_profile ul li{
		font-size: 30px;
		/*height: 90px;:*/
		height: 70px;
		margin: 0;
		width: 100%;
		text-align: center;
	}
	
	
	button.top_b{
		display: block;
		position: absolute;
		z-index: 1000;
	}
	


}

/* =====スマホ用の設定 CONTACT =====*/

@media only screen and (max-width: 599px){
	
	.contact_article{
		margin-top: 25%
	}

	form.con_form dl{
		width: 100%;
	}

	form.con_form dl dt{
		font-size: 12px;
		float: none
	}
	
	form.con_form dl dd{
		padding: 2% 0 1% 0;
	}
	
	input{
		width: 80%;
	}

	textarea{
		width: 80%;
	}
	
	.submitbt{
		margin-right: 5%
	}

	nav.nav_contact{
		position: fixed;
		top: 0;
		bottom: 0;
		/*width: 200px;*/
		margin: 13% 0 0 100%;
		z-index: 1000;
	}


	nav.nav_contact ul{
		display: flex;
		flex-direction: column;
		background-color: rgba(220, 220, 220, 0.9);
		/*height: auto;*/
		height: 760%;
		padding: 0;
		margin-top: 20%;
	}


	nav.nav_contact ul li{
		font-size: 30px;
		/*height: 90px;:*/
		height: 70px;
		margin: 0;
		width: 100%;
		text-align: center;
	}
	
	
	button.top_b{
		display: block;
		position: absolute;
		z-index: 1000;
	}
	


}
