@charset "utf-8";

/* ----------------------------------------------------------
 /- WEBSITE BASE SET -/
 ---------------------------------------------------------- */
html{
	outline:none;
}
body{
	color:#ffffff;
	font-family:Arial, sans-serif;
	font-size:100%; /*16px*/
	line-height:1.6;
	word-break:break-all;
	padding:0;
	margin:0;
}
li{
	list-style:none;
}



/* ----------------------------------------------------------
 /- SETTING FONT -/
 ---------------------------------------------------------- */
/*
@import url('https://fonts.googleapis.com/css?family=PT+Sans:700|Roboto:700');
@import url('https://fonts.googleapis.com/css?family=Asap|Montserrat');
@import url('https://fonts.googleapis.com/earlyaccess/notosansjapanese.css');
@import url('https://fonts.googleapis.com/earlyaccess/roundedmplus1c.css');
*/
/*
@import url('https://fonts.googleapis.com/earlyaccess/sawarabigothic.css');
@import url('https://fonts.googleapis.com/earlyaccess/sawarabimincho.css');
*/


/* ----------------------------------------------------------
 /- SECTION CONTAINER SET -/
 ---------------------------------------------------------- */
.section_container{
	width:75vw;
	background:rgba(255,255,255, 0.6);
	text-align:center;
	padding:20px 10px;
	margin:auto;
}
.section_container_heavy{
	width:75vw;
	background:rgba(255,255,255, 0.85);
	text-align:center;
	padding:20px 10px 10px 10px;
	margin:auto;
}
.section_container_dark{
	width:75vw;
	background:rgba(50,50,50, 0.5);
	text-align:center;
	padding:20px 10px;
	margin:auto;
}
.section_container_dark_heavy{
	width:75vw;
	background:rgba(50,50,50, 0.7);
	text-align:center;
	padding:20px 10px;
	margin:auto;
}
.section_container_clear{
	width:75vw;
	text-align:center;
	padding:20px 10px;
	margin:auto;
}
@media screen and (max-width:480px){
	.section_container, .section_container_heavy, .section_container_dark, .section_container_dark_heavy, .section_container_clear {
		width:90vw;
	}
}



/* ----------------------------------------------------------
 /- CONTENTS 1st PAGE TEXT SET -/
 ---------------------------------------------------------- */
h2.description_title {
	color:#00461F;
	font-family: "Noto Sans JP" "Sawarabi Gothic";
/*	font-size:calc(112.5% + 0.25vw);*/
	font-size:calc(168.5% + 0.4vw);
	font-weight:900;
	line-height:1;
	letter-spacing:0.05em;
	margin-bottom:15px;	
}
h2.description_title .en_font {
	font-family: 'Josefin Sans', sans-serif;
}
.description_text {
	color: #202020;
	font-family: "Noto Sans JP" "Sawarabi Gothic";
	font-size:calc(100% + 0.15vw);
	line-height:1.6;
	letter-spacing:0.02em;
	margin-bottom:20px;
}
.description_text h3 {
	margin-bottom:7px;
}
.description_text p {
	margin-bottom:7px;
}
.description_text .en_font {
	font-family: 'Josefin Sans', sans-serif;
}
@media screen and (max-width:480px){
	h2.description_title {
		color:#00461F;
		font-family: "Noto Sans JP" "Sawarabi Gothic";
/*		font-size:calc(88% + 0.15vw);*/
		font-size:calc(102% + 0.15vw);
		font-weight:800;
		line-height:1;
		letter-spacing:0.03em;
		margin-bottom:10px;	
	}
	h2.description_title .en_font {
		font-family: 'Josefin Sans', sans-serif;
	}
	.description_text {
		color: #202020;
		font-family: "Noto Sans JP" "Sawarabi Gothic";
		font-size:calc(82% + 0.15vw);
		line-height:1.7;
		margin-bottom:10px;
	}
	.description_text h3 {
		margin-bottom:7px;
	}
	.description_text p {
		margin-bottom:7px;
	}
	.description_text .en_font {
		font-family: 'Josefin Sans', sans-serif;
	}
}



/* ----------------------------------------------------------
 /- CONTENTS 2nd PAGE TEXT SET -/
 ---------------------------------------------------------- */
