@charset "UTF-8";
/* CSS Document */

/*----------common css start----------*/

/*==========default start==========*/
body {
	font-size: 62.5%;
	font-style: normal;
	font-weight: normal;
	color: #000;
	background-color: #FFF;
	position: relative;
}

@import url('https://fonts.googleapis.com/css?family=Reenie+Beanie');
body{
font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
}


h1, h2, h3 {
	color: #000;
}

p {
	line-height: 1.5;
}

a {
	text-decoration: none;
	outline: none;
}

a:focus {
	outline: none;
}

a:link img {
	border: none;
}
a:visited img {
	border: none;
}
a:focus img,a:hover img {
	border: none;
}
a:active img {
	border: none;
}

a:link, a:visited {
	color: #888;
}

a:hover, a:active {
	color: #888;
}

section, article, aside, nav, header, footer, hgroup {
	display: block;
}

a img {
	border-style: none;
}

a img.linkimg{
	background: none!important;
}

a:hover img.linkimg {
	opacity: 0.5;
	-moz-opacity: 0.5;
	filter: alpha(opacity=50);
	-ms-filter: "alpha( opacity=50 )";
	background: none!important;
	-webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;
    -ms-transition: all 0.8s ease;
    transition: all 0.8s ease;
}
/*==========default end==========*/



/*==========frame start==========*/
body {
	margin: 0;
	padding: 0;
	width: 100%;
	min-height: 480px;
	min-width: 320px;
}

header {
	width: 100%;
	margin: 0 auto;
}

footer {
	clear: both;
	margin: 0 auto;
	width: 100%;
}


html, body {
    height: 100%;
}

/*==========frame end==========*/


/*==========main start==========*/

