﻿/*----------------------------------------
全体
----------------------------------------*/

body {
	font-size: 4.5vw;
	line-height: 6.5vw;
	word-break: break-word;
	text-size-adjust: none;
}

body::before {
	background-image: url(images-sp/bg-blue-yellow.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
	height: 90vw;
}

body.open {
	overflow: hidden;
}

.wrapper {
	margin: 0 auto;
	width: 95%;
}

.pc-left {
	float: none;
	margin: 0 auto;
}

.pc-right {
	float: none;
	margin: 0 auto;
}

.alignleft {
	float: none;
	margin: 0 auto;
}

.alignright {
	float: none;
	margin: 0 auto;
}

.pc-t-center {
	text-align: left !important;
}

.pc-of {
	overflow: visible;
}

a:hover img {
	opacity: 1;
}

a:hover .img-banner {
	opacity: 1;
}

a.bo {
	text-decoration: underline;
}

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

a.no-bo {
	text-decoration: underline;
}

a.no-bo:hover {
	text-decoration: underline;
}

.full-sp {
	height: auto;
	width: 100% !important;
}

.list {
	margin-bottom: 5vw;
}

.list li {
	margin-left: 4.5vw !important;
}

_::-webkit-full-page-media, _:future, :root .list li {
	margin-left: 5.75vw !important;
}

.num-list {
	margin-bottom: 5vw;
}

.num-list li {
	margin-left: 5vw !important;
}

_::-webkit-full-page-media, _:future, :root .num-list li {
	margin-left: 7vw !important;
}

.num-list li:nth-child(n+10) {
	margin-left: 7vw !important;
}

_::-webkit-full-page-media, _:future, :root .num-list li:nth-child(n+10) {
	margin-left: 9.5vw !important;
}

.num-list-2 {
	margin-bottom: 5vw;
}

.num-list-2 li {
	padding-left: 8.5vw !important;
}

.check-list {
	margin-bottom: 5vw;
}

.check-list li {
	margin-bottom: 2.5vw;
	min-height: 6vw;
	padding-left: 9vw;
}

.check-list li::before {
	border: 0.8vw solid #000;
	height: 6vw;
	top: 0.55vw;
	width: 6vw;
}

.check-list li::after {
	border-right: 1vw solid #ff0000;
	border-bottom: 1vw solid #ff0000;
	left: 3.5vw;
	height: 5vw;
	top: -0.2vw;
	width: 3vw;
}

.douga {
	width: 100%;
}

.douga.vimeo {
	padding-top: 56.25%;
}

.douga iframe {
	left: 0;
	height: 100%;
	position: absolute;
	top: 0;
	width: 100%;
}

.douga img {
	height: auto;
	margin: 0 auto;
	width: 95%;
}

.text-base {
	padding-left: 4.5vw;
}

.text-base-2 {
	padding-left: 9vw;
}

.text-base-3 {
	padding-left: 13.5vw;
}

.text-base-4 {
	padding-left: 18vw;
}

.text-base-5 {
	padding-left: 22.5vw;
}

.pc {
	display: none;
}

.pc.tab {
	display: none;
}

.pc.tab.mobi {
	display: block;
}

.tab {
	display: none;
}

.tab.mobi {
	display: block;
}

.pc.mobi {
	display: block;
}

.mobi {
	display: block;
}

.mb10 {
	margin-bottom: 1.5vw !important;
}

.m20 {
	margin: 2.5vw !important;
}

.mt20 {
	margin-top: 2.5vw !important;
}

.mb20 {
	margin-bottom: 2.5vw !important;
}

.no-mt20 {
	margin-top: -5vw !important;
}

.mt-20 {
	margin-top: 5vw !important;
}

.mb-20 {
	margin-bottom: 5vw !important;
}

.ml20 {
	margin-left: 2.5vw !important;
}

.mr20 {
	margin-right: 2.5vw !important;
}

.m40 {
	margin: 5vw !important;
}

.mt40 {
	margin-top: 5vw !important;
}

.mb40 {
	margin-bottom: 5vw !important;
}

.ml40 {
	margin-left: 5vw !important;
}

.mr40 {
	margin-right: 5vw !important;
}

.m60 {
	margin: 7.5vw !important;
}

.mt60 {
	margin-top: 7.5vw !important;
}

.mt-60 {
	margin-top: 10vw !important;
}

.mb60 {
	margin-bottom: 7.5vw !important;
}

.mb-60 {
	margin-bottom: 10vw !important;
}

.ml60 {
	margin-left: 7.5vw !important;
}

.mr60 {
	margin-right: 7.5vw !important;
}

.m80 {
	margin: 10vw !important;
}

.mt80 {
	margin-top: 10vw !important;
}

.mb80 {
	margin-bottom: 10vw !important;
}

.ml80 {
	margin-left: 10vw !important;
}

.mr80 {
	margin-right: 10vw !important;
}

.m100 {
	margin: 12.5vw !important;
}

.mt100 {
	margin-top: 12.5vw !important;
}

.mb100 {
	margin-bottom: 12.5vw !important;
}

.ml100 {
	margin-left: 12.5vw !important;
}

.mr100 {
	margin-right: 12.5vw !important;
}

.p20 {
	padding: 2.5vw !important;
}

.pt20 {
	padding-top: 2.5vw !important;
}

.pb20 {
	padding-bottom: 2.5vw !important;
}

.pl20 {
	padding-left: 2.5vw !important;
}

.pr20 {
	padding-right: 2.5vw !important;
}

.p40 {
	padding: 5vw !important;
}

.pt40 {
	padding-top: 5vw !important;
}

.pb40 {
	padding-bottom: 5vw !important;
}

.pl40 {
	padding-left: 5vw !important;
}

.pr40 {
	padding-right: 5vw !important;
}

.p60 {
	padding: 7.5vw !important;
}

.pt60 {
	padding-top: 7.5vw !important;
}

.pb60 {
	padding-bottom: 7.5vw !important;
}

.pl60 {
	padding-left: 7.5vw !important;
}

.pr60 {
	padding-right: 7.5vw !important;
}

.p80 {
	padding: 10vw !important;
}

.pt80 {
	padding-top: 10vw !important;
}

.pb80 {
	padding-bottom: 10vw !important;
}

.pl80 {
	padding-left: 10vw !important;
}

.pr80 {
	padding-right: 10vw !important;
}

.p100 {
	padding: 12.5vw !important;
}

.pt100 {
	padding-top: 12.5vw !important;
}

.pb100 {
	padding-bottom: 12.5vw !important;
}

.pl100 {
	padding-left: 12.5vw !important;
}

.pr100 {
	padding-right: 12.5vw !important;
}

/*----------------------------------------
文字スタイル
----------------------------------------*/

.fs15 {
	font-size: 3.5vw !important;
	line-height: 5.5vw !important;
}

.fs23 {
	font-size: 5.5vw !important;
	line-height: 7.5vw !important;
}

.fs30 {
	font-size: 8vw !important;
	line-height: 10vw !important;
}

.fs40 {
	font-size: 9.5vw !important;
	line-height: 11.5vw !important;
}

.fs50 {
	font-size: 11vw !important;
	line-height: 13vw !important;
}

/*----------------------------------------
画像関連
----------------------------------------*/

/*----------------------------------------
header
----------------------------------------*/

.head-in .wrapper {
	padding: 0;
	padding-top: calc(55px + 5vw);
}

.head-in-logo {
	float: none;
	position: absolute;
	top: 10px;
	width: 76px;
}

body#top .head-in-logo {
	margin: 0 auto;
	position: relative;
	top: auto;
	width: 90%;
}

.head-in-logo .img-banner {
	background: url(images/logo-new-2.png) no-repeat;
	padding-bottom: 58.660%;
}

.head-fixed {
	box-shadow: 0 0 15px 0 rgba(0,0,0,0.6);
	top: -80px;
}

