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

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td,
small,
button,
time,
figure {
	border: 0;
	font-size: 100%;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

html {
	line-height: 1;
}

ol,
ul {
	list-style: none;
}

li,
dd {
	list-style-type: none;
}

header,
footer,
nav,
section,
article,
main,
aside,
figure,
figcaption {
	display: block;
}

img {
	border: none;
	vertical-align: bottom;
}

a {
	cursor: pointer;
	text-decoration: none;
}

@font-face {
	font-family: "bananaslip";
	src: url("../fonts/YDWbananaslipplus.otf") format("opentype");
}

/* ===============================================
# メディアクエリー
=============================================== */

html {
	font-size: clamp(0.6944444444px, 0.0694444444vw, 1px);
}

body {
	color: #0B318F;
	font-family: "Zen Maru Gothic", serif;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.67;
}

img {
	max-width: 100%;
	height: auto;
}

a {
	color: inherit;
}

.jp {
	font-family: "Zen Maru Gothic", serif;
}

.en {
	font-family: "Lilita One", sans-serif;
	font-weight: 700;
}

.l-header {
	position: sticky;
	top: 0;
	left: 0;
	width: 100%;
	height: min(100rem, 100px);
	padding: 0 min(40rem, 40px);
	z-index: 20;
	background: rgba(255, 255, 255, 0.95);
}

.l-header-wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: inherit;
	max-width: calc(1100px + min(40rem, 40px) * 2);
	margin-inline: auto;
}

.l-header-logo {
	width: 581rem;
	aspect-ratio: 581/35;
	transition: opacity 0.3s ease 0s;
}

.l-header-logo:hover {
	opacity: 0.7;
}

.l-header-logo--404 {
	width: min(404rem, 404px);
	height: auto;
}

.l-header-logo--404 img {
	width: 100%;
	height: auto;
}

.l-header-nav {
	display: flex;
	align-items: center;
}

.l-header-list {
	display: flex;
	align-items: center;
	-moz-column-gap: min(40rem, 40px);
	column-gap: min(40rem, 40px);
}

.l-header-item:not(:first-child) {
	position: relative;
}

.l-header-item:not(:first-child)::before {
	content: "";
	position: absolute;
	width: 1px;
	height: min(20rem, 20px);
	background: #000;
	top: 50%;
	left: max(-20rem, -20px);
	transform: translateY(-50%);
}

.l-header-item a {
	color: #000;
	font-size: 16rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	font-size: max(14px, 16rem);
	transition: opacity 0.3s ease 0s;
}

.l-header-item a:hover {
	opacity: 0.7;
}

.l-drawer-icon {
	display: none;
	padding: 20rem 20rem 18rem;
	width: 70rem;
	height: 58rem;
	justify-content: space-between;
	flex-direction: column;
	cursor: pointer;
	transition: opacity 0.3s ease 0s;
}

.l-drawer-icon:hover {
	opacity: 0.7;
}

.l-drawer-icon .bar {
	width: 100%;
	height: 2px;
	background: #000;
	display: block;
	transition: transform 0.3s ease 0s;
}

.l-drawer-icon.js-open .bar1 {
	transform: translateY(9rem) rotate(30deg);
}

.l-drawer-icon.js-open .bar2 {
	display: none;
}

.l-drawer-icon.js-open .bar3 {
	transform: translateY(-9rem) rotate(-30deg);
}

.l-footer {
	background: #0B318F;
	padding: 30px 0 47px;
	color: #fff;
	text-align: center;
	font-size: 14rem;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0em;
	font-size: 14px;
}

.l-footer__charge {
	margin-top: 19px;
}

.l-footer__copy {
	display: block;
	margin-top: 19px;
}