.nogami-logo {
	margin-left: -60px;
    position: absolute;
	bottom: 50%;
	top: 44%;
    left: 50%;
    width: 120px;
    height: 120px;
	background-image:url(../images/nogami-logo2.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 6;
	animation: inout ease-in 2s;
	-webkit-animation: inout ease-in 2s;
}

@media screen and (max-width: 480px) {
.nogami-logo {
		width: 100px;
		height: 100px;
		margin-left: -50px;
}
}



@keyframes inout {
 0%   { opacity:0; }
 25%  { opacity:0.1; }
 55%  { opacity:0.5; }
 85%  { opacity:0.9; }
 100% { opacity:1; }
}

@-webkit-keyframes inout {
 0%   { opacity:0; }
 25%  { opacity:0.1; }
 55%  { opacity:0.6; }
 85%  { opacity:0.9; }
 100% { opacity:1; }
}





.nogami-start {
	margin-left: -80px;
    position: absolute;
	top: 2%;
    left: 2%;
    width: 768px;
    height: 720px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 6;
	animation: inout ease-in 1.2s;
	-webkit-animation: inout ease-in 1.2s;
}



@media screen and (max-width: 768px) {
.nogami-start {
		width: 750px;
		height: 650px;
		margin-left: -80px;
}
}


@media screen and (max-width: 640px) {
.nogami-start {
		width: 630px;
		height: 580px;
		margin-left: -70px;
}
}


@media screen and (max-width: 554px) {
.nogami-start {
		width: 510px;
		height: 480px;
		margin-left: -50px;
}
}


@media screen and (max-width: 480px) {
.nogami-start {
		width: 318px;
		height: 478px;
		margin-left: -7px;
		margin-top: -58px;
}
}

@media screen and (max-width: 420px) {
.nogami-start {
		width: 308px;
		height: 458px;
		margin-left: -7px;
		margin-top: -58px;
}
}


@media screen and (max-width: 320px) {
.nogami-start {
		width: 258px;
		height: 368px;
		margin-left: -7px;
		margin-top: -38px;
}
}



.nogami-start svg {
  max-width: 100%;
  max-height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

.nogami-start path{
  stroke:#FFF;
  fill:none;
  stroke-width:2.5;
  stroke-dasharray: 2000;
  stroke-dashoffset:2000;
  animation: DASH 5s ease-in alternate forwards;
  -webkit-animation:DASH 5s ease-in 0s forwards;
  -o-animation:DASH 5s ease-in 0s forwards;
  animation:DASH 5s ease-in 0s forwards;
}

@keyframes DASH{
0%{stroke-dashoffset:3000;}
100%{stroke-dashoffset:0;}
}
@-moz-keyframes DASH{
0%{stroke-dashoffset:3000;}
100%{stroke-dashoffset:0;}
}
@-webkit-keyframes DASH{
0%{stroke-dashoffset:3000;}
100%{stroke-dashoffset:0;}
}
@-o-keyframes DASH{
0%{stroke-dashoffset:3000;}
100%{stroke-dashoffset:0;}
}
@-ms-keyframes DASHf{
0%{stroke-dashoffset:3000;}
100%{stroke-dashoffset:0;
}
}



.nogami-start2 {
	margin: 0 auto;
    position: absolute;
	left: 60%;
	bottom: -2%;
    width: 400px;
    height: 70px;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 6;
	animation: inout ease-in 1.2s;
	-webkit-animation: inout ease-in 1.2s;
}



.nogami-start2 svg {
  max-width: 100%;
  max-height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

.nogami-start2 path {
   fill: none;
  stroke: #FFF;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 800;
  stroke-dashoffset: 800;
  -webkit-animation: draw 4s linear forwards;
  animation: draw 4s linear forwards;
  -webkit-animation-delay: 4s;
  animation-delay: 4s;
}


@-webkit-keyframes draw {
  to {
    stroke-dashoffset: 0;
  }
}
@keyframes draw {
  to {
    stroke-dashoffset: 0;
  }
}


@media screen and (max-width: 810px) {
.nogami-start2 {
		width: 350px;
		height: 60px;
		left: 58%;
		bottom: -2%;
}
}

@media screen and (max-width: 768px) {
.nogami-start2 {
		width: 300px;
		height: 50px;
		left: 54%;
		bottom: -10%;
}
}


@media screen and (max-width: 640px) {
.nogami-start2 {
		width: 250px;
		height: 50px;
		left: 48%;
		bottom: -15%;
}
}

@media screen and (max-width: 480px) {
.nogami-start2 {
		width: 220px;
		height: 50px;
		left: 42%;
		bottom: -20%;
}
}

@media screen and (max-width: 320px) {
.nogami-start2 {
		width: 220px;
		height: 50px;
		left: 30%;
		bottom: -25%;
}
}


/* nav */

.inner {
	max-width: 100%;
    margin: 0 auto;
}
.inner:after {
    content: "";
    clear: both;
    display: block;
}

#top-head {
    top: -100px;
    position: absolute;
    width: 100%;
    margin: 100px auto 0;
    padding: 28px 0 0;
    line-height: 2;
    z-index: 999;
}
#top-head a,
#top-head {
    color: #fff;
    text-decoration: none;
}
#top-head .inner {
    position: relative;
}



#main-nav ul {
    list-style: none;
    position: relative;
    right: 0;
    bottom: 0;
    font-size: 20px;
	letter-spacing: 1px;
	float: right;
}

#main-nav ul li {
    float: none;
	position: relative;
	padding: 5px 8px;
}

#main-nav ul li span {
	font-size: 1.25em;
}


#main-nav ul li a {
    padding: 0 15px;
}



#main-nav ul li a:hover {
	color: #AAA;
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
}

#nav-toggle {
    display: none;
    position: absolute;
    right: 18px;
    top: 18px;
    width: 36px;
    height: 38px;
    cursor: pointer;
    z-index: 1100;
}
#nav-toggle div {
    position: relative;
}
#nav-toggle span {
    display: block;
    position: absolute;
    height: 5px;
    width: 100%;
    background: #FFF;
    left: 0;
    -webkit-transition: 0.4s ease-in-out;
    -moz-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
	border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
}
#nav-toggle span:nth-child(1) {
    top: 0;
}
#nav-toggle span:nth-child(2) {
    top: 12px;
}
#nav-toggle span:nth-child(3) {
    top: 24px;
}


.menu-copy {
	font-family: 'Reenie Beanie', cursive;
	font-size: 15px;
	text-align: right;
	margin-right: 20px;
	margin-top: 20px;
}



@media screen and (max-width: 920px) {
#top-head, .inner {
        width: 100%;
        padding: 0;
}
#top-head {
        top: 0;
        position: fixed;
        margin-top: 0;
}
/* Fixed reset */

