@charset "utf-8";

/* CSS Document */
html{
	font-size: 62.5%; /*16px X 62.5%=10px		*/
	width: 100%;
	box-sizing: border-box;
}

body {
	color: #241905;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
	font-size: 1.6rem;
	line-height: 1.5;
	letter-spacing: 0.025em;
	-webkit-font-smooting: subpixel-antialiased;
	-moz-osx-font-smoothing: grayscale;
	box-sizing: border-box;
}

a{
	width: 100%;
	height: 100%;
	color: #241905;
	text-decoration: none;
}
li{
	list-style: none;
}
img{
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

.pc {
	display: block;
}

.sp {
	display: none;
}
.weight {
	font-weight: 600;
}
/*ふわっとさせる*/
@keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}
/*ふわっとさせる*/


/********** fadeLeftTrigger　（ふわっと動く）  ***************/


/* fadeUp */

.fadeUp{
animation-name:fadeUpAnime;
animation-duration:2.0s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}


/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
.fadeUpTrigger{
    opacity: 0;
}


/********** fadeLeftTrigger　（ふわっと動く）/  ***************/



.hoverimg img{
	transition: transform 0.3s ease-in-out;
}

.hoverimg img:hover {
  transform: scale(1.1);
}

/*common*/

/* Loading画面設定 */
/* Loading Block */
#loading {
  width: 100vw;
  height: 100vh;
  transition: all 3s;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
}
.spinner {
  width: 100px;
  height: 100px;
  margin: 200px auto;
  background-color: rgba(250,190,0);
  border-radius: 100%;
  animation: sk-scaleout 1.0s infinite ease-in-out;
}
/* Loading Animation */
@keyframes sk-scaleout {
  0% {
    transform: scale(0);
  } 100% {
    transform: scale(1.0);
    opacity: 0;
  }
}

/* Hide Loading Block */
.loaded {
  opacity: 0;
  visibility: hidden;
}

/* Loading画面設定終わり */


/**** header ***/

header {
	background-color: rgba(245, 245, 245,0.4);
	height: 80px;
	width: 100%;
	background-crip: padding-box;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
}

.inner {
	max-width: 1200px;
	margin: 0 auto;
	text-align: center;
}

.globalSpNav,
.navBtn,
.toggle{
	display: none;
}

header div {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px 60px;
}
h1 {
	width: 200px;
}

.globalNav  ul {
	display: flex;
	width: 430px;
}
.globalNav  ul li {
	flex: 1;
	position: relative;

}
.globalNav  ul li a{
	display: block;
	text-align: center;
}


.underline {
	color: #FABE00;
}

.underline::after {
	display: block;
    content: '';
    position: absolute;
    bottom: -5px;
    left: 31px;
    width: 50%;
    height: 4px;
    background: url("../img/underline.png") 0 no-repeat;
    background-size: 100% 4px;
}


.globalNav  ul li::before {
	display: block;
	content: '';
	position: absolute;
	top: 16px;
	left: -3px;
	width: 1.3px;
	height: 14px;
	background-color: #ccc;
	transform: rotate(25deg);
}


.globalNav  ul li:first-child::before {
	display: none;
}

.navtitle {
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1;
	font-family: 'PT Sans', sans-serif;
}

.navtitle:hover {
	color: #FABE00;
	transition: all 0.3s;
}
.navsubtitle {
	font-size: 1.2rem;
	font-weight: 500;
	display: block;
	line-height: 1.2;
}

.globalSpNav {
	display: none;
}


/* nav終了 */

/** toppageBtn **/

#page_top {
    position: fixed;
    bottom: 60px;
    right: 40px;
	width: 65px;
}
/** toppageBtn終了 **/

/*footer*/
footer {
	background-color: #f0f0ef;
}

footer .inner {
	display: flex;
	justify-content: space-between;
	padding: 50px 60px;	
}

footer div p {
	width: 200px;
	height: auto;
}

.footerNav ul {
	display: flex;
	width: 430px;
}

.footerNav ul li {
	flex: 1;
	position: relative;
}

.footerNav ul li a{
	display: block;
	text-align: center;
}

.footerNavtitle:hover {
	color: #FABE00;
	transition: all 0.3s;
}

.footerunderline {
	color: #FABE00;
}

.footerunderline::after {
	display: block;
    content: '';
    position: absolute;
    bottom: -5px;
    left: 26px;
    width: 50%;
    height: 4px;
    background: url("../img/underline.png")0 no-repeat;
    background-size: 100% 4px;
}