.l-drawerMenu {
	position: fixed;
	z-index: 19;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	background: linear-gradient(to right, #34C472 0 50%, #9877F2 50% 100%);
	padding: 75rem 20rem 30rem;
	transform: translateX(100%);
	transition: transform 0.7s ease;
}

.l-drawerMenu.js-open {
	transform: translateX(0);
}

.l-drawerMenu__list {
	padding-block: 97rem;
	background: #FFF;
	border-radius: 30px;
	display: flex;
	flex-direction: column;
	gap: 40rem;
	position: relative;
}

.l-drawerMenu__list::before {
	display: none;
	content: "";
	width: 69rem;
	aspect-ratio: 69/44;
	background: url(./../img/about_icon-left.webp) no-repeat center center/cover;
	position: absolute;
	top: 269rem;
	left: 28rem;
}

.l-drawerMenu__list::after {
	display: none;
	content: "";
	width: 65rem;
	aspect-ratio: 65/49;
	background: url(./../img/about_icon-right.webp) no-repeat center center/cover;
	position: absolute;
	top: 22rem;
	right: 30rem;
}

.l-drawerMenu__item {
	transition: all 0.8s ease 0s;
	text-align: center;
	color: #000;
	font-size: 20rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	font-size: 20rem;
}

.l-drawerMenu__item a {
	transition: opacity 0.3s ease 0s;
}

.l-drawerMenu__item a:hover {
	opacity: 0.7;
}

/* 
------------------------------------------------------ */

.l-drawerBg {
	position: fixed;
	z-index: 18;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.7);
	display: none;
	transition: all 0.3s ease 0s;
}

.l-drawerBg.js-open {
	display: block;
}

body.noScroll {
	overflow: hidden;
}

.l-header.js-open {
	box-shadow: none;
}

.c-btn {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 880rem;
	aspect-ratio: 880/70;
	font-size: 28rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0em;
	font-size: 28rem;
	background: #0B318F;
	border-radius: min(50rem, 50px);
	color: #fff;
	transition: opacity 0.3s ease 0s;
}

.c-btn:hover {
	opacity: 0.7;
}

.p-fv {
	position: relative;
}

.p-fv__title {
	max-width: 1079px;
	width: 100%;
	height: auto;
	margin-inline: auto;
}

.p-fv__text {
	margin-top: 47rem;
	text-align: center;
	font-size: 18rem;
	font-weight: 900;
	line-height: 1.6666666667;
	letter-spacing: 0em;
	font-size: max(16px, 18rem);
	font-size: 18rem;
}

.p-fv__btn {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: min(30rem, 30px);
}

.p-fv__icon {
	position: absolute;
}

.p-fv__icon.--1 {
	width: 105rem;
	aspect-ratio: 105/85;
	top: -53rem;
	left: calc(50% + 310rem);
}

.p-fv__icon.--2 {
	width: 142rem;
	aspect-ratio: 142/115;
	top: max(205px, 219rem);
	right: calc(50% + 403rem);
}

.p-fv__icon.--3 {
	width: 87rem;
	aspect-ratio: 1/1;
	top: 462rem;
	right: calc(50% + 446rem);
}

.p-fv__price {
	width: 200rem;
	aspect-ratio: 200/199;
	position: absolute;
	top: 222rem;
	left: calc(50% + 455rem);
}