#top-head.fixed {
        padding-top: 0;
        background: transparent;
}
#mobile-head {
        width: 100%;
        z-index: 999;
		background: none;
        position: relative;
}
#top-head.fixed .logo, #top-head .logo {
        position: absolute;
		padding: 0;
        left: 12px;
        top: 5px;
}

#main-nav {
        position: absolute;
        left: -1000px;
        background: rgba(0,0,0,0.8);
        width: 68%;
        text-align: left;
        padding: 17px;
		border: 7px solid #FFF;
        -webkit-transition: 0.5s ease-in-out;
        -moz-transition: 0.5s ease-in-out;
        transition: 0.5s ease-in-out;
}

#main-nav ul {
		padding: 0;
		margin: 0 auto;
		left: 0;
		bottom: 0;
		clear: both;
		width: 100%;
        list-style: none;
        position: relative;
        right: 0;
        bottom: 0;
        font-size: 18px;
}



#main-nav ul li {
		float: none;
        position: static;
		padding: 0;
}



#main-nav ul li:after  {
		display: none;
}

#top-head #main-nav ul li a, #top-head.fixed #main-nav ul li a  {
		width: 100%;
        display: block;
        color: #FFF;
        padding: 2px 0;
		margin: 2px auto;
}

#top-head #main-nav ul li.sns, #top-head.fixed #main-nav ul li.sns {
		float: none;
		position: relative;
}

#top-head #main-nav ul li.sns a, #top-head.fixed #main-nav ul li.sns a  {
		display: inline;
		padding: 0;
		margin: 0 auto;
		position: relative;
		float: left;
		overflow: hidden;
}

#nav-toggle {
        display: block;
}

.open #nav-toggle span:nth-child(1) {
        top: 28px;
        -webkit-transform: rotate(228deg);
        -moz-transform: rotate(228eg);
        transform: rotate(228deg);
}

.open #nav-toggle span:nth-child(2) {
        width: 0;
        left: 50%;
}

.open #nav-toggle span:nth-child(3) {
        top: 28px;
        -webkit-transform: rotate(-228deg);
        -moz-transform: rotate(-228deg);
        transform: rotate(-228deg);
}

.open #main-nav {
		 /* #main-nav right + #mobile-head height */
        -moz-transform: translateX(1000px);
        -webkit-transform: translateX(1000px);
        transform: translateX(1000px);
}

a.menu {
  position: relative;
  display: inline-block;
  padding: 0.3em;
  text-decoration: none;
}
a.menu::after {
 position: absolute;
 bottom: 0;
  left: 0;
  content: "";
  display: inline-block;
  width: 0;
  height: 1px;
  background: #090;
  transition: 0.5s;
}
a.menu:hover::after {
	width: 240px;
}

.menu-copy {
	font-size: 13px;
	text-align: right;
	margin-right: 5px;
	margin-top: 5px;
}

}




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

	#main-nav {
        padding: 14px;
		border: 4px solid #FFF;
}

	#main-nav ul {
        font-size: 16px;
}

.menu-copy {
	font-size: 12px;
}

#top-head #main-nav ul li a, #top-head.fixed #main-nav ul li a  {
        padding: 3px 0;
		margin: 3px auto;
}


}





/* main-img */


#container {
	z-index: -10000;
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
    width:100%;
	height:100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
	-webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
	background-size: cover;
    background-position: center;
	margin: 0 auto;
	overflow: hidden;
}

.dotts, .dotts:after {
	z-index: -100;
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
    width:100%;
	height:100%;
}

.dotts:after {
    content: '';
    background: transparent url(../images/pattern.png) repeat top left;
	background-size: 3px;
}


#photo1 {
    background-image: url(../images/top-1.jpg);
    background-size: cover;
    background-position: center;
}
#photo2 {
	background-image: url(../images/top-17.jpg);
    background-size: cover;
    background-position: center;
}
#photo3 {
    background-image: url(../images/top-2a.jpg);
    background-size: cover;
    background-position: center;
}
#photo4 {
    background-image: url(../images/top-5a.jpg);
    background-size: cover;
    background-position: center;
}
#photo5 {
    background-image: url(../images/top-16.jpg);
    background-size: cover;
    background-position: center;
}
#photo6 {
    background-image: url(../images/top-5.jpg);
    background-size: cover;
    background-position: center;
}


