@charset "UTF-8";
/*--------------------------------------------------------------
Foundation
--------------------------------------------------------------*/
@import url("https://fonts.googleapis.com/css?family=PT+Sans:700&display=swap");
@import url("https://fonts.googleapis.com/css?family=Montserrat:600&display=swap");

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
i,
font,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
figure,
figcaption,
input,
textarea,
select,
i {
	border: 0;
	font-style: inherit;
	font-weight: inherit;
	font-size: inherit;
	line-height: inherit;
	font-family: inherit;
	color: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
	line-height: 1.5;
}

html {
	font-size: 62.5%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

input[type="submit"],
button {
	-webkit-appearance: none;
}

body {
	font-size: 20px;
	font-size: 2rem;
	line-height: 1.5;
	background: #fff;
	color: #000;
	overflow-y: scroll;
	font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "メイリオ", "Meiryo", sans-serif;
}

ul,
li {
	list-style: none;
}

table {
	border-collapse: collapse;
	width: 100%;
}

a:hover,
a:active,
a:focus {
	outline: 0;
}

a {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transition: all .2s ease-in;
	transition: all .2s ease-in;
	-webkit-transition-property: opacity, color, background, box-shadow, -webkit-transform;
	transition-property: opacity, color, background, box-shadow, -webkit-transform;
	transition-property: opacity, color, background, transform, box-shadow;
	transition-property: opacity, color, background, transform, box-shadow, -webkit-transform;
	opacity: 1;
	line-height: inherit;
	text-decoration: none;
}

img,
input[type="image"] {
	border: 0;
	height: auto;
	max-width: 100%;
}

input[type="submit"] {
	cursor: pointer;
	-webkit-appearance: none;
	border-radius: 0;
}

strong {
	font-weight: bold;
}

a:hover,
input[type="image"]:hover {
	opacity: 0.7;
}

p * {
	line-height: inherit;
}

.ft_e {
	font-family: 'PT Sans', sans-serif;
	font-weight: 700;
	letter-spacing: .1em;
}

.ft_m {
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
}

/*--------------------------------------------------------------
Component
--------------------------------------------------------------*/
.evt {
	visibility: hidden;
}

.c_anchor {
	position: absolute;
	width: 100%;
	left: 0;
	margin-top: -7em;
}

@media screen and (max-width: 767px) {
	.c_anchor {
		margin-top: -4em;
	}
}

/*--------------------------------------------------------------
Utility
--------------------------------------------------------------*/
.u_wrap {
	overflow: hidden;
}

.u_inner {
	width: 56em;
	margin: 0 auto;
	padding: 0 1em;
	max-width: 100%;
}

#max {
	width: 56em;
}

@media only screen and (max-width: 450px) {
	html {
		font-size: calc(100vw * 10 / 450) !important;
	}
}

.u_clearfix:after,
.u_clearfix>li:after {
	height: 0;
	visibility: hidden;
	content: ".";
	display: block;
	clear: both;
}

* html .u_clearfix,
* html .u_clearfix>li {
	zoom: 1;
}

*+html .u_clearfix,
*+html .u_clearfix li {
	zoom: 1;
}

.u_switch_img {
	opacity: 1;
}

.u_relative {
	position: relative;
}

.pc_toggle {
	display: block !important;
}

@media screen and (min-width: 768px) {
	.u_tel {
		cursor: default;
	}

	.u_tel:hover {
		opacity: 1;
	}

	.u_visible_sp {
		display: none;
		text-align: center;
	}

	.u_tel {
		cursor: default;
	}

	.u_tel:hover {
		opacity: 1;
	}
}

@media screen and (max-width: 767px) {
	.u_visible_pc {
		display: none;
	}

	.u_inner {
		width: auto;
		margin: 0 5.3%;
		padding: 0;
	}

	.u_inner.sp {
		margin: 0;
	}
}

/*--------------------------------------------------------------
Layout/PageBase
--------------------------------------------------------------*/
#header a {
	display: block;
}

.h_logo {
	position: absolute;
	width: 6em;
	left: 0;
	top: 1em;
	z-index: 66;
	text-align: right;
}

