@charset "UTF-8";
/* /////////////////////////////////////////////// */

/* テンプレート用CSS */

/* /////////////////////////////////////////////// */
html{scroll-behavior: smooth;}
:target {
  scroll-margin-top: 80px;
}
body {
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	line-height: 2;
	color: #333;
	font-family: 'Century Gothic', 'Noto Sans JP', sans-serif;
	font-size: 16px;
	background-color: #FFF;
}

a {
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}

.flex {
	display: flex;
	justify-content: space-between;
}

.wp-block-button__link {
	min-width: 200px;
	height: 44px;
	padding: 0;
	display: inline-block;
	text-align: center;
	color: #1D4A9E;
	line-height: 42px;
	font-size: 1em;
	font-weight: bold;
	text-decoration: none;
	background-color: #FFF;
	border-radius: 22px;
	box-shadow: 0 0 0 2px #1D4A9E inset;
	box-sizing: border-box;
}
.wp-block-button__link:hover {
	color: #FFF;
	background-color: #1D4A9E;
}
.arrow .wp-block-button__link {
	padding-right: 50px;
	padding-left: 24px;
	position: relative;
}
.arrow .wp-block-button__link::after {
	content: "\f054";
	width: 26px;
	height: 26px;
	padding-left: 2px;
	position: absolute;
	top: 9px;
	right: 9px;
	line-height: 26px;
	color: #1D4A9E;
	color: #FFF;
	font-family: "Font Awesome 5 Pro";
	font-size: 12px;
	text-align: center;
	background-color: #1D4A9E;
	border-radius: 50%;
	box-sizing: border-box;
}
.arrow .wp-block-button__link:hover::after {
	color: #1D4A9E;
	background-color: #FFF;
}
.white .wp-block-button__link {
	color: #333;
	box-shadow: none;
}
.white .wp-block-button__link:hover {
	color: #FFF;
	background-color: #333;
}
.white.arrow .wp-block-button__link::after {
	background-color: #333;
}
.white.arrow .wp-block-button__link:hover::after {
	color: #333;
	background-color: #FFF;
}
.yellow .wp-block-button__link {
	color: #FAB415;
	box-shadow: none;
}
.yellow .wp-block-button__link:hover {
	color: #FFF;
	background-color: #FAB415;
}
.yellow.arrow .wp-block-button__link::after {
	background-color: #FAB415;
}
.yellow.arrow .wp-block-button__link:hover::after {
	color: #FAB415;
	background-color: #FFF;
}
.green .wp-block-button__link {
	color: #6AC35F;
	box-shadow: none;
}
.green .wp-block-button__link:hover {
	color: #FFF;
	background-color: #6AC35F;
}
.green.arrow .wp-block-button__link::after {
	background-color: #6AC35F;
}
.green.arrow .wp-block-button__link:hover::after {
	color: #6AC35F;
	background-color: #FFF;
}

.img-btn {
	overflow: hidden;
	position: relative;
}
.img-btn img {
	width: 100%;
}
.img-btn img:first-child {
	height: auto;
	position: absolute;
	top: 0;
	left: 0;
	transition: .3s;
}
.img-btn:hover img:first-child {
	opacity: 0;
}

.contact-box {
	width: 100%;
	display: flex;
	line-height: 1;
}
.contact-box > * {
	padding: 40px;
	flex-grow: 1;
	text-align: center;
}
.contact-box .tel {
	background-color: #EDEDEF;
}
.contact-box .mail {
	color: #FFF;
	background-color: #1D4A9E;
}
.contact-box dt {
	margin-bottom: 30px;
	font-size: 1.2em;
}
.contact-box strong {
	margin-bottom: 15px;
	display: block;
	font-size: 1.9em;
}
.contact-box .wp-block-button__link {
	min-width: 250px;
	margin-top: 5px;
}
.contact-box .wp-block-buttons {
	justify-content: center;
}



/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/* header */
/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
body > header {
	height: 100px;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	line-height: 1;
	z-index: 99;
}
body > header .wrapper {
	width: 100%;
	margin: 0 auto;
	padding: 19px 0;
	display: flex;
	font-weight: bold;
	justify-content: flex-end;
	padding-right: 100px;
}
body > header h1 {
	width: 370px;
	flex-shrink: 0;
	font-size: 30px;
	white-space: nowrap;
}
body > header a {
	display: block;
	color: #333;
	text-decoration: none;
}
body > header h1 img {
	margin-right: 10px;
	float: left;
}
body > header h1 small {
	padding: 5px 0;
	display: block;
	font-size: 16px;
}
body > header .nav {
	flex-grow: 1;
}
body > header ul,
body > header li {
	display: block;
}
body > header .nav > nav,
body > header .nav > nav > ul {
	height: 100%;
}
body > header .nav > nav > ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-end;
}
body > header .nav > nav > ul > li {
	margin: 0 30px;
}
body > header .nav > nav > ul > li > :not(a) {
	display: none;
}
#sp-menu {
	/*display: none;*/
}



/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/* article */
/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
main {
	flex-grow: 10;
}

.wrapper,
.wide > .wp-block-group__inner-container {
	width: 1300px;
	margin-left: auto;
	margin-right: auto;
}



/*--------------------------------------------------------- top ---------------------------------------------------------*/
#top .wp-block-buttons {
	display: block;
}
#news {
	position: relative;
	padding: 40px 0 50px 160px;
}
#news::before {
	content: "SCROLL";
	width: 173px;
	padding: 0 0 10px;
	display: block;
	position: absolute;
	top: 35px;
	right: -83px;
	font-weight: bold;
	text-align: center;
	border-bottom: 2px solid #333;
	transform: rotate(90deg);
}
#news::after {
	content: "";
	width: 17px;
	height: 2px;
	display: block;
	position: absolute;
	top: 141px;
	right: 6px;
	background-color: #333;
	transform-origin: left bottom;
	transform: rotate(-45deg);
}
#news h2 {
	width: 144px;
	height: 144px;
	padding: 0;
	line-height: 120px;
	position: absolute;
	top: -72px;
	left: 0;
	background-color: #FFF;
	border: 2px solid #333;
	border-radius: 50%;
}
#news h2::after {
	bottom: 44px;
}
.news-list {
	margin-bottom: 30px;
	padding-right: 70px;
	list-style: none;
}
.news-list li {
	padding: 20px 0;
	display: flex;
	align-items: center;
	border-bottom: 1px solid #EDEDEF;
}
.news-list li.emergency {
	margin-bottom: 20px;
	padding: 20px 24px;
	display: flex;
	align-items: center;
	color: #E5573E;
	border: 1px solid #E5573E;
}
.news-list li.emergency > a:last-child {
	color: #E5573E;
}
.news-list li .category {
	width: 6em;
	padding: 5px;
	margin-right: 1em;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 0.8em;
	text-decoration: none;
}
.news-list li.emergency .category {
	color: #FFF;
	background-color: #E5573E;
}
.news-list li time {
	margin-right: 1em;
	font-weight: bold;
}
.news-list li > * {
	flex-shrink: 0;
	line-height: 1;
}
.news-list li > a:last-child {
	flex-grow: 10;
	flex-shrink: 1;
	overflow: hidden;
	white-space: nowrap;
	color: #333;
	text-decoration: none;
	text-overflow: ellipsis;
}
#news .banner {
	display: flex;
	position: absolute;
	top: -142px;
	right: 0;
}
#news .banner > *:not(:first-child) {
	margin-left: 13px;
}

#blog {
	padding: 0 0 60px;
	background-color:rgba(255,255,255,0.85);
	background-image: url(../img/top_blog_bg.png);
	background-position: center;
	background-blend-mode:lighten;
	background-size: cover;
}

#top-gakka {
	padding: 100px 0;
	overflow: hidden;
	position: relative;
}
#top-gakka::after {
	content: "";
	width: calc(50% + 600px);
	height: calc(100% - 100px);
	display: block;
	position: absolute;
	top: 100px;
	left: calc(50% - 600px);
	background-color: rgba(255, 255, 255, 1);
	background-image: repeating-linear-gradient(135deg, transparent, transparent 6px, rgba(170, 223, 242, 1) 6px, rgba(170, 223, 242, 1) 8px );
	background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiPjxkZWZzPjxwYXR0ZXJuIGlkPSJwYXR0ZXJuX3J4Y1EiIHBhdHRlcm5Vbml0cz0idXNlclNwYWNlT25Vc2UiIHdpZHRoPSI4LjUiIGhlaWdodD0iOC41IiBwYXR0ZXJuVHJhbnNmb3JtPSJyb3RhdGUoNDUpIj48bGluZSB4MT0iMCIgeT0iMCIgeDI9IjAiIHkyPSI4LjUiIHN0cm9rZT0iI0FBREZGMiIgc3Ryb2tlLXdpZHRoPSIzIi8+PC9wYXR0ZXJuPjwvZGVmcz4gPHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0idXJsKCNwYXR0ZXJuX3J4Y1EpIiBvcGFjaXR5PSIxIi8+PC9zdmc+');
	background-size: auto auto;
	border-radius: 40px 0 0 40px;
	z-index: -1;
}
#top-gakka dl {
	width: calc(50% - 30px);
	position: relative;
}
#top-gakka dl::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	transform: translate(0, -50%);
}
#top-gakka dl.pt::before {
	width: 203px;
	height: 199px;
	left: -178px;
	background-image: url(../img/pt.png);
}
#top-gakka dl.ot::before {
	width: 204px;
	height: 255px;
	right: -128px;
	background-image: url(../img/ot.png);
}
#top-gakka dt {
	padding: 12px 30px;
	position: absolute;
	top: 0;
	left: 0;
	line-height: 1;
	color: #FFF;
	font-size: 1.88em;
}
#top-gakka .pt dt {
	background-color: #FAB415;
}
#top-gakka .pt img {
	box-shadow: 20px 20px 0 0 #FAB415;
}
#top-gakka .ot dt {
	background-color: #6AC35F;
}
#top-gakka .ot img {
	box-shadow: 20px 20px 0 0 #6AC35F;
}
#top-gakka .wp-block-button__link {
	position: absolute;
	bottom: 52px;
	right: 10px;
}