@media screen and (max-width: 640px) {
#photo1 {
	background-image: url(../images/top-1s.jpg);
}

#photo2 {
	background-image: url(../images/top-17s.jpg);
}

#photo3 {
	background-image: url(../images/top-2s.jpg);
}
#photo4 {
	background-image: url(../images/top-5as.jpg);
}

#photo5 {
	background-image: url(../images/top-16s.jpg);
}

#photo6 {
	background-image: url(../images/top-5s.jpg);
}

}


.frame {
    width: 100%;
	height: 100%;
	position: absolute;
	top:0;
	left:0;
	right: 0;
	bottom: 0;
	display: block;
    background-size:cover;
	background-position: center;
    animation:imgTrans ease 36s infinite;
    -webkit-animation:imgTrans ease 36s infinite;
	opacity: 0;
	transform: scale(1);
	-webkit-transform: scale(1);
	overflow: hidden;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	z-index: -9999;
}

#photo2 {
    -moz-animation-delay: 6s;
    -webkit-animation-delay: 6s;
    animation-delay: 6s;
}
#photo3 {
    -moz-animation-delay: 12s;
    -webkit-animation-delay: 12s;
    animation-delay: 12s;
}

#photo4 {
    -moz-animation-delay: 18s;
    -webkit-animation-delay: 18s;
    animation-delay: 18s;
}

#photo5 {
    -moz-animation-delay: 24s;
    -webkit-animation-delay: 24s;
    animation-delay: 24s;
}

#photo6 {
    -moz-animation-delay: 30s;
    -webkit-animation-delay: 30s;
    animation-delay: 30s;
}



@keyframes imgTrans {
 0%   { opacity:0; }
 10%  { opacity:1; }
 20%  { opacity:1; }
 30%  { opacity:0; }
 100% { opacity:0; }
}

@-webkit-keyframes imgTrans {
 0%   { opacity:0; }
 10%  { opacity:1; }
 20%  { opacity:1; }
 30%  { opacity:0; }
 100% { opacity:0; }
}







/* scroll */


.scroll {
	margin-left: -30px;
    position: absolute;
    bottom: 12px;
    left: 50%;
    background-image: url(../images/scroll.png);
    background-position: left top;
    background-repeat: no-repeat;
    background-size: contain;
	width: 60px;
    height: 30px;
    cursor: pointer;
    animation: translation 2s;
    animation-iteration-count: infinite;
    -webkit-animation: translation 2s;
    -webkit-animation-iteration-count: infinite;
	z-index: 100;
}

.scroll2 {
	margin-left: -30px;
    position: absolute;
    bottom: 12px;
    left: 50%;
    background-image: url(../images/scroll2.png);
    background-position: left top;
    background-repeat: no-repeat;
    background-size: contain;
	width: 60px;
    height: 30px;
    cursor: pointer;
    animation: translation 2s;
    animation-iteration-count: infinite;
    -webkit-animation: translation 2s;
    -webkit-animation-iteration-count: infinite;
	z-index: 100;
}




@keyframes translation {
    0% {
      transform: translate(0px, 0px);
    }
    15% {
      transform: translate(0px, 7px);
    }
    30% {
      transform: translate(0px, 0px);
    }
    100% {
      transform: translate(0px, 0px);
    }
  }
  @-webkit-keyframes translation {
    0% {
      -webkit-transform: translate(0px, 0px);
    }
    15% {
      -webkit-transform: translate(0px, 7px);
    }
    30% {
      -webkit-transform: translate(0px, 0px);
    }
    100% {
      -webkit-transform: translate(0px, 0px);
    }
  }


.gototop {
	margin-left: -40px;
    position: absolute;
    bottom: 15px;
	right: 18px;
    background-image: url(../images/up.png);
    background-position: left top;
    background-repeat: no-repeat;
    background-size: contain;
	width: 140px;
    height: 70px;
    cursor: pointer;
    animation: translation2 2s;
    animation-iteration-count: infinite;
    -webkit-animation: translation2 2s;
    -webkit-animation-iteration-count: infinite;
	z-index: 100;
}