.p-main {
	width: 100%;
	background: linear-gradient(to right, #34C472 0 50%, #9877F2 50% 100%);
	padding-block: 50rem 100rem;
}

.p-main__container {
	background: #fff;
	border-radius: min(100rem, 100px);
	max-width: 1180px;
	width: 90%;
	margin-inline: auto;
	padding-top: min(2.4305555556vw, 35px);
	padding-bottom: min(100rem, 100px);
	padding-left: 20px;
	padding-right: 20px;
	position: relative;
}

.p-about {
	text-align: center;
	position: relative;
	margin-top: 42rem;
}

.p-about::before {
	content: "";
	position: absolute;
	background: url(./../img/about_icon-left.webp) no-repeat center center/cover;
	width: 126rem;
	aspect-ratio: 126/81;
	top: 109rem;
	right: calc(50% + 298rem);
}

.p-about::after {
	content: "";
	position: absolute;
	background: url(./../img/about_icon-right.webp) no-repeat center center/cover;
	width: 119rem;
	aspect-ratio: 119/89;
	top: 33rem;
	left: calc(50% + 352rem);
}

.p-about__time__img {
	width: 561rem;
	height: auto;
	margin-inline: auto;
}

.p-about__time__text {
	margin-top: min(8rem, 8px);
	font-size: 18rem;
	font-weight: 900;
	line-height: 1.6666666667;
	letter-spacing: 0em;
	font-size: max(16px, 18rem);
}

.p-about__time-table {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-top: 13rem;
}

.p-about__time-table li {
	font-size: 18rem;
	font-weight: 700;
	line-height: 1.5555555556;
	letter-spacing: 0em;
}

.p-about__location {
	font-size: 18rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0em;
	font-size: max(16px, 18rem);
	margin-top: 20rem;
}

.p-about__address {
	font-size: 14rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	font-size: max(12px, 14rem);
	margin-top: 11rem;
}

.p-about__btn {
	margin-top: 17rem;
	width: max(260px, 289rem);
	aspect-ratio: 289/40;
	border-radius: min(50rem, 50px);
	background: #0b318f;
	color: #fff;
	font-size: 18rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0em;
	font-size: max(16px, 18rem);
	display: flex;
	justify-content: center;
	align-items: center;
	margin-inline: auto;
	transition: opacity 0.3s ease 0s;
}

.p-about__btn:hover {
	opacity: 0.7;
}

.p-about__cost {
	margin-top: min(28rem, 28px);
	font-size: 24rem;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: 0em;
	font-size: min(24rem, 24px);
}

.p-about__subject {
	margin-top: min(8rem, 8px);
	font-size: 24rem;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: 0em;
	font-size: min(24rem, 24px);
}

.p-about__detailTitle {
	margin-top: min(32rem, 32px);
	font-size: 18rem;
	font-weight: 900;
	line-height: 1.6666666667;
	letter-spacing: 0em;
	font-size: max(16px, 18rem);
}

.p-about__detail {
	font-size: 18rem;
	font-weight: 900;
	line-height: 1.6666666667;
	letter-spacing: 0em;
	font-size: max(16px, 18rem);
}

.p-about__detailAnnotation {
	display: flex;
	flex-direction: column;
	font-size: 12rem;
	font-weight: 400;
	line-height: 1.6666666667;
	letter-spacing: 0em;
	font-size: max(12rem, 12px);
	margin-top: min(0.7638888889vw, 11px);
}

.p-seminar {
	width: 940rem;
	margin-inline: auto;
	margin-top: 80rem;
}

.p-seminar__title {
	width: max(242px, 270rem);
	margin-inline: auto;
}

.p-seminar__title img {
	width: 100%;
}

.p-seminar__text {
	font-size: 18rem;
	font-weight: 900;
	line-height: 1.6666666667;
	letter-spacing: 0em;
	font-size: 18rem;
	text-align: center;
	margin-top: 30rem;
}

.p-seminar__main {
	display: flex;
	flex-direction: column;
	gap: 65rem;
	margin-top: 42rem;
}

.p-seminar__content.--1 .p-seminar__content-title {
	background: #9877f2;
}

.p-seminar__content.--1 .p-seminar__item {
	border-color: #9877f2;
}

.p-seminar__content.--1 .p-seminar__item-name {
	border-color: #9877f2;
}

.p-seminar__content.--2 .p-seminar__content-title {
	background: #34c472;
}

.p-seminar__content.--2 .p-seminar__item {
	border-color: #34c472;
}

.p-seminar__content.--2 .p-seminar__item-name {
	border-color: #34c472;
}

.p-seminar__content-title {
	width: 100%;
	height: 60rem;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 18rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.0055555556em;
	font-size: 18rem;
	border-radius: 50rem;
}

.p-seminar__item-wrap {
	display: flex;
	flex-direction: column;
	gap: 20rem;
	margin-top: 20rem;
}

.p-seminar__item {
	border: solid max(1px, 1rem);
	border-radius: 30rem;
	text-align: center;
	padding-inline: 48rem;
	padding-block: 30rem;
	box-shadow: 5rem 5rem 10rem rgba(0, 0, 0, 0.15);
}

.p-seminar__item-time {
	font-family: "Lilita One", sans-serif;
	font-size: 24rem;
	font-weight: 400;
	line-height: 1.1666666667;
	letter-spacing: 0em;
	font-size: 24rem;
}

.p-seminar__item-title {
	font-family: "bananaslip", sans-serif;
	font-size: 34rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	font-size: 34rem;
	margin-top: 13rem;
}

.p-seminar__item-name {
	font-size: 14rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0em;
	font-size: max(12px, 14rem);
	margin-top: max(10px, 11rem);
	padding-bottom: 17rem;
	border-bottom: max(1px, 1rem) solid;
}

.p-seminar__item-name span {
	display: inline-block;
	font-size: 15rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	font-size: max(12px, 15rem);
	margin-bottom: 12rem;
}

.p-seminar__item-text {
	font-size: 15rem;
	font-weight: 700;
	line-height: 1.3333333333;
	letter-spacing: 0em;
	font-size: max(12px, 15rem);
	margin-top: 15rem;
}

.p-seminar__item-target {
	font-size: 15rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	font-size: max(12px, 15rem);
	margin-top: max(8px, 8rem);
}

.p-seminar__remark {
	font-size: 12rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	font-size: max(12px, 12rem);
	text-align: center;
	margin-top: 18rem;
}

.p-workShop {
	margin-top: 80rem;
}

.p-workShop__title {
	width: max(300px, 335rem);
	margin-inline: auto;
}

.p-workShop__title img {
	width: 100%;
}

.p-workShop__text {
	font-size: 18rem;
	font-weight: 900;
	line-height: 1.6666666667;
	letter-spacing: 0em;
	font-size: max(16px, 16rem);
	text-align: center;
	margin-top: 24rem;
}

.p-workShop__wrapper {
	display: flex;
	gap: 30px;
	flex-wrap: wrap;
	max-width: 1110px;
	justify-content: center;
	margin-inline: auto;
	margin-top: 34rem;
}

.p-workShop__item {
	width: 350px;
	text-align: center;
	border: 2px solid;
	border-radius: 20rem;
	padding-block: 30rem 40rem;
	padding-inline: 31rem;
}

.p-workShop__item.--1 {
	border-color: #9877F2;
}

.p-workShop__item.--2 {
	border-color: #34C472;
}

.p-workShop__item.--3 {
	border-color: #9877F2;
}

.p-workShop__item__box__num {
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	font-size: 22rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0em;
	position: relative;
	padding-bottom: 12rem;
	border-bottom: 1px solid #0B318F;
	padding-inline: 20px;
}

.p-workShop__item__title {
	margin-top: 20px;
}

.p-workShop__item__title__main {
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
}

.p-workShop__item__title__main img {
	width: auto;
	height: 36px;
}

.p-workShop__item__title__main__sub {
	font-size: 15rem;
	font-weight: 900;
	line-height: 1.4;
	letter-spacing: 0em;
	font-size: 15px;
	white-space: nowrap;
	display: flex;
	justify-content: center;
	margin-top: 15px;
}

.p-workShop__item__img {
	width: 100%;
	aspect-ratio: 349/278;
	border-radius: 20rem;
	overflow: hidden;
	margin-top: 18px;
}

.p-workShop__item__img img {
	width: 100%;
	height: auto;
}

.p-workShop__item__times {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-top: 30px;
}

.p-workShop__item__time {
	width: 100%;
	height: 50px;
	aspect-ratio: 354/50;
	border: 2px solid;
	border-radius: 25px;
	overflow: hidden;
	display: flex;
}

.p-workShop__item__time__title {
	flex-shrink: 0;
	color: #fff;
	background: rgba(18, 184, 215, 0.2);
	width: 87px;
	height: auto;
	font-size: 12rem;
	font-weight: 900;
	line-height: 1.8333333333;
	letter-spacing: 0em;
	font-size: max(12px, 12rem);
	display: flex;
	justify-content: center;
	align-items: center;
}

.p-workShop__item__times.--1 .p-workShop__item__time {
	border-color: #9877F2;
	background: #9877F2;
}

.p-workShop__item__times.--1 .p-workShop__item__time__title {
	background: #9877F2;
}

.p-workShop__item__times.--2 .p-workShop__item__time {
	border-color: #34C472;
	background: #34C472;
}

.p-workShop__item__times.--2 .p-workShop__item__time__title {
	background: #34C472;
}

.p-workShop__item__times.--3 .p-workShop__item__time {
	border-color: #9877F2;
	background: #9877F2;
}

.p-workShop__item__times.--3 .p-workShop__item__time__title {
	background: #9877F2;
}

.p-workShop__item__time__num {
	width: 100%;
	font-family: "Lilita One", sans-serif;
	font-size: 24rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	font-size: 24px;
	display: flex;
	align-items: center;
	background: #fff;
	padding-left: 31px;
}

.p-workShop__texts {
	text-align: center;
	font-size: 12rem;
	font-weight: 400;
	line-height: 1.6666666667;
	letter-spacing: 0em;
	font-size: 12px;
	margin-top: 27px;
}

.p-speaker {
	max-width: 1110px;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	border-radius: 20rem;
	background: rgba(152, 119, 242, 0.1);
	padding: 40rem 52rem 50rem;
	scroll-margin-top: 130px; /* 追記 */
	margin-top: 41px;
}

.p-speaker__title {
	font-size: 22rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0em;
	font-size: 22px;
	position: relative;
	text-align: center;
}

.p-speaker__title::after {
	content: "";
	position: absolute;
	width: 207px;
	height: 1px;
	background: #0b318f;
	bottom: -14px;
	left: 50%;
	transform: translateX(-50%);
}

.p-speaker__wrapper {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	flex-wrap: wrap;
	margin-top: 45px;
	gap: 60px;
}

.p-speaker__item {
	width: 295px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

.p-speaker__item__img {
	width: 278px;
	height: 278px;
	border-radius: 50%;
	overflow: hidden;
}

.p-speaker__item__img img {
	width: 100%;
	height: auto;
}

.p-speaker__item__name {
	margin-top: 14px;
	font-size: 22rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0em;
	font-size: 22px;
}

.p-speaker__item__job {
	margin-top: 9px;
	font-size: 15rem;
	font-weight: 700;
	line-height: 1.4666666667;
	letter-spacing: 0em;
	font-size: 15px;
	text-align: center;
}

.p-speaker__item__charge {
	width: 100%;
	height: 30px;
	border-radius: 25px;
	background: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 15rem;
	font-weight: 700;
	line-height: 1.4666666667;
	letter-spacing: 0em;
	font-size: 15px;
	margin-top: 17px;
}

.p-speaker__item__text {
	margin-top: 14px;
	font-size: 12rem;
	font-weight: 500;
	line-height: 1.6666666667;
	letter-spacing: 0em;
	font-size: 12px;
}

.p-application {
	margin-top: 42px;
	text-align: center;
}

.p-application__top {
	font-size: 18rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0em;
	font-size: max(16px, 18rem);
}

.p-application__annotation {
	margin-top: 9px;
	font-size: 12rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	font-size: 12px;
}

.p-application__btn {
	margin-top: 37px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.p-shop {
	text-align: center;
	margin-top: 70rem;
}

.p-shop__text {
	height: 100%;
	font-size: 18rem;
	font-weight: 900;
	line-height: 1.6666666667;
	letter-spacing: 0em;
	font-size: 18rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.p-shop__img {
	width: 694rem;
	border-radius: 20rem;
	overflow: hidden;
	margin-inline: auto;
	margin-top: 40rem;
}

.p-shop__title {
	font-size: 32rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0em;
	font-size: 32rem;
	margin-top: 35rem;
}

.p-shop__copyright {
	display: flex;
	flex-direction: column;
	gap: 2rem;
	font-size: 18rem;
	font-weight: 400;
	line-height: 1.6666666667;
	letter-spacing: 0em;
	font-size: 18rem;
	margin-top: 10rem;
}

.p-shop__cooperation {
	margin-top: 38rem;
}

.p-shop__cooperation-title {
	font-size: 18rem;
	font-weight: 900;
	line-height: 1.6666666667;
	letter-spacing: 0em;
	font-size: 18rem;
}

.p-shop__cooperation-item-wrap {
	display: flex;
	flex-direction: column;
	gap: 70rem;
	margin-top: 7rem;
}

.p-shop__cooperation-item-title {
	font-size: 18rem;
	font-weight: 400;
	line-height: 1.6666666667;
	letter-spacing: 0em;
	font-size: 18rem;
}

.p-shop__cooperation-text {
	font-size: 18rem;
	font-weight: 700;
	line-height: 1.6666666667;
	letter-spacing: 0em;
	font-size: 18rem;
	margin-top: 14rem;
}

.u-visually-hidden {
	clip: rect(0, 0, 0, 0) !important;
	border: 0 !important;
	height: 1px !important;
	margin: -1px !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: absolute !important;
	white-space: nowrap !important;
	width: 1px !important;
}

/*きらっと光る*/

.u-btnShine {
	text-decoration: none;
	outline: none;
	overflow: hidden;
	transition: transform 0.4s ease 0s;
}

.u-btnShine:hover {
	transform: scale(1.1);
	opacity: 0.7;
}

/*キラッと光る*/

.u-btnShine::before {
	content: ""; /*絶対配置でキラッと光るの位置を決める*/
	position: absolute;
	top: 0;
	left: -75%; /*キラッと光る形状*/
	width: 50%;
	height: 100%;
	background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
	transform: skewX(-25deg);
}

/*hoverした際の移動のアニメーション*/

.u-btnShine::before {
	animation: shine 3s infinite linear;
}

.u-color__blue {
	font-size: 18rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.04em;
	font-size: 18rem;
	color: #0B318F;
}

.u-color__blue2 {
	color: #0B318F;
}

.u-mt0 {
	margin-top: 0;
}

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

.p-speaker__wrapper {
	max-width: 755px;
}

}

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

.p-fv__icon.--2 {
	top: 17.3611111111vw;
}

}

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

.u-is--pc {
	display: block;
}

.u-is--tab {
	display: none;
}

.u-is--sp {
	display: none;
}

}

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

.u-is--pc {
	display: none;
}

.u-is--tab {
	display: block;
}

.u-is--sp {
	display: none;
}

.u-color__blue {
	font-size: min(18rem, 18px);
}

.u-mt0 {
	margin-top: 0;
}

}

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