.customize-support .head-fixed.fixed {
	margin-top: 46px;
}

.head-fixed .wrapper {
	width: 95%;
}

.head-fixed-logo {
	float: left;
	margin: 10px 0;
	margin-left: 0;
	width: 76px;
}

.head-fixed-logo .img-banner {
	background: url(images/logo-new-2.png) no-repeat;
	padding-bottom: 58.660%;
}

.head-fixed-sp-menu-btn {
	background: var(--orange-2);
	box-sizing: border-box;
	border-radius: 5px;
	cursor: pointer;
	height: 45px;
	padding: 5px;
	position: absolute;
	right: 2.5vw;
	top: 10px;
	transition: all .5s;
	-webkit-transition: all .5s;
	width: 46px;
	z-index: 9998;
}

.head-fixed-sp-menu-btn-in {
	box-sizing: border-box;
	display: block;
	height: 100%;
	padding-bottom: 13px;
	position: relative;
}

.head-fixed-sp-menu-btn-in::after {
	box-sizing: border-box;
	bottom: 0;
	color: #fff;
	content: "メニュー";
	font-weight: 700;
	font-size: 8px;
	line-height: 1;
	left: 0;
	position: absolute;
	text-align: center;
	width: 100%;
}

.head-fixed-sp-menu-btn.active .head-fixed-sp-menu-btn-in::after {
	content: "閉じる";
}

.head-fixed-sp-menu-btn-in-in {
	box-sizing: border-box;
	display: block;
	height: 100%;
	position: relative;
}

.head-fixed-sp-menu-btn-in-in-line {
	background: #fff;
	box-sizing: border-box;
	border-radius: 5px;
	left: 0;
	height: 2px;
	position: absolute;
	transition: all .5s;
	-webkit-transition: all .5s;
	width: 100%;
}

.head-fixed-sp-menu-btn-in-in-line:nth-child(1) {
	top: 0;
}