@keyframes translation2 {
    0% {
      transform: translate(0px, 0px);
    }
    15% {
      transform: translate(0px, 0px);
    }
    30% {
      transform: translate(7px, 7px);
    }
    100% {
      transform: translate(0px, 0px);
    }
  }
  @-webkit-keyframes translation2 {
    0% {
      -webkit-transform: translate(0px, 0px);
    }
    15% {
      -webkit-transform: translate(0px, 0px);
    }
    30% {
      -webkit-transform: translate(7px, 7px);
    }
    100% {
      -webkit-transform: translate(0px, 0px);
    }
  }





/* About */

#about #photo1 {
    background-image: url(../images/top-15.jpg);
    background-size: cover;
    background-position: center;
}
#about #photo2 {
	background-image: url(../images/top-7.jpg);
    background-size: cover;
    background-position: center;
}

#about #photo3 {
	background-image: url(../images/top-18.jpg);
    background-size: cover;
    background-position: center;
}

#about #photo4 {
	background-image: url(../images/top-8.jpg);
    background-size: cover;
    background-position: center;
}


@media screen and (max-width: 640px) {
#about #photo1 {
	background-image: url(../images/top-15s.jpg);
}

#about #photo2 {
	background-image: url(../images/top-7s.jpg);
}

#about #photo3 {
	background-image: url(../images/top-18s.jpg);
}
#about #photo4 {
	background-image: url(../images/top-8s.jpg);
}

}

#about .frame {
    width: 100%;
	height: 100%;
	position: absolute;
	top:0;
	left:0;
	right: 0;
	bottom: 0;
	display: block;
    background-size:cover;
	background-position: center;
    animation:picimg ease 24s infinite;
    -webkit-animation:picimg ease 24s infinite;
	opacity: 0;
	transform: scale(1);
	-webkit-transform: scale(1);
	overflow: hidden;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	z-index: -9999;
}

#about #photo2 {
    -moz-animation-delay: 6s;
    -webkit-animation-delay: 6s;
    animation-delay: 6s;
}
#about #photo3 {
    -moz-animation-delay: 12s;
    -webkit-animation-delay: 12s;
    animation-delay: 12s;
}
#about #photo4 {
    -moz-animation-delay: 18s;
    -webkit-animation-delay: 18s;
    animation-delay: 18s;
}


@keyframes picimg {
 0%   { opacity:0; }
 12.5%  { opacity:1; }
 25%  { opacity:1; }
 35%  { opacity:0; }
 100% { opacity:0; }
}

@-webkit-keyframes picimg {
 0%   { opacity:0; }
 12.5%  { opacity:1; }
 25%  { opacity:1; }
 35%  { opacity:0; }
 100% { opacity:0; }
}




.aboutnav {
	display: block;
	clear: both;
	float: left;
	width: 250px;
	height: 200px;
	overflow: hidden;
	z-index: 100;
	color: #FFF;
}

.aboutnav ul {
	margin: 0;
	padding: 0;
	font-family: 'Reenie Beanie', cursive;
    list-style: none;
    position: relative;
	left: 20px;
    top: 48px;
    font-size: 28px;
	font-weight: 500;
	letter-spacing: 1px;
	float: left;
	z-index: 1999;
}

.aboutnav ul li {
    float: none;
	position: relative;
	padding: 4px 2px;
}

.aboutnav ul li a {
    padding: 0 14px;
	color: #FFF
}

.aboutnav a {
  position: relative;
  display: inline-block;
  padding: 0.5em;
  text-decoration: none;
}
.aboutnav a::after {
 position: absolute;
 bottom: 0;
  left: 0;
  content: "";
  display: inline-block;
  width: 0;
  height: 1px;
  background: #FFF;
  transition: 0.5s;
}
.aboutnav a:hover::after {
	width: 220px;
}

@media screen and (max-width: 920px) {
.aboutnav ul {
	z-index: 1;
}
}


@media screen and (max-width: 640px) {
.aboutnav {
	height: 152px;
}

.aboutnav ul {
	left: 8px;
    top: 12px;
    font-size: 24px;
	font-weight: 600;
	z-index: 1;
}

}




