@charset"utf-8";/***layoutpc*//*html,body--------------------------------------------------*/.rps_visible_inline{	display:none;}.dolphin{	position:absolute;	left:50%;	margin-top:-35px;	margin-left:-475px;}.dolphin:hover {	animation: dolphinJump 0.6s ease-out;}@keyframes dolphinJump {	0% {		margin-top: -35px;	}	30% {		margin-top: -55px; /* 上にジャンプ */	}	50% {		margin-top: -35px; /* 元に戻る */	}	80% {		margin-top: -55px; /* 上にジャンプ */	}	100% {		margin-top: -35px; /* 元に戻る */	}}.logo_common{	position:absolute;	top:23px;	left:25px;	z-index:1;}.logo_bg_illust_common{	position:absolute;	top:11px;	left:10px;	z-index:1;	}/* 波 */.wave01{	position:relative;	width:100%;	height:21px;	top:-21px;	background-image:url("../image_wave/wave01_pc.png");	z-index:3;	margin-bottom:-21px;	background-position: 0 0;	background-size: auto 100%;	animation: waveScroll 3s linear infinite;}.wave02{	background-image:url("../image_wave/wave02_pc.png");}.wave03{	background-image:url("../image_wave/wave03_pc.png");}.wave04{	background-image:url("../image_wave/wave04_pc.png");}.wave05{	background-image:url("../image_wave/wave05_pc.png");}.wave06{	background-image:url("../image_wave/wave06_pc.png");}.wave07{	background-image:url("../image_wave/wave07_pc.png");}.wave08{	background-image:url("../image_wave/wave08_pc.png");}.wave09{	background-image:url("../image_wave/wave09_pc.png");}.wave10{	background-image:url("../image_wave/wave10_pc.png");}.wave11{	background-image:url("../image_wave/wave11_pc.png");}.wave12{	background-image:url("../image_wave/wave12_pc.png");}.wave13{	background-image:url("../image_wave/wave13_pc.png");}@keyframes waveScroll {	from {		background-position-x: 0;	}	to {		background-position-x: -131px; /* 背景画像の幅に合わせて調整 */	}}/* 背景ゆらゆら */.main_bg_common{	position:absolute;	top:0;	left:0;	z-index:1;	opacity:0.5;}.main_bg_common .floating-container {	position: relative;	width: 280px;	height: 280px;	top:-150px;	left:-50px;}.floating-shape {	position: absolute;	top: 0;	left: 0;	width: 100%;	height: 100%;	border-radius: 50%;	background-color: #ffffff;	animation:  morphSoft 5s ease-in-out infinite, rotate 10s linear infinite;	opacity: 0.4;}.floating-shape:nth-child(2) {	width: 98%;	height: 98%;	background-color: #ffffff;	margin-top: 1%;	margin-left: 1%;	animation:  morph2_soft 10s ease-in-out infinite, rotateReverse 20s linear infinite;	opacity: 0.8;		transform: rotate(90deg); /* ← 初期状態を90度に */}	@keyframes morphSoft {	0%   { border-radius: 52% 48% 50% 51% / 49% 51% 50% 48%; }	25%  { border-radius: 54% 46% 49% 52% / 50% 53% 47% 51%; }	50%  { border-radius: 51% 50% 54% 45% / 47% 52% 49% 50%; }	75%  { border-radius: 48% 53% 51% 49% / 52% 46% 53% 49%; }	100% { border-radius: 52% 48% 50% 51% / 49% 51% 50% 48%; }}@keyframes morph2_soft {	0%   { border-radius: 53% 47% 50% 49% / 48% 52% 49% 51%; }	25%  { border-radius: 49% 51% 55% 45% / 53% 47% 50% 46%; }	50%  { border-radius: 54% 46% 48% 52% / 45% 54% 47% 53%; }	75%  { border-radius: 50% 49% 46% 54% / 52% 44% 56% 48%; }	100% { border-radius: 53% 47% 50% 49% / 48% 52% 49% 51%; }}@keyframes rotate {	from { transform: rotate(0deg); }	to { transform: rotate(360deg); }}@keyframes rotateReverse {		from { transform: rotate(90deg); }		to   { transform: rotate(-270deg); } /* -360 + 90 = -270 */}.btn {	position:relative;	background-color: #fac200;	color: #241a17;	border: 3px solid #241a17;	border-radius: 10px;	padding: 20px 40px;	font-size: 32px;	font-weight: bold;	cursor: pointer;	box-shadow: 3px 3px 0 #241a17;	display: inline-flex;	align-items: center;	gap: 10px;	transition: transform 0.2s ease, box-shadow 0.3s ease;	text-decoration:none;	line-height:1;	margin-bottom:3px;/* 影の分 */}.btn .icon_set {	position:relative;	display: inline-block;	border: 2px solid #241a17;	border-radius: 20px;	padding: 10px;}.btn .icon {	width: 9px;	height: 10px;}.btn:hover {	background-color: #fac919;	transform: translate(3px, 3px);	box-shadow: 2px 2px 0 #241a17;}.logo_set{	position:relative;	width:100%;	background:#ececec;	padding-top:30px;	padding-bottom:30px;}/* フッタスライド矢印 */#logo_splide{	position:relative;	width:650px;	margin:0 auto 0;	cursor:pointer;}#logo_splide:active{	cursor:grabbing;}#logo_splide .splide__arrows{	position:relative;	width:740px;	margin-left:-45px;}#logo_splide .splide__arrow{	margin-top:-35px;	background:none;	border-radius:none;	height:auto;}#logo_splide .splide__arrow--prev{	left:0;	margin-left:0;	opacity:1;}#logo_splide .splide__arrow--prev img{	width:100%;	height:auto;	transition-duration:0.2s;}#logo_splide .splide__arrow--prev img:hover{	opacity:0.8;}#logo_splide .splide__arrow--next{	right:0;	margin-right:0;	opacity:1;}#logo_splide .splide__arrow--next img{	width:100%;	height:auto;	transition-duration:0.2s;}#logo_splide .splide__arrow--next img:hover{	opacity:0.8;}/* フッタセット */footer{	position:relative;	width:100%;	padding-top:40px;	padding-bottom:40px;	background:#ffffff;}.footer_link_set{	position:relative;	width:100%;	text-align:center;	line-height:1;	color:#999999;	font-size:14px;}.footer_link_set a{	color:#000000;	text-decoration:none;}.footer_link_set a:hover{	color:#000000;	text-decoration:underline;	text-underline-offset:3px;}.footer_logo{	position:relative;	width:251px;	margin:30px auto 30px;	display:block;}.footer_text01{	position:relative;	width:100%;	text-align:center;	font-size:11px;	color:#999999;	letter-spacing:0.05em;	line-height:1;}/* layout sp--------------------------------------------------*/@media screen and (max-width: 640px) {/* 波 */.wave01{	position:relative;	width:100%;	height:3.4vw;	top:-3.4vw;	background-image:url("../image_wave/wave01_sp.png");	z-index:3;	margin-bottom:-3.4vw;	background-position: 0 0;	background-size: auto 3.4vw;	animation: waveScroll 3s linear infinite;}.wave02{	background-image:url("../image_wave/wave02_sp.png");}.wave03{	background-image:url("../image_wave/wave03_sp.png");}.wave04{	background-image:url("../image_wave/wave04_sp.png");}.wave05{	background-image:url("../image_wave/wave05_sp.png");}.wave06{	background-image:url("../image_wave/wave06_sp.png");}.wave07{	background-image:url("../image_wave/wave07_sp.png");}.wave08{	background-image:url("../image_wave/wave08_sp.png");}.wave09{	background-image:url("../image_wave/wave09_sp.png");}.wave10{	background-image:url("../image_wave/wave10_sp.png");}.wave11{	background-image:url("../image_wave/wave11_sp.png");}.wave12{	background-image:url("../image_wave/wave12_sp.png");}.wave13{	background-image:url("../image_wave/wave13_sp.png");}@keyframes waveScroll {	from {		background-position-x: 0;	}	to {		background-position-x: -21.08vw; /* 背景画像の幅に合わせて調整 */	}}.btn {	position:relative;	background-color: #fac200;	color: #241a17;	border: 3px solid #241a17;	border-radius: 12px;	padding: 5vw 13vw;	font-size: 7vw;	font-weight: bold;	cursor: pointer;	box-shadow: 3px 3px 0 #241a17;	display: inline-flex;	align-items: center;	gap: 2.5vw;	transition: transform 0.2s ease, box-shadow 0.3s ease;	text-decoration:none;	line-height:1;	margin-bottom:3px;/* 影の分 */	z-index:2;}.btn .icon_set {	position:relative;	display: inline-block;	border: 2px solid #241a17;	border-radius: 7vw;	padding: 2vw;}.btn .icon {	width: 2vw;	height: auto;}.btn:hover {	background-color: #fac919;	transform:none;	box-shadow: 3px 3px 0 #241a17;}.dolphin{	position:absolute;	left:50%;	margin-top:1vw;	margin-left:-46vw;}.dolphin img{	width:24vw;	height:auto;}.dolphin:hover {	animation: none;}.logo_set{	position:relative;	width:100%;	background:#ececec;	padding-top:5vw;	padding-bottom:5vw;}/* フッタスライド矢印 */#logo_splide{	position:relative;	width:100%;	margin:0 auto 0;	cursor:default;}#logo_splide .splide__track{	width:74vw;	margin:0 auto 0;}#logo_splide:active{	cursor:default;}#logo_splide .splide__arrows{	position:relative;	width:94vw;	margin:0 auto 0;}#logo_splide .splide__arrow{	margin-top:-6.5vw;	background:none;	border-radius:none;	height:auto;}#logo_splide .splide__arrow--prev{	left:0;	margin-left:0;	opacity:1;}#logo_splide .splide__arrow--prev img{	width:6vw;	height:auto;	transition-duration:0.2s;}#logo_splide .splide__arrow--prev img:hover{	opacity:1;}#logo_splide .splide__arrow--next{	right:0;	margin-right:0;	opacity:1;}#logo_splide .splide__arrow--next img{	width:6vw;	height:auto;	transition-duration:0.2s;}#logo_splide .splide__arrow--next img:hover{	opacity:1;}/* フッタセット */footer{	position:relative;	width:100%;	padding-top:8vw;	padding-bottom:8vw;	background:#ffffff;}.footer_link_set{	position:relative;	width:100%;	text-align:center;	line-height:1.8;	color:#999999;	font-size:3.8vw;}.footer_link_set a{	color:#000000;	text-decoration:none;}.footer_link_set a:hover{	color:#000000;	text-decoration:none;}.footer_logo{	position:relative;	width:60vw;	margin:8vw auto 8vw;	display:block;}.footer_logo img{	width:60vw;	height:auto;}.footer_text01{	position:relative;	width:100%;	text-align:center;	font-size:3.2vw;	color:#999999;	letter-spacing:0.05em;	line-height:1;}.rps_visible_inline{	display:inline;}/* 背景ゆらゆら */.main_bg_common{	position:absolute;	top:0;	left:0;	z-index:1;	opacity:0.5;}.main_bg_common .floating-container {	position: relative;	width: 45vw;	height: 45vw;	top:-24vw;	left:-6vw;}.logo_common{	position:absolute;	top:4vw;	left:4vw;	z-index:1;}.logo_common img{	width:53vw;	height:auto;}.logo_bg_illust_common{	position:absolute;	top:2vw;	left:2vw;	z-index:1;}.logo_bg_illust_common img{	width:62vw;	height:auto;}.slide_set{	position:absolute;	top:0;	left:0;	width:100%;	height:auto;	z-index:1;}	.splide__list img{	width:100%;	height:auto;}}