@media screen and (max-width: 767px) {
	.h_logo {
		top: .4em;
		left: 1em;
		text-align: left;
	}
}

.h_logo a {
	font-size: 2.8rem;
	line-height: 1.3;
}

.h_nav {
	white-space: nowrap;
	margin-bottom: 1em;
}

.h_nav>* {
	line-height: 1.8;
}

.h_nav dt {
	font-size: 1.6rem;
	margin-top: 0.5em;
}

.h_nav dd {
	font-size: 1.2rem;
	font-weight: 700;
	letter-spacing: .15em;
}

.h_nav dt a:hover,
.h_nav dd a:hover {
	text-decoration: underline;
}

@media screen and (max-width: 767px) {
	.h_nav dt {
		font-size: 2.2rem;
	}

	.h_nav dd {
		font-size: 1.6rem;
	}

	.h_nav dd a:hover {
		text-decoration: none;
	}
}

.h_sns {
	/*padding-top: 2em;*/
	padding: 0.5em 0;
}

.h_sns li {
	display: inline-block;
	margin: 0 .1em;
}

@media screen and (max-width: 767px) {
	.h_sns li {
		width: 1.5em;
		margin: 0 .4em;
	}


}

.h_shop {
	/*height: 7em;*/
}

.h_shop a {
	background: #ffce0c;
	font-size: 1.4rem;
	height: 100%;
	padding: 0.5em 0;
	letter-spacing: .03em;
}

.h_shop a:hover,
.h_nav dd .h_shop a:hover {
	text-decoration: none;
}

.h_shop img {
	width: 2em;
	display: block;
	margin: 0 auto 1.2em;
}

@media screen and (max-width: 767px) {
	.h_shop {
		height: 7em;
	}

	.h_shop a {
		font-size: 2rem;
	}
}

.h_btm {
	/*	margin-top: 0!important;
	position: absolute;*/
	bottom: 0;
	width: 100%;
}

.h_btm p {
	font-size: 1.2rem;
}

@media screen and (max-width: 767px) {
	.h_btm p {
		font-size: 1.6rem;
	}
}

.h_wrap {
	overflow-y: auto;
	overflow-x: hidden;
	height: calc(100vh - 7em);
	bottom: 0;
	position: absolute;
	width: 100%;
}

.open {
	cursor: pointer;
}

.top_main .sns.open dt {
	display: block;
}

.sns.open .news {
	/* visibility: hidden; */
}

/* .img_50 {
	width: 50%;
	height: auto;
}  */

@media screen and (max-width: 767px) {
	.h_wrap {
		height: 100vh;
	}
}

#toggle_menu {
	text-align: center;
	width: 7em;
	background: #fff;
	position: fixed;
	top: 0;
	z-index: 60;
	height: 100vh;
}

@media screen and (min-width: 768px) {
	#toggle_menu {
		left: 0;
	}
}

@media screen and (max-width: 767px) {
	#toggle_menu {
		right: -11em;
		width: 11em;
	}

	#toggle_menu:before {
		position: absolute;
		width: 100vw;
		height: 100vh;
		background: rgba(0, 0, 0, 0.5);
		right: 11em;
		top: 0;
	}
}