#about h1 {
	clear: both;
	margin: 0 auto;
	text-align: center;
	overflow: hidden;
	padding-top: 30px;
	animation: inout ease-in 2.5s;
	-webkit-animation: inout ease-in 2.5s;
	z-index: 280;
}


#about h1 img {
	width: 320px;
	height: 320px;
}


.noujou {
	position: fixed;
	left: 20px;
    bottom: 30px;
    z-index: -1;
}


.noujou img {
	width: 100px;
	height: 175px;
}


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

#about h1 {
	padding-top: 5px;
}

#about h1 img {
	width: 300px;
	height: 300px;
}

.noujou {
	left: 10px;
    bottom: 32px;
}


.noujou img {
	width: 70px;
	height: 123px;
}



}

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

#about h1 img {
	width: 235px;
	height: 235px;
}

}


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

#about h1 img {
	width: 188px;
	height: 188px;
}

.noujou img {
	width: 50px;
	height: 88px;
}


}







#top, #section1, #section2, #section3, #section4{
	position: relative;
	width: 100%;
	min-height: 680px;
	min-width: 320px;
	margin: 0;
	padding: 0;
	overflow: hidden;
}

 #section1, #section2, #section3, #section4{

display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
	-webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
	background-size: cover;
    background-position: center;
	margin: 0 auto;
	overflow: hidden;
 }

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


#top, #section1, #section2, #section3, #section4 {
	min-height: 480px;
}

}

.aboutzone {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0; right: 0;
	margin: 0 auto;
	width: 100%;
	text-align: center;
	z-index: 200;
	font-family: 'Reenie Beanie', cursive, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	z-index: 1;
}

.aboutzone h2 {
	padding-top: 80px;
	width: 635px;
	margin: 20px auto;
	font-size: 50px;
	font-weight: 400;
}

.aboutzone h3 {
	padding-top: 20px;
	width: 150px;
	margin: 8px auto;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 3px;
	line-height: 2;
	text-align: center;
	border-top: 1px solid #000;
}



.aboutzone p {
	padding-top: 28px;
	width: 640px;
	margin: 20px auto;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 2px;
	line-height: 3;
}

#section1 .aboutzone p {
	font-size: 15px;
}

#section1 img, #section4 h3 img {
	width: 50px;
	height:50px;
	border-radius: 25px;
}


#section2 h2 {
	padding-top: 50px;
	font-size: 88px;
	font-weight: 500;
}
#section2 h3 {
	width: 640px;
	text-align: center;
	font-size: 35px;
	font-weight: 800;
	border: none;
}
#about #section2 h2,
#about #section2 h3,
#about #section4 .aboutzone h2,
#about #section4 .aboutzone h3 {
	color: #fff;
}

#section2 p {
	text-shadow:#555 1px 1px 1px, #555 -1px 1px 1px,
    #555 1px -1px 1px, #555 -1px -1px 1px;
}


#section3 h3 {
	width: 210px;
	font-size: 11px;
	font-family:"ＭＳ ゴシック", "MS Gothic", "Osaka－等幅", Osaka-mono, monospace;
}

#section3 p {
	padding-top: 18px;
}

#section3 p a {
	color: #000;
	text-decoration: underline;
	overflow: hidden;
}

#map {
	clear: both;
	width: 88%;
	height: 300px;
	text-align: center;
	margin: 0 auto;
	top: 8px;
	left: 0;
	bottom:0;
	border: 1px solid #000;
	border-radius: 8px;
}


#section4 p {
	padding-top: 1px;
	margin: 0 auto;
	line-height: 1;
	text-align: center;
	font-weight: 600;
}

.clover {
	position: relative;
    display: flex;
    flex-wrap: wrap;
    width: 208px;
    margin: 4px auto;
}
.clover img {
    margin: 2px;
}
.img1 {
    border-radius: 50% 50% 0 50%;
}
.img2 {
    border-radius: 50% 50% 50% 0;
}
.img3 {
    border-radius: 50% 0 50% 50%;
}
.img4 {
    border-radius: 0 50% 50% 50%;
}


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

.aboutzone h2 {
	padding-top: 25px;
	width: 310px;
	margin: 8px auto;
	font-size: 38px;
	font-weight: 500;
}