.p-fv__price {
	top: 15.9722222222vw;
	left: calc(50% + 350rem);
}

}

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

.p-fv__icon.--3 {
	top: 430rem;
	right: calc(50% + 410rem);
}

}

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

html {
	font-size: 0.2666666667vw;
}

.l-header {
	padding: 0 20rem;
	padding-right: 0;
	height: 60rem;
}

.l-header-wrap {
	max-width: none;
}

.l-header-logo {
	width: 218rem;
}

.l-header-logo--404 {
	width: 250.96rem;
}

.l-header-nav {
	display: none;
}

.l-drawer-icon {
	display: flex;
}

.l-footer {
	padding: 30rem 0 44rem;
	font-size: 14rem;
}

.l-footer__charge {
	margin-top: 19rem;
}

.l-footer__copy {
	margin-top: 19rem;
}

.l-drawerMenu__list::before {
	display: block;
}

.l-drawerMenu__list::after {
	display: block;
}

.c-btn {
	width: 100%;
	aspect-ratio: 305/60;
	font-size: 15rem;
	font-weight: 900;
	line-height: 1.3333333333;
	letter-spacing: 0em;
	border-radius: 50rem;
	text-align: center;
}

.c-btn.--large {
	font-size: 20rem;
	font-weight: 900;
	line-height: 1.4;
	letter-spacing: 0em;
}