.yokabai {
	padding-bottom: 120px;
	overflow: hidden;
	position: relative;
}
.yokabai::before {
	content: "NAGASAKI\AMEDICAL COLLEGE";
	display: block;
	position: absolute;
	top: 90px;
	left: calc(50% - 650px);
	line-height: 1;
	color: #FAD0C4;
	font-size: 127px;
	font-weight: bold;
	white-space: pre;
	opacity: .3;
	z-index: -2;
}
.yokabai::after {
	content: "";
	width: calc(100vw * 793 / 1300);
	height: calc(100vw * 793 / 1300);
	display: block;
	position: absolute;
	bottom: 120px;
	right: 0;
	background-image: linear-gradient(135deg, transparent 50%, #FAD0C4 50%);
	opacity: .3;
	z-index: -2;
}
.is-root-container .yokabai h2 {
	padding: 200px 0 110px;
}
.is-root-container .yokabai h2::after {
	width: 1px;
	height: 110px;
	left: 50%;
	bottom: -15px;
}
.point {
	min-height: 327px;
	margin-bottom: 140px;
	padding-left: 470px;
	position: relative;
}
.point:nth-of-type(2n) {
	padding-left: 0;
	padding-right: 470px;
}
.point-header {
	padding: 20px 30px;
	line-height: 1.3;
	color: #FFF;
	background-image: linear-gradient(90deg, #FF9A9E, #FAD0C4);
}
.point:nth-of-type(2) .point-header { background-image: linear-gradient(90deg, #96E6A1, #D4FC79) }
.point:nth-of-type(3) .point-header { background-image: linear-gradient(90deg, #A1C4FD, #C2E9FB) }
.point:nth-of-type(4) .point-header { background-image: linear-gradient(90deg, #FDA085, #F6D365) }
.point:nth-of-type(5) .point-header { background-image: linear-gradient(90deg, #13547A, #80D0C7) }
.is-root-container .point-header h3 {
	margin: 0;
	padding: 0;
	display: flex;
	font-size: 30px;
	font-weight: 300;
	align-items: center;
	border-bottom: none;
}
.point-header i {
	margin-right: 30px;
	line-height: 1;
	font-size: 62px;
	text-align: center;
	font-style: normal;
	font-weight: bold;
}
.point-header i small {
	display: block;
	font-size: 20px;
}
.point-header img {
	position: absolute;
	top: 30px;
	left: 0;
	z-index: -1;
}
.point:nth-of-type(2n) .point-header img {
	left: auto;
	right: 0;
}
.point-body {
	padding: 25px 0 0 80px;
}
.point:nth-of-type(2n) .point-body {
	padding-left: 0;
	padding-right: 80px;
}
.point .read-more,
.point .close {
	display: none;
}

#top-sns {
	margin-bottom: 100px;
	padding: 60px 0 80px;
	background-image: url(../img/top_sns_bg.png);
	background-position: center;
	background-size: cover;
}
#top-sns h2 {
	color: #FFF;
}
#top-sns h2:after {
	background-color: #FFF;
}
#top-sns .flex > * {
	width: calc(50% - 5px);
}
#top-sns dl,
#top-sns .flex .social a {
	overflow: hidden;
	background-color: #FFF;
	border-radius: 10px;
}
#top-sns dl {
	text-align: center;
}
#top-sns dt {
	padding: 20px 0 0;
	font-size: 1.88em;
	font-weight: bold;
}
#top-sns dt i {
	margin-right: .5em;
	padding: .4em;
	color: #FFF;
	font-size: 0.85em;
	background-color: #1DA1F2;
	border-radius: 50%;
}
#top-sns .timeline {
	height: 545px;
	margin: 30px;
	overflow: auto;
	border: 1px solid #333;
}
#top-sns .flex > div a {
	height: 180px;
	margin-top: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #333;
	font-size: 1.5em;
	font-weight: bold;
	text-decoration: none;
}
#top-sns .flex > div a,
#news-layout .social a {
	transition: .4s;
}
#top-sns .flex > div a:hover,
#news-layout .social a:hover {
	text-decoration: none;
	opacity: .7;
}
#top-sns .flex div a:first-child {
	margin-top: 0;
}
#top-sns .flex div a.line {
	color: #FFF;
	background-color: #00B900;
}
#top-sns .flex div a.tiktok {
	color: #FFF;
	font-size: 26px;
	background-color: #000;
}
#top-sns .flex div a:not(.tiktok) i {
	/*display: none; 2024.05.23 commentout*/
}
#top-sns .flex div a.tiktok i {
	margin-right: 1rem;
	font-size: 2.615em;
	font-weight: normal;
	text-shadow: -3px -3px 0 #5ABABF, 3px 3px 0 #DC003D;
}
#top-sns .flex div a.line i{
	margin-right: 1rem;
	font-size: 2.615em;
	font-weight: normal;
}
#top-sns .flex div a.instagram i{
	margin-right: 1rem;
	font-size: 2.615em;
	font-weight: normal;
}

#pickup {
	margin-bottom: 30px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: start;
	list-style: none;
}
#pickup li {
	width: calc(50% - 15px);
	margin-bottom: 70px;
	padding: 0;
	display: flex;
	align-items: start;
}
#pickup li::before {
	display: none;
}
#pickup li > img {
	margin-right: 10px;
	flex-grow: 0;
	flex-shrink: 0;
}
#pickup li a {
	margin: -.2em 0 .6em;
	padding-bottom: .4em;
	display: block;
	line-height: 1.3;
	color: #333;
	font-size: 1.5em;
	text-decoration: none;
	border-bottom: 1px solid #333;
}



/*--------------------------------------------------------- article header ---------------------------------------------------------*/
article header {
	display: flex;
	flex-direction: column-reverse;
}
@media screen and (min-width: 980px) {
	article header {
		margin-top: 170px;
	}
}
#page-title {
	height: 180px;
	overflow: hidden;
	position: relative;
}
#page-title h1 {
	max-width: 1300px;
	position: absolute;
	top: 50%;
	left: 50%;
	line-height: 1.333;
	color: #FFF;
	font-size: 30px;
	z-index: 2;
	transform: translate(-50%, -50%);
}
#page-title img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#page-title::after {
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #1D4A9E;
	z-index: 1;
	opacity: .85;
}
.news-header #page-title::after {
	background-color: transparent;
	background-image: linear-gradient(#A1C4FD, #C2E9FB);
}
.blog-header #page-title::after {
	background-color: transparent;
	background-image: linear-gradient(#FAB415, #6AC35F);
	opacity: .8;
}

.breadcrumbs {
	padding: 8px 0 0;
	line-height: 1;
	color: #FFF;
	background-color: #525252;
	font-size: 11px;
}
.breadcrumbs > div > * {
	margin: 0 1em 8px 0;
	display: inline-block;
}
.breadcrumbs > div > *,
.breadcrumbs > div > * a {
	color: #FFF;
}



/*--------------------------------------------------------- block-editor-contents ---------------------------------------------------------*/
.is-root-container {
	width: 1300px;
	margin: 0 auto;
	/*padding: 100px 0;*/
	padding: 100px 30px;
}
#top .is-root-container {
	width: 100%;
	padding: 0 0 100px;
}
.coruse .block-editor-contents {
	padding: 0;
}
.is-root-container h2 {
	margin-bottom: 45px;
	padding-top: 60px;
	padding-bottom: 15px;
	position: relative;
	font-size: 1.88em;
	font-weight: bold;
	text-align: center;
}
.is-root-container h2::after {
	content: "";
	width: 34px;
	height: 4px;
	display: block;
	position: absolute;
	top: auto;
	bottom: 0;
	left: 50%;
	background-color: #333;
	transform: translate(-50%, 0);
}
.is-root-container h3 {
	margin-top: 30px;
	margin-bottom: 15px;
	padding: 50px 0 10px;
	font-size: 1.5em;
	line-height: 1.4;
	border-bottom: 1px solid #333;
}
.is-root-container h4 {
	margin-top: 30px;
	margin-bottom: 15px;
	padding: 15px 20px;
	line-height: 1.2;
	font-size: 1.19em;
	background-color: #EDEDEF;
}
.is-root-container h5 {
	margin-top: 30px;
	margin-bottom: 15px;
	padding: 10px 16px;
	color: #1D4A9E;
	line-height: 1.2;
	border-top: 2px solid #1D4A9E;
	border-bottom: 2px solid #1D4A9E;
}
.is-root-container table {
	margin-bottom: 15px;
	border-collapse: separate;
	border-spacing: 2px;
}
.is-root-container table th {
	padding: .3em;
	color: #FFF;
	font-weight: normal;
	text-align: center;
	background-color: #1D4A9E;
}
.pt .is-root-container table th,
.is-root-container table.pt th {
	background-color: #FAB415;
}
.ot .is-root-container table th,
.is-root-container table.ot th {
	background-color: #6AC35F;
}
.is-root-container table td {
	padding: 1em;
	background-color: #EDEDEF;
}
.is-root-container .is-style-stripes table {
	border-collapse: collapse;
	border-right: 1px solid #9D9D9D;
}
.is-root-container .is-style-stripes table th {
	border-left: 1px solid #FFF;
}
.is-root-container .is-style-stripes table td {
	background-color: #FFF;
	border-bottom: 1px solid #9D9D9D;
	border-left: 1px solid #9D9D9D;
}
.is-root-container ul {
	list-style: none;
}
.is-root-container ul li {
	padding-left: 1em;
	position: relative;
}
.is-root-container ul li::before {
	content: "";
	width: .5em;
	height: .5em;
	display: block;
	position: absolute;
	top: .8em;
	left: 0;
	background-color: #1D4A9E;
	border-radius: 50%;
}
.pt .is-root-container ul li::before {
	background-color: #FAB415;
}
.ot .is-root-container ul li::before {
	background-color: #6AC35F;
}
.is-root-container ul.is-style-sme-ordered-list-circle {
	counter-reset: number;
}
.is-root-container ul.is-style-sme-ordered-list-circle > li {
	padding-left: 1.5em;
	counter-increment: number;
}
.is-root-container ul.is-style-sme-ordered-list-circle li::before {
	content: counter(number)".";
	width: 1em;
	height: 1em;
	font-size: 1em;
	top: 0;
	background-color: transparent;
}