.aboutzone h3 {
	padding-top: 15px;
	width: 210px;
	margin: 8px auto;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 3px;
	text-align: center;
	border-top: 1px solid #000;
}



.aboutzone p {
	padding-top: 18px;
	width: 92%;
	margin: 4px auto;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 2px;
	line-height: 2;
	text-align: left;
}

#section1 .aboutzone p {
	font-size: 14px;
}

.aboutzone p::after {
	clear: both;
	content: "";
	display: block;
}

.aboutzone p span {
	font-size: 16px;
	float: right;
	text-align: center;
}

#section1 h3 {
	padding-top: 10px;
	font-size: 13px;
}


#section1 p {
	padding-top: 15px;
}


#section2 h2 {
	padding-top: 15px;
	font-size: 78px;
	font-weight: 600;
}

#section2 h3 {
	width: 318px;
	font-size: 22px;
	line-height: 1.5;
}

#section2 p {
	font-size: 15px;
}


#section3 p {
	text-align: center;
	font-size: 19px;
}


#map {
	width: 92%;
	height: 220px;
}


}




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



#section1 p {
	padding-top: 12px;
	font-size: 12px;
}


#section2 h2 {
	padding-top: 10px;
	font-size: 70px;
	font-weight: 600;
}

#section2 h3 {
	width: 318px;
	font-size: 20px;
	line-height: 1.5;
}

#section2 p {
	font-size: 14px;
}


#section3 p {
	text-align: center;
	font-size: 16px;
}

#section3 h2, #section4 h2 {
	padding-top: 12px;
}


}




.effect h2{
	transition: 1.2s ease-in;
}


.effect h3{

	transition: 1.2s ease-in;
	transition-delay: 1s;
}

.effect p{
	transition: 1.5s ease-in;
	transition-delay: 1.5s;
}

.animation2 {
	margin: 0 auto;
}

.anime2 {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:5s;
 -ms-animation-duration:5s;
 animation-duration:5s;
 -webkit-animation-name: anime2;
 -ms-animation-name: anime2;
 animation-name: anime2;
 visibility: visible !important;
}
@-webkit-keyframes anime2 {
 0% { opacity: 0; -webkit-transform: translateY(20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes anime2 {
 0% { opacity: 0; -webkit-transform: translateY(20px); -ms-transform: translateY(20px); transform: translateY(20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
}




#section1 {
	height: 100%;
	background: #f0f0f0;
	background: linear-gradient(-90deg, #99FFE8, #f0f0f0) fixed;
	background-size: cover;
    background-position: center;
	margin: 0 auto;
}
@media screen and (min-width: 769px) {
	#about #section1 {
		min-height: 820px;
	}
}
@media screen and (max-width: 642px) {
	#about #section1 {
		min-height: 600px;
	}
}

#section2 {
	height: 100%;
	background: url(../images/top-9a.jpg) fixed;
	background-size: cover;
    background-position: center;
	z-index: -1;
	color: #FFF;
	margin: 0 auto;
	overflow: hidden;
}




#section3 {
	height: 100%;
	background: #f0f0f0;
	background: linear-gradient(90deg, #FFEAF7, #FFFCB8) fixed;
	background-size: cover;
    background-position: center;
	z-index:3;
	margin: 0 auto;


}

#section4 {
	height: 100%;
	background-size: cover;
    background-position: center;
	color: #FFF;
	margin: 0 auto;
	overflow: hidden;
	z-index: 2;

}



.aboutdot {
	background: transparent url(../images/pattern.png) repeat top left;
	background-size: 3px;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
    width:100%;
	height:100%;
}

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

	#section2 {
	background: url(../images/top-9as.jpg);
	background-size: cover;
    background-position: center;
	height: 100%;
	}
}



/*==========main end==========*/


/****************************************
contents
*****************************************/

/*==========movie start==========*/
.box{
	margin-bottom: 100px;
	overflow: hidden;
	position: relative;
	z-index: 2;
}

.fitMovie{
	position: absolute;
}

.box__centered{
	min-width: 310px;
	left: 50%;
	position: absolute;
	top: 50%;
}

.box__contents{
	text-align: center;
	transform: translate(-50%,-50%);
		  z-index: 100;

}