@media screen and (max-width: 767px) {
	body {
		transition: transform .2s ease-in;
	}

	body.open {
		transform: translate(-11em, 0);
	}

	body.open #toggle_menu:before {
		content: '';
	}

	.h_menu {
		display: block;
		position: fixed;
		right: 1em;
		top: .5em;
		cursor: pointer;
		z-index: 69;
		padding: 1em .5em;
		text-align: center;
	}

	.h_menu_icon {
		position: relative;
		display: block;
	}

	.h_menu_icon,
	.h_menu_icon:before,
	.h_menu_icon:after {
		width: 1.4em;
		height: 2px;
		background-color: #000;
		-webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
		transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
		-webkit-transition-property: background-color, top;
		transition-property: background-color, top;
	}

	.h_menu_icon:before,
	.h_menu_icon:after {
		position: absolute;
		top: -.45em;
		left: 0;
		content: '';
	}

	.h_menu_icon:after {
		top: .45em;
	}

	body.open .h_menu_icon {
		background-color: transparent;
	}

	body.open .h_menu_icon:before,
	body.open .h_menu_icon:after {
		top: 0;
		background-color: #fff;
	}

	body.open .h_menu_icon:before {
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	body.open .h_menu_icon:after {
		-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
}

/*--------------------------------------------------------------
Project
--------------------------------------------------------------*/
.top_main {
	position: relative;
	height: 100vh;
	overflow: hidden;
}

.top_main img {
	display: block;
	width: 100%;
}

.top_main .sns {
	position: absolute;
	top: 0;
	right: 1em;
	z-index: 5;
	background: url(../img/mv_bg_sns.png) no-repeat top center;
	background-size: 100% auto;
	width: 15em;
	padding: 2em 1em .8em;
}

.top_main .sns dt {
	text-align: center;
	margin-bottom: .5em;
}

.facebook_letter {
	display: none;
}

.sns.open .facebook_letter {
	display: block;
}


/* .top_main .sns dd {
	margin-bottom: 1em;
} */

.top_main .sns:before {
	content: '';
	position: absolute;
	width: 100%;
	height: 50%;
	/*background: #fff;*/
	background: url(../img/mv_bg_sns_before.png) no-repeat top center;
	border-radius: 0 0 .5em .5em;
	bottom: -7px;
	left: 0;
	z-index: -1;
}

@media screen and (min-width:768px) and (max-width:1024px) {
	.top_main .sns {
		display: none;
	}
}

@media screen and (max-width: 767px) {
	.top_main .sns {
		width: 11em;
		right: 48%;
		transform: translate(60%, 0);
		padding-bottom: 0;
	}

	.top_main .sns>* {
		display: none;
	}

	.top_main .sns>*.switch {
		display: block;
	}

	.top_main .sns .switch {
		text-align: center;
		font-size: 1.4rem;
		cursor: pointer;
		margin-bottom: .5em;
		margin-top: -.5em;
	}

	.top_main .sns .switch .close {
		position: absolute;
		width: 100%;
		left: 0;
		opacity: 0;
	}

	.top_main .sns:before {
		height: 1em;
		bottom: -.5em;
		background: url(../img/mv_bg_sns.png) no-repeat bottom center;
	}

	.top_main .sns.open:before {
		height: 50%;
		bottom: -14px;
	}

	.top_main .sns.open .switch .close {
		opacity: 1;
	}

	/* .top_main .sns.open .switch .open {
		opacity: 0;
	} */

	.top_main .sns.open>* {
		display: block;
	}
	.fb_iframe_widget iframe {
		width: 100%!important;
	}
}

.top_main .fb {
	overflow-x: auto;
	display: block;
}

.sns.open .fb {
	display: none;
}

.top_main .insta li {
	float: left;
	width: 33.33%;
	padding: 1px;
}

.top_main .insta li a {
	display: block;
	background: no-repeat center center;
	background-size: cover;
	padding-top: 100%;
}

.top_main .wrap {
	position: relative;
	left: 50%;
	top: 50%;
	z-index: 1;
	transform: translate(-50%, -50%);
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
	.top_main .wrap {
		/*left: -15%;
		transform: translate(0, -50%);*/
	}
}

@media screen and (min-width: 1025px) {
	.top_main .wrap {
		/*left: 50%;
		transform: translate(-50%, -50%);*/
	}
}

@media screen and (max-width: 767px) {
	.top_main .wrap {
		left: 0;
		transform: translate(0, -50%);
	}
}

@media screen and (max-width: 480px) {
	.top_main .wrap {
		left: 0;
		transform: translate(-5%, -50%);
	}
}

.top_main .wrap a {
	position: absolute;
	z-index: 2;
	top: 0;
}

.top_main .wrap a img {
	position: absolute;
}

@media screen and (min-width: 1025px) {
	.top_main .wrap a img {
		opacity: 0;
	}
}

.top_main .wrap a.a {
	left: 31%;
	top: 23.5%;
	width: 16.2%;
	height: 12%;
}

.top_main .wrap a.a img {
	top: -85%;
	right: -12%;
}

.top_main .wrap a.b {
	left: 54.5%;
	top: 37%;
	width: 18.3%;
	height: 17%;
}

.top_main .wrap a.b img {
	top: -54%;
	right: 70%;
	width: 70%;
}

.top_main .wrap a.c {
	left: 54.5%;
	top: 18%;
	width: 20.55%;
	height: 16%;
}

.top_main .wrap a.c img {
	top: -56%;
	right: -19%;
}

.top_main .wrap a.d {
	right: 4.8%;
	top: 42%;
	width: 11.55%;
	height: 17%;
}

.top_main .wrap a.d img {
	top: 83%;
	right: 42%;
}

.top_main .wrap a.e {
	left: 15%;
	top: 23%;
	width: 15.9%;
	height: 13%;
}

.top_main .wrap a.e img {
	top: -80%;
	right: -18.5%;
}

.top_main .wrap a.f {
	left: 47.5%;
	top: 9.5%;
	width: 10.5%;
	height: 9%;
}

.top_main .wrap a.f img {
	top: 75%;
	right: -30%;
}

.top_main .wrap a.g {
	right: 23.4%;
	top: 74.6%;
	width: 35%;
	height: 20%;
}

.top_main .wrap a.g img {
	top: -70%;
	right: 17%;
	width: 44.8%;
}

.top_main .wrap a.h {
	right: 48.4%;
	top: 34.6%;
	width: 16.5%;
	height: 5%;
}

.top_main .wrap a.h img {
	top: 86%;
	right: -24%;
}

.top_main .wrap a.i {
	left: 26%;
	top: 50%;
	width: 26.5%;
	height: 20%;
}

.top_main .wrap a.i img {
	top: 65%;
	right: 57%;
	width: 41.5%;
}

.top_main .wrap a.j {
	left: 8%;
	top: 45%;
	width: 22.8%;
	height: 12%;
}

.top_main .wrap a.j img {
	top: -80%;
	right: -30%;
}

.top_main .wrap a:hover,
.top_main .wrap a:hover img {
	opacity: 1;
}

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

	.top_main .wrap a.c,
	.top_main .wrap a.d,
	.top_main .wrap a.e {
		/*display: none;*/
	}
}

