.selector-for-some-widget {
	box-sizing: content-box;
}
body {
	font-family: 'Roboto', sans-serif, 'Noto Sans JP', sans-serif;
	font-weight: 400;
	color: #212121;
}

.font-1 {
	font-family: 'IBM Plex Sans JP', sans-serif;
	font-weight: 400;
}
#heading {
	background-color: #474f63;
}
#heading h2 {
	margin: 3em 0 3em 0;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
}
#footer_bs {
	color: #fff;
}
#heading_bg {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 310px;
	margin: 0 0 30px;
	background: url(../img/bg_title.jpg) no-repeat center/auto 100%;
}
#heading_bg h2 {
	padding: 5px 0 0;
	line-height: 1.2;
	color: #fff;
	font-size: 3.2rem;
	font-weight: bold;
	text-align: center;
}
.text-point {
	font-weight: bold;
	color: #f1ad02f4;
}
h4.subtitle {
	color: #f1ad02e0;
	font-weight: bold;
	margin-top: 30px;
	margin-bottom: 20px;
	border-bottom: dashed 2px #f1ad02e0;
}
h4.subtitle2 {
	color: #f1ad02e0;
	font-weight: bold;
	margin-top: 30px;
	margin-bottom: 20px;
	padding: 8px 8px 2px 8px;
	background-color: #fffaf4;
	border-bottom: dashed 2px #f1ad02e0;
}
li.point {
	color: #454545e0;
	font-weight: bold;
	margin-top: 10px;
	margin-bottom: 10px;
}
a.footer_link {
	text-decoration: none !important;
	color: #fff !important;
}
.nav-buttons1 {
	font-size: 14px !important;
	padding: 10px 0 9px 0 !important;
	font-weight: bold !important;
	background-color: #4eb3e6 !important;
	width: 138px;
}
.nav-buttons2 {
	font-size: 14px !important;
	padding: 10px 0 9px 0 !important;
	font-weight: bold !important;
	background-color: #b4d43f !important;
	width: 138px;
}
.nav-buttons3 {
	font-size: 14px !important;
	padding: 10px 0 9px 0 !important;
	font-weight: bold !important;
	background-color: #474f63 !important;
	width: 138px;
}
@media screen and (max-width: 765px) {
	.nav-buttons1 {
		width: 128px;
		font-size: 12px;
	}
	.nav-buttons2 {
		width: 128px;
		font-size: 12px;
	}
	.nav-buttons3 {
		width: 128px;
		font-size: 12px;
	}
}
a.nav-textlink {
	text-decoration: none;
	font-size: 12px;
	color: #474f63;
	margin-left: 20px;
	font-family: 'Roboto', sans-serif, 'BIZ UDGothic', sans-serif;
}
a {
	text-decoration: none;
}
.button a {
	width: 250px;
	padding: 13px 0px;
	font-size: 16px;
	background-color: #ffed48;
	color: #474f63;
	font-weight: bold;
	border-style: none;
	border-radius: 2px;
	display: block;
	margin: 0px auto;
}
.button a:hover {
	opacity: 50%;
}
.button button {
	width: 250px;
	padding: 13px 0px;
	font-size: 16px;
	background-color: #ffed48;
	color: #474f63;
	font-weight: bold;
	border-style: none;
	border-radius: 2px;
	display: block;
	margin: 0px auto;
}
.button button:hover {
	opacity: 50%;
}
.button_g button {
	width: 250px;
	padding: 13px 0px;
	font-size: 16px;
	background-color: #e6eaeb;
	color: #474f63;
	font-weight: bold;
	border-style: none;
	border-radius: 2px;
	display: block;
	margin: 0px auto;
}
.button_g button:hover {
	opacity: 50%;
}
.mark {
	background-color: #faef99;
}
.wrap {
	overflow: hidden;
}
#pMenu01,
#pMenu02 {
	text-decoration-line: none;
}
.pMenu01_child p,
.pMenu02_child p {
	margin-bottom: 0;
}
.pMenu01_child a {
	text-decoration-line: none;
}
.pMenu02_child a {
	text-decoration-line: none;
}
.socialmedia a {
	text-decoration: none;
	color: #333;
}
.sns_item {
	color: #333;
	font-family: 'Noto Sans JP', sans-serif;
	border-right: 1px solid #a3a3a3;
	padding-top: 20px;
}
.sns_item a {
	display: block;
	height: 100%;
	width: 100%;
}
.sns_item a:hover {
	color: #f1b769;
}
.sns_item_last {
	color: #333;
	font-family: 'Noto Sans JP', sans-serif;
	border-right: 0px solid #a3a3a3;
	padding-top: 20px;
}
.sns_item_last a {
	display: block;
	height: 100%;
	width: 100%;
}
.sns_item_last a:hover {
	color: #f1b769;
}