.p-fv__title {
	width: 238rem;
}

.p-fv__text {
	text-align: left;
	font-size: 16rem;
	font-weight: 900;
	line-height: 1.625;
	letter-spacing: 0em;
	margin-top: 40rem;
}

.p-fv__btn {
	margin-top: 18rem;
}

.p-fv__icon.--1 {
	width: 55rem;
	top: -5rem;
	left: calc(50% + 108rem);
}

.p-fv__icon.--2 {
	width: 50rem;
	top: 117rem;
	right: calc(50% + 103rem);
}

.p-fv__icon.--3 {
	width: 45rem;
	top: 210rem;
	right: calc(50% + 101rem);
}

.p-fv__price {
	width: 76rem;
	top: 117rem;
	left: calc(50% + 84rem);
}

.p-main {
	padding-block: 15rem 17rem;
}

.p-main__container {
	border-radius: 30rem;
	width: 345rem;
	padding-top: 20rem;
	padding-bottom: 50rem;
	padding-left: 20rem;
	padding-right: 20rem;
}

.p-about {
	margin-top: 25rem;
}

.p-about::before {
	display: none;
}

.p-about::after {
	display: none;
}

.p-about__time__img {
	width: 261rem;
}

.p-about__time__text {
	font-size: 15rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0em;
	margin-top: 10rem;
}