/*--------------------------------------------------------- course header ---------------------------------------------------------*/
#course-header {
	padding: 46px 60px 60px;
	position: relative;
	background-color: #FCD98A;
}
.ot #course-header {
	background-color: #B4E1AF;
}
#course-header::after {
	content: "";
	width: 1px;
	height: 102px;
	display: block;
	position: absolute;
	bottom: -70px;
	left: calc(50% + 145px);
	background-color: #333;
}
#course-header dl {
	width: 1300px;
	margin: 0 auto;
	padding: 0 60px;
	position: relative;
	z-index: 1;
}
#course-header dt {
	color: rgba(255,255,255,.7);
	line-height: 0.9;
	font-size: 140px;
	font-weight: bold;
}
#course-header dt small {
	margin-top: 40px;
	display: block;
	color: #333;
	font-size: 40px;
	font-weight: normal;
}
#course-header dd {
	padding-top: 45px;
	display: flex;
}
#course-header dd > * {
	width: 140px;
	height: 140px;
	margin-right: 5px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	line-height: 1;
	font-size: 24px;
	color: #FFF;
	background-color: #333;
	border-radius: 50%;
}
#course-header dd > *:nth-of-type(2n) {
	color: #333;
	background-color: #FFF;
}
#course-header dd span {
	margin: 5px 0;
}
#course-header dd strong {
	margin-right: 7px;
	display: inline-block;
	font-size: 40px;
}
#course-header .img-wrapper {
	position: absolute;
	top: 0;
	left: calc(50% - 350px);
	right: 0;
	bottom: 0;
	overflow: hidden;
	background-color: rgba(255,255,255,.5);
}
#course-header .img-wrapper img {
	width: 876px;
	height: 494px;
	position: absolute;
	top: 50%;
	left: 124px;
	transform: translate(0, -50%);
	object-fit: cover;
}

#coruse-contents::after {
	content: "";
	height: 0;
	display: block;
	clear: both;
}
#coruse-wrapper {
	width: calc(50% + 350px);
	padding: 110px 0 0 70px;
	float: left;
	overflow: hidden;
	background-color: #FAFAFA;
}
#coruse-contents .is-root-container {
	width: 847px;
	margin-left: 0;
}

#page-menu {
	width: calc(50% - 350px);
	padding: 50px 60px;
	float: left;
	position: sticky;
	top: 100px;
	left: 0;
	background-color: #FAB415;
	border-radius: 0 18px 18px 0;
}
.ot #page-menu {
	background-color: #6AC35F;
}
#page-menu ul {
	width: 201px;
	margin: 0 0 0 auto;
	list-style: none;
}
#page-menu li {
	padding: .5em 0;
	line-height: 1.2;
}
#page-menu li a {
	padding-left: 2em;
	display: block;
	position: relative;
	color: #FFF;
}

#coruse-contents .coruse-title {
	padding: 0;
	font-size: 40px;
	font-weight: normal;
	text-align: center;
}
#coruse-contents .coruse-title::after {
	display: none;
}
.pt #coruse-contents .coruse-title strong {
	font-weight: normal;
	color: #FAB415;
}
.ot #coruse-contents .coruse-title strong {
	font-weight: normal;
	color: #6AC35F;
}

.stripe-box {
	padding: 17px;
	background-color: #FFF;
}
.pt .stripe-box { background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiPjxkZWZzPjxwYXR0ZXJuIGlkPSJwYXR0ZXJuXzBSbHNHRyIgcGF0dGVyblVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgd2lkdGg9IjQuNSIgaGVpZ2h0PSI0LjUiIHBhdHRlcm5UcmFuc2Zvcm09InJvdGF0ZSg0NSkiPjxsaW5lIHgxPSIwIiB5PSIwIiB4Mj0iMCIgeTI9IjQuNSIgc3Ryb2tlPSIjRkFCNDE1IiBzdHJva2Utd2lkdGg9IjEiLz48L3BhdHRlcm4+PC9kZWZzPiA8cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI3BhdHRlcm5fMFJsc0dHKSIgb3BhY2l0eT0iMSIvPjwvc3ZnPg=='); }
.ot .stripe-box { background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiPjxkZWZzPjxwYXR0ZXJuIGlkPSJwYXR0ZXJuX3o2dFJuIiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB3aWR0aD0iNC41IiBoZWlnaHQ9IjQuNSIgcGF0dGVyblRyYW5zZm9ybT0icm90YXRlKDQ1KSI+PGxpbmUgeDE9IjAiIHk9IjAiIHgyPSIwIiB5Mj0iNC41IiBzdHJva2U9IiM2QUMzNUYiIHN0cm9rZS13aWR0aD0iMSIvPjwvcGF0dGVybj48L2RlZnM+IDxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjcGF0dGVybl96NnRSbikiIG9wYWNpdHk9IjEiLz48L3N2Zz4='); }
.stripe-box .smb-section__inner {
	padding: 24px;
	background-color: #FFF;
}
.stripe-box .smb-section__inner .c-container {
	padding: 0;
}
.stripe-box .smb-section__inner .c-container .smb-section__title {
	padding-top: 0;
	text-align: left;
}
.stripe-box .smb-section__inner .c-container .smb-section__lede {
	font-size: 1em;
	line-height: 2;
}

.curriculum-list {
	width: 847px;
	margin: 0 auto 20px;
	display: flex;
	align-items: stretch;
}
.curriculum-list dt {
	width: 3em;
	padding: 0 1em;
	display: flex;
	align-items: center;
	line-height: 1.2;
	color: #FFF;
	font-size: 1.5em;
	font-weight: bold;
	text-align: center;
	background-color: #FAB415;
}
.ot .curriculum-list dt {
	background-color: #6AC35F;
}
.curriculum-list dd ul {
	padding: 30px 40px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: start;
	list-style: none;
	font-size: 1.2em;
	background-color: #FFF;
}
.curriculum-list dd li {
	width: calc((100% - 2em) / 3);
	padding: .5em 0 .5em 1em;
	position: relative;
	line-height: 1.4;
}
.curriculum-list dd li::before {
	content: "";
	width: .5em;
	height: .5em;
	display: block;
	position: absolute;
	top: 1em;
	left: 0;
	background-color: #FAB415;
	border-radius: 50%;
}
.ot .curriculum-list dd li::before {
	background-color: #6AC35F;
}

#coruse-contents .wp-block-cover.has-background-dim {
	width: auto;
	margin: 0 calc(567px - 50vw) 0 -70px;
	padding: 0;
	background-color: #FFF;
}
.coruse .wp-block-cover.has-background-dim:not(.has-background-gradient):before {
	background-image: linear-gradient(#FAB415, #6AC35F);
	opacity: .8;
}
#coruse-contents .wp-block-cover img.wp-block-cover__image-background {
	width: 1000px;
	right: auto;
	object-fit: cover;
}
#coruse-contents .wp-block-cover.has-background-dim .wp-block-cover__inner-container {
	width: 917px;
	margin: 0 auto 0 0;
	padding: 55px 64px 55px 138px;
}
#coruse-contents .wp-block-cover.has-background-dim h2 {
	margin-bottom: 40px;
	padding-top: 0;
}
#coruse-contents .wp-block-cover.has-background-dim h2::after {
	background-color: #FFF;
}
#coruse-contents .wp-block-cover.has-background-dim .wp-block-media-text {
	display: flex;
	align-items: stretch;
}
#coruse-contents .wp-block-cover.has-background-dim .wp-block-media-text > * {
	width: 50%;
	align-self: stretch;
}
#coruse-contents .wp-block-cover.has-background-dim .wp-block-media-text__content {
	padding: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	border: 1px solid #FFF;
}
#coruse-contents .wp-block-cover.has-background-dim .wp-block-media-text__content h3 {
	margin-bottom: 10px;
	padding: 0;
	font-size: 2.2em;
	border: none;
}
#coruse-contents .wp-block-cover.has-background-dim .wp-block-media-text__content .wp-block-buttons {
	margin: 0;
}

.wp-block-snow-monkey-blocks-panels .smb-panels__item:not([class*=smb-panels__item--]) {
	text-align: left;
}
.wp-block-snow-monkey-blocks-panels .c-row--margin>.c-row__col {
	margin-bottom: 40px;
}
.wp-block-snow-monkey-blocks-panels .smb-panels__item {
	background-color: transparent;
	box-shadow: none;
}
.wp-block-snow-monkey-blocks-panels .smb-panels__item__body {
	padding: .5em 0 0;
}
.wp-block-snow-monkey-blocks-panels .smb-panels__item__title {
	font-size: 1em;
	font-weight: normal;
}
.wp-block-snow-monkey-blocks-panels .smb-panels__item__title strong {
	font-size: 1.5em;
	font-weight: bold;
}
.wp-block-snow-monkey-blocks-panels .smb-panels__item__content {
	font-size: 1em;
	line-height: 2;
}

#coruse-contents .gray-back {
	margin: 0 calc(567px - 50vw) 0 -70px;
	padding:0 calc(50vw - 567px) 100px 70px;
	background-color: #EDEDEF;
}
#coruse-contents .gray-back .wp-block-media-text {
	margin-bottom: 0;
}
#coruse-contents .gray-back .wp-block-media-text__content {
	padding-left: 45px;
}
#coruse-contents .gray-back .c-container {
	padding: 0;
}
.wp-block-media-text__media img,
.wp-block-media-text__media video {
	max-width: 100%;
	height: auto;
}
.is-root-container .wp-block-media-text h3 {
	margin-top: 0;
	padding-top: 0;
}



/*--------------------------------------------------------- card-list ---------------------------------------------------------*/
.card-list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	list-style: none;
}
.card-list[data-col="3"]::after {
	content: "";
	width: calc((100% - 40px) / 3);
	display: block;
}
.card-list > * {
	width: calc((100% - 48px) / 2);
	margin-bottom: 100px;
}
.card-list[data-col="3"] > * {
	width: calc((100% - 40px) / 3);
}
.card-list.border > * {
	padding: 25px 25px 15px;
	background-color: #FFF;
	border: 1px solid #333;
}
.card-list.blog > * {
	padding: 25px;
	margin-bottom: 43px;
	background-color: #FFF;
	box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
}