h2.description_2nd_title {
	color:#00461F;
	font-family: "Noto Sans JP" "Sawarabi Gothic";
/*	font-size:calc(112.5% + 0.25vw);*/
	font-size:calc(175.5% + 0.4vw);
	font-weight:800;
	line-height:1.4;
	letter-spacing:0.06em;
	margin-bottom:15px;	
}
h2.description_2nd_title .en_font {
	font-family: 'Josefin Sans', sans-serif;
}
.description_2nd_text {
	color: #202020;
	font-family: "Noto Sans JP" "Sawarabi Gothic";
	font-size:calc(100% + 0.15vw);
	font-weight:400;
	line-height:1.7;
	margin-bottom:20px;
}
.description_2nd_text h3 {
	color: #202020;
	font-family: "Noto Sans JP" "Sawarabi Gothic";
	font-size:calc(100% + 0.15vw);
	font-weight:400;
	line-height:1.7;
}
.description_2nd_text p {
	margin-bottom:15px;
}
.description_2nd_text .en_font {
	font-family: 'Josefin Sans', sans-serif;
}

/* ------- */
.description_layout_left {
	width:70vw;
	text-align:left;
	margin:0 auto 30px auto;
}

@media screen and (max-width:480px){
	h2.description_2nd_title {
		color:#00461F;
		font-family: "Noto Sans JP" "Sawarabi Gothic";
/*		font-size:calc(88% + 0.15vw);*/
		font-size:calc(126% + 0.2vw);
		font-weight:800;
		line-height:1.5;
		letter-spacing:0.05em;
		margin-bottom:10px;	
	}
	h2.description_2nd_title .en_font {
		font-family: 'Josefin Sans', sans-serif;
	}
	.description_2nd_text {
		color: #202020;
		font-family: "Noto Sans JP" "Sawarabi Gothic";
		font-size:calc(82% + 0.15vw);
		line-height:1.7;
		margin-bottom:20px;
	}
	.description_2nd_text h3 {
		color: #202020;
		font-family: "Noto Sans JP" "Sawarabi Gothic";
		font-size:calc(82% + 0.15vw);
		line-height:1.7;
	}
	.description_2nd_text p {
		margin-bottom:7px;
	}
	.description_2nd_text .en_font {
		font-family: 'Josefin Sans', sans-serif;
	}

	/* ------- */
	.description_layout_left {
		width:85vw;
		text-align:left;
		margin:0 auto 20px auto;
	}
}



/* ----------------------------------------------------------
 /- CONTENTS ALL SLIDE LINK SET -/
 ---------------------------------------------------------- */
h3.morelink_slide {
	font-family: 'Josefin Sans', sans-serif;
/*	font-size:116%;*/
	font-size:calc(104.5% + 0.25vw);
	margin-bottom:20px;
}
@media screen and (max-width:480px){
	h3.morelink_slide {
		font-size:100%;
		margin-bottom:20px;
	}
}
h3.morelink_slide a,
h3.morelink_slide a::before,
h3.morelink_slide a::after {
	font-weight:600;
	text-decoration:none;
	padding-bottom:5px;
	-webkit-transition:all .4s;
	transition:all .4s;
}

/* ------- */
h3.morelink_slide a:link {
	color:#8C6842;
	border-bottom:5px solid #8C6842;
}
h3.morelink_slide a:visited {
	color:#8C6842;
	border-bottom:5px solid #8C6842;
}
h3.morelink_slide a:hover {
	color:#CDB181;
	border-bottom:5px solid #CDB181;
}
h3.morelink_slide a:active,
h3.morelink_slide a:focus {
	color:#CDB181;
	border-bottom:5px solid #CDB181;
}

/* ------- */
h3.morelink_slide i {
	margin-left:7px;
}



/* ----------------------------------------------------------
 /- CONTENTS ALL JUNP LINK SET -/
 ---------------------------------------------------------- */
h3.morelink_jump {
	font-family: 'Josefin Sans', sans-serif;
	font-size:100%;
	margin-bottom:20px;
}
h3.morelink_jump_upper {
	margin-bottom:10px;
}
h3.morelink_jump a {
	display:inline-block;
	width:40vw;
	max-width:630px;
	height:50px;
	text-align:center;
	text-decoration:none;
	line-height:50px;
	outline:none;
	border-radius:4px; 
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
}
h3.morelink_jump a::before,
h3.morelink_jump a::after {
	position:absolute;
	z-index:-1;
	display:block;
	content:'';
}
h3.morelink_jump a,
h3.morelink_jump a::before,
h3.morelink_jump a::after {
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	-webkit-transition:all .5s;
	transition:all .5s;
}