.p-about__time-table li {
	font-size: 15rem;
	font-weight: 700;
	line-height: 1.5333333333;
	letter-spacing: 0em;
}

.p-about__location {
	font-size: 15rem;
	font-weight: 700;
	line-height: 1.3333333333;
	letter-spacing: 0em;
	margin-top: 12rem;
}

.p-about__address {
	font-size: 12rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	font-size: 12rem;
	margin-top: 3rem;
}

.p-about__btn {
	width: 305rem;
	height: 40rem;
	border-radius: 50rem;
	font-size: 16rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0em;
	margin-top: 20rem;
}

.p-about__cost {
	font-size: 15rem;
	font-weight: 700;
	line-height: 2;
	letter-spacing: 0em;
	margin-top: 10rem;
}

.p-about__subject {
	font-size: 15rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0em;
	font-size: 15rem;
}

.p-about__detailTitle {
	font-size: 15rem;
	font-weight: 700;
	line-height: 1.5333333333;
	letter-spacing: 0em;
	margin-top: 24rem;
}

.p-about__detail {
	font-size: 15rem;
	font-weight: 700;
	line-height: 1.5333333333;
	letter-spacing: 0em;
}

.p-about__detailAnnotation {
	font-size: 12rem;
	font-weight: 400;
	line-height: 1.6666666667;
	letter-spacing: 0em;
	letter-spacing: -0.03em;
	margin-top: 3rem;
}