.card-list .img-wrapper {
	height: 287px;
	margin-bottom: 30px;
}
.card-list[data-col="3"] .img-wrapper {
	height: 152px;
	margin-bottom: 15px;
}
.card-list .img-wrapper img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
}
.card-list strong {
	height: 3em;
	margin-bottom: 15px;
	display: -webkit-box;
	overflow: hidden;
	line-height: 1.5;
	font-size: 1.5em;
	text-overflow: ellipsis;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}
.card-list strong a {
	color: #333;
	text-decoration: none;
}
.card-list.blog strong {
	font-size: 0.94em;
}
.card-list .date {
	margin-bottom: 15px;
	line-height: 1;
}
.card-list .category {
	margin-right: .5em;
	padding: 5px;
	display: inline-block;
	font-size: .94em;
	text-decoration: none;
}
.card-list time {
	font-size: 0.75em;
	font-weight: bold;
}
.card-list.border time {
	margin-bottom: 1em;
	display: block;
	line-height: 1;
	color: #9D9D9D;
	font-size: 1em;
	font-weight: normal;
}
.card-list p {
	height: calc(9em + 15px);
	padding-top: 15px;
	display: block;
	display: -webkit-box;
	overflow: hidden;
	line-height: 1.8;
	text-overflow: ellipsis;
	-webkit-line-clamp: 5;
	-webkit-box-orient: vertical;
	border-top: 1px solid #333;
}
.card-list.blog p {
	font-size: 0.75em;
}
.card-list .wp-block-button {
	padding-top: 20px;
	text-align: right;
}

#category-select {
	margin-bottom: 100px;
	text-align: right;
}
#category-select dl {
	min-width: 330px;
	display: inline-block;
	position: relative;
	color: #9D9D9D;
	font-size: 1.19em;
	text-align: left;
	background-color: #EDEDEF;
	z-index: 2;
}
#category-select dt {
	padding: 0 10px;
	line-height: 50px;
	font-weight: bold;
}
#category-select dt::after {
	content: "";
	width: 12px;
	height: 12px;
	display: block;
	position: absolute;
	top: 25px;
	right: 15px;
	border: 3px solid #9D9D9D;
	border-top: none;
	border-left: none;
	transform: translate(-50%, -50%) rotate(-45deg);
	transition: .4s;
}
#category-select .open dt::after {
	transform: translate(-50%, -75%) rotate(45deg);
}
#category-select dd {
	width: 100%;
	position: absolute;
	top: 30px;
	background-color: #EDEDEF;
	opacity: 0;
	pointer-events: none;
	transition: .4s;
}
#category-select .open dd {
	top: 50px;
	opacity: 1;
	pointer-events: all;
}
#category-select dd a {
	padding: 5px 10px;
	display: block;
	color: #9D9D9D;
}



/*--------------------------------------------------------- paginate ---------------------------------------------------------*/
#paginate {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	text-align: center;
}
#paginate:last-child {
	padding-bottom: 100px;
}
#paginate a,
#paginate .current {
	width: 1.8em;
	height: 1.8em;
	margin: 0 5px;
	padding: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 1;
	color: #1D4A9E;
	font-size: 1.5em;
	text-align: center;
	background-color: #FFF;
	border: 2px solid #1D4A9E;
	border-radius: 50%;
	box-sizing: border-box;
}
#paginate .current {
	color: #FFF;
	background-color: #1D4A9E;
}
#paginate .prev,
#paginate .next {
	position: relative;
	color: #FFF;
}
#paginate .prev::before,
#paginate .next::before {
	content: "";
	width: .5em;
	height: .5em;
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	border: 3px solid #1D4A9E;
	border-top: none;
	border-left: none;
	transform: translate(-30%, -50%) rotate(135deg);
}
#paginate .next::before {
	transform: translate(-75%, -50%) rotate(-45deg);
}
#paginate p {
	width: 100%;
	padding-top: 1em;
}



/*--------------------------------------------------------- news ---------------------------------------------------------*/
#news-layout {
	display: flex;
	justify-content: space-between;
	align-items: start;
}
#news-layout .is-root-container {
	width: 675px;
}
#news-layout .block-editor-contents > p {
	display: block;
}

#news-layout #category-select {
	display: none;
}

#news-layout ol {
	list-style: none;
}
#news-layout ol li {
	min-height: 120px;
	padding: calc(1em + 10px) 0 50px 250px;
	position: relative;
	border-bottom: 2px solid #EDEDEF;
	box-sizing: content-box;
}
#news-layout ol li:not(:first-child) {
	margin-top: 50px;
}
#news-layout ol li .img-wrapper {
	width: 230px;
	height: 120px;
	position: absolute;
	top: calc(1em + 15px);
	left: 0;
	overflow: hidden;
}
#news-layout ol li .img-wrapper img {
	width: 100%;
	height: 100%;
	object-fit: cover
}
#news-layout ol li .date {
	position: absolute;
	top: 0;
	left: 0;
	line-height: 1;
}
#news-layout ol li .category {
	margin-right: 10px;
	padding: 5px 10px;
}
#news-layout ol li strong {
	height: 3em;
	margin-bottom: 10px;
	display: -webkit-box;
	overflow: hidden;
	line-height: 1.5;
	font-size: 1.5em;
	text-overflow: ellipsis;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}
#news-layout ol li strong a {
	color: #333;
}
#news-layout ol li p {
	height: 3em;
	display: -webkit-box;
	overflow: hidden;
	line-height: 1.5;
	text-overflow: ellipsis;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

#news-layout .aside {
	width: 302px;
	padding: 100px 0;
}
#news-layout .aside section {
	width: 100%;
	padding: 17px;
	background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiPjxkZWZzPjxwYXR0ZXJuIGlkPSJwYXR0ZXJuX0VaSDNuIiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB3aWR0aD0iMy41IiBoZWlnaHQ9IjMuNSIgcGF0dGVyblRyYW5zZm9ybT0icm90YXRlKDQ1KSI+PGxpbmUgeDE9IjAiIHk9IjAiIHgyPSIwIiB5Mj0iMy41IiBzdHJva2U9IiMyM0FEREUiIHN0cm9rZS13aWR0aD0iMSIvPjwvcGF0dGVybj48L2RlZnM+IDxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjcGF0dGVybl9FWkgzbikiIG9wYWNpdHk9IjEiLz48L3N2Zz4=');
}
#news-layout .aside section::after {
	content: "";
	height: 50px;
	display: block;
	background-color: #FFF;
}
#news-layout .aside section > * {
	display: block;
	background-color: #FFF;
}
#news-layout .aside section h2 {
	padding: 40px 0 28px;
	font-size: 1.25em;
	text-align: center;
}
#news-layout .aside section a {
	padding: 10px 20px;
}

#news-layout .social {
	padding-top: 56px;
}
#news-layout .social a {
	height: 90px;
	margin-bottom: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #333;
	font-size: 1.56em;
	font-weight: bold;
	background-color: #EDEDEF;
	border-radius: 10px;
}
#news-layout .social .line {
	color: #FFF;
	background-color: #00B900;
}
#news-layout .social .tiktok {
	color: #FFF;
	background-color: #000;
}
#news-layout .social a:not(.tiktok) i {
	display: none;
}
#news-layout .social .tiktok i {
	margin-right: 1rem;
	font-size: 2.615em;
	font-weight: normal;
	text-shadow: -3px -3px 0 #5ababf, 3px 3px 0 #dc003d;
}



/*--------------------------------------------------------- form ---------------------------------------------------------*/
#contact .is-root-container {
	padding: 0;
}
.form-bg {
	padding: 100px 0;
}
.form-bg .c-container {
	padding: 70px 60px 100px;
	background-color: #FFF;
	border-radius: 30px;
}
.form-bg h2 {
	margin: 0 0 40px;
	padding: 10px;
	line-height: 1.3;
	color: #FFF;
	font-size: 1.5em;
	background-color: #1D4A9E;
}
.form-bg h2::after {
	display: none;
}
.form-list {
	padding-top: 40px;
	display: flex;
	flex-wrap: wrap;
}
.form-list > dt {
	width: 230px;
	padding-right: 60px;
	display: flex;
	justify-content: end;
	align-items: center;
}
.form-list dt::after {
	content: "必須";
	margin-left: 10px;
	padding: 8px;
	display: block;
	line-height: 1;
	color: transparent;
}
.form-list dt.required::after {
	color: #FFF;
	background-color: #E5573E;
}
.form-list > dt,
.form-list > dd {
	margin-bottom: 35px;
}
.form-list > dd {
	width: 710px;
}
.form-list > dd.auto {
	width: 240px;
}
.form-list > dd.zipcode {
	position: relative;
}
.form-list > dd.zipcode::before {
	content: "〒";
	display: block;
	position: absolute;
	top: 50%;
	left: -1.5em;
	transform: translate(0, -50%);
}

#contact .contact-box {
	padding: 100px 0 200px;
}



/*--------------------------------------------------------- entry content ---------------------------------------------------------*/
.is-root-container .c-container {
	max-width: 1060px;
}
.is-root-container .wide {
	margin-left: calc(530px - 50vw);
	margin-right: calc(530px - 50vw);
}
.is-root-container .gray {
	background-color: #EDEDEF;
}
.is-root-container .pt-bg {
	background-color: #FFFBF3;
}
.is-root-container .ot-bg {
	background-color: #F8FCF7;
}
.is-root-container .form-bg {
	background-color: #F8FDFF;
}

.is-root-container img {
	width: auto;
	height: auto;
}

