div.caption h2,
div.caption h3 {
	padding: 20px 5px 2px 20px;
	color: #114354 !important;
}
div.caption h2:before,
div.caption h3:before {
	font-family: "Font Awesome 5 Free";
	display: inline-block;
	line-height: 40px;
	position: absolute;
	padding: 0em;
	color: white;
	background: #EBBD28;
	width: 40px;
	text-align: center;
	height: 40px;
	line-height: 40px;
	left: -1.35em;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	border-radius: 50%;
	box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.29);
}
div.caption.light h2:before,
div.caption.light h3:before {
	content: "\f0eb";
	font-weight: normal;
}
div.caption.comment h2:before,
div.caption.comment h3:before {
	font-weight: 900;
	content: "\f27a";
}
div.caption.pin h2:before,
div.caption.pin h3:before {
	content: "\f08d";
	font-weight: 900;
}



/*括弧付き番号*/
ol.list-parentheses{
  padding:0 0 0 2em;
  margin:0;
}
 
ol.list-parentheses li{
  list-style-type:none;
  list-style-position:inside;
  counter-increment: cnt;
}
ol.list-parentheses li:before{
  display: marker;
  content: "(" counter(cnt) ") ";
}

.col_4{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_4 > div{
	width: 25%;
	padding: 0;
}
.col_3{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_3 > div{
	width: 33.33333%;
	padding: 0;
	/*padding: 10px;*/
}
.col_2{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_2 > div{
	width: 50%;
	padding: 0;
}

/* 講座一覧*/
.post_content .class-list p {
	line-height: 1;
}

/* メール商人のフォーム用 */
.tcolor001 .table {background-color: #eee;padding:0.5rem;}
.tcolor001 .th {    color: #000;font-weight: bold;margin-top: 1rem;padding:0.5rem;}
.tcolor001 .td {color: #333;}
 .tcolor001 .td label {
	 display:block;
	 line-height:1.5;
  }
 .tcolor001 .h2 {background-color: #9ad5fe;}
 .table .row {border-bottom: #888 dotted 1px;padding-bottom: 0.5rem;}
 .btn-center {text-align:center;padding:0.5rem;}
 .tcolor001 .button, .tcolor001 button, .tcolor001 input[type="submit"],
 .tcolor001 input[type="reset"],
 .tcolor001 input[type="button"] {
    color: #fff;background: #0779CA;border: 1px solid #0779CA;text-shadow: 0 1px rgba(0, 0, 0, 0.2);padding:1rem;}
.tcolor001 .button:hover,
 .tcolor001 button:hover,
 .tcolor001 input[type="submit"]:hover,
 .tcolor001 input[type="reset"]:hover,
 .tcolor001 input[type="button"]:hover {
color: #fff;background: #50BFAF;border: 1px solid #fe56aa;text-shadow: 0 -1px rgba(0, 0, 0, 0.4);}

div.post_content div.form-terms {
	width: 98%;
    height: 15rem;
    overflow-y: scroll;
    border: solid 1px gray;
	padding: 0.5rem;
	-webkit-overflow-scrolling: touch;
}

div.post_content .form-terms h4 {
	font-size: 84% !important;
}
div.post_content .form-terms p {
	font-size: 86% !important;
	line-height: 1.3 !important;
}

div.form-application {
	margin-top: 2rem;
}

div.form-application textarea {
	height: 4rem;
}

div.policy.box {
	border: 1px solid gray;
}

textarea.texta-h100 {
    height: 100px !important;
}

input.wpcf7-form-control.wpcf7-confirm.wpcf7c-elm-step1.wpcf7c-btn-confirm {
    background-color: darkgreen;
    color: whitesmoke;
    padding: 20px;
    font-size: larger;
}

input.wpcf7-form-control.wpcf7-submit.wpcf7c-elm-step2 {
    background-color: darkgreen;
    color: white;
    padding: 10px;
    font-size: larger;
}


.bx-shadow {
    box-shadow: 3px 3px 10px 0px #d2b48c;
}

/* 講座一覧 */
div.seminar-info {
    padding: 0.5rem;
    margin-bottom: 1rem;
    border: 1px #d2b48c solid;
}

/* 講師一覧 */
div.table-instructors,
div.table-seminars
{
    line-height: 1.5;
/*    margin: 0 5%;*/
}

div.table-instructors h3,
div.table-seminars h3 {
    font-size: 120%;
    border-left: 10px #BBB470 solid;
    padding: 10px;
    margin-bottom: 1rem;
}
div.table-instructors p,
div.table-seminars p {
    line-height: 1.5;
    margin-bottom: 0.5rem;
}
div.table-instructors p.seminar-message,
div.table-seminars p.seminar-message {
	margin: 1rem;
}

div.table-instructors table th,
div.table-instructors table td {
    border: 1px gray solid;
    padding: 10px;
    font-size: 110%;
}
div.instructor {
    padding: 0.5rem;
    margin-bottom: 1rem;
    border: 1px #d2b48c solid;
}
div.instructor div.basics{
    overflow:hidden;
    height: auto;
}
div.instructor div.basics div.name {
    float: left;
    padding: 3px;
    width: 20rem;
}

/* インストラクター一覧 */
div.instructor-list {
    
}

div.instructor-list.list-profile {
    
}
div.list-profile .profile-basic {
    line-height: 1.5;
    min-width: initial;
    min-width: auto;
}

span.badge {
    display: inline-block;
    font-size: 80%;
    font-family: san-serif;
    padding: 3px;
    margin: 3px 3px 3px 0;
}
span.badge.leader {
    background: #FFE53F;
}
span.badge.master {
    background: #CBED7B;
}
span.badge.instructor {
    background: #3DD8C2;
}

div.profile-photo-s {
    margin-top: 1rem;
}
div.profile-photo-s img {
    max-width: 150px;
    max-height: 150px;
}
.list-profile div.profile-photo-s img {
    width: 150px;
    height: 150px;
	object-fit: cover;
}

/* プロフィール画面 */
div.instructor-profile  {
    font-size: 16px;
    line-height: 1.8;
    margin:1rem;
}
div.instructor-profile h2 {
    font-size: 20px;
    text-align: center;
}
div.instructor-profile div  {
    margin:1rem;
}

div.instructor-profile .profile-header {
    overflow:auto;
}

div.instructor-profile .profile-photo {
    max-width: 320px;
    float: left;
}

div.instructor-profile .profile-photo img {
    max-width: 300px;
    max-height: 300px;
}

div.profile-basic {
    padding: 1rem;
    width: auto;
    overflow: hidden;
    min-width: 200px;
}

div.profile-name h3 {
	font-size: 14pt;
}

div.profile-separator {
    border-bottom: 1px gray solid;
    margin: 2rem;
}

span.button,
a.button {
    font-family: "Yu Gothic", YuGothic;
    display: inline-block;
    padding: 0 1em;
    text-decoration: none;
    color: #026602;
    border: solid 2px #026602;
    border-radius: 3px;
    transition: .4s;
}

span.button:hover,
span.button a:hover,
a.button:hover {
    text-decoration: none;
    background: #026602;
    color: white;
}

span.button.btn-m,
a.button.btn-m {
    padding: 0.5rem 2rem; 
}

.bg-green {
    background-color: #026602; 
}

.bg-forestgreen {
    background-color: forestgreen !important;
    border-color: forestgreen !important;
    color: white !important;
}
a.button.bg-forestgreen :hover {
    text-decoration: none;
    background: darkgreen !important;
    color: lightyellow !important;
}
.bg-rosybrown {
    background-color: rosybrown !important;
    border-color: rosybrown !important;
    color: white !important;
}
a.button.bg-rosybrown:hover {
    text-decoration: none;
    background: indianred !important;
    color: lightyellow !important;
}

span.form-link-inquiry {
	font-weight: bold;
    background-color: #ffe3c8;
}

.pc #global_menu.mmlounge ul ul a:hover {
    background-color: #6f59bf !important;
}
.mmlounge-template-default #header_image .image img {
    max-width: 100% !important;
    object-fit: cover;
}
.pc .mmlounge-template-default #header_image .image img {
	height: 320px;
}}

mmlounge-template-default #return_top a:hover {
    background-color: #1B0081;
}

/* 講座一覧 */
div.tab-seminars {
	margin-bottom: 1rem;
}
div.tab-seminars:after {
    content: "";
    width: 100%;
    height: 1px;
    background: forestgreen;
    display: block;
    margin-top: -1px;
}
span.tab {
    font-family: "Yu Gothic", YuGothic;
    display: inline-block;
    padding: 0 1em;
    text-decoration: none;
    color: #026602;
    border: solid 1px #026602;
    /*border-radius: 3px;*/
    transition: .4s;
    cursor: pointer;
    padding: 0.5rem 1.1rem;
}

span.tab.bg-forestgreen {
    background-color: forestgreen !important;
    color: white !important;
}
span.tab.bg-forestgreen.hidden {
    background-color: white !important;
    color: forestgreen !important;
}
span.tab.bg-forestgreen.hidden:hover {
    background-color: forestgreen !important;
    color: white !important;
}
span.second-subtitle {
	margin-right: 1rem;
}
span.btn-booked {
    font-family: "Yu Gothic", YuGothic;
    display: inline-block;
    padding: 0.5rem 2rem;
    color: #df0c0c;
    border: solid 2px #df0c0c;
    border-radius: 3px;
}
span.badge-tag {
    font-size: 12px;
    font-family: san-serif;
    background: #4169e1;
    color: white;
    padding: 2px 10px;
    border-radius: 6px;
    margin-left: 0.5rem;
    text-wrap: nowrap;
    /*vertical-align: baseline;
	display: inline-block;*/
}
span.badge-master {
    font-size: 12px;
    font-family: san-serif;
    background: #fff;
    color: #4169e1;
    padding: 2px 10px;
    border-radius: 6px;
    margin-left: 1rem;
	border: 2px #4169e1 solid;
    /*vertical-align: baseline;
	display: inline-block;*/
}

@media screen and (min-width: 970px) {
    a.menu_button span {display:none;}
}

@media screen and (max-width: 970px) {
    .col_4 > div,
    .col_3 > div {
        width: 50%;
    }
}

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

@media screen and (max-width:620px) {
    div.instructor div.basics div.name {
        width:100%;
    }
    div.instructor-profile div  {
	margin:0;
    }
    .col_4 > div,
    .col_3 > div,
    .col_2 > div
    {
        width: 100%;
    }
}
