@charset "utf-8";
.shutter01,.shutter02{
  position: fixed;
  top: 0;
  left: 0;
  margin: 0 auto;
  width: 100%;
  height: 100vh;
}
.shutter01{
	z-index: 99;
	background: #c4b6ad;
	animation-duration: 1s;
	animation-delay: 1.8s;
	animation-fill-mode: forwards;
	animation-name: top-op;
}
.shutter02{
	z-index: 100;
	background: #b5a396;
	animation-duration: 0.7s;
	animation-delay: 0.6s;
	animation-fill-mode: forwards;
	animation-name: top-op2;
}
.shutter-open {
	width: 100%;
	height: 100vh;
	position: relative;
}
.shutter-open p {
 font-family: 'Noto Sans JP', sans-serif;
 font-weight: normal;
 font-size: 2em;
 position: absolute;
 top: 50%;
 left: 70px;
 color: #f1e5dd;
}
.shutter-open span {
	content: "";
	display: block;
	background-color: #f1e5dd;
	position: absolute;
	top: calc(50% + 1em);
	left: 200px;
	width: calc(100% - 200px);
	height: 1px;
}



 
@keyframes top-op{
0% {
  width: 100%;
  left:0;
}
50% {
  width: 100%;
		opacity: 1;
}
100% {
  width: 0%;
  left: 100%;
	opacity: 0;
}
}
@keyframes top-op2{
0% {
  width: 100%;
  left:0;
}
50% {
  width: 100%;
}
100% {
  width: 0%;
  left: 100%;
}
}
body, main, h1, h2, h3, h4 , h5  , p   , ul , li{
    padding: 0px;
    margin: 0px;
}

body {
    font-family: 'Noto Sans JP', sans-serif;
    color: #584e4e;
    background-color: #f1e5dd;
    font-size: 16px;
    line-height: 2em;
    letter-spacing: 0.08em;
}
h2 {
    font-size: 2em;
}
h3 {
    font-size: 1.5em;
    font-weight: bold;
}
h3:after {
 display: block;
 content: "";
 width: auto;
 height: 2px;
 background-color: #cba671;
 margin-top: 3px;
}
h4 {
 font-weight: bold;
 margin-left: 20px;
 margin-bottom: 30px;
 font-family: 'Shippori Mincho B1', serif;
}
h4:before {
 content: "ー";
 font-family: 'Noto Sans JP', sans-serif;
 font-weight: normal;
}
h4:after {
 content: "ー";
 font-family: 'Noto Sans JP', sans-serif;
 font-weight: normal;
}
h5 {
	font-size: 1em;
}

a {
    text-decoration: none;
}
img {
    border-style: none;
    vertical-align: bottom;
}
section {
	padding: 70px 0px;
}
.top {
	width: 100%;
	height: 750px;
	position: relative;
}

header {

}
h1  {
	z-index: 10;
	position: absolute;
	top: 30px;
	left: 30px;
}
nav {
	float: right;
	top: 30px;
	right: 30px;
	position: fixed;
	z-index: 10;
}
nav a {
	color: #282828;
}
nav a:hover {
}





nav ul {
	display: flex;
	justify-content: space-between;
}
nav li {
	list-style-type: none;
	padding-top: 10px;
	padding-bottom: 10px;
	position: relative;
	margin-left: 40px;
}
nav li::after {
	content: "";
	transition: 0.3s;
	width: 0px;
	height: 3px;
	position: absolute;
	background-color: #cba671;
	bottom: 5px;
	right: 0px;
}
nav li:hover::after {
    width: 100%;
}



.top-text {
	mix-blend-mode: difference;
	color: #FFFFFF;
	/* [disabled]font-weight: 400; */
	position: absolute;
	z-index: 1;
	left: 30px;
	bottom: 80px;
}
.top-text p {
 margin-top: 30px;
 font-size: 1.2em;
 margin-left: 50px;
}
.top-slide-layout {
	margin-left: auto;
	width: 950px;
	margin-right: 0px;
	padding-top: 218px;
}
.top-slide {


}