.calendar .smb-step__body:before {
	display: none;
}
.calendar .smb-step__item {
	padding-bottom: 100px;
	position: relative;
}
.calendar .smb-step__item:not(:last-child)::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 1.25rem;
	left: -59px;
	border-left: 2px solid #1D4A9E;
}
.calendar .smb-step__body>:not(:first-child) {
	margin-top: 0;
	padding-bottom: calc(var(--_space, 1.8rem)*1*var(--_margin-scale, 1));
}
.calendar .smb-step__item__text {
	width: 80px;
	height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	left: calc(var(--_space, 1.8rem)*2.5*var(--_margin-scale, 1)*-1 - 1.25rem);
	left: -100px;
	color: #1D4A9E;
	font-size: 24px;
	background-color: #FFF;
	border: 2px solid #1D4A9E;
	border-radius: 50%;
	box-sizing: border-box;
	z-index: 2;
}
.calendar .smb-step__item:nth-of-type(2n) .smb-step__item__text {
	color: #FFF;
	background-color: #1D4A9E;
}
.calendar .smb-step__item__title {
	min-height: 80px;
	display: flex;
	justify-content: start;
	align-items: center;
	color: #1D4A9E;
}

a[href$=".pdf"],
a[href$=".doc"],
a[href$=".docx"],
a[href$=".xls"],
a[href$=".xlsx"],
a[href$=".ppt"],
a[href$=".pptx"] {
	display: inline-block;
}
a[href$=".pdf"]::before,
a[href$=".doc"]::before,
a[href$=".docx"]::before,
a[href$=".xls"]::before,
a[href$=".xlsx"]::before,
a[href$=".ppt"]::before,
a[href$=".pptx"]::before {
	margin-right: .3em;
	display: inline-block;
	font-family: "Font Awesome 5 Pro";
	font-weight: bold;
}
a[href$=".pdf"]::before {
	content: "\f1c1";
}
a[href$=".doc"]::before,
a[href$=".docx"]::before {
	content: "\f1c2";
}
a[href$=".xls"]::before,
a[href$=".xlsx"]::before {
	content: "\f1c3";
}
a[href$=".ppt"]::before,
a[href$=".pptx"]::before {
	content: "\f1c4";
}

.smb-panels__item__figure > img {
	object-fit: contain;
}

.smb-spider-slider[data-lg-slide-to-show="2"] .spider__slide,
.smb-spider-slider .smb-spider-slider__figure-wrapper,
.smb-spider-slider .spider__slide {
	width: 420px;
	height: 237px;
	overflow: hidden;
}
.smb-spider-slider[data-lg-slide-to-show="2"] .spider__slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.smb-spider-slider[data-lg-slide-to-show="2"] .spider__slide:not(:last-child) {
	margin-right: 4px;
}
.spider__arrow {
	margin: 0 20px;
	background-color: #FFF;
	border-radius: 50%;
}
.spider__arrow[data-direction=prev]:before,
.spider__arrow[data-direction=next]:before {
	top: 50%;
	left: 50%;
	border-width: 4px;
	border-color: #333;
	top: 50%;
	left: 55%;
	right: auto;
	bottom: auto;
	transform: translate(-50%, -50%) rotate(45deg);
}
.spider__arrow[data-direction=next]:before {
	left: 45%;
}
.spider__dots:not([data-thumbnails=true]) .spider__dot {
	background-color: #FFF;
	border: 1px solid #333;
}
.spider__dots:not([data-thumbnails=true]) .spider__dot[aria-current=true] {
	background-color: #333;
}

.is-root-container .block-editor-block-variation-picker__variations > li::before {
	display: none;
}
.is-root-container .wp-block-snow-monkey-blocks-media-text h2,
.is-root-container .wp-block-snow-monkey-blocks-media-text h3 {
	margin-top: 0;
	padding-top: 0;
}




/* Edge & IE用 wp-block-gallery */
_:-ms-lang(x), .blocks-gallery-grid.columns-3 .blocks-gallery-image,
.blocks-gallery-grid.columns-3 .blocks-gallery-item,
.wp-block-gallery.columns-3 .blocks-gallery-image,
.wp-block-gallery.columns-3 .blocks-gallery-item {
	width: 30%;
}
/* Edge & IE用 スライドショー サムネール */
_:-ms-lang(x), .spider__dots[data-thumbnails="true"] .spider__dot > .spider__figure {
	height: auto;
}
/* IE11用 wp-block img */
@media all and (-ms-high-contrast:none){
	*::-ms-backdrop, [class^="wp-block"] img {
		width: 100% !important;
		max-width: none !important;
	}
}
/* Edge18 ヒーローイメージ */
@supports (-ms-ime-align: auto) {
	#slider a::after,
	.post-thumbnail::after {
		mix-blend-mode: normal;
		opacity: .9;
	}
}
/* IE用 ヒーローイメージ */
@media all and (-ms-high-contrast: none) {
	#slider a::after,
	.post-thumbnail::after {
		mix-blend-mode: normal;
		opacity: .9;
	}
}




/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/* form */
/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
section + form {
	margin-top: 80px;
}
input[type="text"],
input[type="search"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="password"],
input[type="datetime"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="number"],
textarea,
.select-wrapper {
	height: 60px;
	padding: 0 1em;
	font-size: 1rem;
	background-color: #EDEDEF;
	border: none;
	border-radius: 10px;
	box-sizing: border-box;
}
input[type="text"]:not([size]),
input[type="search"]:not([size]),
input[type="url"]:not([size]),
input[type="email"]:not([size]),
textarea {
	width: 100%;
}
.required {
	position: relative;
}
textarea {
	height: auto;
	min-height: 6em;
	padding: 1em;
	min-height: 6em;
}
.select-wrapper {
	padding: 0;
	position: relative;
	background-color: #333;
}
.select-wrapper::after {
	content: "";
	width: 10px;
	height: 10px;
	display: block;
	position: absolute;
	top: 45%;
	right: 20px;
	border: 3px solid #FFF;
	border-top: none;
	border-left: none;
	transform: translate(0, -50%) rotate(45deg);
}
.select-wrapper select {
	width: 100%;
	height: 100%;
	padding: 0 1em;
	color: #FFF;
	background-color: transparent;
	border: none;
	-webkit-appearance: none;
	appearance: none;
	cursor: pointer;
}
label {
	margin-right: 1em;
	padding: .5em 0;
	display: inline-block;
	position: relative;
}
label input[type="radio"],
label input[type="checkbox"] {
	width: 1.5rem;
	height: 1.5rem;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0, -50%);
}
label i {
	width: 1.5em;
	height: 1.5em;
	margin: -.15em .4em .15em 0;
	display: inline-block;
	vertical-align: middle;
	border: 1px solid #333;
	box-sizing: border-box;
}
label.radio > i {
	border-radius: 50%;
}

.wp-block-button__link input {
	width: 200px;
	margin: -0.5em -1em;
	padding: 1em 1em;
	font-size: 1rem;
	background: none;
	border: none;
	cursor: pointer;
}
.wp-block-button__link input[name="submitBack"] {
	background-color: #EEE;
}
.mw_wp_form_confirm .confirm-none {
	display: none;
}

.mw_wp_form input[type="submit"] {
	margin-top: 55px;
}





/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/* editor */
/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
.block-editor-writing-flow {
	max-width: 1100px;
	margin: 0 auto;
	padding-bottom: 2em;
}
.edit-post-visual-editor__post-title-wrapper .editor-post-title {
	margin: 0 auto;
}
.edit-post-visual-editor__post-title-wrapper .editor-post-title .editor-post-title__input {
	text-align: center;
}
.wp-block {
	max-width: 100%;
}
.wp-block-columns,
.wp-block-image {
}
.entry-content .wp-block-column:not(:first-child),
.block-editor-block-list__block.wp-block-column:not(:first-child) {
	margin-left: 1em;
}

.wp-block-snow-monkey-blocks-section-break-the-grid {
	margin-bottom: 100px;
}
.wp-block-snow-monkey-blocks-section-break-the-grid > .c-container {
	max-width: 100%;
	padding-left: 0;
	padding-right: 0;
}
.wp-block-snow-monkey-blocks-section-break-the-grid .c-row--margin,
.wp-block-snow-monkey-blocks-section-break-the-grid .c-row--margin .c-row__col {
	margin: 0;
}
.wp-block-snow-monkey-blocks-section-break-the-grid .smb-section-break-the-grid__content {
	width: 100%;
	margin: 0;
	right: 0;
	left: 0;
}
.wp-block-snow-monkey-blocks-section-break-the-grid .smb-section-break-the-grid__figure {
	width: 120%;
}
.wp-block-snow-monkey-blocks-section-break-the-grid.smb-section-break-the-grid--right .smb-section-break-the-grid__figure {
	margin-left: -20%;
}
.wp-block-snow-monkey-blocks-section-break-the-grid .smb-section__lede {
	font-size: 1.125rem;
}
.wp-block-snow-monkey-blocks-section-break-the-grid img {
	margin-bottom: 0;
}




/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/* footer */
/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
footer {
	line-height: 1;
	background-color: #333;
}
footer .wrapper {
	width: 1060px;
	margin: 0 auto;
	padding: 54px 0 50px;
	display: flex;
	justify-content: space-between;
	color: #FFF;
}
footer .wrapper > * {
	flex-shrink: 0;
	flex-grow: 1;
}
footer .wrapper > *:first-child {
	flex-grow: 1.5;
	font-weight: bold;
}
footer h1 {
	margin-bottom: 20px;
	font-size: 30px;
	white-space: nowrap;
}
footer h1 img {
	margin-right: 10px;
	float: left;
}
footer h1 small {
	padding: 5px 0;
	display: block;
	font-size: 16px;
}
footer address {
	margin-bottom: 20px;
	display: block;
	clear: both;
	font-style: normal;
	line-height: 2;
}
footer a {
	color: #FFF;
	text-decoration: none;
}
footer .wp-block-button__link {
	min-width: 0;
	height: auto;
	margin-right: 5px;
	padding: 10px 15px;
	display: inline-block;
	line-height: 1;
	color: #FFF;
	background-color: transparent;
	border-radius: 0;
	box-shadow: 0 0 0 1px #FFF inset;
}
footer .wp-block-button__link.reverse {
	color: #333;
	background-color: #FFF;
}
footer .wp-block-button__link i {
	margin-right: .3em;
}
footer .footer-nav {
	padding-top: 35px;
	display: flex;
}
footer .footer-nav div {
	margin-left: 60px;
}
footer .footer-nav a {
	margin-top: 1.4em;
	display: block;
}
footer .footer-nav a::before {
	content: ">";
	margin-right: .3em;
	display: inline-block;
}
footer .social,
#sp-nav-contents .social {
	display: flex;
	align-items: flex-end;
	flex-grow: 0;
}
footer .social a,
#sp-nav-contents .social a {
	width: 54px;
	height: 54px;
	margin-left: 18px;
	display: block;
	overflow: hidden;
	color: #333;
	text-align: center;
	line-height: 54px;
	font-size: 30px;
	background-color: #FFF;
	border-radius: 50%;
}
footer .social a:first-child,
#sp-nav-contents .social a:first-child {
	margin-left: 0;
}
footer > small {
	padding-bottom: 40px;
	display: block;
	color: #FFF;
	font-size: 0.75em;
	text-align: center;
}