/* ------- */
h3.morelink_jump a {
	background-color:#8C6842;
	border:2px solid #8C6842;
	color:#ffffff;
	line-height:46px;
}
h3.morelink_jump a:hover {
	background-color:#ffffff;
	border-color:#8C6842;
	color:#8C6842;
}

/* ------- */
h3.morelink_jump i {
	font-size:112%;
	font-weight:normal;
	margin-left:7px;
}
h3.morelink_jump i.i__bold {
	font-weight: bold;
}

@media screen and (max-width:480px){
	h3.morelink_jump a {
		width:70vw;
		min-width:230px;
		height:40px;
		line-height:38px;
	}
	h3.morelink_jump i {
		font-size:108%;
		font-weight:normal;
		margin-left:7px;
	}
}



































/* ----------------------------------------------------------
 /- PC and SP CONTENTS SET -/
 ---------------------------------------------------------- */
@media screen and (min-width:769px){
	.pc_contents{display:block;}
	.sp_contents{display:none;}
	.pc__textstring{display:inline;}
	.sp__textstring{display:none;}
	.pc__br{display:inline;}
	.sp__br{display:none;}
}
@media screen and (max-width:768px){
	.pc_contents{display:block;}
	.sp_contents{display:none;}
	.pc__textstring{display:inline;}
	.sp__textstring{display:none;}
	.pc__br{display:inline;}
	.sp__br{display:none;}
}
@media screen and (max-width:480px){
	.pc_contents{display:none;}
	.sp_contents{display:block;}
	.pc__textstring{display:none;}
	.sp__textstring{display:inline;}
	.pc__br{display:none;}
	.sp__br{display:inline;}
}


/* ----------------------------------------------------------
 /- PC and SP HAMBURGER MENU SET -/
 ---------------------------------------------------------- */
#menu{
	position:fixed;
	height: 40px;
	z-index: 70;
	width: 100%;
	padding: 0;
	margin:0 auto;
	text-align:center;
}

/* ------- */
.header_nav_logo{margin:0 auto;}
.header_nav_logo img{max-width:209px; width:209px; height:40px;}

/* ------- */
.header{
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 40px;
	background-color: rgba(255,255,255, 0.5);
	box-shadow: 0 2px 6px rgba(0,0,0,.16);
}
@media screen and (max-width:480px){
	.header{
		background-color: rgba(255,255,255, 0.7);
	}
}
.global-nav{
	position: fixed;
	right: -320px; /* これで隠れる */
	top: 0;
	width: 300px; /* スマホに収まるくらい */
	height: 100vh;
	padding-top: 40px;

padding-bottom: 200px;

	background-color: #303030;
	transition: all .5s;
	z-index: 200;
	overflow-y: auto; /* メニューが多くなったらスクロールできるように */
}
.hamburger {
	position: absolute;
	right: 0;
	top: 0;
	width: 40px; /* クリックしやすいようにちゃんと幅を指定する */
	height: 40px; /* クリックしやすいようにちゃんと高さを指定する */
	cursor: pointer;
	z-index: 300;
}
.global-nav__list {
	margin: 0;
	padding: 0;

/*padding-bottom: 200px;*/

	list-style: none;
	overflow-y: auto; /* メニューが多くなったらスクロールできるように */
}
.global-nav__item {
	text-align: left;
	padding: 0 5px 0 20px;
}

/* ------- */
.global-nav__item a {
	display: block;
	padding: 8px 0 8px 7px;
	border-bottom: 1px solid #606060;
	text-decoration: none;
	color: #ffffff;
}
.global-nav__sub a {
	padding: 8px 0 8px 25px;
}
.global-nav__item a:hover {
	background-color: #606060;
	color: #ffffff;
}
.hamburger__line {
	position: absolute;
	left: 11px;
	width: 18px;
	height: 1px;
	background-color: #111;
	transition: all .4s;
}
.hamburger__line--1 {
	top: 14px;
}
.hamburger__line--2 {
	top: 20px;
}
.hamburger__line--3 {
	top: 26px;
}
.black-bg {
	position: fixed;
	left: 0;
	top: 0;
	width: 100vw;
	height: 100vh;
	z-index: 100;
	background-color: #000;
	opacity: 0;
	visibility: hidden;
	transition: all .4s;
	cursor: pointer;
}