.footerNav ul li::before {
	display: block;
	content: '';
	position: absolute;
	top: 16px;
	left: -3px;
	width: 1.3px;
	height: 14px;
	background-color: #ccc;
	transform: rotate(25deg);
}


.footerNav ul li:first-child::before {
	display: none;
}


.footerNavtitle {
	font-size: 1.8rem;
	font-weight: 500;
	font-family: 'PT Sans', sans-serif;
}

.footerNavsubtitle {
	font-size: 1.2rem;
	font-weight: 500;
	display: block;
	line-height: 1.2;
}

footer small {
	display: block;
	text-align: right;
	font-weight: 500;
	margin: 30px 18px 0 0;
	font-family: 'PT Sans', sans-serif;
}

@media (max-width: 768px){
#page_top img{
	display: none;	
}

.sp{
	display: block;
}
.pc{
	display: none;
}

header {
	width: 100%;
	height: 80px;
	position: fixed;

}

header div {
	padding: 0;
}

.inner {
	max-width:550px;
}


header h1 {
	position: fixed;
	top: 18px;
	left: 24px;
	width: 130px;
}

.globalNav {
		display: none;
	}

.globalNav 　{
	height: 50px;	
	}

	


/**** hamburgerMenu ***/

	.toggle {
		display:block;
		position: fixed;
		top: 13px;
		right: 24px;
		width: 55px;
    	height: 55px;
		background-color: #FABE00;
		border-radius: 50%;
		text-align: center;
		cursor: pointer;
		z-index: 10;
	}

	.toggle span {
		display: inline-block;
		position: absolute;
		left: 13px;
		width: 26px;
		border: 1.4px solid #eee;
		transition: .35s ease-in-out;
	}
	
	.toggle span:first-child {
		top: 19px;
	}
	
	.toggle span:nth-child(2) {
		top: 27px;
	}
	
	.toggle span:last-child {
		border: none;
		color: #eee;
		font-size: 0.9rem;
		font-weight: bold;
		top: 32px;
	}
		
	.toggle.active span:first-child {
		top: 22px;
		left: 16px;
		transform: rotate(-45deg);
		width: 22px;
	}

	.toggle.active span:nth-child(2){
		top: 22px;
		left: 16px;
		transform: rotate(45deg);
		width: 22px;
	}
	
	.underline::after {
		display: none;
	}
/** hamburgerMenu　**/
	.globalSpNav {
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		background-color: rgba(255,255,255,0.9);
		text-align: center;
		width: 100%;
		height: 100vh;
		z-index: 0;
		transform: translateY(150%);
		transition: all .3s;
	}
	
	.globalSpNav ul {
		margin: 120px 0;
	}
	
	.globalSpNav ul li {
		width: 100%;
		margin-right: 0;
	}
	
	.globalSpNav ul li a {
		display: block;
		text-decoration: none;
		color: #241905;
		padding: 15px 0;
		font-size: 1.4rem;
	}
	
	.globalSpNav ul li a:nth-child(n+6) {
		padding: 10px 0;
	}
	
	.globalSpNav ul li a:hover {
		background-color: rgba(250,190,0,0.2);
	}

	.globalSpNav.active {
		transform: translateY(0%);
	}
	
	.globalSpNav .navtitle {
		font-size: 4rem;
	}
	.globalSpNav .navtitle:hover {
		color: #FABE00;
	}
	
	.globalSpNav .navsubtitle {
		color: #241905;
	}
	

	
/**** hamburgerMenu終了 ***/
		
.wrapper {
	max-width: 768px;
	margin: 0 auto;
}

footer .inner {
	max-width: 768px;
	padding: 60px 0;
	flex-direction: column;
}

.footerNav ul {
	flex-direction: column;
    width: auto;
    padding: 40px 0 0 0;
}

.footerNav ul li {
	position: inherit;
}

footer div p {
	margin: 0 auto;
	width: 250px;
}

footer small {
	text-align: center;
}

.footerNavtitle {
	font-size: 2rem;
	line-height: 1.7;
}

.footerNavsubtitle {
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 0.4;
    padding: 0 0 25px 0;
}

footer small {
	margin: 15px 0 0 0;
	font-size: 1.2rem;
}

.footerunderline {
	position: relative;
}

.footerunderline::after {
    bottom: -20px;
    left: 0;
    width: 100%;
    height: 6px;
}

}

@media (max-width: 375px){
.inner {
	max-width: 320px;
}




}