/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/* floating-menu */
/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
#floating-menu {
	position: fixed;
	top: 171px;
	right: 0;
	z-index: 10;
}
#floating-menu a {
	width: 80px;
	height: 80px;
	margin-bottom: 10px;
	padding: 0 10px;
	display: flex;
	flex-direction: column;
	justify-content: space-evenly;
	align-items: center;
	line-height: 1.2;
	color: #FFF;
	font-size: 11px;
	text-align: center;
	text-decoration: none;
	background-color: #333;
	border-radius: 7px 0 0 7px;
	box-sizing: border-box;
}
#floating-menu a.red {
	background-color: #E5573E;
}
#floating-menu a.sp {
	display: none;
}
#floating-menu a i {
	font-size: 30px;
	line-height: 1;
}

#sp-nav {
	display: none;
}

.btn_privacy{    font-size: 11px;
    margin-top: 28px;
    display: block;
    font-weight: normal;}



/* ヘッダーメニューをPC時もハンバーガーにする変更ここから▼  */
body > header .nav {
	display: none;
}
#sp-menu {
	width: 70px;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	right: 0;
	color: #FFF;
	font-size: 10px;
	font-weight: 300;
	text-decoration: none;
}
#sp-menu i {
	margin-bottom: 3px;
	font-size: 30px;
	font-style: normal;
}

.social_header{
	display: flex;
}
.social_header a{
	width: 54px;
    height: 54px;
    margin-left: 18px;
    display: block;
    overflow: hidden;
    color: #fff;
    text-align: center;
    line-height: 54px;
    font-size: 30px;

}

/* ヘッダーメニューをPC時もハンバーガーにする変更ここまで▲  */


/* /////////////////////////////////////////////////////////////////////////////////////////////////////////// */

/* スマホ */

/* /////////////////////////////////////////////////////////////////////////////////////////////////////////// */
@media screen and (max-width: 980px) {

html > body {
	font-size: 14px;
}

img {
	max-width: 100%;
}

.wp-block-button__link {
	min-width: 140px;
}






.wp-block-button__link::before {
	width: 0%;
	height: 0%;
}
.fl.pc,
.fr.pc {
	float: none;
}
.fix > img.fl.pc,
.fix > img.fr.pc,
.fix > .img.fl.pc,
.fix > .img.fr.pc {
	margin-right: auto;
	margin-left: auto;
	display: block;
}
.fix > .img.fl.pc,
.fix > .img.fr.pc {
	margin-bottom: .5em;
}

.wp-block-button__link {
	height: 30px;
	line-height: 28px;
}
.arrow .wp-block-button__link {
	padding-right: 25px;
	padding-left: 15px;
}
.arrow .wp-block-button__link::after {
	width: 20px;
	height: 20px;
	padding-left: 1px;
	top: 5px;
	right: 5px;
	font-size: 9px;
	line-height: 20px;
}

.contact-box {
	padding: 10px;
	display: block;
	background-image: linear-gradient(90deg, #FACEC3, #FF9A9E);
}
.contact-box > * {
	padding: 20px;
}
.contact-box .tel {
	background-color: #FFF;
}
.contact-box .mail {
	padding-top: 0;
	color: #333;
	background-color: #FFF;
}
.contact-box dt {
	margin-bottom: 20px;
	font-size: 1em;
}
.contact-box .mail dt {
	display: none;
}
.contact-box strong {
	margin-bottom: 12px;
	display: block;
	font-size: 1.9em;
}
.contact-box .wp-block-buttons {
	margin: 0;
	display: block;
}
.contact-box .wp-block-button__link {
	min-width: 190px;
	margin-top: -3px;
	box-shadow: 0 0 0 2px #333 inset;
}





/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/* header */
/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
body > header {
	height: 70px;
}
body > header .wrapper {
	width: auto;
	padding: 14px 0 0 12px;
}
/*body > header .nav {
	display: none;
}*/
body > header h1 {
	font-size: 18px;
}
body > header h1 img {
	width: 40px;
}
body > header h1 small {
	font-size: 10px;
}





/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/* article */
/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
.is-root-container {
	padding: 50px 35px;
}
#top .is-root-container {
	padding: 0;
}

.wrapper {
	width: 100%;
}

.block-editor-contents {
	width: 100%;
}

.breadcrumbs {
	padding: 1em 1em 0 1em;
	overflow: hidden;
	background-color: #FFF;
}
.breadcrumbs > div > *,
.breadcrumbs > div > * a {
	color: #333;
}

body:has(.sub-hero) main {
	padding: 10px 0 0 0;
}

body:not(:has(.sub-hero)) article header {
	margin-top: 60px;
}
body:not(:has(.sub-hero)) #page-title {
	height: auto;
	overflow: visible;
}
body:not(:has(.sub-hero)) #page-title img,
body:not(:has(.sub-hero)) #page-title::after {
	display: none;
}
body:not(:has(.sub-hero)) #page-title h1 {
	position: static;
	transform: none;
	width: auto;
	color: #333;
	font-size: 19px;
	text-align: left;
}

.is-root-container h2 {
	margin-bottom: 25px;
	padding-top: 35px;
	padding-bottom: 10px;
	position: relative;
	font-size: 1.22em;
	font-weight: bold;
}
.is-root-container h2::after {
	content: "";
	width: 18px;
	height: 3px;
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	background-color: #333;
	transform: translate(-50%, 0);
}

.is-root-container h5 {
	text-align: center;
}



/*--------------------------------------------------------- top ---------------------------------------------------------*/
#news {
	padding: 55px 23px 55px;
}
#news::before,
#news::after {
	display: none;
}
#news h2 {
	width: 80px;
	height: 80px;
	line-height: 70px;
	top: -42px;
	left: 23px;
	border-width: 1px;
}
#news h2::after {
	bottom: 24px;
}
.news-list {
	margin-bottom: 20px;
	padding: 0;
}
.news-list li:not(.emergency) {
	padding: 10px 0;
	flex-wrap: wrap;
}
.news-list li.emergency {
	margin-bottom: 10px;
	padding: 10px 10px;
}
.news-list li > a:last-child {
	padding-top: 10px;
}
#news .banner {
	padding-top: 45px;
	display: block;
	position: static;
}
#news .banner > *:not(:first-child) {
	margin: 20px 0 0;
}

#top-gakka {
	padding: 40px 0 0;
}
#top-gakka::after {
	width: calc(100% - 20px);
	height: calc(100% - 40px);
	top: 40px;
	left: 20px;
}
#top-gakka .flex {
	display: block;
}
#top-gakka dl {
	width: 254px;
	margin: 0 auto 40px;
}
#top-gakka dl.pt::before {
	width: 113px;
	height: 111px;
	left: -90px;
}
#top-gakka dl.ot::before {
	width: 142px;
	height: 113px;
	right: -74px;
}
#top-gakka dt {
	padding: 10px 25px;
	font-size: 18px;
}
#top-gakka .pt img {
	box-shadow: 10px 10px 0 0 #FAB415;
}
#top-gakka .ot img {
	box-shadow: 10px 10px 0 0 #6AC35F;
}
#top-gakka .wp-block-button__link {
	bottom: 10px;
	right: 10px;
}
#top-gakka .ot .wp-block-button__link {
	bottom: 10px;
	right: auto;
	left: 10px;
}

