@charset "UTF-8";
p, h1, h2, h3, ul, body, form {
	padding: 0px;
	margin: 0px;
}
img {
	border: none;
	vertical-align: bottom;
}
ul, ol {
	list-style-type: none;
}
main {
	display: block;
}
body {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	color: #777;
}
.inner {
	margin: 0 auto;
	width: 1000px;
}
h1 {
	margin-top: 30px;
	float: left;
}
a {
	color: #777;
	text-decoration: none;
}
header .inner {
	overflow: hidden;
	height: 190px;
	position: relative;
}
.sns {
	overflow: hidden;
	width: 120px;
	position: absolute;
	top: 30px;
	right: 0px;
}
.sns p {
	float: left;
}
.sns p:first-child {
	margin-right: 20px;
}
nav {
	position: absolute;
	right: 0px;
	bottom: 0px;
}
nav ul {
	width: 571px;
	overflow: hidden;
}
nav li {
	float: left;
	padding-right: 20px;
}
nav li:last-child {
	padding-right: 0px;
}
nav a {
	font-family: 'Playfair Display', serif;
	padding-top: 35px;
	padding-left: 0px;
	padding-bottom: 35px;
	display: block;
	font-size: 24px;
	font-style: italic;
}
nav a:hover {
	color: #333;
}
.pagetop {
	position: fixed;
	right: 50px;
	bottom: 50px;
}
footer {
	height: 50px;
	width: 100%;
	bottom: 0px;
	background-color: #fff;
}
footer .inner {
	padding-top: 15px;
}
footer .inner p {
	text-align: center;
}
main .contents {
	margin-bottom: 125px;
}
h2 {
	display: block;
	width: 138px;
	margin: 0 auto;
	height: 35px;
	padding-bottom: 20px;
}
h3 {
	font-size: x-large;
	color: #575757;
	font-weight: normal;
	padding-bottom: 10px;
}
form {
	border-collapse: collapse;
	border-radius: 10px;
	background-color: #dcdcdc;
	padding-left: 50px;
	padding-right: 50px;
	padding-top: 20px;
	padding-bottom: 20px;
	width: 90%;
}
form th {
	font-size: large;
	text-align: left;
	color: #575757;
	padding-left: 30px;
	padding-right: 100px;
	font-weight: normal;
	padding-bottom: 20px;
	padding-top: 10px;
}
.mistake {
	text-align: center;
}
#name, #email {
	padding: 10px;
	border: none;
	margin-bottom: 10px;
	-webkit-box-shadow: inset 3px 3px 5px rgba(119,119,119,0.75);
	box-shadow: inset 3px 3px 5px rgba(119,119,119,0.75);
	width: 663px;
}
#comment {
	padding: 10px;
	border: none;
	margin-bottom: 10px;
	-webkit-box-shadow: inset 3px 3px 5px rgba(119,119,119,0.75);
	box-shadow: inset 3px 3px 5px rgba(119,119,119,0.75);
	width: 663px;
}
.message {
	vertical-align: top;
}
.formsubmit {
	text-align: center;
	width: 100%;
}