/* ------- */
.nav-open .global-nav {
	right: 0;
}
.nav-open .black-bg {
	opacity: .8;
	visibility: visible;
}
.nav-open .hamburger__line--1 {
    -webkit-transform: rotate(405deg);
    -ms-transform: rotate(405deg);
	transform: rotate(405deg);
	top: 20px;
	background-color: #fff;
}
.nav-open .hamburger__line--2 {
	width: 0;
	left: 50%;
}
.nav-open .hamburger__line--3 {
    -webkit-transform: rotate(405deg);
    -ms-transform: rotate(405deg);
	transform: rotate(-405deg);
	top: 20px;
	background-color: #fff;
}

/* ------- */
.nav__open__sns {
	text-align:left;
	padding:20px 0 200px 20px;
}
.nav__open__sns li {
	font-size:calc(300.5% + 0.5vw);
	display:inline;
	margin:0 20px 0 0;
}
.nav__open__sns li a,
.nav__open__sns li a::before,
.nav__open__sns li a::after {
	font-weight:600;
	text-decoration:none;
	padding-bottom:5px;
	-webkit-transition:all .4s;
	transition:all .4s;
}
.nav__open__sns li a:link {
	color:#ffffff;
}
.nav__open__sns li a:visited {
	color:#e0e0e0;
}
.nav__open__sns li a:hover {
	color:#CDB181;
}
.nav__open__sns li a:active,
.nav__open__sns li a:focus {
	color:#CDB181;
}







/* ----------------------------------------------------------
 /- IMAGES SHOW MOVING SET -/
 ---------------------------------------------------------- */
.photo_show_moving {
/*	transition: 1.1s;*/
	transition: 0.6s;
}
@media screen and (max-width:480px){
	.photo_show_moving {
		transition: 0.7s;
	}
}
.photo_show_moving{
	opacity: 0;
	-webkit-transform: translate(0,80px); 
    -ms-transform: translate(0,80px);
	transform: translate(0,80px); 
}

/* ------- */
.photo_show_slide_moving{
	transition: 0.6s;
}
.photo_show_slide_moving{
	opacity: 0;
	-webkit-transform: translate(70px,0); 
    -ms-transform: translate(70px,0);
	transform: translate(70px,0); 
}

/* ------- */
.moving_action{
	opacity: 1;
	-webkit-transform: translate(0,0);
    -ms-transform: translate(0,0);
	transform: translate(0,0); 
}



/* ----------------------------------------------------------
 /- ScROLL DOWN ARROW SET -/
 ---------------------------------------------------------- */
@media screen and (min-width:769px){
	div.darrow{display:block;}
}
@media screen and (max-width:768px){
	div.darrow{ display:none;}
}
@media screen and (max-width:480px){
	div.darrow{ display:none;}
}

[data-ca3_icon]::before {
    font-weight: normal;
    content: attr(data-ca3_icon);
}
.ca3-scroll-down-arrow {
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2hldnJvbl90aGluX2Rvd24iIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjAgMjAiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDIwIDIwIiBmaWxsPSJ3aGl0ZSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBhdGggZD0iTTE3LjQxOCw2LjEwOWMwLjI3Mi0wLjI2OCwwLjcwOS0wLjI2OCwwLjk3OSwwYzAuMjcsMC4yNjgsMC4yNzEsMC43MDEsMCwwLjk2OWwtNy45MDgsNy44M2MtMC4yNywwLjI2OC0wLjcwNywwLjI2OC0wLjk3OSwwbC03LjkwOC03LjgzYy0wLjI3LTAuMjY4LTAuMjctMC43MDEsMC0wLjk2OWMwLjI3MS0wLjI2OCwwLjcwOS0wLjI2OCwwLjk3OSwwTDEwLDEzLjI1TDE3LjQxOCw2LjEwOXoiLz48L3N2Zz4=);
    background-size: contain;
    background-repeat: no-repeat;
}
.ca3-scroll-down-link {
    cursor:pointer;
    height: 120px;
    width: 150px;
    margin: 0px 0 0 -40px;
    line-height: 60px;
    position: absolute;
    left: 50%;
    bottom: 50px;
    color: #000;
    text-align: center;
    font-size: 70px;
    z-index: 100;
    text-decoration: none;
    text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.4);
    -webkit-animation: ca3_fade_move_down 2s ease-in-out infinite;
    -moz-animation:    ca3_fade_move_down 2s ease-in-out infinite;
    animation:         ca3_fade_move_down 2s ease-in-out infinite;
}
/* animated scroll arrow animation */
@-webkit-keyframes ca3_fade_move_down {
  0%   { -webkit-transform:translate(0,-20px); opacity: 0;  }
  50%  { opacity: 1;  }
  100% { -webkit-transform:translate(0,20px); opacity: 0; }
}
@-moz-keyframes ca3_fade_move_down {
  0%   { -moz-transform:translate(0,-20px); opacity: 0;  }
  50%  { opacity: 1;  }
  100% { -moz-transform:translate(0,20px); opacity: 0; }
}
@keyframes ca3_fade_move_down {
  0%   { transform:translate(0,-20px); opacity: 0;  }
  50%  { opacity: 1;  }
  100% { transform:translate(0,20px); opacity: 0; }
}