@media screen and (max-width: 1024px) {
	.top_main .wrap a.g img {
		/*right: 38%;*/
	}

	.top_main .wrap a.c,
	.top_main .wrap a.d,
	.top_main .wrap a.e,
	.top_main .wrap a.h,
	.top_main .wrap a.i,
	.top_main .wrap a.j {
		display: none;
	}
}

@media screen and (max-width: 767px) {
	.top_main .wrap a.a {
		left: 17%;
		top: 23%;
		width: 28%;
		height: 11.5%;
	}

	.top_main .wrap a.b {
		left: 42%;
		top: 33%;
		width: 27%;
		height: 12%;
	}

	.top_main .wrap a.g {
		left: 38%;
		top: 64%;
		width: 30%;
		height: 13%;
	}

	.top_main .wrap a.a img,
	.top_main .wrap a.b img,
	.top_main .wrap a.g img {
		width: 100%;
		top: 0;
		right: 0;
	}

	.top_main .wrap a.c,
	.top_main .wrap a.d,
	.top_main .wrap a.e,
	.top_main .wrap a.f,
	.top_main .wrap a.h,
	.top_main .wrap a.i,
	.top_main .wrap a.j {
		display: none;
	}
}

body.home {
	overflow: hidden;
}

.low {
	margin-top: 7em;
}

@media screen and (max-width: 767px) {
	.low {
		margin-top: 4em;
	}
}

.low_header {
	background: url(../img/about_mv.jpg) no-repeat center center;
	background-size: cover;
	height: 15em;
}

.low_header .u_inner {
	height: 100%;
}

.low_header .ttl {
	position: relative;
	top: 50%;
	transform: translate(0, -50%);
}

/*# sourceMappingURL=style.css.map */

.copyright {
	position: absolute;
	bottom: 10px;
	left: 50%;
	z-index: 2;
	color: #fff;
	font-size: 14px;
}

