/* Smartphones (portrait and landscape) ----------- */
/* @media only screen and (min-device-width : 320px) and (max-device-width : 480px) {
Styles
	header h1{
		width: 240px;
		margin-top: 10px;
		margin-left: 3px;
		font-size: 0.8rem;
		letter-spacing: 3px;
	}
	#main-nav {
		display: none;
		position: relative;
		flex-direction: column;
		margin:0;
	}
	.navIcon {
		display: block;
		position: absolute;
		top: 20px;
		right: 45px;
	}
	#top-contents {
		flex-direction: column;
		-webkit-flex-direction;column;
		display:-webkit-box;
		display:-moz-box;
		display:box;
		-moz-box-orient:vertical;
		-webkit-box-orient:vertical;
	}
	h2 {
		font-size: 1rem;
	}
	.gallery {
		flex-direction: column;
		-webkit-flex-direction: column;
		display:-webkit-box;
		display:-moz-box;
		display:box;
		-moz-box-orient:vertical;
		-webkit-box-orient:vertical;
	}
}
  */
/* Smartphones (landscape) ----------- */
@media only screen and (min-width : 321px) {
  /* Styles */
}
 
/* Smartphones (portrait) ----------- */
@media only screen and (max-width : 320px) {
  /* Styles */
}
 
/* iPads (portrait and landscape) ----------- */
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) {
  /* Styles */
}
 
/* iPads (landscape) ----------- */
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : landscape) {
  /* Styles */
}
 
/* iPads (portrait) ----------- */
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : portrait) {
  /* Styles */
}
 
/* Desktops and laptops ----------- */
@media only screen and (min-width : 1224px) {
  /* Styles */
}
 
/* Large screens ----------- */
@media only screen and (min-width : 1824px) {
  /* Styles */
}
 
/* iPhone 4 ----------- */
@media only screen and (-webkit-min-device-pixel-ratio:1.5), only screen and (min-device-pixel-ratio:1.5) {
  /* Styles */
}

/* Desktops */
/* @media only screen and (min-width : 321px) and (max-width : 960px) {
	body,header,footer {
		width: 960px;
	}
} */


@media only screen and (max-width:1200px) {

	#main-contents {
		width: 80%;
	}

}
@media only screen and (max-width:960px) {

	#top-contents h2 {
		font-size: 1rem;
		line-height: 1.4;
	}

	#main-nav {
		padding: 0px;
		margin: 20px 0 0 0;
	}

	#sub-nav {
		width: 90%;
	}

	header h1 {
		letter-spacing: 2px;
		font-size: 1.1rem;
		margin-top: 20px;
	}
	
	#main-contents h2{
		font-size: 1.25rem;
	}

	#main-contents dl, #main-contents p, #main-contents ul {
		font-size: 0.9rem;
	}
	
	.sasie::before {
		position: absolute;
		top: 380px;
		left: 130px;
	}

	.sasiebun {
		flex-direction: column;
		-webkit-flex-direction: column;
	}

	.bunItem {
		flex-basis: 300px;
		-webkit-flex-basis: 300px;
		margin: 0px;
	}
	
	#location iframe {
		width: 300px;
		height: 300px;
	}

}

@media only screen and (max-width:600px) {
	header nav {
		width: 50px;
	}
	
	#top-contents {
		flex-direction: column;
		-webkit-flex-direction: column;
	}
	
	#top-contents h2 {
		line-height: 2.7;
	}
	
	#top-contents p {
		font-size: 0.9rem;
	}
	
	.svg-icon {
		width: 5rem;
		height: 5rem;
	}
	
	.navIcon {
		display: block;
		position: absolute;
		top: 20px;
		right: 10%;
	}

	#main-nav {
		display: none;
	}
	
	#main-nav a {
		width: 71px;
	}

	header h1 {
		font-size: 0.95rem;
	}

	#sub-nav a {
		font-size: 0.7rem;
	}

	#main-contents {
		width: 90%;
	}

	#member dl {
		font-size: 0.8rem;
	}

	#member dt {
		width: 20rem;
		padding-left: 1rem;
	}

	#member dd {
		width: 20rem;
		margin-left: 0;
		padding-left: 1.5em;
	}

	#location dd {
		margin-left: 0;
		padding-left: 0;
	}
	
	#location iframe {
		margin-left: 0;
	}

}

@media only screen and (max-width:480px) {
	.navIcon {
		right: 25px;
	}

	#cover-contents {
		font-size: 0.7rem;
		width: 100%;
		height: 88%;
		min-height: 88%;
	}
	
	#top-contents {
		flex-direction: column;
		-webkit-flex-direction;column;
		display:-webkit-box;
		display:-moz-box;
		display:box;
		-moz-box-orient:vertical;
		-webkit-box-orient:vertical;
	}

	#top-contents section{
		padding: 5px 0;
	}
	
	.gallery {
		flex-direction: column;
		-webkit-flex-direction: column;
		display:-webkit-box;
		display:-moz-box;
		display:box;
		-moz-box-orient:vertical;
		-webkit-box-orient:vertical;
	}
	.gallery p {
		text-align: center;
	}

	#sub-nav ul {
		flex-flow: wrap;
		-webkit-flex-flow: wrap;
		width: 90%;
	}

	#sub-nav li {
		width: 80px;
	}

	header {
		height: 60px;
	}
	
	header::before {
		border-right-width: 10px;
		border-left-width: 10px;
	}

	header::after {
		border-right-width: 10px;
		border-left-width: 10px;
	}
	
	header h1 {
		font-size: 0.8rem;
		letter-spacing: 2px;
	}

	#main-contents h2 {
		font-size: 1rem;
		padding-top: 80px;
		margin-top: -50px;
		height: 3rem;
	}

	#main-contents h2::before {
		top: -15px;
	}
	
	#main-contents dl, #main-contents p, #main-contents ul {
		font-size: 0.8rem;
		line-height: 1.7;
		margin-left: 0.8rem;
	}
	
	#member dl {
		font-size: 0.65rem;
	}

	#member dt {
		width: 12rem;
		padding-left: 0.5rem;
	}

	#member dd {
		width: 10.5rem;
		margin-left: 0;
		padding: 0 1rem;
	}

	#location iframe {
		width: 260px;
		height: 300px;
		margin-right: 0px;
		margin-left: 0px;
	}

	figure.sasie {
		margin: 0;
	}
	
	.sasie::before {
		display: none;
	}
	
	.sasie img {
		width: 280px;
	}
	
	footer {
		height: 3rem;
	}
	
	footer p {
		font-size: 0.6rem;
	}