@media only screen and (max-width: 769px) {
/* 共通 */

html {
	font-size:4vw;
}

body {
	min-height: 100vh;
	min-width: 100%;
	font-size: 16px;
	background-image: unset;
}

body::after {
	content: "";
	position: fixed;
	width: 100%;
	height: 100vh;
	height: 100lvh;
	min-height: 100vh;
	min-height: 100lvh;
	background-image: url('../images/bg_body.png');
	background-position: center top;
	background-repeat: repeat-y;
    background-size: 100%;
    filter: blur(3px);
	-webkit-filter: blur(3px);
	left: 0;
	top: 0;
	z-index: -1;
}

.wrap {
	position:relative;
	margin-left:auto;
	margin-right:auto;
	max-width: 100%;
	width: 90%;
}

.sp_off {
	display: none !important;
}

.pc_off {
	display: block !important;
}

#main {
	padding: 50px 0 32px 0;
}
#main p {
	text-align: center;
}
#main p:nth-child(2) {
	width: 50%;
	margin: 50px auto 32px;
}

.mt_64 {
	margin-top: 32px;
}

.mt_128 {
	margin-top: 32px;
}

/* sec1 */
#sec1 {
	text-align:center;
	margin-bottom: 64px;
}
#sec1 img {
	width: 100%;
}

#sec1 h3 {
	width: 50%;
	margin: 0 auto 32px;
}
#sec1 h4 {
	margin-bottom: 16px;
}

#sec1 .text {
	line-height: 1.8;
	text-align: left;
	margin-bottom: 32px;
}
#sec1 .text b:not(.atten) {
	display: block;
	text-align: center;
	line-height: 1.8;
}
#sec1 .text b:not(.atten) i {
	display: block;
	text-align: center;
	font-size: 1.3em;
}
#sec1 .link li a {
	display: block;
	border-radius: 5px;
	padding: 25px;
	font-size: 16px;
}

/* sec2 */
#sec2 {
	margin-bottom: 64px;
}
#sec2 h3 {
	text-align: center;
	margin-bottom: 32px;
}
#sec2 .link {
	margin-top: 32px;
}
#sec2 .link li  {
	margin-bottom: 0;
}
#sec2 .link li a {
	display: block;
	border-radius: 5px;
	padding: 25px;
	font-size: 16px;
}
#sec2 .link li a.border::before {
    top: 7px;
    bottom: 7px;
    left: 7px;
    right: 7px;
}
#sec2 .link li a.border::after {
    border-radius: 5px;
    background: repeating-linear-gradient(-45deg, #fff, #fff 4px, #f94b5a 0, #f94b5a 9px); 
}
#sec2 .link li a .nopc {
	display: block;
}
#sec2 .schedule {
	margin-top: 32px;
	flex-direction: column;
	row-gap: 32px;
}
#sec2 .schedule li {
	width: 100%;
	margin: 0 auto;
}

#sec2 .block-wrap {
	border          : 4px solid #f94b5a;
	background-color: #FFF;
	border-radius   : 10px;
	padding         : 16px 16px;
	margin-top      : 32px;
	box-shadow      : 5px 5px 10px 0px rgb(0 0 0 / 20%);
}

/* sec3 */
#sec3 {
	margin-bottom: 64px;
}
#sec3 h3 {
	margin-bottom: 32px;
}
#sec3 .plan {
	flex-direction: column;
	row-gap: 32px;
}
#sec3 .plan li {
	width: 100%;
	margin: 0 auto;
}
#sec3 .plan h4 {
	font-size: 20px;
}

/* sec4 */
#sec4 {
	margin-bottom: 64px;
}
#sec4 h3 {
	margin-bottom: 32px;
}
#sec4 .message {
	display: flex;
	flex-direction: column;
	row-gap: 32px;
	margin-bottom: 32px;
}
#sec4 .message li {
	width: 100%;
	height: auto;
	background-image: unset;
	padding-bottom: 0;
	margin: 0 auto;
}
#sec4 .message li:nth-child(2n) {
	background-image: unset;
}
#sec4 .message li h4 {
	width: 50%;
	margin: 0 auto;
}
#sec4 .message li:nth-child(1) .sns a {
	padding: 0 25px;
}
#sec4 .message li:nth-child(1) h4 {
	margin-bottom: 16px;
}
#sec4 .message li:nth-child(2) h4 {
	margin-bottom: 16px;
}
#sec4 .message li:nth-child(2) .btn {
	padding-top: 8px;
}
#sec5 {
    margin-bottom: 64px;
}
#sec5 .contact {
	padding: 15px 10px;
	border-radius: 10px;
	border: 4px solid #f94b5a;
}
#sec5 .contact h3 {
	font-size: 20px;
}
#sec5 .link li a {
	display: block;
	border-radius: 5px;
	padding: 25px;
	font-size: 16px;
}

/* footer */
footer.wrap {
	padding: 25px 0 50px;
	width: 64%;
}

/* 下層ページ */
.inner {
	border-radius: 5px;
	padding: 16px;
}
.inner .title {
	padding: 8px 0;
}
.inner .title h1 {
	font-size: 24px;
}
.inner .content {
	padding: 36px 0;
}
.inner .content h2 {
	font-size: 20px;
}
#sec1 .inner .content h3 {
	font-size: 18px;
	text-align: left;
}
#sec1 .inner .content h4 {
	font-size: 16px;
}
.inner .content ul li {
	line-height: 1.6;
}
.wp-block-custom-section .wp-block-columns:not(:first-child) {
	padding-top: 48px;
}
.inner .content .is-style-content-space-between {
	flex-direction: column;
	row-gap: 32px;
}
.inner .content .is-style-content-space-between.profile {
	flex-direction: column-reverse;
	row-gap: 18px;
}
#sec1 .inner .content .is-style-content-space-between > .wp-block-column {
	margin: 0;
}
.inner .content p {
	line-height: 1.6;
}

#sec1 .inner .content .sec_live h2.is-style-side-line-h {
	border-left: 3px solid #f94b5a;
	padding-left: 0.5em;
	color: #000;
}

#sec1 .inner .content .sec_live h2.is-style-side-line-h + .profile{
	padding-top: 0;
}

#sec1 .inner .content .sec_live .profile h3 {
	display: block;
	width: 100%;
	text-align: center;
}

#sec1 .inner .content .sec_live .profile .is-style-content-space-between {
	display: block;
}

#sec1 .inner .content .sec_live .profile .is-style-content-space-between > .wp-block-column:nth-child(1) {
	width: 100%;
}
#sec1 .inner .content .sec_live .profile .is-style-content-space-between > .wp-block-column:nth-child(2) {
	width: 100%;
	padding-top: 16px;
}
}