.is-root-container .yokabai::before {
	top: 40px;
	left: 0;
	font-size: 42px;
}
.is-root-container .yokabai h2 {
	margin-bottom: 0;
	padding: 72px 0 30px;
}
.is-root-container .yokabai h2::after {
	height: 42px;
}
.point,
.point:nth-of-type(2n) {
	min-height: 0;
	margin-bottom: 15px;
	padding: 0 24px;
}
.point-header {
	padding: 6px;
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	position: relative;
	background-image: linear-gradient(90deg, #FAD0C4, #FF9A9E);
	border-radius: 7px;
}
.point:nth-of-type(2) .point-header { background-image: linear-gradient(90deg, #D4FC79, #96E6A1) }
.point:nth-of-type(3) .point-header { background-image: linear-gradient(90deg, #C2E9FB, #A1C4FD) }
.point:nth-of-type(4) .point-header { background-image: linear-gradient(90deg, #F6D365, #FDA085) }
.point:nth-of-type(5) .point-header { background-image: linear-gradient(90deg, #80D0C7, #13547A) }
.is-root-container .point-header h3 {
	padding-bottom: 1em;
	display: block;
	flex-grow: 2;
	font-size: 1.22em;
}
.is-root-container .point-header i {
	margin-right: 0;
	margin-bottom: 8px;
	padding: 3px;
	display: inline-block;
	color: #FF9A9E;
	font-size: 14px;
	text-align: left;
	background-color: #FFF;
}
.point:nth-of-type(2) .point-header i { color: #96E6A1 }
.point:nth-of-type(3) .point-header i { color: #A1C4FD }
.point:nth-of-type(4) .point-header i { color: #FDA085 }
.point:nth-of-type(5) .point-header i { color: #13547A }
.point-header i small {
	display: inline;
	font-size: 14px;
}
.point-header span {
	display: block;
}
.point-header img {
	width: 125px;
	min-height: 90px;
	margin-right: 14px;
	position: static;
	object-fit: cover;
	flex-grow: 0;
	z-index: 1;
}
.point-header .read-more {
	display: block;
	position: absolute;
	bottom: 6px;
	right: 6px;
	color: #FFF;
	font-size: 0.8em;
	font-weight: bold;
}
.point-header .read-more::after {
	content: " > ";
}
.point-body,
.point:nth-of-type(2n) .point-body {
	padding: 17px 26px;
	text-align: center;
}
.point-body {
	display: none;
}
.point-body p {
	margin-bottom: 20px;
	text-align: left;
}
.point-body .close {
	display: inline-block;
	color: #333;
	font-size: 1.2em;
	text-decoration: none;
}
.point-body .close::before {
	content: "+";
	width: 1em;
	height: 1em;
	margin: -.05em .2em .05em 0;
	display: inline-block;
	line-height: 1;
	font-size: 1.6em;
	color: #FFF;
	text-align: center;
	vertical-align: middle;
	background-color: #999;
	border-radius: 50%;
	transform: rotate(45deg);
}

#top-sns {
	margin-bottom: 40px;
	padding: 0 0 50px;
}
#top-sns .flex {
	width: 300px;
	margin: 0 auto;
	display: block;
}
#top-sns .flex > * {
	width: 100%;
}
#top-sns .flex div {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#top-sns .flex .wp-block-buttons {
	margin: 0 auto 20px;
	justify-content: center;
}
#top-sns .timeline {
	height: 263px;
	margin: 20px;
}
#top-sns .social {
	margin-top: 0;
}
#top-sns .flex div.social > a {
	width: calc(50% - 4px);
	height: 97px;
	margin: 10px 0 0;
	font-size: 1em;
}
#top-sns .flex div a:first-child {
	margin-top: 10px;
}
#top-sns .flex div a.tiktok {
	font-size: 1.5em;
}
#top-sns .flex div a.tiktok i {
	margin-right: 0.5rem;
	font-size: 1.5em;
	text-shadow: -2px -2px 0 #5ABABF, 2px 2px 0 #DC003D;
}

#pickup {
	width: 302px;
	margin: 0 auto 30px;
}
#pickup li {
	width: 145px;
	margin-bottom: 35px;
	display: block;
}
#pickup li > img {
	margin: 0 0 10px;
}
#pickup li a {
	margin: 0;
	padding: 0;
	font-size: 14.5px;
	text-align: center;
	border-bottom: none;
}
#pickup li a br {
	display: none;
}
#pickup li p {
	display: none;
}
#top-sns + .wrapper +  .wrapper {
	padding: 0 22px;
}



/*--------------------------------------------------------- course header ---------------------------------------------------------*/
#course-header {
	padding: 0;
}
#course-header::after {
	display: none;
}
#course-header dl {
	width: 100%;
	padding: 15px;
}
#course-header dt {
	font-size: 48px;
}
#course-header dt small {
	margin-top: 5px;
	font-size: 17px;
}
#course-header dd {
	padding-top: 35px;
}
#course-header dd > * {
	width: 50px;
	height: 50px;
	margin-right: 1px;
	font-size: 9px;
}
#course-header dd span {
	margin: 2px 0;
}
#course-header dd strong {
	font-size: 17px;
}
#course-header .img-wrapper {
	left: 130px;
}
#course-header .img-wrapper img {
	width: 100%;
	height: 100%;
	position: static;
	transform: none;
}

#page-menu {
	display: none;
}

main article.coruse {
	margin-bottom: -50px;
}
#coruse-wrapper {
	width: 100%;
	padding: 40px 40px 0;
}
#coruse-contents .is-root-container {
	width: 100%;
}
#coruse-contents .coruse-title {
	font-size: 1.36em;
	text-align: left;
}

.license {
	position: relative;
}
.license figure {
	width: 70px;
	position: absolute;
	bottom: -10px;
	left: -25px;
	z-index: 2;
}
.wp-block-media-text .wp-block-media-text__content {
	padding: 0;
}

.curriculum-list {
	width: 100%;
	flex-direction: column;
}
.curriculum-list dt {
	width: 100%;
	padding: 10px;
	display: block;
	line-height: 1;
	text-align: center;
}
.curriculum-list dd ul {
	padding: 30px;
	display: block;
}
.curriculum-list dd ul li {
	width: auto;
	margin-right: 1em;
	display: inline-block;
}

#coruse-contents .wp-block-cover.has-background-dim {
	min-height: 1px;
	margin: 0 -40px;
}
#coruse-contents .wp-block-cover img.wp-block-cover__image-background {
	width: 100%;
	height: 100%;
}
#coruse-contents .wp-block-cover.has-background-dim .wp-block-cover__inner-container {
	width: 100%;
	padding: 30px 40px 40px;
}
#coruse-contents .wp-block-cover.has-background-dim h2 {
	margin-top: 0;
}
#coruse-contents .wp-block-cover.has-background-dim .wp-block-media-text {
	justify-content: center;
}
#coruse-contents .wp-block-cover.has-background-dim .wp-block-media-text > figure {
	display: none;
}
#coruse-contents .wp-block-cover.has-background-dim .wp-block-media-text__content {
	width: auto;
	padding: 30px;
}
#coruse-contents .wp-block-cover.has-background-dim .wp-block-media-text__content .wp-block-buttons,
#coruse-contents .wp-block-cover.has-background-dim .wp-block-media-text__content .wp-block-button,
#coruse-contents .wp-block-cover.has-background-dim .wp-block-media-text__content .wp-block-button a {
	width: 100%;
}

.wp-block-snow-monkey-blocks-panels .c-row--margin>.c-row__col {
	margin-bottom: 50px;
}
.wp-block-snow-monkey-blocks-panels .smb-panels__item__body {
	padding: 1em 0 0;
}
.wp-block-snow-monkey-blocks-panels .smb-panels__item__title strong {
	font-size: 1.2em;
}

#coruse-contents .gray-back {
	margin: 0 -40px;
	padding: 40px;
}
#coruse-contents .gray-back h2 {
	margin-top: 0;
	padding-top: 0;
}
#coruse-contents .gray-back .wp-block-media-text__content {
	padding-left: 0;
}
#coruse-contents .gray-back .wp-block-media-text__media {
	margin-bottom: 20px;
}
#coruse-contents .gray-back .wp-block-media-text__content h3 {
	margin-bottom: 10px;
	padding-bottom: 0;
	font-size: 1.2em;
	border-bottom: none;
}



/*--------------------------------------------------------- card-list ---------------------------------------------------------*/
.card-list {
	display: block;
}
.card-list[data-col="3"]::after {
	display: none;
}
.card-list > *,
.card-list[data-col="3"] > * {
	width: auto;
	margin-bottom: 40px;
	display: flex;
	position: relative;
	flex-direction: column;
}
.card-list.border > *,
.card-list.blog > * {
	max-width: 268px;
	margin-left: auto;
	margin-right: auto;
}
.card-list.border > * {
	padding: 20px 20px 15px;
}
.card-list.blog > * {
	padding: 20px;
	margin-bottom: 43px;
}

.card-list > li > * {
	order: 3;
}

.card-list .img-wrapper {
	height: 171px;
	margin-bottom: 20px;
	order: 2;
}
.card-list.border .img-wrapper,
.card-list.blog .img-wrapper {
	height: 128px;
	margin-bottom: 10px;
}
.card-list > li > strong {
	height: 1.5em;
	margin-bottom: 20px;
	-webkit-line-clamp: 1;
	font-size: 1.35em;
	border-bottom: 1px solid #333;
	order: 1;
}
.card-list.border > li > strong,
.card-list.blog > li > strong {
	height: 3em;
	margin-bottom: 10px;
	-webkit-line-clamp: 2;
	border-bottom: none;
	order: 2;
}
.card-list.blog > li > strong {
	font-size: 1em;
}
.card-list .date {
	margin-bottom: 15px;
	line-height: 1;
}
.card-list.blog .date {
	color: #9D9D9D;
}
.card-list .category {
	margin-right: 0;
	padding: 5px;
	display: block;
	position: absolute;
	top: 20px;
	left: 20px;
	font-size: .94em;
}
.card-list time {
	font-size: 0.75em;
	font-weight: bold;
}
.card-list.border time {
	margin-bottom: 1em;
	font-size: 1em;
}
.card-list p {
	height: 5.4em;
	padding-top: 0;
	-webkit-line-clamp: 3;
	border-top: none;
}
.card-list.blog p {
	height: calc(3.6em + 10px);
	padding-top: 10px;
	line-height: 1.8;
	-webkit-line-clamp: 2;
	border-top: 1px solid #333;
}
.card-list.blog p {
	font-size: 0.75em;
}
.card-list .wp-block-button {
	padding-top: 20px;
	text-align: right;
}

#category-select {
	margin-bottom: 50px;
}
#category-select dl {
	min-width: 100%;
}



/*--------------------------------------------------------- paginate ---------------------------------------------------------*/
#paginate:last-child {
	padding-bottom: 50px;
}
#paginate a,
#paginate .current {
	font-size: 3.1vmin;
}



/*--------------------------------------------------------- news ---------------------------------------------------------*/
#news-layout {
	display: block;
}
#news-layout .is-root-container {
	width: 100%;
}

#news-layout #category-select {
	margin-bottom: 40px;
	display: block;
}

#news-layout ol li {
	min-height: 63px;
	padding: 0 0 20px 145px;
	border-bottom: 1px solid #EDEDEF;
}
#news-layout ol li:not(:first-child) {
	margin-top: 20px;
}
#news-layout ol li .img-wrapper {
	width: 120px;
	height: 63px;
	top: 0;
	left: 15px;
}
#news-layout ol li .date {
	margin-bottom: 10px;
	position: static;
}
#news-layout ol li .category {
	margin: 0 5px 5px 0;
	display: inline-block;
}
#news-layout ol li strong {
	height: 3em;
	margin-bottom: 0;
	line-height: 1.5;
	font-size: 1em;
}
#news-layout ol li p {
	display: none;
}