@media screen and (max-width: 767px) {
	.copyright {
		margin-left: -51px;
	}

	.copyright.innercopyright {
		color: #000;
	}
}

.innerwrap {
	height: 100vh;
	overflow-y: scroll;
	box-sizing: border-box;
	background: url(../img/bg_about.jpg) no-repeat;
	background-size: cover;
	margin-left: 7em;
	padding: 2em;
}

.innerwrap h2 {
	margin-bottom: 1em;
	font-weight: bold;
	font-size: 2.4rem;
}

.innerwrap ul {
	margin-bottom: 1em;
}

.innerwrap ul li {
	list-style: disc;
	margin-left: 1.2em;
}

.innerwrap h3 {
	margin-top: 1em;
	font-weight: bold;
}

.innerwrap a:hover {
	text-decoration: underline;
}

.innerwrap iframe {
	width: 100%;
}

@media screen and (max-width: 767px) {
	.innerwrap {
		height: calc(100vh - 8.5em);
		margin-top: 6em;
		margin-left: 0;
	}

	.innerwrap a:hover {
		text-decoration: none;
	}
}

/* calendar */
.calendararea,
.calendararea font {
	font-size: 1.2rem;
}

.calendararea font {
	color: #FF9999;
}

.calendararea table,
.calendararea table td {
	box-sizing: border-box;
	border: 1px solid #ccc;
}

.about_top_img {
	/* width: 50%; */
	height: auto;
	margin-right: 3em;
}

.flex {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin-bottom: 2.5em;
}

.flex_child {
	width: 45%;
}

.mb_1em {
	margin-bottom: 1em;
}

.mb_05em {
	margin-bottom: 0.5em;
}

.mb_2em {
	margin-bottom: 2em;
}

.mb_0 {
	margin-bottom: 0em;
}

.img_link {
	max-width: 100%;
	align-self: flex-end;
	text-align: right;
	/* width: 50%; */
}

.img_link img {
	/* width: 100%; */
	display: inline-block;
	align-self: baseline;
}

.mt_none {
	margin-top: 0px !important;
}

.ft_mini_1 {
	font-size: 0.8em;
	font-weight: normal;
}

.ft_mini_2 {
	font-size: 0.9em;
	font-weight: normal;
}

.indent1 {
	padding-left: 1em;
	text-indent: -1em;
}

.detail_sec {
	justify-content: space-between !important;
	max-width: 95%;

}

@media screen and (max-width: 767px) {
	.flex {
		display: block;
	}

	.about_top_img {
		width: 100%;
	}

	.flex_child {
		width: 100%;
	}
}

@media screen and (max-width: 1400px) {
	.tb_none {
		display: none;
	}

	.tb_block {
		display: block;
	}

	.about_top_img_2 {
		width: 100%;
		height: auto;
		margin-right: 0em;
	}

	.img_link img {
		/* padding-left: 2em; */
		width: auto;
	}

	.detail_sec {
		max-width: 100%;
	}
}

@media screen and (min-width: 1400px) {
	.tb_none {
		display: block;
	}

	.tb_block {
		display: none;
	}
}

@media screen and (max-width: 1000px) {
	.about_top_img_2 {
		width: 100%;
	}

	.sp_mb {
		margin-bottom: 1em;
	}

}

@media screen and (max-width: 767px) {
	.sp_mb_25em {
		margin-bottom: 2.5em;
	}

	.img_link {
		width: 100%;
		text-align: right;
	}

	.img_link img {
		padding-left: 0em;
		width: auto;
	}

	.sns .fb {
		display: none;
	}

	.sns.open .fb {
		display: block;
	}

}

/* for IE 11 */
@media all and (-ms-high-contrast:none) {
	.ft_mini_1 {
		font-weight: bold;
	}

	.ft_mini_2 {
		font-weight: bold;
	}

	.about_top_img_2 {
		font-weight: bold;
	}
}


/* for Microsoft Edge */
@supports (-ms-ime-align:auto) {
	.ft_mini_1 {
		font-weight: bold;
	}

	.ft_mini_2 {
		font-weight: bold;
	}

	.about_top_img_2 {
		font-weight: bold;
	}
}