.p-seminar {
	width: 100%;
	margin-top: 50rem;
}

.p-seminar__title {
	width: 150rem;
}

.p-seminar__text {
	font-size: 15rem;
	font-weight: 700;
	line-height: 1.5333333333;
	letter-spacing: 0em;
	font-size: 15rem;
	margin-top: 14rem;
}

.p-seminar__main {
	gap: 50rem;
	margin-top: 24rem;
}

.p-seminar__content-title {
	font-size: 15rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.0066666667em;
	font-size: 15rem;
}

.p-seminar__item {
	border-radius: 20rem;
	padding-inline: 17rem;
	padding-block: 25rem;
}

.p-seminar__item-time {
	font-size: 20rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	font-size: 20rem;
}

.p-seminar__item-title {
	font-size: 24rem;
	font-weight: 400;
	line-height: 1.25;
	letter-spacing: 0em;
	font-size: 24rem;
	margin-top: 10rem;
}

.p-seminar__item-name {
	font-size: 14rem;
	font-weight: 700;
	line-height: 1.4285714286;
	letter-spacing: 0em;
	margin-top: 12rem;
}

.p-seminar__item-name span {
	font-size: 12rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	font-size: max(12px, 12rem);
	margin-top: -4rem;
	margin-bottom: 22rem;
}

.p-seminar__item-text {
	font-size: 15rem;
	font-weight: 700;
	line-height: 1.5333333333;
	letter-spacing: 0em;
	margin-top: 14rem;
}

.p-seminar__item-target {
	font-size: 15rem;
	font-weight: 400;
	line-height: 1.3333333333;
	letter-spacing: 0em;
	margin-top: 10rem;
}

.p-seminar__item-target.--long {
	white-space: nowrap;
	position: relative;
	left: -3%;
}

.p-seminar__remark {
	font-size: 12rem;
	font-weight: 400;
	line-height: 1.6666666667;
	letter-spacing: 0em;
	margin-top: 14rem;
}

.p-workShop {
	margin-top: 44rem;
}

.p-workShop__title {
	width: 203rem;
}

.p-workShop__text {
	font-size: 15rem;
	font-weight: 900;
	line-height: 1.5333333333;
	letter-spacing: 0em;
	white-space: nowrap;
	display: flex;
	justify-content: center;
	margin-top: 13rem;
}

.p-workShop__wrapper {
	gap: 20rem;
	margin-top: 14rem;
}

.p-workShop__item {
	width: 100%;
	padding: 12rem 22rem 32rem;
}

.p-workShop__item__box__num {
	font-size: 18rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0em;
	padding-bottom: 8rem;
}

.p-workShop__item__title {
	margin-top: 17rem;
}

.p-workShop__item__title__main {
	width: 100%;
}

.p-workShop__item__title__main img {
	height: 32px;
}

.p-workShop__item__title__main__sub {
	font-size: 14rem;
	font-weight: 900;
	line-height: 1.4285714286;
	letter-spacing: 0em;
	margin-inline: auto;
	margin-top: 13rem;
}

.p-workShop__item__img {
	margin-top: 12rem;
}

.p-workShop__item__times {
	gap: 10rem;
	margin-top: 20rem;
}