.box__title{
	color: #fff;
	font-size: 58px;
	font-weight: 50;
	font-family: 'Reenie Beanie', cursive, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;

}

.box__text{
	color: #fff;
	font-size: 20px;
	font-family: 'Reenie Beanie', cursive, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;

}

.sec{
	margin-bottom: 100px;
}

.overlay {
  width: 100%;
  height: 100vh;
  position: absolute;
  top: 0;
  left: 0;
  background-image: linear-gradient(45deg, rgba(0,0,0,.5) 80%, rgba(0,0,0,.8) 50%);
  background-size: 3px 3px;
}

.box__text a {
    padding: 0 8px;
	color: #FFF
}

.box__text a {
  position: relative;
  display: inline-block;
  padding: 0.5em;
  text-decoration: none;
}
.box__text a::after {
 position: absolute;
 bottom: 0;
  left: 0;
  content: "";
  display: inline-block;
  width: 0;
  height: 1px;
  background: #FFF;
  transition: 0.5s;
}
.box__text a:hover::after {
	width: 200px;
}

/*==========movie end==========*/

/*==========ABOUT Images start==========*/
#section1 .aboutzone-imagelist {
	margin: 0 auto 60px;
	padding: 0;
	max-width: 800px;
	display: flex;
	list-style: none;
}
#section1 .aboutzone-imagelist > li {
	margin-right: 10px;
	width: 100%;
	cursor: pointer;
}
#section1 .aboutzone-imagelist > li:last-child {
	margin-right: 0;
}
#section1 .aboutzone-imagelist > li > a {
	display: block;
}
#section1 .aboutzone-imagelist > li > a > img {
	width: 100%;
	height: auto;
	border-radius: 0;
	transition: 1.2s ease-in;
}
@media screen and (min-width: 643px) and (max-width: 768px) {
	#section1 {
		min-height: 945px;
	}
}
@media screen and (max-width: 768px) {
	#section1 .aboutzone-imagelist {
		margin: 0 0 0 -20px;
		max-width: initial;
	}
	#section1 .aboutzone-imagelist li {
		margin: 0 0 0 20px;
		width: calc((100% - 20px * 2) / 3);
	}
	#section1 #js-aboutzone-imagelist .slick-slide img {
		width: 100%;
		height: auto;
		border-radius: 0;
	}
	#section1 #js-aboutzone-imagelist .slick-slider {
		position: relative;
	}
	#section1 #js-aboutzone-imagelist .slick-arrow {
		padding: 0;
		width: calc(40 / 768 * 100vw);
		height: calc(75 / 768 * 100vw);
		color: #000;
		border: none;
		background: rgba(0, 0, 0, .8);
		text-indent: -9999px;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		z-index: 1;
		opacity: 0;
		transition: .6s ease-in;
	}
	#section1 #js-aboutzone-imagelist .slick-prev {
		left: 20px;
		border-radius: 0 calc(40 / 768 * 100vw) calc(40 / 768 * 100vw) 0;
	}
	#section1 #js-aboutzone-imagelist .slick-next {
		right: 0;
		border-radius: calc(40 / 768 * 100vw) 0 0 calc(40 / 768 * 100vw);
	}
	#section1 #js-aboutzone-imagelist .slick-arrow::before {
		position: absolute;
		content: "";
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		margin: auto;
		width: calc(12 / 768 * 100vw);
		height: calc(12 / 768 * 100vw);
		transform: rotate(45deg);
	}
	#section1 #js-aboutzone-imagelist .slick-prev::before {
		border-left: 2px solid #fff;
		border-bottom: 2px solid #fff;
	}
	#section1 #js-aboutzone-imagelist .slick-next::before {
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
	}
}
@media screen and (max-width: 415px) {
	#section1 #js-aboutzone-imagelist .slick-arrow {
		width: 30px;
		height: 50px;
	}
	#section1 #js-aboutzone-imagelist .slick-prev {
		border-radius: 0 30px 30px 0;
	}
	#section1 #js-aboutzone-imagelist .slick-next {
		border-radius: 30px 0 0 30px;
	}
	#section1 #js-aboutzone-imagelist .slick-arrow::before {
		width: 8px;
		height: 8px;
	}
}
/*==========ABOUT Images end==========*/

/*----------common css end----------*/