@charset "utf-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700&display=swap');
@import url('https://use.fontawesome.com/releases/v5.10.2/css/all.css');
/* -------------------- 共通 start -------------------- */
body {
	margin: 0;
	padding: 0;
	font-size: 15px;
	line-height: 1em;
	font-family: 'Lato', 'Noto Sans JP', sans-serif;
	font-feature-settings: 'palt';
	letter-spacing: 0.1em;
	color: #333;
	background-color: #FFFFFF;
}
img {
	max-width: 100%;
	height: auto;
}
a {
	color: #00183D;
	cursor: pointer;
	transition: 0.2s;
}
a:hover, a img:hover, button:hover {
	opacity: 0.8;
}
section {
	margin-bottom: 4vw;
	margin-top: -140px; /* ヘッダ固定時のアンカーリンクずれ対策 */
	padding-top: 140px; /* ヘッダ固定時のアンカーリンクずれ対策 */
}
main {
	padding-bottom: 4em;
}
table {
	border-collapse: collapse;
}
.container {
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
}
.container.wide {
	max-width: 1920px;
}
p {
	line-height: 1.8em;
}
p.lead01 {
	font-size: 1.2em;
	color: #00183D;
	line-height: 1.5em;
	font-weight: bold;
	text-align: center;
}
p.lead01.left {
	text-align: left;
}
p.lead02 {
	color: #FFFFFF;
	background-color: #717a88;
	padding: 1em;
}
br.tb {
	display: none;
}
br.mb {
	display: none;
}
.nowrap {
	white-space: nowrap;
}
::selection { /* テキスト選択 */
	background: #00183D;
	color: #ffffff;
}
::-moz-selection {
	background: #00183D;
	color: #ffffff;
}
.tel {
	font-size: 1.2em;
	text-decoration: none;
	font-weight: bold;
}
.tel::before {
	content: "\f095";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-right: 0.5em;
}
.bdr01 {
	border: 1px solid #CCC;
}
.sdw01 {
	-webkit-box-shadow: 0px 0px 10px #CCCCCC;
	box-shadow: 0px 1px 3px #999;
}
button {
	cursor: pointer;
}
.mgnb {
	margin-bottom: 4vh;
}
ul.flex {
	display: flex;
	flex-wrap: wrap;
}
ul.flex li {
	margin-right: 1.5em;
}
a.link {
	display: inline-block;
	margin: 0 0.5em;
	padding: 0.4em 1em;
	background-color: white;
	border-radius: 30px;
	text-decoration: none;
	border: 1px solid #00183D;
}
a.link::after {
	content: "\f054";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	font-size: 0.7em;
	margin-left: 0.3em;
}
.lv2 {
	font-size: 0.9em;
}
/* -------------------- 共通 end -------------------- */
/* -------------------- ヘッダー・フッター・サブメニュー start -------------------- */
.display_mb {
	display: none;
}
#contact {
	position: absolute;
	right: 0;
	top: 0;
	height: 60px;
	width: 360px;
}
#contact ul {
	display: flex;
	list-style: none;
	margin: 0;
	padding: 0;
}
#contact li {
	width: 50%;
}
.btn_products, .btn_contact {
	color: #FFFFFF;
	text-decoration: none;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 60px;
	font-size: 13px;
}
.btn_products::before {
	content: "\f290";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-right: 0.3em;
}
.btn_contact::before {
	content: "\f044";
	font-family: 'Font Awesome 5 Free';
	font-weight: 400;
	margin-right: 0.3em;
}
.btn_products {
	background-color: #00183D;
}
.btn_contact {
	background-color: #7BC41C;
}
footer {
	font-size: 0.8em;
}
footer #wrap_footer {
	background-color: #595C61;
	background-image: url(/assets/img/common/bg6.png);
	overflow: hidden;
}
footer #fnav {
	margin: 3em 1em;
}
footer #footer_logo {
	padding: 1em;
	text-align: center;
}
footer .box_fnav {
	display: flex;
	justify-content: center;
}
footer .box_fnav ul {
	margin: 0 1em;
}
footer .box_fnav ul li ul {
	margin: 0 0 0 2em;
}
footer .box_fnav a {
	display: block;
	padding: 0.6em;
	color: #FFFFFF;
	text-decoration: none;
	line-height: 1.2em;
}
footer #credit {
	color: #FFFFFF;
	text-align: center;
	margin: 3em 1em;
	line-height: 2em;
}
footer a {
	color: #FFFFFF;
	text-decoration: none;
}
footer #sns {
	color: #CCC;
	font-size: 2em;
	text-align: center;
}
footer #copyright {
	color: #CCC;
	font-size: 0.85em;
	line-height: 46px;
	text-align: center;
	height: 46px;
}
#breadcrumbs {
	padding: 1vw;
}
#breadcrumbs, #breadcrumbs a {
	color: #666;
	text-decoration: none;
}
#breadcrumbs ul {
	display: flex;
	flex-wrap: wrap;
}
#breadcrumbs li {
	font-size: 0.7em;
	margin: 0.5em;
}
#breadcrumbs li a::after {
	content: "\f054";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-left: 1.5em;
	font-size: 0.4em;
	vertical-align: middle;
}
.box_subnav {
	padding: 1em 2vw;
}
.box_subnav ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.box_subnav ul li {
	margin: 0.3em;
}
.box_subnav a {
	padding: 0.6em 3em 0.6em 2em;
	color: #00183D;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	position: relative;
	text-align: center;
	font-size: 0.9em;
}
.box_subnav a::after {
	content: "\f054";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	font-size: 0.7em;
	margin-left: 0.3em;
	position: absolute;
	right: 0.5em;
}
.box_subnav .seminar li {
	width: 35%;
}
.box_subnav .seminar a {
	background-color: #00183D;
	color: #FFFFFF;
	padding: 1em;
	height: 3em;
	border-radius: 1px;
	font-size: 0.8em;
}
.box_subnav .seminar a.matsuokajuku {
	border-left: 6px solid #dfff45;
}
.box_subnav .seminar a.matsuokajuku-staff {
	border-left: 6px solid #ef7fff;
}
.box_subnav .seminar a.consulting {
	border-left: 6px solid #51beff;
}
.box_subnav .seminar a.team {
	border-left: 6px solid #51e6c3;
}
/* -------------------- ヘッダー・フッター・サブメニュー end -------------------- */
/* -------------------- checkbox、radiobuttonデザイン変更 start -------------------- */
.checkbox {
	display: none;
}
.checkbox + .checkbox-icon {
	position: relative;
	vertical-align: middle;
}
.checkbox + .checkbox-icon:before {
	content: "\f14a";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: #DDD;
	font-size: 1.2em;
	transition: .1s;
	margin-right: 0.3em;
	vertical-align: top;
}
.checkbox:checked + .checkbox-icon:before {
	content: "\f14a";
	color: #00183D;
	font-weight: 900;
}
.radio {
	display: none;
}
.radio + .radio-icon:before {
	content: "\f111";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: #FFF;
	font-size: 1.2em;
	transition: .1s;
	margin-right: 0.3em;
	text-shadow: 1px 1px 0 #DDD, -1px 1px 0 #DDD, 1px -1px 0 #DDD, -1px -1px 0 #DDD;
	vertical-align: top;
}
.radio:checked + .radio-icon:before {
	content: "\f192";
	color: #00183D;
	font-weight: 900;
}
/* -------------------- checkbox、radiobuttonデザイン変更 end -------------------- */
/* -------------------- ボタン・リンク start -------------------- */
.btn {
	display: block;
	background-color: #7BC41C;
	color: #FFF;
	line-height: 1.6em;
	padding: 1em 2em;
	margin: 2em auto;
	text-decoration: none;
	max-width: 240px;
	position: relative;
	text-align: center;
	border-radius: 1px;
}
.btn:hover {
	background-color: #7BC41C;
}
.btn::after {
	content: "\f054";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	position: absolute;
	top: 50%;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	right: 1em;
}
.btn.detail {
	max-width: 120px;
}
.btn.main {
	max-width: 300px;
	font-size: 1.2em;
	margin: 1em auto;
	padding: 0.5em 2em;
}
.btn.back::before {
	content: "\f053";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	position: absolute;
	top: 50%;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	left: 1em;
}
.btn.back::after {
	content: "";
}
.btn.type01 {
	background-color: hsla(0, 0%, 100%, 0.00);
	border: 1px solid #00183D;
	color: #00183D;
}
button.btn.form {
	color: #FFF;
	background-color: #00183D;
	cursor: pointer;
	border: none;
	min-width: 240px;
	margin: 2em auto;
}
.external::after {
	content: "\f360" !important;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-left: 0.2em;
}
/* -------------------- ボタン・リンク end -------------------- */
/* -------------------- ボックス start -------------------- */
.box {
	padding: 2vh 2vw;
}
.box01 {
	background-color: #FFFFFF;
	padding: 4vh 4vw;
}
.box02 {
	background-color: #F4F4F4;
	padding: 4vh 4vw;
}
.box03 {
	background-color: #FFFFFF;
	padding: 4vh 4vw;
	-webkit-box-shadow: 0 0 10px #CCC;
	box-shadow: 0 0 10px #CCC;
	margin-bottom: 4vw;
}
.bg {
	background-image: url("/assets/img/common/bg70.png");
}
.box_products {
	margin: 0;
	padding: 2vh 2vw;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	background-color: #FFF;
}
.box_products li {
	margin: 1vw;
	flex: 1;
}
.box_products h3 {
	line-height: 1.2em;
}
.box_products p {
	line-height: 1.3em;
}
.box_item {
	padding: 1vw;
	margin: 2vh 1vw;
	border-top: 1px solid #00183d;
}
.box_about_img {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.box_about_img .box {
	width: 25%;
	padding: 0;
}
.clm2 {
	display: flex;
	justify-content: center;
	align-items: center;
}
.clm2 .box {
	min-width: 30%;
}
.clm2.portrait {
	align-items: flex-start;
}
.clm2.portrait .box:first-child {
	min-width: 30%;
}
ul.tile {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
ul.tile.row2 li {
	width: 50%;
}
/* -------------------- ボックス end -------------------- */
/* -------------------- リスト start -------------------- */
.list_info {
	padding: 0;
	margin: 2em 0;
}
.list_info li {
	background-color: #FFFFFF;
	padding: 1em 2em 1em 1em;
	line-height: 1.5em;
	margin: 1em 0;
	position: relative;
}
.list_info p {
	margin: 0.6em 0 0 0;
}
.list_info a {
	text-decoration: none;
}
.list_info li::after {
	content: "\f054";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: #7BC41C;
	position: absolute;
	right: 1em;
	top: 50%;
	margin-top: -10.5px;
}
.list_info .date {
	color: #7BC41C;
	font-size: 12px;
}
.list_info.seminar li {
	font-weight: bold;
}
.list01 {
	list-style: disc;
	padding: 2em;
}
.list01 li {
	line-height: 1.5em;
	margin-bottom: 0.5em;
}
.list02 {
	list-style: disc;
	padding: 0 1em 1em;
}
.list02 li {
	line-height: 1.5em;
	margin-bottom: 0.5em;
}
ul.nostyle {
	list-style-type: none;
}
dl.list01 {
	margin-bottom: 2em;
}
dl.list01 dd {
	margin: 0 1em 2em;
	line-height: 1.5em;
}
dl.list01 dt {
	margin-bottom: 1em;
	font-weight: bold;
}
.list_flow {
	margin: 0 0 4em 0;
}
.list_flow.white {
	margin: 0 0 2em 0;
}
.list_flow li {
	position: relative;
	padding: 2vw;
	background-color: #F0F0F0;
}
.list_flow.white li {
	padding: 1.5vw;
	background-color: #FFFFFF;
}
.list_flow h3 {
	color: #7BC41C;
	font-size: 1.1em;
	margin-top: 0;
	line-height: 1.6em;
}
.list_flow h3 span {
	font-size: 1.6em;
	vertical-align: middle;
	margin-right: 0.3em;
}
.list_flow .arrow {
	width: 0;
	height: 0;
	border-left: 30px solid transparent;
	border-right: 30px solid transparent;
	border-top: 30px solid #F0F0F0;
	margin: 0 auto 2vw;
}
.list_flow.white .arrow {
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
	border-top: 20px solid #FFFFFF;
	margin: 0 auto 1vw;
}
.list_partner {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}
.list_partner li {
	width: 30%;
	margin: 1%;
}
.list_partner a {
	display: block;
	line-height: 1.5em;
	text-align: center;
	text-decoration: none;
}
.list_partner img {
	max-width: 200px;
}
@media print, screen and (max-width:768px) {
	.list_partner img {
		max-width: 160px;
	}
}
.fee {
	/*text-align: right;*/
	font-weight: bold;
	font-size: 1.1em;
	color: #00183D;
	line-height: 1.5em;
}
.list_seminar_matsuokajuku {
	max-width: 800px;
	margin: auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	list-style: none;
}
.list_seminar_matsuokajuku li {
	width: 46%;
	margin: 2%;
	color: #00183D;
	font-size: 1.1em;
	font-weight: bold;
	display: flex;
	line-height: 1.5em;
}
.list_seminar_matsuokajuku li span {
	font-size: 1.3em;
	margin-right: 0.3em;
}
.list_web li {
	margin-bottom: 4vh;
}
.list_web ul {
	list-style: none;
	margin: 1em 0;
	padding-left: 1em;
	border-left: 5px solid #00183D;
}
.list_web ul li {
	margin-bottom: 0.5em;
}
/* -------------------- リスト end -------------------- */
/* -------------------- 各ページイメージ start -------------------- */
#wrap-title { /* アスペクト比固定 */
	position: relative;
	width: 100%;
}
#wrap-title:before { /* アスペクト比固定 */
	content: "";
	display: block;
	padding-top: 20%; /* 高さを幅の20%に固定 */
}
#wrap-title #bg {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}
#wrap-title #bg.information {
	background-image: url("/assets/img/head_img/information.jpg");
	background-size: cover;
	background-position: center center;
	filter: brightness(70%);
	/*-ms-filter: blur(6px);
    filter: blur(6px);*/
}
#wrap-title #bg.about {
	background-image: url("/assets/img/head_img/about.jpg");
	background-size: cover;
	background-position: center center;
	filter: brightness(75%);
}
#wrap-title #bg.seminar {
	background-image: url("/assets/img/head_img/seminar.jpg");
	background-size: cover;
	background-position: center center;
	filter: brightness(100%);
}
#wrap-title #bg.seminar_matsuokajuku {
	background-image: url("/assets/img/head_img/seminar_matsuokajuku.jpg");
	background-size: cover;
	background-position: center top;
	filter: brightness(75%);
}
#wrap-title #bg.seminar_matsuokajuku_staff {
	background-image: url("/assets/img/head_img/seminar_matsuokajuku_staff.jpg");
	background-size: cover;
	background-position: center top;
	filter: brightness(75%);
}
#wrap-title #bg.seminar_consulting {
	background-image: url("/assets/img/head_img/seminar_consulting.jpg");
	background-size: cover;
	background-position: center center;
	filter: brightness(70%);
}
#wrap-title #bg.seminar_team {
	background-image: url("/assets/img/head_img/seminar_team.jpg");
	background-size: cover;
	background-position: center center;
	filter: brightness(60%);
}
#wrap-title #bg.seminar_entry {
	background-image: url("/assets/img/head_img/seminar_entry.jpg");
	background-size: cover;
	background-position: center center;
	filter: brightness(100%);
}
#wrap-title #bg.staff {
	background-image: url("/assets/img/head_img/staff.jpg");
	background-size: cover;
	background-position: center center;
	filter: brightness(65%);
}
#wrap-title #bg.invisalign-go {
	background-image: url("/assets/img/head_img/invisalign-go.jpg");
	background-size: cover;
	background-position: center bottom;
	filter: brightness(70%);
}
#wrap-title #bg.okss {
	background-image: url("/assets/img/head_img/okss.jpg");
	background-size: cover;
	background-position: center center;
	filter: brightness(70%);
}
#wrap-title #bg.blog {
	background-image: url("/assets/img/head_img/blog.jpg");
	background-size: cover;
	background-position: center center;
	filter: brightness(90%);
}
#wrap-title #bg.products {
	background-image: url("/assets/img/head_img/products.jpg?220530");
	background-size: cover;
	background-position: center center;
	filter: brightness(70%);
}
#wrap-title #bg.company {
	background-image: url("/assets/img/head_img/company.jpg");
	background-size: cover;
	background-position: center center;
	filter: brightness(100%);
}
#wrap-title #bg.contact {
	background-image: url("/assets/img/head_img/contact.jpg");
	background-size: cover;
	background-position: center center;
	filter: brightness(70%);
}
#wrap-title #bg.privacypolicy {
	background-image: url("/assets/img/head_img/privacypolicy.jpg");
	background-size: cover;
	background-position: center center;
	filter: brightness(70%);
}
#wrap-title #bg.sitepolicy {
	background-image: url("/assets/img/head_img/sitepolicy.jpg");
	background-size: cover;
	background-position: center top;
	filter: brightness(70%);
}
#wrap-title #cover {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	display: flex;
	justify-content: center;
	align-items: center;
}
#wrap-title #cover #title {
	text-align: center;
}
#wrap-title #cover #title h1 {
	/*color: #91f510;*/ /*リリース時　緑寄り*/
	/*color: #b8f510;*/ /*黄緑*/
	color: #ABF510; /*2020.06.12変更*/
	font-size: 4vw;
	font-weight: bold;
	line-height: 1.2em;
	margin: 0 0 1vw 0;
	text-shadow: 2px 2px 10px hsla(0, 0%, 0%, 0.20);
}
#wrap-title #cover #title .intro {
	font-size: 1.1em;
	color: #FFFFFF;
	line-height: 1.3em;
}
/* -------------------- 各ページイメージ end -------------------- */
/* -------------------- 見出し start -------------------- */
.head01 {
	text-align: center;
	font-weight: bold;
	margin: 0 0 1em;
	font-size: 1.2em;
	line-height: 1.5em;
	color: #00183D;
}
.head01::after {
	content: "─────";
	letter-spacing: -0.1em;
	display: block;
	margin-top: 0.6em;
	color: #7BC41C;
}
.head02 {
	font-weight: bold;
	margin: 1em 0;
	font-size: 1.1em;
	line-height: 1.2em;
	color: #00183D;
}
.head03 {
	font-weight: bold;
	margin: 1em 0;
	font-size: 1.2em;
	line-height: 1.2em;
	color: #00183D;
	border-left: 5px solid #00183D;
	padding-left: 1em;
}
.head04 {
	font-weight: bold;
	margin: 1em 0;
	font-size: 1.4em;
	line-height: 1.2em;
	color: #00183D;
}
.head05 {
	font-weight: normal;
	margin: 1em 0;
	font-size: 1.6em;
	line-height: 1.2em;
	color: #00183D;
}
/* -------------------- 見出し end -------------------- */
/* -------------------- TOP start -------------------- */
#wrap-topimg {
	position: relative;
	width: 100%;
	overflow: hidden; /* 右側の空白を削除 */
}
#wrap-topimg .ratio::before { /* アスペクト比固定 */
	content: "";
	display: block;
	padding-top: 42%; /* 高さを幅の42%に固定 */
}
#wrap-topimg .ratio.topimg01 {
	background-image: url("/assets/img/top/mainimg03.jpg");
	background-size: cover;
	background-position: center center;
	filter: brightness(75%);
}
#wrap-topimg .ratio.topimg02 {
	background-image: url("/assets/img/top/mainimg04.jpg");
	background-size: cover;
	background-position: center center;
	filter: brightness(50%);
}
#wrap-topimg .ratio.topimg03 {
	background-image: url("/assets/img/top/mainimg05.jpg");
	background-size: cover;
	background-position: center center;
	filter: brightness(75%);
}
#wrap-topimg #cover {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	display: flex;
	justify-content: center;
	align-items: center;
}
#wrap-topimg .catch {
	text-align: center;
}
#wrap-topimg .catch .pr01 {
	color: #FFFFFF;
	font-size: 5vw;
	font-weight: bold;
	line-height: 1.2em;
	margin: 0;
}
#wrap-topimg .catch .pr02 {
	color: #FFFFFF;
	font-size: 4vw;
	font-weight: bold;
	line-height: 1.2em;
	margin: 0;
}
.contents_index {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.contents_index li {
	width: 23%;
	margin: 1%;
	background-color: #FFFFFF;
}
.contents_index .wrap-ratio { /* アスペクト比固定 */
	position: relative;
}
.contents_index .wrap-ratio::before { /* アスペクト比固定 */
	content: "";
	display: block;
	padding-top: 65%; /* 高さを幅の65%に固定 */
}
.contents_index .wrap-ratio.about {
	background-image: url("/assets/img/top/index_about.jpg");
	background-size: cover;
}
.contents_index .wrap-ratio.staff {
	background-image: url("/assets/img/top/index_staff.jpg");
	background-size: cover;
}
.contents_index .wrap-ratio.invisalign-go {
	background-image: url("/assets/img/top/index_invisalign-go.jpg");
	background-size: cover;
}
.contents_index .wrap-ratio.okss {
	background-image: url("/assets/img/top/index_okss.jpg");
	background-size: cover;
}
.contents_index .wrap {
	margin: 2vw;
}
.contents_index h2 {
	min-height: 3em;
}
.contents_index p {
	min-height: 3em;
}
/* -------------------- TOP end -------------------- */
/* -------------------- セミナー start -------------------- */
.index_seminar {
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
.index_seminar li {
	background-size: cover;
	background-position: center top;
	width: 23%;
	margin: 1%;
	height: 500px;
}
.index_seminar li.matsuokajuku {
	background-image: url("/assets/img/seminar/bnr_matsuokajuku02.jpg");
}
.index_seminar li.matsuokajuku_staff {
	background-image: url("/assets/img/seminar/bnr_matsuokajuku_staff.jpg");
}
.index_seminar li.consulting {
	background-image: url("/assets/img/seminar/bnr_consulting.jpg");
}
.index_seminar li.team {
	background-image: url("/assets/img/seminar/bnr_team.jpg");
}
.index_seminar .wrap {
	background-color: rgba(0, 0, 0, 0.20);
	height: 500px;
	position: relative;
}
.index_seminar .wrap .title {
	position: absolute;
	top: 30%;
	color: #FFFFFF;
	font-size: 1.8em;
	font-weight: bold;
	line-height: 1.5em;
	text-align: center;
	width: 100%;
	padding: 0 2%;
	box-sizing: border-box;
	height: 100px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.15);
}
@media print, screen and (max-width:1160px) {
	.index_seminar .wrap .title {
		height: auto;
		display: block;
	}
}
.index_seminar .wrap .summary {
	position: absolute;
	bottom: 0;
	box-sizing: border-box;
	width: 100%;
	height: 30%;
	padding: 1vh 2vw;
	background-color: rgba(0, 0, 0, 0.5);
	color: #FFFFFF;
	display: flex;
	align-items: center;
}
.index_seminar .matsuokajuku .wrap .summary {
	border-top: 3px solid #dfff45;
}
.index_seminar .matsuokajuku_staff .wrap .summary {
	border-top: 3px solid #ef7fff;
}
.index_seminar .consulting .wrap .summary {
	border-top: 3px solid #51beff;
}
.index_seminar .team .wrap .summary {
	border-top: 3px solid #51e6c3;
}
/*.index_seminar .matsuokajuku .wrap .summary {
	background-color: rgba(0, 97, 183, 0.5);
}
.index_seminar .matsuokajuku_staff .wrap .summary {
	background-color: rgba(99, 0, 102, 0.5);
}
.index_seminar .consulting .wrap .summary {
	background-color: rgba(99, 0, 102, 0.5);
}
.index_seminar .team .wrap .summary {
	background-color: rgba(99, 0, 102, 0.5);
}*/
@media print, screen and (max-width:1160px) {
	.index_seminar li {
		width: 100%;
		margin: 2vw 0;
		height: 300px;
	}
	.index_seminar .wrap {
		height: 300px;
	}
}
.lecture {
	font-size: 1.2em;
	letter-spacing: 0.1em;
	padding: 1em;
}
.list-select-seminar {
	max-width: 640px;
	margin: 1rem auto 3rem;
}
.list-select-seminar li {
	margin-bottom: 1rem;
	line-height: 1.5em;
}
.wrap-term {
	max-width: 600px;
	margin: 0 auto 2rem;
}
.wrap-term .arrow {
	width: 0;
	height: 0;
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
	border-bottom: 20px solid #F0F0F0;
	margin-left: 3rem;
}
.wrap-term .arrow {
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
	border-bottom: 20px solid #FFFFFF;
	margin: 0 auto;
}
.wrap-term .term {
	background-color: #FFFFFF;
	border-radius: 10px;
	margin: 0 1rem 2rem;
	padding: 1em;
	vertical-align: top;
}
.wrap-term ul {
	margin: 0;
	padding: 0 1rem;
	list-style: disc;
}
.wrap-term .term p {
	margin: 0 0 0.5rem;
}
.wrap-term .term p:last-child {
	margin-top: 1rem;
}
/* -------------------- セミナー end -------------------- */
/* -------------------- WP start -------------------- */
.article-footer {
	font-size: 0.9em;
	line-height: 2em;
	text-align: right;
}
.article-footer .date {
	color: #7BC41C;
	font-size: 12px;
}
.article-footer .category a {
	margin-left: 1em;
}
.article-footer .category a::before {
	content: "\f07b";
	font-family: 'Font Awesome 5 Free';
	font-weight: 400;
	margin-right: 0.2em;
	text-decoration: none;
}
.article-footer .author {
	display: flex;
	align-items: center;
}
.article-footer .author .author_pic img {
	width: 50px;
	height: 50px;
	border-radius: 25px;
	margin-right: 1em;
}
.article-footer .author .author_name {}
/* -------------------- WP end -------------------- */
/* -------------------- 個別スタイル start -------------------- */
input[type="text"], input[type="email"], input[type="tel"], input[type="password"], select, textarea {
	width: 100%;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
input, select, textarea {
	border: 1px solid #DDD;
	border-radius: 2px;
	padding: 0.5em;
	font-family: 'Lato', 'Noto Sans JP', sans-serif;
	font-feature-settings: 'palt';
	letter-spacing: 0.1em;
	color: #333;
	max-width: 640px;
}
input.compact, select.compact {
	width: 10em;
}
input.mini {
	width: 5em;
}
input.order-num, select.order-num {
	font-size: 1em;
	font-weight: bold;
	width: auto;
}
.hissu {
	display: inline-block;
	font-size: 0.7em;
	font-weight: normal;
	background-color: #d44d50;
	color: #FFF;
	padding: 0.3em;
	border-radius: 2px;
	margin-left: 0.5em;
	line-height: 1em;
}
.wrap_img {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
table.time {
	background-color: #FFFFFF;
	border: 2px solid #03173d;
	width: 100%
}
table.time tr {
	border-bottom: 1px dotted #CCC;
}
table.time tr:last-child {
	border-bottom: none;
}
table.time th, table.time td {
	padding: 1em;
	line-height: 1.5em;
	vertical-align: top;
}
table.time th {
	color: #00183D;
	text-align: left;
	white-space: nowrap;
}
table.time thead {
	border-bottom: 2px solid #03173d;
}
.mgnlr {
	margin-left: 2vw;
	margin-right: 2vw;
}
table.form {
	width: 94%;
	margin-left: 3%;
	margin-right: 3%;
}
table.form th, table.form td {
	padding: 0.5em;
	text-align: left;
	vertical-align: top;
	line-height: 1.5em;
}
table.form th {
	color: #00183D;
	width: 40%;
}
table.form td.clm2 {
	display: flex;
	justify-content: space-between
}
table.form td.clm2 input {
	width: 48%;
}
label.item {
	color: #00183D;
	font-weight: bold;
	padding: 0.7em 1.2em;
	margin-bottom: 0.6rem;
	border-radius: 20px;
	background-color: #FFF;
	display: block;
}
.price {
	color: #CD4951;
}
.position {
	font-size: 0.9em;
}
.problem {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}
.problem li {
	width: 44%;
	background-color: #717a88;
	color: #FFF;
	border-radius: 50px;
	margin-bottom: 2vh;
	padding: 2vh 2%;
	text-align: center;
	line-height: 1.5em;
	display: flex;
	justify-content: center;
	align-items: center;
}
@font-face {
	font-family: "matsuoka";
	src: url('/assets/font/matsuoka.woff'), url('/assets/font/matsuoka.woff');
}
.title-matsuokajuku {
	font-family: "matsuoka";
	font-size: 6vw !important;
}
ul.order_item {
	background-color: #FFFFFF;
	padding: 1em;
}
.order_item li {
	padding: 1vh 0;
	border-bottom: 1px dotted #CCC;
}
.order_item li:last-child {
	border-bottom: none;
}
.order_item .name {
	font-size: 1.1em;
	font-weight: bold;
	color: #00183D;
	line-height: 1.2em;
}
.order_item .box_price {
	text-align: right;
	padding: 1vh 0;
}
.order_item .box_order {
	text-align: right;
	padding: 1vh 0;
}
.brand {
	display: inline-block;
	background-color: #00183d;
	color: #FFF;
	padding: 0.5em;
	font-weight: normal;
	font-size: 0.8rem;
	line-height: 1em;
}
.brand.compact {
	font-size: 0.7rem;
	margin-bottom: 0.2em;
}
.em {
	font-size: 1.8em;
	margin: 0.3em;
	line-height: 1.5em;
}
/* -------------------- 個別スタイル end -------------------- */
/* -------------------- iOSでのデフォルトスタイルをリセット start -------------------- */
input[type="submit"], input[type="button"] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration, input[type="button"]::-webkit-search-decoration {
	display: none;
}
input[type="submit"]::focus, input[type="button"]::focus {
	outline-offset: -2px;
}
/* -------------------- iOSでのデフォルトスタイルをリセット end -------------------- */
/* ------ 1023px ---------------------------------------------------------------------------------- */
@media print, screen and (max-width:1023px) {
	#wrap-title:before { /* アスペクト比固定 */
		padding-top: 40%; /* 高さを幅の40%に固定 */
	}
	.display_mb {
		display: block;
	}
	#contact {
		height: 50px;
		right: 60px;
	}
	.btn_products, .btn_contact {
		height: 50px;
	}
	.contents_index li {
		width: 48%;
		margin: 1%;
	}
} /* max-width:1023px */
/* ------ 900px ---------------------------------------------------------------------------------- */
@media print, screen and (max-width:768px) {
	.slider#topimg img {
		height: 50vh;
	}
	section {
		margin-bottom: 4vh;
	}
	#contact {
		width: 320px;
		right: 60px;
	}
	br.tb {
		display: block;
	}
} /* max-width:768px */
/* ------ 600px ---------------------------------------------------------------------------------- */
@media print, screen and (max-width:600px) {
	body {
		font-size: 13px;
	}
	footer #fnav, footer #credit, footer #sns {
		display: none;
	}
	#wrap-topimg .ratio::before { /* アスペクト比固定 */
		padding-top: 80%; /* 高さを幅の80%に固定 */
	}
	#contents_head #title h1 {
		font-size: 5vw;
	}
	#contents_head #title .intro {
		font-size: 1em;
	}
	.clm2 {
		display: block;
	}
	.clm2 img {
		/*width: 100%;*/
		display: block;
		margin: auto;
	}
	.clm2.portrait img {
		max-width: 70%;
	}
	.box_products li {
		width: 100%;
	}
	.box_products.mbclm2 li {
		width: 40%;
		flex: auto;
	}
	.box_about_img .box {
		width: 50%;
	}
	div.pc {
		display: none;
	}
	br.pc {
		display: none;
	}
	br.mb {
		display: block;
	}
	#contact {
		width: 160px;
	}
	.btn_products, .btn_contact {
		font-size: 8px;
		text-align: center;
		letter-spacing: 0;
		flex-wrap: wrap;
		line-height: 1.2;
	}
	.btn_products::before, .btn_contact::before {
		margin-right: 0;
		width: 100%;
		height: 0;
		font-size: 15px;
		margin-bottom: 3px;
	}
	p.lead01 {
		text-align: left;
	}
	.box_subnav .seminar {
		flex-wrap: wrap;
	}
	.box_subnav li {
		width: 100% !important;
	}
	.list_partner li {
		width: 100%;
		margin: 5% 0;
	}
	.list_seminar_matsuokajuku li {
		width: 100%;
		margin: 2vw 0;
	}
	table.time thead {
		display: none;
	}
	table.time th, table.time td {
		display: block;
		padding: 0.5em 1em;
	}
	table.time td {
		margin-left: 1em;
	}
	table.form th, table.form td {
		display: block;
		width: 100%;
		box-sizing: border-box;
	}
	table.form td {
		padding-left: 1em;
		padding-right: 1em
	}
	.problem li {
		width: 100%;
		padding: 2vh 0;
	}
	img.portrait {
		max-width: 80%;
	}
	ul.tile.row2 li {
		width: 100%;
	}
	#wrap-title #cover #title h1 {
		font-size: 6vw;
	}
} /* max-width:600px */
/* ------ 400px ---------------------------------------------------------------------------------- */
@media print, screen and (max-width:400px) {
	#contact {
		width: 130px;
	}
} /* max-width:400px */
.ff-mj {
	/* font-family: 'HGP行書体', 'Lato', 'Noto Sans JP', sans-serif; */
	font-family: "matsuoka";
	/* font-size: 1.2em; */
}
.fs-120 {
	font-size: 1.2em;
}
.fs-150 {
	font-size: 1.5em;
}
#course_invi01, #course_invi02, #course_invi03, #course_clear01 {
	height: 150px;
	margin-top: -150px;
	/* background-color: blue; */
}
@media screen and (max-width: 767px) {
	#course_invi01, #course_invi02, #course_invi03, #course_clear01 {
		height: 60px;
		margin-top: -60px;
		/* background-color: blue; */
	}
}
/* --------------------
トップページ
インビザライン、クリアコレクトロゴマーク
----------------------*/
.logo-invi-imgbox {
	display: inline-block;
	width: 160px;
	margin-left: 30px;
}
.logo-invi-imgbox img {
	width: 100%;
	vertical-align: middle;
}
.logo-clear-imgbox {
	display: inline-block;
	width: 160px;
	margin-left: 30px;
}
.logo-clear-imgbox img {
	width: 100%;
	vertical-align: middle;
}
@media screen and (max-width: 767px) {
	.logo-invi-imgbox {
		display: block;
		margin-left: 0;
		margin-top: 20px;
	}
	.logo-clear-imgbox {
		display: block;
		margin-left: 0;
		margin-top: 20px;
	}
}
/* --------------------
松岡塾　セミナー・研修
挿入画像
----------------------*/
.seminar-imgbox {
	width: 90%;
	max-width: 400px;
	margin: 50px auto 10px auto;
}
.seminar-imgbox img {
	width: 100%;
	vertical-align: bottom;
}
/* --------------------
松岡塾挿入画像
----------------------*/
.cram-imgbox {
	width: 90%;
	max-width: 400px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 30px;
}
.cram-imgbox img {
	width: 100%;
	vertical-align: bottom;
}
/* --------------------
松岡塾　チームビルディング研修
挿入画像
----------------------*/
.team-2cimg {
	display: flex;
	justify-content: center;
	margin-top: 20px;
	margin-bottom: 15px;
}
.team-2cimg-imgbox {
	width: 48%;
	max-width: 400px;
	margin-left: 1%;
	margin-right: 1%;
}
.team-2cimg-imgbox img {
	width: 100%;
	vertical-align: bottom;
}
@media screen and (max-width: 767px) {
	.team-2cimg {
		flex-wrap: wrap;
	}
	.team-2cimg-imgbox {
		margin: 0;
		width: 90%;
	}
	.team-2cimg-imgbox:not(:last-child) {
		margin-bottom: 20px;
	}
	.team-2cimg-imgbox img {}
}