@charset "UTF-8";
* {
	margin: 0;
	padding: 0;
	vertical-align: baseline;
	font-size: 100%;
	font: inherit;
	border: 0;
	outline: 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
::before, ::after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
article, aside, dialog, figure, footer, header, main, menu, nav, section, audio, canvas, video, br, hr {
	display: block
}
body {
    line-height: 1;
    background-image: url(../../images/intro_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position-x: center;
}
ol, ul {
	list-style: none
}
li {
	list-style-type: none
}
blockquote, q {
	quotes: none
}
blockquote::before, blockquote::after, q::before, q::after {
	content: '';
	content: none
}
table {
	border-collapse: collapse;
	border-spacing: 0;
	empty-cells: show
}
img {
	vertical-align: middle
}
iframe[name=google_conversion_frame] {
	display: block;
	height: 0
}
@font-face {
	font-family: "MyYuGothicM";
	font-weight: 400;
	src: local("YuGothic-Medium"), local("Yu Gothic Medium"), local("YuGothic-Regular")
}
@font-face {
	font-family: "MyYuGothicM";
	font-weight: 700;
	src: local("YuGothic-Bold"), local("Yu Gothic")
}
html {
	text-rendering: optimizeSpeed
}
body {
	font-size: 3.2vw;
	font-family: Hiragino Sans, MyYuGothicM, YuGothic, -apple-system, BlinkMacSystemFont, Avenir, "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	font-weight: 400;
	-webkit-font-feature-settings: "kern";
	font-feature-settings: "kern";
	-webkit-font-kerning: normal;
	font-kerning: normal;
	color: #000;
	/*background: #494949;;*/
	word-wrap: break-word;
	word-wrap: break-word;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: unset;
	scroll-behavior: smooth;
	text-rendering: optimizeSpeed
}
a {
	text-decoration: none;
	color: #25bdcf;
	-webkit-touch-callout: none;
	-webkit-tap-highlight-color: transparent
}
input, select, textarea, button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-weight: 300;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	line-height: 1;
	background: 0 0;
	border: 0;
	outline: 0;
	border-radius: 0;
	cursor: pointer;
	-webkit-touch-callout: none;
	-webkit-tap-highlight-color: transparent;
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: unset
}
input:placeholder-shown, select:placeholder-shown, textarea:placeholder-shown, button:placeholder-shown {
	font-family: Hiragino Sans, MyYuGothicM, YuGothic, -apple-system, BlinkMacSystemFont, Avenir, "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif
}
input::-webkit-input-placeholder, select::-webkit-input-placeholder, textarea::-webkit-input-placeholder, button::-webkit-input-placeholder {
	font-family: Hiragino Sans, MyYuGothicM, YuGothic, -apple-system, BlinkMacSystemFont, Avenir, "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif
}
input:-moz-placeholder, select:-moz-placeholder, textarea:-moz-placeholder, button:-moz-placeholder {
	opacity: 1;
	font-family: Hiragino Sans, MyYuGothicM, YuGothic, -apple-system, BlinkMacSystemFont, Avenir, "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif
}
input::-moz-placeholder, select::-moz-placeholder, textarea::-moz-placeholder, button::-moz-placeholder {
	opacity: 1;
	font-family: Hiragino Sans, MyYuGothicM, YuGothic, -apple-system, BlinkMacSystemFont, Avenir, "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif
}
input:-ms-input-placeholder, select:-ms-input-placeholder, textarea:-ms-input-placeholder, button:-ms-input-placeholder {
	font-family: Hiragino Sans, MyYuGothicM, YuGothic, -apple-system, BlinkMacSystemFont, Avenir, "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif
}
input:disabled, select:disabled, textarea:disabled, button:disabled {
	cursor: default
}
input, select, textarea {
	line-height: 1.6
}
select::-ms-expand {
	display: none
}
img {
	max-width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden
}
picture {
	display: block;
	max-width: 100%;
	height: auto
}
svg {
	overflow: visible;
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	transform-box: fill-box;
	opacity: 0.5;
}
svg path, svg rect, svg circle, svg polygon {
	transform-box: fill-box;
	-webkit-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	
}
.c-btn {
	position: relative;
	display: block;
	width: 60vw;
	height: 16vw;
	margin-right: auto;
	margin-left: auto;
	font-size: 4vw;
	font-weight: 600;
	letter-spacing: .15em;
	color: #494949;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	-webkit-transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
	transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
	transition: transform .2s cubic-bezier(.39, .575, .565, 1);
	transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}
.c-btn__face {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	border: 1px solid;
	-webkit-transition: .2s cubic-bezier(.39, .575, .565, 1);
	transition: .2s cubic-bezier(.39, .575, .565, 1);
	-webkit-transition-property: opacity, color, background, -webkit-transform;
	transition-property: opacity, color, background, -webkit-transform;
	transition-property: transform, opacity, color, background;
	transition-property: transform, opacity, color, background, -webkit-transform;
	background-color: white;
    opacity: 0.5;
}
.c-btn__face--play {
	-webkit-transform: translateZ(25px);
	transform: translateZ(25px)
}
.c-btn__face--stop {
	opacity: 0;
	-webkit-transform: rotateX(90deg) translateZ(25px);
	transform: rotateX(90deg) translateZ(25px)
}
.c-btn__face--loading {
	opacity: 0;
	-webkit-transform: rotateX(-90deg) translateZ(25px);
	transform: rotateX(-90deg) translateZ(25px)
}
.c-btn.is-play {
	-webkit-transform: translateZ(-25px) rotateX(-90deg);
	transform: translateZ(-25px) rotateX(-90deg)
}
.c-btn.is-play .c-btn__face--play {
	opacity: 0
}
.c-btn.is-play .c-btn__face--stop {
	opacity: 1
}
.c-btn.is-play .c-btn__face--loading {
	opacity: 0
}
.c-btn.is-loading {
	-webkit-transform: translateZ(-25px) rotateX(90deg);
	transform: translateZ(-25px) rotateX(90deg)
}
.c-btn.is-loading .c-btn__face {
	color: #8ad026;
	background: #494949;
}
.demo-4 .c-btn.is-loading .c-btn__face {
	color: #7426d0
}
.c-btn.is-loading .c-btn__face--play {
	opacity: 0
}
.c-btn.is-loading .c-btn__face--stop {
	opacity: 0
}
.c-btn.is-loading .c-btn__face--loading {
	opacity: 1
}
.p-view {
	position: relative
}
.p-view__title {
	position: absolute;
	top: 8vw;
	left: 0;
	z-index: 100;
	width: 100%;
	text-align: center;
	font-size: 4vw;
	font-weight: 900;
	line-height: 2;
	color: #494949;
}
.p-view__box {
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
	height: 0;
	padding-top: 100vh;
	margin-right: auto;
	margin-left: auto;
	/*background: #454743;*/
}
.demo-4 .p-view__box {
	background: #7426d0
}
.p-view__btn {
	position: absolute;
	right: 0;
	left: 0;
	bottom: 20vw;
	z-index: 100;
	-webkit-perspective: 1000px;
	perspective: 1000px
}
.p-view__link {
	position: absolute;
	bottom: 30px;
	z-index: 100;
	width: 100%;
	text-align: center;
	color: #494949;
	background-color: #fff;
    padding: 5px 15px 2px 15px;
    opacity: 0.5;
    border-radius: 10px;
}
.p-view__link a {
	color: #494949;
}
.p-view__link a:hover {
	text-decoration: underline
}
.u-noscroll {
	overflow: hidden;
	height: 100%
}
.u-overflowHidden {
	overflow: hidden
}
.u-noevent {
	pointer-events: none
}
.u-exSp {
	display: none
}
.u-preload * {
	-webkit-transition: none!important;
	transition: none!important
}
.u-preline {
	white-space: pre-line
}
@-webkit-keyframes Fade {
	0% {
		opacity: 0
	}
	to {
		opacity: 1
	}
}
@keyframes Fade {
	0% {
		opacity: 0
	}
	to {
		opacity: 1
	}
}
@-webkit-keyframes BlockRevealX {
	0% {
		-webkit-transform-origin: left center;
		transform-origin: left center;
		-webkit-transform: scaleX(0);
		transform: scaleX(0)
	}
	40% {
		-webkit-transform-origin: left center;
		transform-origin: left center;
		-webkit-transform: scaleX(1);
		transform: scaleX(1)
	}
	60% {
		-webkit-transform-origin: right center;
		transform-origin: right center;
		-webkit-transform: scaleX(1);
		transform: scaleX(1)
	}
	to {
		-webkit-transform-origin: right center;
		transform-origin: right center;
		-webkit-transform: scaleX(0);
		transform: scaleX(0)
	}
}
@keyframes BlockRevealX {
	0% {
		-webkit-transform-origin: left center;
		transform-origin: left center;
		-webkit-transform: scaleX(0);
		transform: scaleX(0)
	}
	40% {
		-webkit-transform-origin: left center;
		transform-origin: left center;
		-webkit-transform: scaleX(1);
		transform: scaleX(1)
	}
	60% {
		-webkit-transform-origin: right center;
		transform-origin: right center;
		-webkit-transform: scaleX(1);
		transform: scaleX(1)
	}
	to {
		-webkit-transform-origin: right center;
		transform-origin: right center;
		-webkit-transform: scaleX(0);
		transform: scaleX(0)
	}
}
@media screen and (min-width:568px) {
	.u-exSp {
		display: block
	}
	.u-sp {
		display: none
	}
}
@media screen and (min-width:768px) {
	body {
		font-size: .9375vw
	}
	a[href^=tel] {
		pointer-events: none;
		cursor: text
	}
	.c-btn {
		width: 23.4375vw;
		height: 6.25vw;
		font-size: 1.40625vw;
		cursor: pointer
	}
	.c-btn:hover .c-btn__face {
    color: #986e66;
    background: #ffffff;
    opacity: 1;
	}
	.demo-4 .c-btn:hover .c-btn__face {
		color: #7426d0
	}
	.p-view__title {
		top: 4.6875vw;
		font-size: 1.875vw
	}
	.p-view__btn {
		bottom: 4.6875vw
	}
	.p-view__link {
		right: 15px;
		bottom: 15px;
		width: auto;
		text-align: left
	}
	.u-frame {
		max-width: calc(100% - 15.625vw);
		margin-right: auto;
		margin-left: auto
	}
}
@media screen and (min-width:1500px) {
	body {
		font-size: 12px
	}
	.c-btn {
		width: 300px;
		height: 80px;
		font-size: 18px
	}
	.p-view__title {
		top: 60px;
		font-size: 24px
	}
	.p-view__btn {
		bottom: 60px
	}
	.u-frame {
		max-width: 1080px
	}
}
@media only screen and (-webkit-min-device-pixel-ratio:2), (-webkit-min-device-pixel-ratio:2), (min-resolution:2dppx) {
	body {
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale
	}
	input, select, textarea, button {
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale
	}
}
@media screen\0 {
	body {
		font-family: "Segoe UI", Meiryo, sans-serif
	}
	input, select, textarea, button {
		font-family: "Segoe UI", Meiryo, sans-serif
	}
}