.head-fixed-sp-menu-btn-in-in-line:nth-child(2) {
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.head-fixed-sp-menu-btn-in-in-line:nth-child(3) {
	bottom: 0;
}

.head-fixed-sp-menu-btn.active .head-fixed-sp-menu-btn-in-in-line:nth-of-type(1) {
	top: -10px;
	transform: translateY(20px) rotate(-45deg);
	-webkit-transform: translateY(20px) rotate(-45deg);
}

.head-fixed-sp-menu-btn.active .head-fixed-sp-menu-btn-in-in-line:nth-of-type(2) {
	opacity: 0;
}

.head-fixed-sp-menu-btn.active .head-fixed-sp-menu-btn-in-in-line:nth-of-type(3) {
	bottom: -10px;
	transform: translateY(-20px) rotate(45deg);
	-webkit-transform: translateY(-20px) rotate(45deg);
}

.head-fixed-sp-overlay {
	background: rgba(0,0,0,0.7);
	box-sizing: border-box;
	height: 100vh;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
	transition: all .5s;
	-webkit-transition: all .5s;
	width: 100%;
}

.head-fixed-sp-overlay.open {
	opacity: 1;
	pointer-events: auto;
}

.head-fixed-sp {
	background: #fff;
	box-sizing: border-box;
	height: 100%;
	overflow-y: scroll;
	padding-top: 65px;
	position: fixed;
	right: -75%;
	top: 0;
	transition: all .5s;
	-webkit-transition: all .5s;
	width: 75%;
	z-index: 2;
}

.head-fixed-sp.open {
	right: 0;
}

.head-fixed-sp-menu {
	box-sizing: border-box;
}

.head-fixed-sp-menu ul {
	box-sizing: border-box;
}

.head-fixed-sp-menu ul li {
	box-sizing: border-box;
	border-color: #ccc !important;
	border-bottom: 1px solid;
	position: relative;
}

.head-fixed-sp-menu ul li:first-child {
	border-top: 1px solid;
}

.head-fixed-sp-menu ul li a {
	box-sizing: border-box;
	color: #000;
	display: block;
	font-size: 4.5vw;
	line-height: 1.5;
	padding: 2.5vw;
	padding-left: 5vw;
	position: relative;
	text-decoration: none;
}

.head-fixed-sp-menu ul li.li-now a::before {
	background: #494949;
	box-sizing: border-box;
	content: "";
	left: 0;
	height: 100%;
	position: absolute;
	top: 0;
	width: 2.5vw;
}

.head-fixed-sp-menu ul li:nth-child(1).li-now a::before,
.head-fixed-sp-menu ul li:nth-child(8).li-now a::before {
	background: #ff0000;
}

.head-fixed-sp-menu ul li:nth-child(2).li-now a::before,
.head-fixed-sp-menu ul li:nth-child(9).li-now a::before {
	background: #ffa500;
}

.head-fixed-sp-menu ul li:nth-child(3).li-now a::before,
.head-fixed-sp-menu ul li:nth-child(10).li-now a::before {
	background: #ffff00;
}

.head-fixed-sp-menu ul li:nth-child(4).li-now a::before,
.head-fixed-sp-menu ul li:nth-child(11).li-now a::before {
	background: #008000;
}

.head-fixed-sp-menu ul li:nth-child(5).li-now a::before,
.head-fixed-sp-menu ul li:nth-child(12).li-now a::before {
	background: #00ffff;
}

.head-fixed-sp-menu ul li:nth-child(6).li-now a::before,
.head-fixed-sp-menu ul li:nth-child(13).li-now a::before {
	background: #0000ff;
}

.head-fixed-sp-menu ul li:nth-child(7).li-now a::before,
.head-fixed-sp-menu ul li:nth-child(14).li-now a::before {
	background: #800080;
}

.head-fixed-sp-menu-sub-btn {
	box-sizing: border-box;
	border-color: #ccc !important;
	border-left: 1px solid;
	cursor: pointer;
	display: block;
	height: 12vw;
	position: absolute;
	right: 0;
	top: 0;
	width: 12vw;
}

.head-fixed-sp-menu-sub-btn::before {
	box-sizing: border-box;
	content: "\e021";
	font-family: 'icomoon';
	font-size: 6vw;
	line-height: 12vw;
	left: 0;
	position: absolute;
	text-align: center;
	width: 12vw;
}

.head-fixed-sp-menu-sub-btn.active::before {
	content: "\e022";
}

.head-fixed-sp-menu ul .head-fixed-sp-menu-sub {
	box-sizing: border-box;
	display: none;
}

.head-fixed-sp-menu ul .head-fixed-sp-menu-sub li:last-child {
	border-bottom: 0;
}

.head-fixed-sp-menu ul .head-fixed-sp-menu-sub li a {
	padding-left: 9.5vw;
}

.head-fixed-sp-menu ul .head-fixed-sp-menu-sub li a::before {
	content: none;
}

.head-fixed-sp-sns-btn-list {
	box-sizing: border-box;
	position: absolute;
	right: calc(2.5vw + 56px);
	top: 10px;
	width: 195px;
}

.head-fixed-sp-sns-btn-list li {
	box-sizing: border-box;
	float: left;
	margin-right: 5px;
	width: 45px;
}

.head-fixed-sp-sns-btn-list li:last-child {
	margin-right: 0;
}

.head-fixed-sp-sns-btn-list-btn {
	box-sizing: border-box;
	display: block;
	line-height: 0;
	text-align: center;
	text-decoration: none;
}

.head-fixed-sp-sns-btn-list-btn-in {
	background: #494949;
	box-sizing: border-box;
	border-radius: 50%;
	display: block;
	height: 45px;
	overflow: hidden;
	position: relative;
}

.head-fixed-sp-sns-btn-list-btn-in::after {
	box-sizing: border-box;
	color: #fff;
	content: "";
	font-family: "Font Awesome 6 Brands";
	font-weight: 400;
	font-size: 23px;
	line-height: 1;
	left: 0;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	z-index: 2;
}

.head-fixed-sp-sns-btn-list li.li-line .head-fixed-sp-sns-btn-list-btn-in {
	background: var(--line);
}

.head-fixed-sp-sns-btn-list li.li-line .head-fixed-sp-sns-btn-list-btn-in::before {
	background: #fff;
	box-sizing: border-box;
	content: "";
	left: 0;
	height: 25px;
	margin: 0 auto;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	width: 25px;
	z-index: 1;
}

.head-fixed-sp-sns-btn-list li.li-line .head-fixed-sp-sns-btn-list-btn-in::after {
	color: var(--line);
	content: "\f3c0";
	font-size: 33px;
}

.head-fixed-sp-sns-btn-list li.li-insta .head-fixed-sp-sns-btn-list-btn-in {
	background: var(--insta);
}

.head-fixed-sp-sns-btn-list li.li-insta .head-fixed-sp-sns-btn-list-btn-in::after {
	content: "\f16d";
	font-size: 25px;
}

.head-fixed-sp-sns-btn-list li.li-x .head-fixed-sp-sns-btn-list-btn-in {
	background: #000;
}

.head-fixed-sp-sns-btn-list li.li-x .head-fixed-sp-sns-btn-list-btn-in::after {
	content: "\e61b";
}

.head-fixed-sp-sns-btn-list li.li-fb .head-fixed-sp-sns-btn-list-btn-in {
	background: var(--fb);
}

.head-fixed-sp-sns-btn-list li.li-fb .head-fixed-sp-sns-btn-list-btn-in::after {
	content: "\f39e";
}

.head-sp-contact-btn {
	box-sizing: border-box;
	display: block;
	padding-bottom: 5px;
	position: absolute;
	right: 65px;
	text-align: center;
	text-decoration: none;
	top: 10px;
	width: 130px;
}

.head-sp-contact-btn-in {
	background: #00d2d3;
	box-sizing: border-box;
	box-shadow: 0 5px #01a3a4;
	border-radius: 10px;
	color: #fff;
	display: block;
	font-weight: 700;
	font-size: 13px;
	line-height: 1.5;
	padding: 10.5px 0;
}

.head-sp-contact-btn-in-text {
	box-sizing: border-box;
	display: inline-block;
	padding-left: 30px;
	position: relative;
}

.head-sp-contact-btn-in-text::before {
	box-sizing: border-box;
	content: "\e017";
	font-family: 'icomoon';
	font-weight: 400;
	font-size: 25px;
	line-height: 1;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.head-sp-menu-btn {
	background: #ff9f43;
	box-sizing: border-box;
	border-radius: 5px;
	cursor: pointer;
	height: 45px;
	padding: 5px;
	position: absolute;
	right: 2.5vw;
	top: 10px;
	transition: all .5s;
	-webkit-transition: all .5s;
	width: 46px;
	z-index: 9999;
}

.head-sp-menu-btn-in {
	box-sizing: border-box;
	display: block;
	height: 100%;
	padding-bottom: 13px;
	position: relative;
}

.head-sp-menu-btn-in::after {
	box-sizing: border-box;
	bottom: 0;
	color: #fff;
	content: "メニュー";
	font-weight: 700;
	font-size: 8px;
	line-height: 1;
	left: 0;
	position: absolute;
	text-align: center;
	width: 100%;
}

.head-sp-menu-btn.active .head-sp-menu-btn-in::after {
	content: "閉じる";
}

.head-sp-menu-btn-in-in {
	box-sizing: border-box;
	display: block;
	height: 100%;
	position: relative;
}

.head-sp-menu-btn-in-in-line {
	background: #fff;
	box-sizing: border-box;
	border-radius: 5px;
	left: 0;
	height: 2px;
	position: absolute;
	transition: all .5s;
	-webkit-transition: all .5s;
	width: 100%;
}

.head-sp-menu-btn-in-in-line:nth-child(1) {
	top: 0;
}

.head-sp-menu-btn-in-in-line:nth-child(2) {
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.head-sp-menu-btn-in-in-line:nth-child(3) {
	bottom: 0;
}

.head-sp-menu-btn.active .head-sp-menu-btn-in-in-line:nth-of-type(1) {
	top: -10px;
	transform: translateY(20px) rotate(-45deg);
	-webkit-transform: translateY(20px) rotate(-45deg);
}

.head-sp-menu-btn.active .head-sp-menu-btn-in-in-line:nth-of-type(2) {
	opacity: 0;
}

.head-sp-menu-btn.active .head-sp-menu-btn-in-in-line:nth-of-type(3) {
	bottom: -10px;
	transform: translateY(-20px) rotate(45deg);
	-webkit-transform: translateY(-20px) rotate(45deg);
}

.head-sp-overlay {
	background: rgba(0,0,0,0.7);
	box-sizing: border-box;
	height: 100vh;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
	transition: all .5s;
	-webkit-transition: all .5s;
	width: 100%;
	z-index: 9997;
}

.head-sp-overlay.open {
	opacity: 1;
	pointer-events: auto;
}

.head-sp {
	background: #fff;
	box-sizing: border-box;
	height: 100%;
	overflow-y: scroll;
	padding-top: 65px;
	position: fixed;
	right: -75%;
	top: 0;
	transition: all .5s;
	-webkit-transition: all .5s;
	width: 75%;
	z-index: 9998;
}

.head-sp.open {
	right: 0;
}

.head-sp-menu {
	box-sizing: border-box;
}

.head-sp-menu ul {
	box-sizing: border-box;
}

.head-sp-menu ul li {
	box-sizing: border-box;
	border-color: #ccc !important;
	border-bottom: 1px solid;
	position: relative;
}

.head-sp-menu ul li:first-child {
	border-top: 1px solid;
}

.head-sp-menu ul li a {
	box-sizing: border-box;
	color: #000;
	display: block;
	font-size: 4.5vw;
	line-height: 1.5;
	padding: 2.5vw;
	padding-left: 5vw;
	position: relative;
	text-decoration: none;
}

.head-sp-menu ul li.li-now a::before {
	background: #494949;
	box-sizing: border-box;
	content: "";
	left: 0;
	height: 100%;
	position: absolute;
	top: 0;
	width: 2.5vw;
}

.head-sp-menu ul li:nth-child(1).li-now a::before,
.head-sp-menu ul li:nth-child(8).li-now a::before {
	background: #ff0000;
}

.head-sp-menu ul li:nth-child(2).li-now a::before,
.head-sp-menu ul li:nth-child(9).li-now a::before {
	background: #ffa500;
}

.head-sp-menu ul li:nth-child(3).li-now a::before,
.head-sp-menu ul li:nth-child(10).li-now a::before {
	background: #ffff00;
}

.head-sp-menu ul li:nth-child(4).li-now a::before,
.head-sp-menu ul li:nth-child(11).li-now a::before {
	background: #008000;
}

.head-sp-menu ul li:nth-child(5).li-now a::before,
.head-sp-menu ul li:nth-child(12).li-now a::before {
	background: #00ffff;
}

.head-sp-menu ul li:nth-child(6).li-now a::before,
.head-sp-menu ul li:nth-child(13).li-now a::before {
	background: #0000ff;
}

.head-sp-menu ul li:nth-child(7).li-now a::before,
.head-sp-menu ul li:nth-child(14).li-now a::before {
	background: #800080;
}

.head-sp-menu-sub-btn {
	box-sizing: border-box;
	border-color: #ccc !important;
	border-left: 1px solid;
	cursor: pointer;
	display: block;
	height: 12vw;
	position: absolute;
	right: 0;
	top: 0;
	width: 12vw;
}

.head-sp-menu-sub-btn::before {
	box-sizing: border-box;
	content: "\e021";
	font-family: 'icomoon';
	font-size: 6vw;
	line-height: 12vw;
	left: 0;
	position: absolute;
	text-align: center;
	width: 12vw;
}

.head-sp-menu-sub-btn.active::before {
	content: "\e022";
}

.head-sp-menu ul .head-sp-menu-sub {
	box-sizing: border-box;
	display: none;
}

.head-sp-menu ul .head-sp-menu-sub li:last-child {
	border-bottom: 0;
}

.head-sp-menu ul .head-sp-menu-sub li a {
	padding-left: 9.5vw;
}

.head-sp-menu ul .head-sp-menu-sub li a::before {
	content: none;
}

.head-sp-sns-btn-list {
	box-sizing: border-box;
	position: absolute;
	right: calc(2.5vw + 56px);
	top: 10px;
	width: 195px;
	z-index: 99;
}

.head-sp-sns-btn-list li {
	box-sizing: border-box;
	float: left;
	margin-right: 5px;
	width: 45px;
}

.head-sp-sns-btn-list li:last-child {
	margin-right: 0;
}

.head-sp-sns-btn-list-btn {
	box-sizing: border-box;
	display: block;
	line-height: 0;
	text-align: center;
	text-decoration: none;
}

.head-sp-sns-btn-list-btn-in {
	background: #494949;
	box-sizing: border-box;
	border-radius: 50%;
	display: block;
	height: 45px;
	overflow: hidden;
	position: relative;
}

.head-sp-sns-btn-list-btn-in::after {
	box-sizing: border-box;
	color: #fff;
	content: "";
	font-family: "Font Awesome 6 Brands";
	font-weight: 400;
	font-size: 23px;
	line-height: 1;
	left: 0;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	z-index: 2;
}

.head-sp-sns-btn-list li.li-line .head-sp-sns-btn-list-btn-in {
	background: var(--line);
}

.head-sp-sns-btn-list li.li-line .head-sp-sns-btn-list-btn-in::before {
	background: #fff;
	box-sizing: border-box;
	content: "";
	left: 0;
	height: 25px;
	margin: 0 auto;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	width: 25px;
	z-index: 1;
}

.head-sp-sns-btn-list li.li-line .head-sp-sns-btn-list-btn-in::after {
	color: var(--line);
	content: "\f3c0";
	font-size: 33px;
}

.head-sp-sns-btn-list li.li-insta .head-sp-sns-btn-list-btn-in {
	background: var(--insta);
}

.head-sp-sns-btn-list li.li-insta .head-sp-sns-btn-list-btn-in::after {
	content: "\f16d";
	font-size: 25px;
}

.head-sp-sns-btn-list li.li-x .head-sp-sns-btn-list-btn-in {
	background: #000;
}

.head-sp-sns-btn-list li.li-x .head-sp-sns-btn-list-btn-in::after {
	content: "\e61b";
}

.head-sp-sns-btn-list li.li-fb .head-sp-sns-btn-list-btn-in {
	background: var(--fb);
}

.head-sp-sns-btn-list li.li-fb .head-sp-sns-btn-list-btn-in::after {
	content: "\f39e";
}

/*----------------------------------------
TOPページ
----------------------------------------*/

.top-main-title {
	margin-bottom: 5vw;
}

.top-main-title-in {
	border-radius: 100px;
	padding: 2.5vw 10vw;
}

.top-main-title-in-text {
	font-size: 6vw;
	padding: 0 10.5vw;
}

.top-main-title-in-text:has(.top-main-title-in-text-icon.guitar-icon) {
	padding: 0 10.5vw;
}

.top-main-title-in-text-icon {
	width: 8vw;
}

.top-main-title-in-text-icon.guitar-icon {
	width: 8vw;
}

.top-main-title-in-text-icon.hibiscus-icon::before {
	background: url(images/icon-hibiscus-1.png) no-repeat;
	padding-bottom: 100.6%;
}

.top-main-title-in-text-icon.yashinoki-icon::before {
	background: url(images/icon-yashinoki.png) no-repeat;
	padding-bottom: 118.4%;
}

.top-link-btn {
	width: 100%;
}

.top-link-btn-in {
	border: 0.6vw solid;
	border-radius: 100px;
	font-size: 4.5vw;
	padding: 3.5vw 4.5vw;
}

.top-link-btn-in-text {
	padding-right: 6.5vw;
}

.top-link-btn-in-text::after {
	font-size: 5vw;
}

/*------------------------------
TOPスライダー
------------------------------*/

.top-slider {
	margin-top: 5vw;
}

.top-slider-list {
	box-sizing: border-box;
	border-radius: 52% 48% 56% 44% / 42% 56% 44% 58%;
	height: 50vw;
	width: 95%;
}

.top-slider-list li {
	height: 50vw;
}

/*------------------------------
動画一覧
------------------------------*/

.top-movie-content .wrapper {
	padding: 10vw 0;
}

.top-movie-content-list li {
	float: none;
	margin: 0 0 5vw;
	width: 100%;
}

.top-movie-content-list li:last-child {
	margin-bottom: 0;
}

/*------------------------------
ボランティア、お伺いします！
------------------------------*/

.top-volunteer-content .wrapper {
	padding: 10vw 0;
}

.top-volunteer-content-title-in-text {
	font-size: 5.25vw;
	padding: 0 9.5vw;
}

.top-volunteer-content-title-in-text-icon {
	width: 8vw;
}

.top-volunteer-content-title-in-text-icon::before {
	background: url(images/icon-starfish-1.png) no-repeat;
	padding-bottom: 97.6%;
}

.top-volunteer-content .douga {
	margin-top: 2.5vw;
	width: 100%;
}

.top-volunteer-content .top-link-btn {
	margin: 5vw auto 0;
}

/*------------------------------
ご挨拶
------------------------------*/

.top-greeting-content .wrapper {
	padding: 10vw 0;
}

.top-greeting-content-img {
	float: none;
	margin: 0 auto;
	width: 75%;
}

.top-greeting-content-in {
	float: none;
	margin: 5vw auto 0;
	width: 100%;
}

.top-greeting-content-in-text {
	font-size: 4.5vw;
}

.top-greeting-content-in-text p {
	margin-bottom: 5vw;
}

/*------------------------------
季節ごとのイベント
------------------------------*/

.top-event-content .wrapper {
	padding: 10vw 0;
}

.top-event-content-img-list {
	float: none;
	margin: 0 auto;
	padding: 2.5vw;
	width: 75%;
}

.top-event-content-img-list li {
	float: left;
	margin: 0 4% 4% 0;
	width: 48%;
}

.top-event-content-img-list li:nth-child(2n) {
	margin-right: 0;
}

.top-event-content-img-list li:nth-last-child(-n + 2) {
	margin-bottom: 0;
}

.top-event-content-in {
	float: none;
	margin: 5vw auto 0;
	width: 100%;
}

.top-event-content-in-text {
	font-size: 4.5vw;
}

.top-event-content-in-text p {
	margin-bottom: 5vw;
}

.top-event-content-in .top-link-btn {
	width: 100%;
}

/*------------------------------
学べる3要素
------------------------------*/

.top-point-content .top-main-title-in-text .text {
	display: block;
	margin-left: 0;
}

.top-point-content .wrapper {
	padding: 10vw 0;
}

.top-point-content-con {
	margin: 0 5vw;
}

.top-point-content-con section {
	float: none;
	margin: 0 0 7.5vw;
	width: 100%;
}

.top-point-content-con section:last-child {
	margin-bottom: 0;
}

.top-point-content-con-img {
	width: 75%;
}

.top-point-content-con-in {
	margin-top: 2.5vw;
}

.top-point-content-con-in-title-in-text {
	font-size: 5.5vw;
}

.top-point-content-con-in-text {
	font-size: 4.5vw;
	margin-top: 2.5vw;
}

.top-point-content-con-in-text p {
	margin-bottom: 5vw;
}

/*------------------------------
レッスンについて
------------------------------*/

.top-lesson-content .wrapper {
	padding: 10vw 0;
}

.top-lesson-content-main-text {
	font-size: 4.5vw;
}

.top-lesson-content-main-text p {
	margin-bottom: 5vw;
}

.top-lesson-content-con {
	margin-top: 5vw;
}

.top-lesson-content-con section {
	border-radius: 10px;
	margin-bottom: 7.5vw;
	padding: 5vw;
}

.top-lesson-content-con-img {
	float: none;
	margin: 0 auto;
	width: 75%;
}

.top-lesson-content-con section:nth-child(2n) .top-lesson-content-con-img {
	float: none;
}

.top-lesson-content-con-in {
	float: none;
	margin: 5vw auto 0;
	width: 100%;
}

.top-lesson-content-con section:nth-child(2n) .top-lesson-content-con-in {
	float: none;
}

.top-lesson-content-con-in-title-in-text {
	font-size: 5.5vw;
}

.top-lesson-content-con-in-text {
	font-size: 4.5vw;
	margin-top: 2.5vw;
}

.top-lesson-content-con-in-text p {
	margin-bottom: 5vw;
}

.top-lesson-content-in {
	margin-top: 5vw;
}

.top-lesson-content-in-experience-text {
	font-size: 4.5vw;
	margin-top: 7.5vw;
}

.top-lesson-content-in-experience-text +  .top-link-btn {
	margin: 5vw auto 0;
}

.top-lesson-content-in-experience-text p {
	margin-bottom: 5vw;
}

.top-lesson-content-in-experience-text .line {
	font-size: 5.5vw;
	margin-bottom: 1vw;
	padding-bottom: 1.2vw;
}

.top-lesson-content-in-experience-text .line::before,
.top-lesson-content-in-experience-text .line::after {
	height: 0.6vw;
}

.top-lesson-content-in-experience-text .line::after {
	bottom: 1.2vw;
}

/*------------------------------
スケジュール
------------------------------*/

.top-schedule-content .wrapper {
	padding: 10vw 0;
}

.top-schedule-content-main-img {
	width: 100%;
}

.top-schedule-content-main-text {
	font-size: 4.5vw;
	margin-top: 2.5vw;
}

.top-schedule-content-main-text .text {
	margin: 0 4.5vw;
}

.top-schedule-content-main-text + .top-main-title {
	margin-top: 10vw;
}

.top-schedule-content-img {
	width: 100%;
}

/*------------------------------
イベントブログ
------------------------------*/

.top-blog-content .wrapper {
	padding: 10vw 0;
}

.top-blog-content-con {
	margin: 0 5vw;
}

.top-blog-content-con section {
	float: none;
	margin: 0 0 5vw;
	width: 100%;
}

.top-blog-content-con section:last-child {
	margin-bottom: 0;
}

.top-blog-content-con-in {
	border-radius: 5px;
	height: 85vw;
}

.top-blog-content-con-in-in {
	padding: 2.5vw;
}

.top-blog-content-con-in-in-date-in-text {
	font-size: 4.5vw;
}

.top-blog-content-con-in-in-title-in-text {
	font-size: 5.5vw;
}

/*----------------------------------------
個別ページ
----------------------------------------*/

.breadcrumbs {
	font-size: 3.5vw;
}

.breadcrumbs .wrapper {
	padding: 0 0 10vw;
}

.page-main-title {
	padding: 0 0 10vw;
}

.page-main-title::after {
	background: url(images/rainbow-line-img.png);
	background-size: contain;
	background-position: top center;
	height: 5vw;
}

.page-main-title-sub {
	width: 95%;
}

.page-main-title-sub-in-text {
	font-size: 4.5vw;
}

.page-main-title-main {
	margin: -1.5vw auto 0;
	width: 95%;
}

.page-main-title-main-in-text {
	font-size: 6vw;
}

.page-title {
	margin-bottom: 2.5vw;
}

div + .page-title {
	margin-top: 10vw;
}

.page-title-in {
	border-radius: 100px;
	padding: 2.5vw 10vw;
}

.page-title-in-text {
	font-size: 6vw;
	padding: 0 10.5vw;
}

.page-title-in-text:has(.page-title-in-text-icon.guitar-icon) {
	padding: 0 10.5vw;
}

.page-title-in-text-icon {
	width: 8vw;
}

.page-title-in-text-icon.guitar-icon {
	width: 8vw;
}

.page-title-in-text-icon.hibiscus-icon::before {
	background: url(images/icon-hibiscus-1.png) no-repeat;
	padding-bottom: 100.6%;
}

.page-title-in-text-icon.yashinoki-icon::before {
	background: url(images/icon-yashinoki.png) no-repeat;
	padding-bottom: 118.4%;
}

.page-title {
	margin-bottom: 2.5vw;
}

.page-title-in-text {
	font-size: 6vw;
}

.page-sub-title {
	margin-bottom: 2.5vw;
}

.page-sub-title-in-text {
	font-size: 6vw;
}

.page-link-btn {
	width: 100%;
}

.page-link-btn-in {
	border: 0.6vw solid;
	border-radius: 100px;
	font-size: 4.5vw;
	padding: 3.5vw 4.5vw;
}

.page-link-btn-in-text {
	padding-right: 6.5vw;
}

.page-link-btn-in-text::after {
	font-size: 5vw;
}

.page-link-btn-list {
	margin-bottom: 0;
}

.page-link-btn-list li {
	float: none;
	margin: 0 0 5vw;
	width: 100%;
}

.page-link-btn-list li:last-child {
	margin-bottom: 0;
}

.page-tel-btn {
	padding-bottom: 1.5vw;
	width: 100%;
}

.page-tel-btn.mobi {
	display: block;
}

.page-tel-btn-in {
	box-shadow: 0 1.5vw #2d2d2d;
	border-radius: 10px;
	font-size: 6vw;
	padding: 3.5vw;
}

.page-tel-btn.btn-blue .page-tel-btn-in {
	box-shadow: 0 1.5vw var(--blue-2-dark);
}

.page-tel-btn.btn-orange .page-tel-btn-in {
	box-shadow: 0 1.5vw var(--orange-2-dark);
}

.page-tel-btn.btn-pink .page-tel-btn-in {
	box-shadow: 0 1.5vw var(--pink-2-dark);
}

a[href].page-tel-btn:hover .page-tel-btn-in {
	transform: translate3d(0,1.5vw,0);
	-webkit-transform: translate3d(0,1.5vw,0);
}

.page-tel-btn-in-text {
	padding-left: 10.5vw;
}

.page-tel-btn-in-text::before {
	font-size: 8vw;
}

.img-list {
	margin-bottom: 0;
}

.img-list li {
	float: none;
	margin: 0 0 5vw;
	width: 100%;
}

.img-list li:last-child {
	margin-bottom: 0;
}

.slider {
	padding: 0 9.5vw 6.5vw;
	width: 100%;
}

.slider:has(+ p) {
	margin-bottom: 5vw !important;
}

.slider .slick-track {
	height: 50.5vw;
}

.slider .slick-slide img {
	height: 50.5vw;
	width: auto;
}

.slider .slick-prev,
.slider .slick-next {
	height: 7vw;
	width: 7vw;
}

.slider .slick-prev:before,
.slider .slick-next:before {
	font-size: 8vw;
}

.slider .slick-prev:before {
	left: -0.3vw;
}

.slider .slick-next:before {
	right: 0.3vw;
}

.slider .slick-prev:hover:before,
.slider .slick-next:hover:before {
	opacity: 1;
}

.slider .slick-dots li {
	height: 4vw;
	margin: 0 1.5vw 0 0;
	width: 4vw;
}

.slider .slick-dots li button {
	height: 4vw;
	width: 4vw;
}

.slider .slick-dots li button:before {
	font-size: 4.5vw;
	left: -0.3vw;
	height: 4vw;
	width: 4vw;
}

/*------------------------------
お問い合わせバナー
------------------------------*/

.contact-link-content .wrapper {
	padding: 10vw 0;
}

.contact-link-content-in {
	border-radius: 50px;
	padding: 5vw;
}

.contact-link-content-in-title-in-text {
	font-size: 4vw;
}

.contact-link-content-in-title-in-text .big {
	font-size: 5.5vw;
}

.contact-link-content-in-btn-list {
	margin-top: 5vw;
}

.contact-link-content-in-btn-list li {
	float: none;
	margin: 0 0 5vw;
	width: 100%;
}

.contact-link-content-in-btn-list li:last-child {
	margin-bottom: 0;
}

.contact-link-content-in-btn-list-btn-in {
	border: 0.6vw solid;
	border-radius: 100px;
	font-size: 4.5vw;
	padding: 3.5vw 4.5vw;
}

.contact-link-content-in-btn-list-btn-in::before {
	left: -100%;
}

.contact-link-content-in-btn-list-btn-in-text {
	padding-right: 6.5vw;
}

.contact-link-content-in-btn-list-btn-in-text::after {
	font-size: 5vw;
}

/*------------------------------
ブログ
------------------------------*/

.blog-content .wrapper {
	padding: 5vw 0 10vw;
}

.blog-content-title {
	border-radius: 100px;
	margin-bottom: 5vw;
	padding: 1.5vw 2.5vw;
}

.blog-content-title-in-text {
	font-size: 6vw;
	padding-left: 7.5vw;
}

.blog-content-title-in-text::before {
	font-size: 6vw;
}

/*------------------------------
ブログ記事
------------------------------*/

.post-content .wrapper {
	padding: 5vw 0 10vw;
}

.about-content + .post-content .wrapper {
	padding: 0 0 10vw;
}

.post-content-main-title {
	border-radius: 100px;
	margin-bottom: 2.5vw;
	padding: 1.5vw 6vw;
}

.post-content-main-title-in-text {
	font-size: 5.5vw;
}

.post-content-info-date {
	float: left;
	margin: 0.4vw 0;
}

.post-content-info-date-in-text {
	font-size: 4.5vw;
	padding-left: 6vw;
}

.post-content-info-cate-list {
	float: right;
	margin-bottom: -1.5vw;
	max-width: 59.1vw;
}

.post-content-info-cate-list li {
	float: left;
	margin: 0 1.5vw 1.5vw 0;
}

.post-content-info-cate-list-btn-in {
	border: 0.6vw solid;
	border-radius: 100px;
	font-size: 3.5vw;
	padding: 0.5vw 2.5vw;
}

.post-content-info-cate-list-btn-in-text {
	padding-left: 3.5vw;
}

.post-content-info-cate-list-btn-in-text::before {
	font-size: 3.5vw;
}

.post-content-eyecatch-img {
	margin: 2.5vw auto 0;
	width: 75%;
}

.slider.post-content-slider {
	margin-top: 2.5vw !important;
}

.post-content-in {
	font-size: 4.5vw;
}

.post-content-eyecatch-img + .post-content-in {
	margin-top: 7.5vw;
}

.slider.post-content-slider + .post-content-in {
	margin-top: 7.5vw;
}

.post-content-info + .post-content-in {
	margin-top: 2.5vw;
}

.post-content-in p {
	margin-bottom: 5vw;
}

.post-content-in p + h2,
.post-content-in p + h3,
.post-content-in p + h4,
.post-content-in p + .title-2,
.post-content-in p + .title-3,
.post-content-in p + .title-4,
.post-content-in ul + h2,
.post-content-in ul + h3,
.post-content-in ul + h4,
.post-content-in ul + .title-2,
.post-content-in ul + .title-3,
.post-content-in ul + .title-4,
.post-content-in ol + h2,
.post-content-in ol + h3,
.post-content-in ol + h4,
.post-content-in ol + .title-2,
.post-content-in ol + .title-3,
.post-content-in ol + .title-4,
.post-content-in dl + h2,
.post-content-in dl + h3,
.post-content-in dl + h4,
.post-content-in dl + .title-2,
.post-content-in dl + .title-3,
.post-content-in dl + .title-4,
.post-content-in table + h2,
.post-content-in table + h3,
.post-content-in table + h4,
.post-content-in table + .title-2,
.post-content-in table + .title-3,
.post-content-in table + .title-4,
.post-content-in img + h2,
.post-content-in img + h3,
.post-content-in img + h4,
.post-content-in img + .title-2,
.post-content-in img + .title-3,
.post-content-in img + .title-4,
.post-content-in iframe + h2,
.post-content-in iframe + h3,
.post-content-in iframe + h4,
.post-content-in iframe + .title-2,
.post-content-in iframe + .title-3,
.post-content-in iframe + .title-4,
.post-content-in div + h2,
.post-content-in div + h3,
.post-content-in div + h4,
.post-content-in div + .title-2,
.post-content-in div + .title-3,
.post-content-in div + .title-4,
.post-content-in a + h2,
.post-content-in a + h3,
.post-content-in a + h4,
.post-content-in a + .title-2,
.post-content-in a + .title-3,
.post-content-in a + .title-4,
.post-content-in center + h2,
.post-content-in center + h3,
.post-content-in center + h4,
.post-content-in center + .title-2,
.post-content-in center + .title-3,
.post-content-in center + .title-4 {
	margin-top: 10vw;
}

.post-content-in .title-2 {
	border-radius: 50px;
	margin-bottom: 2.5vw;
	padding: 1.5vw 2.5vw;
}

.post-content-in .title-2 .title-in-text {
	font-size: 5.5vw;
	padding-left: 6.5vw;
}

.post-content-in .title-2 .title-in-text::before {
	height: 5vw;
	top: 1.5vw;
	width: 5vw;
}

.post-content-in .title-3 {
	margin-bottom: 2.5vw;
	padding-bottom: 0.9vw;
}

.post-content-in .title-3::before {
	border-radius: 5px;
	height: 0.9vw;
	width: 30%;
}

.post-content-in .title-3::after {
	border-radius: 5px;
	height: 0.9vw;
}

.post-content-in .title-3 .title-in-text {
	font-size: 5.5vw;
}

.post-content-in .title-4 {
	margin-bottom: 2.5vw;
}

.post-content-in .title-4 .title-in-text {
	font-size: 5.5vw;
	padding-left: 6.5vw;
}

.post-content-in .title-4 .title-in-text::before {
	height: 5vw;
	top: 1.5vw;
	width: 5vw;
}

.post-content-in img.size-thumbnail {
	height: auto;
	width: 25%;
}

.post-content-in img.size-medium {
	height: auto;
	width: 50%;
}

.post-content-in img.size-large {
	height: auto;
	width: 100%;
}

.post-content-in img.size-full {
	height: auto;
	width: 100%;
}

.post-content-in img.size-full.defo {
	height: auto;
	max-width: 100%;
	width: auto;
}

.post-content-in .douga {
	margin-bottom: 5vw;
	width: 100%;
}

.post-content-in .big {
	font-size: 6vw;
}

.post-content-in .big-2 {
	display: block;
	font-size: 6vw;
}

.post-content-in .line {
	padding-bottom: 1.2vw;
}

.post-content-in .line::before,
.post-content-in .line::after {
	height: 0.6vw;
}

.post-content-in .line::after {
	bottom: 1.2vw;
}

.post-pager {
	margin: 10vw auto 0;
	width: 100%;
}

.post-pager section {
	float: left;
	padding-top: 3.75vw;
}

.post-pager-title {
	border: 1px solid;
	font-size: 3.5vw;
	padding: 1.5vw 2.5vw;
}

.post-pager section.sec-prev .post-pager-title {
	left: 2.5vw;
}

.post-pager section.sec-next .post-pager-title {
	right: 2.5vw;
}

.post-pager-in {
	border: 1px solid;
	font-size: 3.5vw;
	min-height: 30vw;
	padding: 7vw 2.5vw 2.5vw;
}

.post-pager-in:hover {
	opacity: 1;
}

.post-pager-in-img {
	width: 15.5vw;
}

.post-pager section.sec-prev .post-pager-in-img {
	float: left;
	margin-right: 2.5vw;
}

.post-pager section.sec-next .post-pager-in-img {
	float: right;
	margin-left: 2.5vw;
}

.post-pager-in-home-btn {
	width: 30vw;
}

.post-pager-in-home-btn-in {
	height: 30vw;
}

.post-pager-in-home-btn-in::before {
	border: 1.5vw solid;
	left: 1vw;
	height: calc(100% - 2vw);
	top: 1vw;
	width: calc(100% - 2vw);
}

.post-pager-in-home-btn:hover .post-pager-in-home-btn-in {
	opacity: 1;
}

.post-pager-in-home-btn-in-text::before {
	font-size: 12.5vw;
}

.list-pager .wp-pagenavi {
	margin: 5vw 0 -1.5vw;
}

.list-pager .wp-pagenavi span,
.list-pager .wp-pagenavi a {
	border: 0.9vw solid;
	font-size: 6vw;
	line-height: 10.2vw;
	height: 12vw;
	margin: 0 1.5vw 1.5vw 0;
	width: 12vw;
}

/*------------------------------
スタジオ紹介
------------------------------*/

.about-content .wrapper {
	padding: 5vw 0 10vw;
}

.about-content-text {
	font-size: 4.5vw;
}

.about-content-text p {
	margin-bottom: 5vw;
}

.about-content-text .big {
	font-size: 6vw;
}

.about-content-main-img {
	width: 75%;
}

.about-content-text + .about-content-main-img {
	margin-top: 5vw;
}

.about-content-main-title {
	margin-top: 2.5vw;
}

.about-content-main-title-in-text {
	font-size: 5.5vw;
}

.about-content-main-text {
	font-size: 4.5vw;
	margin-top: 5vw;
}

.about-content-main-text p {
	margin-bottom: 5vw;
}

.about-content-info-con section {
	background: url(images/bg-5.jpg);
	font-size: 4.5vw;
	margin-bottom: 5vw;
	padding: 5vw;
}

.about-content-info-con section p {
	margin-bottom: 5vw;
}

.about-content-info-con section .big {
	font-size: 5.5vw;
	text-align: center;
}

.about-content-info-con section .big .text {
	display: block;
	margin-left: 0;
}

.about-content-info-con-img {
	float: none;
	margin: 0 auto 5vw;
	width: 75%;
}

/*--------------------
季節ごとのイベント
--------------------*/

.event-content .wrapper {
	padding: 5vw 0 10vw;
}

.event-content-text {
	font-size: 4.5vw;
}

.event-content-text p {
	margin-bottom: 5vw;
}

.event-content-text + .event-content-con {
	margin-top: 7.5vw;
}

.event-content-con section {
	margin-bottom: 5vw;
	padding: 5vw;
}

.event-content-con-title {
	margin-bottom: 5vw;
}

.event-content-con-title-in {
	border-radius: 100px;
	padding: 2.5vw 1.5vw;
	width: 100%;
}

.event-content-con-title-in-text {
	font-size: 5.5vw;
}

.event-content-con-in .slider {
	float: none;
	width: 100%;
}

.event-content-con-in .slider + .event-content-con-in-in {
	float: none;
	margin: 5vw auto 0;
	width: 100%;
}

.event-content-con-in-in-text {
	font-size: 4.5vw;
}

.event-content-con-in-in-text p {
	margin-bottom: 5vw;
}

/*--------------------
スタジオ概要
--------------------*/

.about-info-content .wrapper {
	padding: 5vw 0 10vw;
}

.about-info-content-tb {
	width: 100%;
}

.about-info-content-tb table th {
	background: url(images/bg-5.jpg);
	display: block;
	font-size: 4.5vw;
	padding: 1.5vw 2.5vw !important;
	width: 100%;
}

.about-info-content-tb table th::before,
.about-info-content-tb table th::after {
	content: none;
}

.about-info-content-tb table td {
	display: block;
	font-size: 4.5vw;
	padding: 1.5vw 2.5vw 2.4vw;
}

.about-info-content-tb table td::after {
	background: url(images/bg-1.jpg);
	height: 0.9vw;
}

.about-info-content-tb table tr:last-child td {
	padding-bottom: 2.5vw;
}

.about-info-content-tb table td .tel-link a {
	color: #000;
	text-decoration: none;
}

/*------------------------------
体験レッスン
------------------------------*/

/*------------------------------
レッスン料金
------------------------------*/

.price-info-dl {
	width: 100%;
}

.price-info-dl dt {
	border: 0.6vw solid;
	padding: 1.5vw 2.5vw;
}

.price-info-dl-dt-in-text {
	font-size: 6vw;
}

.price-info-dl dd {
	border-right: 0.6vw solid;
	border-left: 0.6vw solid;
	font-size: 4.5vw;
	padding: 1.5vw 2.5vw;
}

.price-info-dl dd:last-child {
	border-bottom: 0.6vw solid;
}

.price-info-dl dd .big {
	font-size: 6vw;
}

.price-info-dl dd .mini {
	font-size: 3.5vw;
}

/*------------------------------
ボランティア
------------------------------*/

/*------------------------------
アクセス
------------------------------*/

.access-content .wrapper {
	padding: 5vw 0 10vw;
}

.access-content-map {
	float: none;
	height: 50vw;
	margin: 0 auto;
	width: 100%;
}

.access-content-in {
	float: none;
	margin: 5vw auto 0;
	width: 100%;
}

.access-content-in-title-main-in-text {
	font-size: 6vw;
}

.access-content-in-title-sub-in-text {
	font-size: 4.5vw;
}

.access-content-in-text {
	font-size: 4.5vw;
	margin-top: 5vw;
}

.access-content-in-text p {
	margin-bottom: 5vw;
}

.access-content-in-text .big {
	font-size: 6vw;
}

/*------------------------------
お問い合わせ
------------------------------*/

.contact-content .wrapper {
	padding: 5vw 0 10vw;
}

.post-content + .contact-content .wrapper {
	padding-top: 0;
}

.contact-content-text {
	font-size: 4.5vw;
	margin-bottom: 5vw;
}

.contact-content-text p {
	margin-bottom: 5vw;
}

.contact-content-form-tb {
	width: 100%;
}

.contact-content-form-tb table th {
	background: url(images/bg-5.jpg);
	display: block;
	font-size: 4.5vw;
	padding: 1.5vw 2.5vw !important;
	width: 100%;
}

.contact-content-form-tb table th::before,
.contact-content-form-tb table th::after {
	content: none;
}

.contact-content-form-tb table th .required {
	margin-left: 1.5vw;
}

.contact-content-form-tb table td {
	display: block;
	font-size: 4.5vw;
	padding: 2.5vw 2.5vw 3.4vw;
}

.contact-content-form-tb table td::after {
	background: url(images/bg-1.jpg);
	height: 0.9vw;
}

.contact-content-form-tb table tr:last-child td {
	padding-bottom: 2.5vw;
}

.contact-content-form-tb table td input[type="text"],
.contact-content-form-tb table td input[type="email"] {
	border: 1px solid;
	font-size: 4.5vw;
	padding: 1.5vw 2.5vw;
}

.contact-content-form-tb-td-select {
	width: 75%;
}

.contact-content-form-tb-td-select.w-100-sp {
	width: 100%;
}

.contact-content-form-tb-td-select::before,
.contact-content-form-tb-td-select::after {
	border-top: 0.6vw solid;
	border-right: 0.6vw solid;
	height: 2vw;
	right: 3vw;
	width: 2vw;
}

.contact-content-form-tb-td-select::before {
	top: 2vw;
}

.contact-content-form-tb-td-select::after {
	top: 6vw;
}

.contact-content-form-tb-td-select select {
	border: 1px solid;
	font-size: 4.5vw;
	padding: 1.5vw 2.5vw;
}

.contact-content-form-tb-td-date {
	width: 50%;
}

_::-webkit-full-page-media, _:future, :root .contact-content-form-tb-td-date::before,
_::-webkit-full-page-media, _:future, :root .contact-content-form-tb-td-date.active:has(.wpcf7-not-valid)::before {
	box-sizing: border-box;
	content: "年/月/日";
	font-family: "M PLUS Rounded 1c", sans-serif;
	font-weight: 400;
	font-size: 21px;
	line-height: 1.5;
	left: 4.5vw;
	position: absolute;
	top: 3.5vw;
	z-index: 2;
}

_::-webkit-full-page-media, _:future, :root .contact-content-form-tb-td-date.active::before {
	content: none;
}

.contact-content-form-tb-td-date:has(+ .contact-content-form-tb-td-select) {
	float: none;
	width: 50%;
}

.contact-content-form-tb-td-date + .contact-content-form-tb-td-select {
	float: none;
	margin-top: 2.5vw;
	width: 75%;
}

.contact-content-form-tb-td-date input[type="date"] {
	border: 1px solid;
	font-size: 4.5vw;
	padding: 1.5vw 2.5vw;
}

_::-webkit-full-page-media, _:future, :root .contact-content-form-tb-td-date input[type="date"] {
	height: 10vw;
}

.contact-content-form-tb table td textarea {
	border: 1px solid;
	font-size: 4.5vw;
	height: 50vw;
	padding: 1.5vw 2.5vw;
}

.contact-content-check-text {
	margin-top: 5vw;
}

.contact-content-check-text label::before {
	border: 0.6vw solid;
	border-radius: 5px;
	height: 12vw;
	width: 12vw;
}

.contact-content-check-text-in {
	font-size: 4.5vw;
	min-height: 12vw;
	padding: 2.5vw 0 0 15vw;
}

.contact-content-check-text-in::before {
	border-radius: 5px;
	left: 1.6vw;
	height: calc(12vw - 3.2vw);
	top: 1.6vw;
	width: calc(12vw - 3.2vw);
}

.contact-content-check-text label input[type="checkbox"]:checked + .contact-content-check-text-in::after {
	border-right: 1vw solid;
	border-bottom: 1vw solid;
	left: 4vw;
	height: 4.5vw;
	top: 2.75vw;
	width: 3.5vw;
}

.contact-content-send-btn {
	margin: 5vw auto 0;
	padding-bottom: 1.5vw;
	width: 75%;
}

.contact-content-send-btn input[type="submit"] {
	box-shadow: 0 1.5vw var(--orange-2-dark);
	border-radius: 10px;
	font-size: 4.5vw;
	padding: 3vw;
}

.contact-content-send-btn input[type="submit"]:hover {
	transform: translate3d(0,1.5vw,0);
	-webkit-transform: translate3d(0,1.5vw,0);
}

.contact-content-send-btn input[type="submit"].none:hover {
	box-shadow: 0 1.5vw var(--orange-2-dark) !important;
}

.grecaptcha-badge {
	bottom: 18.5vw !important;
}

body#experience .grecaptcha-badge {
	bottom: 36vw !important;
}

body#experience.none .grecaptcha-badge {
	bottom: 18.5vw !important;
}

/*----------------------------------------
404ページ
----------------------------------------*/

/*----------------------------------------
sidebar
----------------------------------------*/

/*----------------------------------------
footer
----------------------------------------*/

footer {
	margin-bottom: 17.5vw;
	min-height: 12.1vw;
	padding-top: 12.1vw;
}

footer::before {
	background-image: url(images/foot-bg.png);
	height: 12.1vw;
}

footer::after {
	background: url(images/bg-5.jpg);
	background-size: 100%;
	height: calc(100% - 12.1vw);
	top: 12.1vw;
}

footer.no-fixed-contact {
	margin-bottom: 0;
}

.foot-copyright .wrapper {
	padding: 5vw 0;
}

.foot-copyright-text {
	font-size: 3.5vw;
}

.foot-copyright-text span {
	display: block;
	margin: 0;
}

/*----------------------------------------
固定お問い合わせボタン
----------------------------------------*/

.fixed-contact {
	display: none;
}

/*----------------------------------------
スマホ用固定フッター
----------------------------------------*/

.fixed-foot-sp {
	background: #fff;
	box-sizing: border-box;
	box-shadow: 0 0 15px 0 rgba(0,0,0,0.6);
	bottom: 0;
	left: 0;
	padding: 2.5vw;
	position: fixed;
	width: 100%;
	z-index: 99;
}

.fixed-foot-sp-btn-list {
	box-sizing: border-box;
}

.fixed-foot-sp-btn-list li {
	box-sizing: border-box;
	float: left;
	margin-right: 2.5%;
	width: 48.75%;
}

.fixed-foot-sp-btn-list li:last-child {
	margin-right: 0;
}

.fixed-foot-sp-btn-list-btn {
	box-sizing: border-box;
	display: block;
	line-height: 0;
	padding-bottom: 1.5vw;
	text-align: center;
	text-decoration: none;
}

.fixed-foot-sp-btn-list-btn-in {
	background: #636e72;
	box-sizing: border-box;
	box-shadow: 0 1.5vw #2d3436;
	border-radius: 10px;
	color: #fff;
	display: block;
	font-weight: 700;
	font-size: 4vw;
	line-height: 1.5;
	height: 11vw;
	position: relative;
}

.fixed-foot-sp-btn-list li.li-tel .fixed-foot-sp-btn-list-btn-in {
	background: var(--blue-2);
	box-shadow: 0 1.5vw var(--blue-2-dark);
}

.fixed-foot-sp-btn-list li.li-mail .fixed-foot-sp-btn-list-btn-in {
	background: var(--pink-2);
	box-shadow: 0 1.5vw var(--pink-2-dark);
}

.fixed-foot-sp-btn-list-btn-in-text {
	box-sizing: border-box;
	display: block;
	left: 0;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.fixed-foot-sp-btn-list-btn-in-text-in {
	box-sizing: border-box;
	display: inline-block;
	padding-left: 6vw;
	position: relative;
}

.fixed-foot-sp-btn-list-btn-in-text-in::before {
	box-sizing: border-box;
	content: "";
	font-family: 'icomoon';
	font-weight: 400;
	font-size: 6vw;
	line-height: 1;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.fixed-foot-sp-btn-list li.li-tel .fixed-foot-sp-btn-list-btn-in-text-in::before {
	content: "\e016";
}

.fixed-foot-sp-btn-list li.li-mail .fixed-foot-sp-btn-list-btn-in-text-in {
	padding-left: 9vw;
}

.fixed-foot-sp-btn-list li.li-mail .fixed-foot-sp-btn-list-btn-in-text-in::before {
	content: "\e017";
	font-size: 8vw;
}

/*----------------------------------------
ページトップ
----------------------------------------*/

.pagetop {
	bottom: calc(17.5vw + 2.5vw);
	height: 50px;
	right: 2.5vw;
	width: 50px;
}

.pagetop.no-fixed-contact {
	bottom: 2.5vw;
}

.pagetop::before {
	font-size: 50px;
	line-height: 50px;
	width: 50px;
}

.pagetop:hover {
	opacity: 1;
}