@charset "UTF-8";


html{color:#000;background:#FFF}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;*font-size:100%}legend{color:#000}#yui3-css-stamp.cssreset{display:none}


/* --------------------------------------------------*/
/* common
/* --------------------------------------------------*/

html {
	font-size: 62.5%;
}

body {
	font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	line-height: 1.625;
	color: #082c81;
	-webkit-font-smoothing: antialiased;
}

main {
	display: block;
}

a {
	color: inherit;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}



/* --------------------------------------------------*/
/* header
/* --------------------------------------------------*/
.Header {
	padding: 10px;
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
	z-index: 10;
}

.Header_snsList {
	width: 70px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

/* --------------------------------------------------*/
/* SideNavi
/* --------------------------------------------------*/
.SideNavi {
	position: fixed;
	left: 20px;
	top: 50%;
	transform: translateY(-50%);
}
.SideNavi_item:not(:first-child) {
	margin-top: 25px;
}
.SideNavi_link {
	display: flex;
	align-items: center;
	position: relative;
}
.SideNavi_link::before {
	content: url(../img/SideNavi_icon.png);
	line-height: 0;
	display: block;
	margin-right: 5px;
}



/*hover & current*/
.SideNavi_link.-current::before,
.SideNavi_link:hover::before {
	content: url(../img/SideNavi_icon-on.png);
}
/*
.SideNavi_link.-current img,
.SideNavi_link:hover img {
	display: none;
}
*/
.SideNavi_item .SideNavi_link::after {
	display: block;
	width: 0;
	transition: .4s cubic-bezier(0.23, 1, 0.32, 1) width;
	position: absolute;
	top: 0;
	left: 25px;
	overflow: hidden;
}
.SideNavi_item .SideNavi_link:hover::after,
.SideNavi_item .SideNavi_link.-current::after {
	width: 63px;
}
.SideNavi_item:nth-child(1) .SideNavi_link:hover::after,
.SideNavi_item:nth-child(1) .SideNavi_link.-current::after {
	width: 29px;
}
.SideNavi_item:nth-child(2) .SideNavi_link:hover::after,
.SideNavi_item:nth-child(2) .SideNavi_link.-current::after {
	width: 52px;
}
.SideNavi_item:nth-child(1) .SideNavi_link::after {
	content: url(../img/SideNavi_link_01-on.png);
}
.SideNavi_item:nth-child(3) .SideNavi_link::after {
	content: url(../img/SideNavi_link_02-on.png);
}
.SideNavi_item:nth-child(2) .SideNavi_link::after {
	content: url(../img/SideNavi_link_03-on.png);
}
.SideNavi_item:nth-child(4) .SideNavi_link::after {
	content: url(../img/SideNavi_link_04-on.png);
}



/* --------------------------------------------------*/
/* footer
/* --------------------------------------------------*/

.footer { margin: 0; padding: 0 0 20px; position: relative;}
@media only screen and (max-width: 767px) { .footer { min-width: 100%; } }
.footer .inner { width: 100%; margin: 0 auto; position: relative; box-sizing: border-box; zoom: 1; max-width: 960px; }
.footer .inner:after { content: ""; display: block; clear: both; }
@media only screen and (max-width: 767px) { .footer .inner { width: 100%; padding: 0 3.33334%; } }
@media only screen and (max-width: 767px) { .footer { margin: 0; padding: 3em 0 2.6667%; }
  .index .footer { margin-top: 0; } }
.footer__insta { margin-bottom: 100px; }
@media only screen and (max-width: 767px) { .footer__insta { margin-bottom: 10.6667%; } }
.footer__insta a { background: url(../img/common/footer_insta.jpg) no-repeat center; height: 0; padding: 250px 0 0 0; }
@media only screen and (max-width: 767px) { .footer__insta a { background: url(../img/common/footer_insta_sp.jpg) no-repeat center; background-size: 100% auto; padding: 47.733333333333333% 0 0 0; } }
.footer__tenpo { width: 544px; margin: 0 auto 50px; }
@media only screen and (max-width: 767px) { .footer__tenpo { width: 80%; margin: 0 auto 9.3334%; }
  .footer__tenpo img { width: 100%; height: auto; } }
.footer__banner { margin-bottom: 30px; overflow: hidden; }
@media only screen and (max-width: 767px) { .footer__banner { margin-bottom: 5.7143%; } }
.footer__banner ul { zoom: 1; margin: 0 -16px; }
.footer__banner ul:after { content: ""; display: block; clear: both; }
@media only screen and (max-width: 767px) { .footer__banner ul { margin: 0; width: 100%; } }
.footer__banner li { width: 33.333%; padding: 0 16px; margin-bottom: 30px; float: left; box-sizing: border-box; }
.footer__banner li img { width: 100%; height: auto; }
@media only screen and (max-width: 767px) { .footer__banner li { width: 50%; padding: 0 1.4286%; margin: 0 auto 2.1333333333%; } }
.footer__sns ul { width: 150px; margin: 0 auto; zoom: 1; }
.footer__sns ul:after { content: ""; display: block; clear: both; }
@media only screen and (max-width: 767px) { .footer__sns ul { width: 80%; margin: 0 auto 5.3334%; } }
.footer__sns li { width: 50px; float: left; }
@media only screen and (max-width: 767px) { .footer__sns li { width: 33%; } }
.footer__sns li img { display: block; margin: 0 auto; width: 30px; height: auto; }
@media only screen and (max-width: 767px) { .footer__sns li img { width: 40%; height: auto; } }
.footer__link { text-align: center; margin: 20px 0; }
@media only screen and (max-width: 767px) { .footer__link { margin: 2.8571428571% 0; } }
.footer__link li { display: inline; }
.footer__link li a { display: inline; font-size: 1.2rem; }
@media only screen and (max-width: 767px) { .footer__link li a { font-size: 2.94vw; } }
.footer__link li:before { content: "|"; padding: 0 30px; }
@media only screen and (max-width: 767px) { .footer__link li:before { padding: 0 2.8571428571%; } }
.footer__link li:first-child:before { content: ""; padding: 0; }
.footer__copyright { text-align: center; font-size: .8rem; }
@media only screen and (max-width: 767px) { .footer__copyright { margin-bottom: 5.7143%; font-size: 2.14vw; } }

.BackTopBtn {
	position: absolute;
	top: -75px;
	text-align: center;
	width: 100%;
}
@media only screen and (max-width: 767px) { 
.BackTopBtn {
	position: absolute;
	top: 0px;
	text-align: center;
	width: 100%;
}
}
/*hover*/
.BackTopBtn_link {
	transition: .4s cubic-bezier(0.175, 0.885, 0.32, 1.275) transform;
	display: inline-block;
}
.BackTopBtn_link:hover {
	transform: translateY(-5px) rotate(10deg);
}