.sns_icon {
	width: 40px;
	border-radius: 50%;
}
.sns_name {
	font-size: 12px;
	font-weight: 500;
	margin-top: 3px;
	margin-bottom: 5px;
}
.sns_disc {
	font-size: 10px;
}
img.logo-footer {
	width: 125px;
	padding: 7px;
}
.allright {
	background-color: #4b4b4b;
	color: #959595;
}
@media screen and (max-width: 480px) {
	.footer_menu {
		margin-top: 0px;
	}
	.footter_items {
		padding-top: 20px;
	}
	.about {
		font-size: 12px;
		line-height: 1.25;
		float: left;
		padding: 0 10px 0 10px;
		border-right: 0px;
		text-decoration: none;
	}
	.sns_item {
		border-right: 0px solid #a3a3a3;
		margin-bottom: 20px;
		padding-top: 0px;
	}
	.sns_item_last {
		margin-bottom: 20px;
		padding-top: 0px;
	}
	.sns_name {
		display: none;
	}
	.sns_disc {
		display: none;
	}
}
.c-body {
	padding: 20px;
}
.btn-fab {
	width: 50px;
	position: relative;
	border-radius: 5px;
	color: #333;
}
.btn-fab-message {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	display: flex;
	flex-direction: row;
	align-items: center;
	color: #595757;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.12rem;
}
.bgTeachers {
	background-color: #93939e;
	background-image: url(../../img/bg_index_06.png);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: left bottom;
	height: 300px;
	position: relative;
	z-index: 1;
}
.podcast_icon {
	height: 50px;
}
@media screen and (max-width: 767px) {
	.bgTeachers {
		background-image: url(../../img/bg_index_06_2.png);
		padding-top: 50px;
		padding-bottom: 300px;
		background-size: 100%;
		background-position: left bottom;
		background-color: #93939e;
	}
	.podcast_icon {
		height: 30px;
	}
}
/* デフォルトでは表示 */
.timezone-header-mobile {
	display: none;
	margin-top: 4px;
	text-align: center;
	padding: 5px;
	background-color: #4d4d4d;
	color: #ffffff;
}
.timezone-header-desktop {
	display: none;
	text-align: center;
	padding: 5px;
	background-color: #4d4d4d;
	color: #ffffff;
}
.timezone-info {
	font-size: 11px;
	font-weight: bold;
}
.timezone-info-desktop {
	margin-right: 10px;
	padding-left: 2px;
	font-size: 12px;
	font-weight: bold;
}
.navi-system-mobile {
	display: none;
}
/* 767px以下では非表示にする */
@media screen and (max-width: 767px) {
	.timezone-header-mobile {
		display: block;
		display: flex;
		align-items: center;
	}
	.timezone-header-desktop {
		display: none !important;
	}
	div.lessonBookingTime span.timezone-info {
		display: none;
	}
	.timezone-info {
		margin-right: 10px;
		padding-left: 2px;
	}
	.navbar-brand {
		margin-right: 0px !important;
	}
	ul.header_reft.clearfix {
		padding-left: 0px !important;
	}
}
#language-selector {
	border-radius: 5px;
	padding: 2px;
	font-size: 14px;
}