/* ----------------------------------------------------------
 /- SIDE ScROLL POINT SET -/
 ---------------------------------------------------------- */
#fp-nav ul li a.active span,
.fp-slidesNav ul li a.active span,
#fp-nav ul li:hover a.active span,
.fp-slidesNav ul li:hover a.active span{
    height: 16px;
    width: 16px;
    margin: -8px 0 0 -8px;
    border-radius: 100%;
 }
#fp-nav ul li a span,
.fp-slidesNav ul li a span {
    border-radius: 50%;
    position: absolute;
    z-index: 1;
    height: 8px;
    width: 8px;
    border: 0;
    background: #ffffff;
    left: 50%;
    top: 50%;
    margin: -4px 0 0 -4px;
    -webkit-transition: all 0.1s ease-in-out;
    -moz-transition: all 0.1s ease-in-out;
    -o-transition: all 0.1s ease-in-out;
    transition: all 0.1s ease-in-out;
}
#fp-nav ul li:hover a span,
.fp-slidesNav ul li:hover a span{
    width: 30px;
    height: 30px;
    margin: -15px 0px 0px -15px;
}


/* ---------------------------------------------------------- 
 /- SIDE ScROLL ARROW SET -/
 ---------------------------------------------------------- */
.fp-controlArrow {
    -webkit-user-select: none; /* webkit (safari, chrome) browsers */
    -moz-user-select: none; /* mozilla browsers */
    -khtml-user-select: none; /* webkit (konqueror) browsers */
    -ms-user-select: none; /* IE10+ */
    position: absolute;
    z-index: 4;
    top: 50%;
    cursor: pointer;
    width: 0;
    height: 0;
    border-style: solid;
    margin-top: -38px;
    -webkit-transform: translate3d(0,0,0);
    -ms-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
}

/* ------- */
.fp-controlArrow.fp-prev {
	left: 40px;
	width: 0;
	border-width: 38.5px 50px 38.5px 0;
	border-color: transparent #fff transparent transparent;
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
}
.fp-controlArrow.fp-prev:hover {
	-webkit-transform:translate(20px,0px);
	-ms-transform:translate(20px,0px);
	transform:translate(-20px,0px);
	transition:transform .5s;
	opacity:1.0;
	filter:alpha(opacity=10);
	-ms-filter:"alpha(opacity=10)";
}

/* ------- */
.fp-controlArrow.fp-next {
	right: 40px;
	border-width: 38.5px 0 38.5px 50px;
	border-color: transparent transparent transparent #ffffff;
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
}
.fp-controlArrow.fp-next:hover {
	-webkit-transform:translate(20px,0px);
	-ms-transform:translate(20px,0px);
	transform:translate(20px,0px);
	transition:transform .5s;
	opacity:1.0;
	filter:alpha(opacity=10);
	-ms-filter:"alpha(opacity=10)";
}

/* ------- */
@media screen and (max-width:768px){
	.fp-controlArrow.fp-prev{display:block; border-width: 31.5px 31px 31.5px 0;}
	.fp-controlArrow.fp-next{display:block; border-width: 31.5px 0 31.5px 31px;}
}
@media screen and (max-width:667px){
	.fp-controlArrow.fp-prev{display:block; border-width: 25.5px 25px 25.5px 0;}
	.fp-controlArrow.fp-next{display:block; border-width: 25.5px 0 25.5px 25px;}
}
@media screen and (max-width:480px){
	.fp-controlArrow.fp-prev{display:none;}
	.fp-controlArrow.fp-next{display:none;}
}













/* /- IMAGES LINK ACTION -/
 ---------------------------------------------------------- */
figure a:hover img {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
}
figure img,
figure img::before,
figure img::after {
	-webkit-transition: all .5s;
	transition: all .5s;
}



