.p-workShop__item__time {
	height: 50rem;
	aspect-ratio: 257/50;
	border-radius: 25rem;
}

.p-workShop__item__time__title {
	width: 80rem;
	font-size: 12rem;
	font-weight: 900;
	line-height: 1.8333333333;
	letter-spacing: 0em;
}

.p-workShop__item__time__num {
	font-size: 24rem;
	font-weight: 400;
	line-height: 0.8333333333;
	letter-spacing: 0em;
	padding-left: 20rem;
}

.p-workShop__texts {
	font-size: 12rem;
	font-weight: 400;
	line-height: 1.6666666667;
	letter-spacing: 0em;
	letter-spacing: -0.03em;
	margin-top: 12rem;
}

.p-speaker {
	width: 100%;
	border-radius: 20rem;
	padding: 26rem 20rem 21rem;
	margin-top: 29rem;
}

.p-speaker__title {
	font-size: 18rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0em;
	font-size: 18rem;
}

.p-speaker__title::after {
	width: 200rem;
}

.p-speaker__wrapper {
	margin-top: 30rem;
	gap: 25rem;
}

.p-speaker__item {
	width: 100%;
}

.p-speaker__item__img {
	width: 200rem;
	height: 200rem;
}

.p-speaker__item__name {
	margin-top: 18rem;
	font-size: 20rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0em;
	font-size: 20rem;
}

.p-speaker__item__job {
	margin-top: 11rem;
	font-size: 14rem;
	font-weight: 700;
	line-height: 1.2857142857;
	letter-spacing: 0em;
	font-size: 14rem;
}

.p-speaker__item__charge {
	margin-top: 18rem;
	width: 268rem;
	height: 30rem;
	border-radius: 25rem;
	font-size: 12rem;
	font-weight: 700;
	line-height: 1.8333333333;
	letter-spacing: 0em;
}

.p-speaker__item__text {
	font-size: 12rem;
	margin-top: 15rem;
}

.p-application {
	margin-top: 40rem;
}

.p-application__top {
	font-size: 16rem;
	font-weight: 900;
	line-height: 1.625;
	letter-spacing: 0em;
	font-size: 16rem;
}

.p-application__annotation {
	font-size: 10rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	margin: 0 calc(50% - 50vw);
	width: 100vw;
	margin-top: 8rem;
}

.p-application__btn {
	margin-top: 27rem;
}

.p-shop {
	width: 100%;
	margin-top: 53rem;
}

.p-shop__text {
	font-size: 18rem;
	font-weight: 900;
	line-height: 1.5555555556;
	letter-spacing: 0em;
}

.p-shop__img {
	width: 100%;
	margin-top: 23rem;
}

.p-shop__title {
	font-size: 24rem;
	font-weight: 700;
	line-height: 1.3333333333;
	letter-spacing: 0em;
	font-size: 24rem;
	margin-top: 13rem;
}

.p-shop__copyright {
	font-size: 15rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	font-size: 15rem;
	gap: 12rem;
	margin-top: 14rem;
}

.p-shop__cooperation {
	margin-top: 48rem;
}

.p-shop__cooperation-title {
	font-size: 18rem;
	font-weight: 900;
	line-height: 1.2222222222;
	letter-spacing: 0em;
	white-space: nowrap;
}

.p-shop__cooperation-item-wrap {
	gap: 58rem;
	margin-top: 16rem;
}

.p-shop__cooperation-item-title {
	font-size: 15rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	font-size: 15rem;
}

.p-shop__cooperation-text {
	display: flex;
	flex-direction: column;
	align-items: center;
	white-space: nowrap;
}

.u-is--pcTab {
	display: none;
}

.u-is--tab {
	display: none;
}

.u-is--sp {
	display: block;
}

}

@keyframes shine {

0% {
	left: -75%;
}

23.333% {
	left: 125%;
}

100% {
	left: 125%;
}

}

@keyframes reflect {

0% {
	transform: scale(0) rotate(45deg);
	opacity: 0;
}

80% {
	transform: scale(0) rotate(45deg);
	opacity: 0.5;
}

81% {
	transform: scale(4) rotate(45deg);
	opacity: 1;
}

100% {
	transform: scale(50) rotate(45deg);
	opacity: 0;
}

}

