@charset "UTF-8";


/*――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――

全ページ共通

――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――*/

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
RESET_start
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

* {
	margin: 0;
	padding: 0;
	list-style-type: none;

	/** swiper の pagenation */
	--swiper-pagination-left: auto;
  --swiper-pagination-right: auto;
  --swiper-pagination-bottom: auto;
  --swiper-pagination-top: auto;
}

html {
	font-size: 62.5%;
}

h1,h2,h3,h4,h5,h6,
div,p,
span,em,strong,
ul,ol,li,
dl,dt,dd,
a {
	background-repeat: no-repeat;
	background-size: 100% auto;
}

a {
	outline: none;
}

img {
	vertical-align: bottom;
}

figure img {
	width: 100%;
}

button {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	appearance: none;
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
RESET_end
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/




/*――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――

共通フォント

――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――*/

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
FONTstart
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

/* IBM Plex San */
.font_base_mid {
	font-family: "IBM Plex Sans", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-variation-settings: "wdth" 100;
}

.font_base_bold {
	font-family: "IBM Plex Sans", sans-serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
	font-variation-settings: "wdth" 100;
}

/* Good Time */
.font_design_mid {
	font-family: "good-times", sans-serif;
	font-weight: 500;
	font-style: normal;
}

.font_design_bold {
	font-family: "good-times", sans-serif;
	font-weight: 700;
	font-style: normal;
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
FONTend
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/




/*――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――

magnific popup override

――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――*/

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
magnific popup start
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

.mfp-bg {
    background: #eaf0f3 !important;
    opacity: 0.8 !important;
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
magnific popup end
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/




/*――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――

汎用演出・スタイル

――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――*/

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
COMMON_start
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

body {
	background-image: #ffffff;
	color: #3a3f50;
	/* 和文基本 */
	font-size: 1.4em;
	font-family: "IBM Plex Sans", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-variation-settings: "wdth" 100;
	-webkit-font-smoothing: antialiased;
	letter-spacing: 0.065em;
	word-break: break-word;
}

/* テキストリンクがないのであらかじめ黒色にしておく */
a {
  color: #3a3f50;
  text-decoration: none;
}

a:link, a:visited, a:hover, a:active {
  color: #3a3f50;
  text-decoration: none;
}

button {
	color: #3a3f50;
  text-decoration: none;
}


/*
汎用アニメーション
*/
/*一括指定*/
.wp_t_a,
.wp_t_b,
.wp_t_c,
.wp_t_d {
	animation-timing-function: cubic-bezier(.42,0,0,.99);
	animation-direction: normal;
	animation-fill-mode: forwards;
	animation-play-state: running;
	animation-iteration-count: inherit;
}


/*トグルタイプ*/
.wp_t_a_toggle {
	opacity: 0;
	transition-duration: 600ms;
	transition-property: all;
	transition-timing-function: cubic-bezier(.42,0,0,.99);
	transition-delay: 0ms;
	transform-origin: center;
}

.wp_t_a_toggle_active {
	opacity: 1;
}


/*通過タイプ*/
.wp_t_a {
	opacity: 0;
	animation-duration: 800ms;
}

.wp_t_a_active {
	animation-name: anime_wp_t_a;
}

@keyframes anime_wp_t_a {
	0% {
		opacity: 0;
		transform: translateY(20px);
	}
	100%{
		opacity: 1;
		transform: translateY(0px);
	}
}


/*通過タイプ*/
.wp_t_b {
	opacity: 0;
	animation-duration: 800ms;
}

.wp_t_b_active {
	animation-name: anime_wp_t_b;
}

@keyframes anime_wp_t_b {
	0% {
		opacity: 0;
		transform: translateY(-20px);
	}
	100%{
		opacity: 1;
		transform: translateY(0px);
	}
}


/*通過タイプ*/
.wp_t_c {
	opacity: 0;
	animation-duration: 800ms;
}

.wp_t_c_active {
	animation-name: anime_wp_t_c;
}

@keyframes anime_wp_t_c {
	0% {
		opacity: 0;
		transform: translateX(-20px);
	}
	100%{
		opacity: 1;
		transform: translateX(0px);
	}
}


/*通過タイプ*/
.wp_t_d {
	opacity: 0;
	animation-duration: 800ms;
}

.wp_t_d_active {
	animation-name: anime_wp_t_d;
}

@keyframes anime_wp_t_d {
	0% {
		opacity: 0;
		transform: translateX(20px);
	}
	100%{
		opacity: 1;
		transform: translateX(0px);
	}
}


/*通過タイプ*/
.wp_t_e {
	opacity: 0;
}

.wp_t_e_active {
	opacity: 1;
}




/*
汎用アニメーション
*/
/*拡大フェードアウト*/
@keyframes common_anime_blink {
	0% {
		opacity: 1;
		transform: scale(1);
	}
	100%{
		opacity: 0;
		transform: scale(1.5);
	}
}


/*無限回転*/
@keyframes common_anime_rotate {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}


/*右バウンス*/
@keyframes common_anime_bounce_left {
	0% {
		transform: translateX(0);
	}
	50% {
		transform: translateX(-10px);
	}
	100% {
		transform: translateX(0);
	}
}


/*左バウンス*/
@keyframes common_anime_bounce_right {
	0% {
		transform: translateX(0);
	}
	50% {
		transform: translateX(10px);
	}
	100% {
		transform: translateX(0);
	}
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
COMMON_end
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