#news-layout .aside {
	display: none;
}




/*--------------------------------------------------------- form ---------------------------------------------------------*/
#contact .is-root-container {
	padding: 0 40px;
}
.form-bg {
	padding: 40px 0;
}
.is-root-container .form-bg {
	background-color: transparent;
}
.form-bg .c-container {
	padding: 0;
	border-radius: 0;
}
.form-bg h2 {
	margin: 0 0 30px;
	padding: 10px;
	color: #1D4A9E;
	font-size: 1em;
	background-color: transparent;
	border-top: 1px solid #1D4A9E;
	border-bottom: 1px solid #1D4A9E;
}
.form-bg h2::after {
	display: none;
}
.form-list {
	padding-top: 30px;
	display: flex;
	flex-wrap: wrap;
}
.form-list > dt {
	width: 100%;
	margin-bottom: 7px;
	padding-right: 0;
	display: block;
}
.form-list dt::after {
	content: "必須";
	margin-left: 10px;
	padding: 8px;
	display: inline-block;
}
.form-list > dd {
	width: 100%;
	margin-bottom: 30px;
}
.form-list > dd.auto {
	width: 100%;
}
.form-list > dd.zipcode {
	padding-left: 1.5em;
}
.form-list > dd.zipcode::before {
	left: 0;
}

input[type="text"],
input[type="search"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="password"],
input[type="datetime"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="number"],
.select-wrapper {
	height: 45px;
	border-radius: 5px;
}
textarea {
	border-radius: 5px;
}

#contact .contact-box {
	padding: 10px;
}




/*--------------------------------------------------------- entry content ---------------------------------------------------------*/
.is-root-container .c-container {
	max-width: 100%;
	padding-left: 0;
	padding-right: 0;
}
.is-root-container .wide {
	margin-left: -40px;
	margin-right: -40px;
	padding-left: 40px;
	padding-right: 40px;
}

.is-root-container .table-wrapper {
	overflow-x: auto;
}
.is-root-container .table-wrapper td {
	white-space: nowrap;
}

.calendar .smb-step__item {
	padding-bottom: 50px;
}
.calendar .smb-step__item:not(:last-child)::before {
	left: -49px;
}
.calendar .smb-step__item__text {
	width: 58px;
	height: 58px;
	left: -78px;
	font-size: 17px;
}
.calendar .smb-step__item__title {
	min-height: 58px;
}

.smb-spider-slider {
	width: auto;
	margin: 0 -40px;
}
.smb-spider-slider[data-lg-slide-to-show="2"] .spider__slide,
.smb-spider-slider .smb-spider-slider__figure-wrapper,
.smb-spider-slider .spider__slide {
	width: 100%;
	height: calc(100vw * 171 / 304);
}
.smb-spider-slider[data-lg-slide-to-show="2"] .spider__slide,
.smb-spider-slider .spider__slide {
	margin: 0 !important;
}







/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/* footer */
/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
footer {
	padding: 40px 36px 35px;
}
footer .wrapper {
	width: auto;
	padding: 0;
	display: block;
}
footer h1 {
	font-size: 18px;
}
footer h1 img {
	width: 40px;
}
footer h1 small {
	font-size: 10px;
}
footer address {
	margin-bottom: 30px;
}
footer .wp-block-button__link {
	margin-right: 10px;
	padding: 10px 9px;
}
footer .wp-block-button__link:last-child {
	margin-right: 0;
}
footer nav div {
	width: 50%;
	margin-left: 0;
}
footer nav a {
	margin: 0 0 2em;
}
footer .footer-nav div {
	width: 50%;
	margin-left: 0;
}
.social {
	width: 100%;
	margin: -40px 0 45px;
	justify-content: flex-end;
}
.social a {
	margin-left: 14px;
}
footer > small {
	padding-bottom: 0;
}






/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/* floating-menu */
/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
#floating-menu {
	top: auto;
	bottom: 10px;
	right: 10px;
}
#floating-menu a:not(.sp) {
	display: none;
}
#floating-menu a.sp {
	width: 55px;
	height: 55px;
	margin: 10px 0 0;
	padding: 10px 0 15px;
	display: flex;
	font-weight: bold;
	border-radius: 50%;
}
#floating-menu a.sp i {
	font-size: 18px;
}






/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/* sp-nav */
/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
#sp-nav {
	height: calc(100vh - 70px);
	height: auto;
	display: block;
	position: fixed;
	top: 70px;
	left: 0;
	right: 0;
	bottom: 0;
	overflow: auto;
	opacity: 0;
	background-color: #FFF;
	pointer-events: none;
	transition: opacity .4s;
	z-index: 10;
}
.menu #sp-nav {
	opacity: 1;
	pointer-events: all;
}
#sp-nav .nav a {
	color: #333;
	text-decoration: none;
}
#sp-nav .nav > nav > ul > li {
	margin-top: 10px;
}
#sp-nav .nav > nav > ul > li > a {
	height: 70px;
	padding: 0 100px 0 34px;
	display: block;
	position: relative;
	line-height: 70px;
	font-weight: bold;
	background-color: #EDEDEF;
}
#sp-nav .nav > nav > ul > li > a::after {
	content: "\f054";
	width: 70px;
	height: 70px;
	position: absolute;
	top: 0;
	right: 0;
	line-height: 70px;
	color: #FFF;
	font-family: "Font Awesome 5 Pro";
	font-size: 18px;
	font-weight: 300;
	text-align: center;
	background-color: #1D4A9E;
}
#sp-nav .nav > nav > ul > li > ul > li.menu-item-has-children {
	padding: 20px 0 0;
}
#sp-nav .nav .sub-menu li.menu-item:not(.menu-item-has-children) {
	margin-left: 34px;
}
#sp-nav .nav .sub-menu li.menu-item:not(.menu-item-has-children):last-child {
	margin-bottom: 20px;
}
#sp-nav .nav ul li li.menu-item-has-children > a {
	margin-left: 34px;
	padding-bottom: .5em;
	display: block;
	font-weight: bold;
	border-bottom: 1px solid #333;
	pointer-events: none;
}
#sp-nav .nav .sub-menu li.menu-item:not(.menu-item-has-children) a {
	margin-top: 1em;
	padding-left: 1em;
	display: block;
	position: relative;
}
#sp-nav .nav .sub-menu li.menu-item:not(.menu-item-has-children) a::before {
	content: "";
	width: .6em;
	height: 1px;
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	background-color: #333;
}
#sp-nav .sub-menu-toggle {
	display: none;
}

#sp-nav-contents {
	padding: 23px;
}
#sp-nav-contents .img-btn {
	margin-bottom: 20px;
}

#sp-nav-contents .wp-block-buttons {
	margin: 0;
}

#access-btn {
	padding: 35px 0 0;
	text-align: center;
}
#access-btn .wp-block-buttons {
	justify-content: center;
}
#access-btn .wp-block-button__link {
	width: 160px;
	height: 45px;
	line-height: 45px;
	font-size: 1.2em;
	border-radius: 8px;
}
#access-btn .wp-block-button__link i {
	margin-right: .3em;
	font-size: 1.4em;
	vertical-align: middle;
}

#sp-nav-contents .social {
	margin: 40px 0 60px;
	display: block;
	text-align: center;
}
#sp-nav-contents .social a {
	margin: 0 7px;
	display: inline-block;
	box-shadow: 0 0 0 2px #333 inset;
}
#sp-nav-contents .copyright {
	display: block;
	font-size: 1.6vw;
	text-align: center;
}

}

ol.kajogaki {
	padding-left: 1em;
}
/*30th*/

.nitizi_location{width:100%;margin-top:20px;}
.tyui_box{    border: 3px solid #E5573E;
    padding: 20px;margin-top:30px;text-align:center;}
.tyui_box *{color:#E5573E!important;text-align:center!important;}
.is-root-container .tyui_box h3{margin-top:0;padding-top:0;border-bottom:1px solid #E5573E;}

.row{display:flex;}
.col-md-5{width:35%;}
.col-md-5 img{width:100%;max-width:300px;margin:0 auto;display:block;}
.col-md-7{width:65%;}

.table1{width:100%;}
.is-root-container .table1 td{    background-color: #fff;padding:0;   /* border-bottom: 1px dotted #ccc;*/vertical-align: top;}
.is-root-container .table1 td:last-child{min-width:110px}
.is-root-container .table1 {
    margin-bottom: 15px;
    border-collapse: collapse;
    border-spacing: 0;
}
.contact-box.form_conbox .wp-block-button__link:hover{color:#fff!important;}
.mt30{margin-top:30px;}
.profile_box .row{margin-bottom:60px;    gap: 24px;    margin-top: 20px;}
.profile_box .mb20{margin-bottom:20px;}
.profile_box h6{padding:10px 0;}
.profile_box dl{width:100%;display:table;}
.profile_box dt {
    display: table-cell;
    /* width: 10%; */
    /* min-width: 130px; */
    /* width: 0; */
    /* white-space: nowrap; */
    padding-right: 20px;
    width: 12.4em;
    border-bottom: 1px solid #ccc;
}.profile_box dd{display:table-cell;border-bottom: 1px solid #ccc;}

.is-root-container img.wp-image-28685{width:100%;}


@media screen and (max-width: 980px) {
    
    .contact-box.form_conbox .mail {padding-top:20px}
.contact-box.form_conbox .mail dt{display:block;}    
    
}
@media (max-width: 768px){
    .profile_box .row{
    display: flex;
    flex-direction: column;
}
    .col-md-5{width:auto;}
    .col-md-7{width:auto;}
    .profile_box dt{width: 100%;border-bottom:none;    display: table;}
    .profile_box dd{display:table;width:100%;}
    .is-root-container .table1 td{display:block;text-indent: 1em;}
    .is-root-container .table1 td:first-child{text-indent:0;}
    
}

/*SP改行非表示*/
@media screen and ( max-width:769px) 
{
	.nosp {
		display: none;
	}

}

/*PC改行非表示*/
@media screen and ( min-width:768px) 
{
	.nopc {
		display: none;
	}
}


a.top_bn2024 img {
	width: 100%;
	max-width: 394px;
}