.top-slide p {
	float: left;
}
.top .line {
	content: attr(x);
	display: block;
	background-color: rgba(107,96,96,1.00);
	width: 2px;
	height: 200px;
	position: absolute;
	left: 60px;
	bottom: -150px;
	animation: sdl 4s cubic-bezier(1, 0, 0, 1) infinite;
	z-index: 5;
}
@keyframes sdl {
  0% {
    transform: scale(2, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
	background-color: #cba671;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}
.heading  {
    display: flex;
    align-items: baseline;
}
.inner  {
	margin: 0px auto;
	width: 1000px;
}
.about {
	background-color: #fff;
}
.about p+p {
    text-align: right;
    margin-top: 20px;
}
.about .heading+ p {
 margin-left: 20px;
}
.about a {
	color: #cba671;
}
.about a:hover {
 color: #998466;
}
.posts a {
 color: #cba671;
}
.posts a:hover {
 color: #998466;
}


.posts .box-area {
    display: flex;
    justify-content: space-between;
    width: 1000px;
}
.posts .boxes {
	display: block;
	align-content: space-between;
}

.posts .new-box {
	width: 650px;
}
.posts .new-box p:nth-child(2) {
	margin-top: 20px;
	font-size: 1.1em;

}


.posts .box {
	width: 320px;
	margin-bottom: 30px;
}
.posts .box p:nth-child(2) {
	margin-top: 10px;
	font-size: 1.1em;

}
.posts .box p+p {
    font-size: 0.9em;
    line-height: 1.5em;
}
.posts .box-area+p {
    text-align: right;
    margin-top: 20px;
}
.youtbe {
	padding: 70px 0px;
	position: relative;
	width: calc(50VW + 500px);
}
.youtbe .text  {
 position: absolute;
 left: 750px;
 top: 70px;
}
.youtbe .heading+p {
 margin-left: 20px;
}
.youtbe .text p+p {
 margin: 30px;
 text-align: center;
}
.yt-slide p {
	float: left;
}
.sitemap {
	background-color: #95887f;
	position: relative;
	margin-top: -150px;
}
.sitemap .inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 60%;
}
.sitemap .sitemap-icon {
	display: flex;
	width: 150px;
	justify-content: space-between;
}
.sitemap .sitemap-text  {
	margin: 0px;
	padding: 20px 0px;
	border-bottom: 1px solid #fff;
}

.sitemap a {
	color: #fff;
}
.sitemap a:hover {
	color: #cba671;
}


footer {
 background-color: #584e4e;
 text-align: center;
 padding: 40px;
 color: #F1E5DD;
 font-size: 0.9em;
}
.sitemap .btn-pagetop {
	position: fixed;
	bottom: 30px;
	right: 30px;
}


@media screen and (max-width:1150px){
img {
    height: auto;
    max-width: 100%;
    z-index: 1;
}
.inner {
    height: auto;
    max-width: calc(100% - 40px);
    min-height: 0px;
}
.top .line {
	display: none;
}
.top-slide-layout {
	width: 85vw;
	height: auto;
	padding-top: calc(750px - 47.5vw);
}


}

@media screen and (max-width:1050px){
.heading {
	text-align: center;
}
.youtbe {
	width: calc(100vw - 40px);
}

.youtbe .text {
	margin-top: -70px;
	margin-right: 0px;
	margin-left: 20px;
	margin-bottom: 0px;
	position: static;

}
.sitemap {
	margin-top: 0px;
}
.posts .box-area  {
 display: block;
 margin: 0px auto;
 width: 650px;
}
.posts .boxes {
	display: flex;
	width: 650px;
	justify-content: space-between;
	margin-top: 50px;
}





}

@media screen and (max-width:900px){
nav ul {
	display: none;
	padding-bottom: 50px;
}
nav li {
	margin: 0px;
	padding: 5px;
	text-align: right;
}
nav {
 width: auto;
 z-index: 3;
}
#nav-toggle {
	width: 70px;
	height: 50px;
	margin-left: auto;
	position: relative;
	right: -20px;
}
#nav-toggle span {
	display: block;
	width: 30px;
	height: 4px;
	background-color: #cba671;
	position: absolute;
	right: 20px;
}
#nav-toggle span:nth-child(1) {
	top: 12px;
}
#nav-toggle span:nth-child(2) {
	top: 23px;
}
#nav-toggle span:nth-child(3) {
	top: 34px;
}
#nav-toggle.open span:nth-child(1) {
	top: 23px;
	transform: rotate(315deg);
}
#nav-toggle.open span:nth-child(3) {
	top: 23px;
	transform: rotate(-315deg);
}
#nav-toggle.open span:nth-child(2) {
	width: 0px;
	left: 50%;
}
#nav-toggle span {
	transition: 1s;
}

h1 {
	/* [disabled]max-width: 48vw; */
	/* [disabled]height: auto; */

}
.top .top-text {
	z-index: 2;
}
.sitemap .inner {
	display: block;
	width: 60%;
}
.youtbe .text {
	margin-top: 0px;
}
.sitemap .btn-pagetop {
	right: 15px;
	bottom: 15px;
}





}
@media screen and (min-width:901px){
nav ul {
	display: flex
!important;
}

}

@media screen and (max-width:700px){
h1 {
 max-width: 70vw;
 height: auto;
}
h2 {
	font-size: 1.7em;
}

.top-text {
	bottom: 150px;
}
.top-text p {
	font-size: 1.em;
	font-weight: normal;
	font-size: 1.1em;
}


.posts .box-area {
 max-width: calc(100vw - 40px);
 margin: 0px auto;
 height: auto;
}
.posts .box-area .new-box  {
 max-width: calc(100vw - 40px);
 height: auto;
}
.posts .box-area .boxes  {
 max-width: calc(100vw - 40px);
 height: auto;
}
.posts .box-area .box  {
	max-width: 45%;
	height: auto;
}
nav {
 z-index: 3;
}
.heading {
 display: block;
}
.about .heading+ p {
	margin-left: 0px;

}
p {
	font-size: 0.9em;
}

.youtbe .heading+p {
	margin-left: 0px;

}


.youtbe .text {
	margin-top: 30px;
}


}