@media (max-width:960px){
img {
	max-width: 100%;
	height: auto;
}
.inner {
	margin: 0 20px;
	width: auto;
}
header .inner {
	overflow: hidden;
	height: auto;
}
h1 {
	width: 42vw;
	margin-top: 20px;
}
.sns {
	width: 16vw;
	overflow: hidden;
	float: right;
	height: auto;
	position: relative;
	top: 20px;
}
.sns p {
	float: left;
	width: 7vw;
	height: auto;
}
.sns p:first-child {
	margin-right: 2vw;
}
nav ul {
	display: none;
}
#nav-toggle {
	width: 50px;
	height: 44px;
	position: absolute;
	top: 90px;
	right: 20px;
	cursor: pointer;
	display: block;
	z-index: 65004;
}
#nav-toggle span {
	height: 4px;
	background-color: #949494;
	position: absolute;
	right: 0px;
	width: 100%;
}
#nav-toggle, #nav-toggle span {
  display: inline-block;
  transition: all .5s;
  box-sizing: border-box;
}
#nav-toggle span:nth-child(1) {
	top: 0px;
}
#nav-toggle span:nth-child(2) {
	top: 20px;
}
#nav-toggle span:nth-child(3) {
	bottom: 0px;
}
#nav-toggle.open {
	-webkit-transform: rotate(360deg);
	transform: rotate(360deg);
}
#nav-toggle.open span:nth-of-type(1) {
  -webkit-transform: translateY(20px) rotate(-45deg);
  transform: translateY(20px) rotate(-45deg);
}
#nav-toggle.open span:nth-of-type(2) {
  -webkit-transform: translateY(0) rotate(45deg);
  transform: translateY(0) rotate(45deg);
}
#nav-toggle.open span:nth-of-type(3) {
  opacity: 0;
}
#accordion-nav ul {
	width: 100%;
	height: auto;
	z-index: 65003;
	padding-bottom: 400px;
	display: none;
}
#accordion-nav li  {
	padding-top: 27px;
	padding-bottom: 27px;
	border-bottom: 4px solid #949494;
	margin: 0 auto;
	width: 300px;
	display: block;
}
#accordion-nav a {
	font-family: 'Playfair Display', serif;
	text-align: center;
	display: block;
	font-size: x-large;
	font-style: italic;
}
#accordion-nav a:hover {
	color: #333;
}
.pagetop {
	position: fixed;
	right: 20px;
}
h3 {
	padding-left: 20px;
}
#contact th, #contact td {
	display: block;
}
form {
	padding: 20px;
	width: auto;
}
form th {
	padding: 10px 20px;
}
#name, #email {
	width: 86vw;
	margin-left: auto;
	margin-right: auto;
	display: block;
	height: auto;
}
#comment {
	width: 86vw;
	margin-right: auto;
	margin-left: auto;
	display: block;
	height: 190px;
}
.formsubmit {
	width: auto;
}
}

@media (max-width:750px){
.sns {
	width: 19vw;
}
.sns p {
    width: 8vw;
}
.sns p:first-child {
	margin-right: 3vw;
}
#nav-toggle {
	width: 35px;
	height: 31px;
	top: 70px;
}
#nav-toggle span {
	height: 3px;
}
#nav-toggle span:nth-child(2) {
	top: 14px;
}
#nav-toggle.open span:nth-of-type(1) {
  -webkit-transform: translateY(14px) rotate(-45deg);
  transform: translateY(14px) rotate(-45deg);
}
#accordion-nav li  {
	padding-top: 20px;
	padding-bottom: 20px;
	border-bottom: 3px solid #949494;
	width: 200px;
}
#accordion-nav a {
	font-size: large;
}
.pagetop {
	position: fixed;
	bottom: 40px;
	width: 16vw;
	height: auto;
}
footer {
	height: 40px;
}
footer .inner {
	padding-top: 10px;
}
footer p {
	font-size: small;
}
main .contents {
	margin-bottom: 60px;
}
h3 {
	font-size: large;
	padding-bottom: 10px;
	padding-left: 10px;
}
form th {
	font-size: medium;
	padding: 10px;
}
#name, #email {
	width: 72vw;
	margin-bottom: 0px;
}
#comment {
	width: 72vw;
	height: 155px;
}
}

@media (max-width:350px){
#nav-toggle {
	top: 60px;
}
#accordion-nav li  {
	border-bottom: 3px solid #949494;
	width: 200px;
	padding-top: 20px;
	padding-bottom: 20px;
}
#accordion-nav a {
	font-size: large;
}
.pagetop {
	position: fixed;
	bottom: 60px;
}
footer {
	height: 40px;
}
footer .inner p {
	font-size: x-small;
}
#name, #email {
	width: 66vw;
}
#comment {
	width: 66vw;
	height: 105px;
}
}

@media (min-width:961px){
nav ul {
	display: block !important;
}
#accordion-nav {
	display: none;
}
}
