@charset "utf-8";

.lh18{
line-height: 1.8;
}
.lh20{
line-height: 2.0;
}
.letter-1 {
	letter-spacing: -1px;
}

.font14{font-size: 14px;}
.subT0 {
	font-size: 130%;
	color: #333;
	letter-spacing: 1px;
	font-weight: bold;
	background: #333;
	padding: 8px !important;
	width: 300px !important;
	text-align: center;
}
.subT0.w200 {width: 200px !important; box-sizing: border-box;}
.subT0 a {color: #fff !important;}
.subT1 {
	font-size: 25px;
	color: #333;
	letter-spacing: 1px;
	font-weight: bold;
	line-height: 1.4;
	padding-top: 20px !important;
}


.subT2 {
	font-size: 200%;
	color: #333;
	letter-spacing: 1px;
}
.subT3 {
	font-size: 22px;
	color: #333;
	letter-spacing: 0px;
	padding-top: 4px !important;
}
.t_indent2 {text-indent:2em;}
/*.margL2em {margin-left:2em;}*/

.h3 {
	font-size: 20px;
	margin-bottom: 1.5em;
	display: inline-block;

}
.h3 span {
	display: inline-block;
	background: linear-gradient(transparent 65%, #9ed0bd 0%);
}


.padb5 {padding-bottom: 5px !important;}
.padb10 {padding-bottom: 10px !important;}
.padb20 {padding-bottom: 20px !important;}
.padb30 {padding-bottom: 30px !important;}
.padR30 {padding-right: 30px;}
.des {padding: 10px 0 !important;font-size: 120%;}
.des2 {padding: 10px 0 !important;font-size: 150%;}
.bar1 {
	display: block;
	height: 1px;
	background: #ccc;
	border: 0;
	margin: 0px 0 20px;
}
body {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	line-height: 1.5;
	color: #ffffff;
}
img.w100 { width: 100%; height :auto;}
img.w100.m933 { max-width: 933px;}
img.max250 { max-width: 250px;}

.slider { clear: both; }
.slick-prev::before, .slick-next::before { color: #fff; opacity: .22; }/* color: white */
.slick-prev {left: 0px; z-index: 1;}/* -25px; */
.slick-next {right: 0px;}/* -25px; */
.slick-prev, .slick-next { width: 30px; height: 30px; margin-top: -15px; }/* width: 20px;height: 20px;margin-top: -10px; */

.slick-dots li.slick-active button::before {color: #000;}/* color: black */
.slick-dots li button::before {font-size: 8px;color: #000;}/* font-size: 6px;color: black */

.w220{width: 220px;}
.w300{width: 300px;}

ul.col2 {
	font-size:0; letter-spacing:normal;/* empty space */
	box-sizing: border-box; 
	width: 100%; margin: 0 auto;
}
ul.col2.marginT5 {margin: 5px auto 0;}
ul.col2.w55p {width: 55%; }
ul.col2.w60p {width: 60%; }
ul.col2.w65p {width: 65%; }
ul.col2.w75p {width: 75%; }

ul.col2 li {
	font-size:12px; display: inline-block; box-sizing: border-box;
	width: calc(50% - 10px); vertical-align: top;
}
ul.col2 li.spa {width: 20px;}
ul.col2 li img { width: 100%; height :auto; max-width: 300px;}

.mid_c_txt {color: #333;font-size:14px; }
#mid_c P.center {color: #333;}


/*.remodal */
.remodal {max-width: 800px !important; min-width: 300px;}
.remodal.w90 {max-width: calc(100% - 20px) !important;}
.remodal.w60 {max-width: 500px !important;}

.remodal[data-remodal-id="modal2"]{max-width: 1200px !important;}
.remodal[data-remodal-id="modalLandscape"]{max-width: 2000px !important;}


.remodal .img_box img {
	margin: 0 auto 5px;
	width: 100%; height :auto;
}
.remodal .img_box {
	position: relative;
}
.remodal .img_box:after {
	content: url(./images/blank.gif);
	width: 100%; height: 100%;
	top: 0; left: 0;
	position: absolute;
	z-index: 10001;
	opacity:0.4; /*background: #ff0000;*/
}
a.mag {
	position: relative;
}
a.mag:after {
	content: url(./images/magnifier_on.png);
	width: 17px; height: 17px;
	bottom: 10px; right: 6px;
	position: absolute;
	z-index: 2;
	opacity:0.8;
}
.lineh15{line-height: 1.7;}


/* flex */
.parent0 {
	display: flex;
	align-items: stretch;
}
.parent0 .children {
	flex: 1 1 0%;
	/*margin: 5px;*/
	text-align: center;
	font-size: 117%;
}
.parent0 .children.flex2 {
	flex: 1 1 200px;
}
.parent0 .children.flex3 {
	flex: 1 2 422px;
}
.parent0 .children.flex4 {
	flex: 2 1 200px;
}
.parent0 .children img {
	width: 100%; height :auto; max-width: 906px;
}
.parent0 .children ul.flex {
	display: flex;
	align-items: stretch;
	list-style-type: none;
	margin: 0; padding: 0;
}
.parent0 .children ul.flex li {
	margin: 0 0px 10px 20px;
}




/* flex col3 */
ul {list-style: none;}
.flex.col3 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	/*align-items: stretch;*/
	width: 100%; 
}
ul.flex.col3 li {width: calc(33.3% - 10px);}
ul.flex.col3 li.c3w2 {width: 64%;}
ul.flex.col3 li img {
	width: 100%; height :auto; max-width: 906px;
}
ul.col3.marginT5 {margin: 5px auto 0;}

.col5flex {
	display: flex;
	justify-content: space-between;
	/*align-items: stretch;*/
	width: 100%;
	gap: 10px;
}
.col5flex > div {width: 20%;}
.col5flex > div img {
	width: 100%; height :auto;
}
.col4flex {
	display: flex;
	justify-content: space-between;
	flex-wrap: unset;
	width: 100%;
	gap: 15px;
}
.col4flex > div {width: 20%;}
.col4flex > div.fir {width: 40%;}
.col4flex > div img {
	width: 100%; height :auto;
}

.col3flexP2 {
	display: flex;
	justify-content: space-between;
	width: 100%;
	gap: 20px;
}
.col3flexP2 > div.l {width: 26%;}
.col3flexP2 > div.mid {width: 42%;}
.col3flexP2 > div.r {width: 32%;}
.col3flexP2 > div img {
	width: 100%; height :auto;
}

/* overwrite layout1.css */
.mid_c_txt {
  padding: 0px;
}
/*.fBox{
	display: flex;
}
.fBox .f1{
	width: 228px; 
}
.fBox .f2 {
	width: calc(100% - 248px);
	margin-left: 20px;
	display: flex; flex-wrap: wrap;
}
.fBox .f2 .ele {
	width: calc(50% - 10px);
}
.fBox .f2 .ele:nth-child(even) {
	margin-left: 20px;
}
*/
.mid_c_txt p.red{color: #ff0000;}
.font13{font-size: 13px; color: #333;line-height: 1.6;}
.font13.waku{
	margin-right: 40px;
	width: calc(100% - 340px);
	box-sizing: border-box;
	margin-bottom: 30px;
}
.fBox {
	display: flex;
	justify-content: space-between;
}
.fBox .left{
	width: 200px;
	margin-right: 40px;
}
.fBox p {
	font-size: 15px; font-weight: bold;
}
.fBox .col2{
	width: calc(100% - 30px);
}


.col2flex, .col3flex, .col2flexT {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 20px;
}
.col4flex img.h1000 {
	width: auto; height :500px;
}
img.w100p { width: calc(100% - 50px); height :auto; max-width: 580px;}
img.w50p { width: 35%; height :auto; max-width: 200px;margin: auto;}
.next58.p5 {padding-right: 30px;}
.next58.p7 {
  float: none; margin-left: 0;text-align: right;
}
section.SP{display:none;}

.col2flex .ele {
	width: calc(50% - 20px);
}


.col2flex.center {
	max-width: 80%;
	justify-content: center;
	align-items: center;
	gap: 30px;
	margin: auto;
}


.col3flex .ele {
	width: calc(33.33% - 20px);
}
.col3flex.center {align-items: center;}

.col2flexT .ele.L {
	width: 43.5%;
}
.col2flexT .ele.R {
	width: calc(56.5% - 30px);
	margin-left: 30px;
}
p.next54 img.w100 { width: 100%; height :auto; max-width: 970px;}
p.next54 img.w100.max460 { width: 100%; height :auto; max-width: 460px;}


.col2flex73 {
	display: flex;
	justify-content: space-between;
	margin: 0 auto 20px;
	max-width: 750px;
	gap: 30px;
}
.col2flex73.a .l {
	width: 30%;
}
.col2flex73.a .r {
	width: 70%;
}
.col2flex73.b {
	max-width: 480px;
}
.col2flex73.b .l {
	width: 50%;
}
.col2flex73.b .r {
	width: 50%;
}


.w80p {
	width: calc(80% + 30px);
	margin: 0 auto 10px;
}

/* flex col2 */
ul.flex.col2 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
ul.flex.col2 li:nth-child(1) {
	width: calc(47% - 20px); padding-right: 20px;
}
ul.flex.col2 li:nth-child(2) {
	width: 53%;
}
ul.flex.col2 li img {
	width: 100%; height :auto; max-width: 906px;
}
ul.flex.col2 li.c3w1 {width: 100%;}
.waku {
	border: 1px solid #ccc;
	padding: 10px;
}

/* grid layout */
.flex3 {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
/* grid layout */
.grid-container {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 50px;
	/*max-width: 720px;*/
	margin: auto;
}
.gArea {
	display: flex;
	justify-content: center;
	align-items: center;
}



.left {float: left; margin-right: 20px;}
.right {float: right; margin-left: 20px;}
.clearB {clear: both;}
.padt10{padding-top: 10px;}


img.max500 { width: 100%; height :auto; max-width: 500px;}
img.max600 { width: 100%; height :auto; max-width: 600px;}
.max700 {
	max-width: 700px;
	margin: auto;
}

p.event {
	font-size: 20px; font-weight: bold;
	text-align: center;color: #396a57;
	padding: 40px 20px 0px 20px;
}
/* 50周年記念連続講座 */
#mid_d {
	padding: 50px 20px 20px 20px;
	overflow: auto;
	/*color: #444;*/
	margin: 40px auto 50px;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
.parenthesis {
	position: relative;
	max-width: 300px;
	padding: 15px 15px;
	box-sizing: border-box;
	margin: 0 auto 30px;
}
.parenthesis p {
	font-size: 24px; font-weight: bold;
	text-align: center;color: #396a57;
}
.parenthesis p span.f16{
	font-size: 16px; 
}
.parenthesis p span.bg{
	background: #dfece7;font-size: 20px; 
}
.parenthesis::before,
.parenthesis::after {
	position: absolute;
	top: 0;
	content: '';
	width: 20px;
	height: 100%;
	border-top: 1px solid #396a57;
	border-bottom: 1px solid #396a57;
	box-sizing: border-box;
}
.parenthesis::before {
	left: 0;
	border-left: 1px solid #396a57;
}
.parenthesis::after {
	right: 0;
	border-right: 1px solid #396a57;
}
.waku_d {
	border: 1px solid  #ccc;
	padding: 10px;font-size: 15px;
	display: inline-block; font-weight: bold;
	margin: 0 auto 20px;
	color: #444;text-align: left;
}
#mid_d .des {
	line-height: 2.0; font-size: 16px; 
	margin-bottom: 0px;color: #444;
}
#mid_d .box {
	display: flex;
	/*justify-content: space-between;
	align-items: center;*/
	margin-top: 20px;
	box-shadow:0px 0px 6px 0px #999;
}
#mid_d .box .l {
	width: 74px;
	background: #dfece7;
	display: flex;
	justify-content: center;
	align-items: center;
}
#mid_d .box .l p {
	font-size: 22px; font-weight: bold;
	text-align: center;color: #396a57;
	line-height: 1.0;
}
#mid_d .box .l p span {
	font-size: 17px;
	letter-spacing: 2px;
	line-height: 28px;
	display: inline-block;
}

#mid_d .box .r {
	width: calc(100% - 74px);
	padding: 15px;
	font-size: 15px; 
}
#mid_d .box .r .ti {
	font-size: 18px; font-weight: bold;color: #396a57;
	margin-bottom: 14px;
	line-height: 1.4;
}
#mid_d .box .r .tx {
	color: #444;
}
#mid_d .box .r .ti span{font-size: 16px; }
#mid_d .box .r .ti span i {font-size: 15px; }

#mid_d .box .r .mail {
	text-align: right;
	padding-top: 10px;
}
#mid_d .box .r .mail a{
	font-size: 14px;
	color: #396a57;background: #dfece7;
	font-weight: bold;
	border: 1px solid #396a57;
	padding: 4px 10px;
}
#mid_d .box.wide .l {width: 120px;}
#mid_d .box.wide .r {width: calc(100% - 120px);}
#mid_d .box.wide .l p {line-height: 1.6;}

/* button */
.button1{text-align: center;}
.button1 a{
	font-size: 16px;
	color: #396a57;background: #dfece7;
	font-weight: bold;
	border: 1px solid #396a57;
	padding: 16px 20px;
}

a.pdf {
    font-size: 12px;
    color: #396a57;
    background: #dfece7;
    font-weight: bold;
    border: 1px solid #396a57;
    padding: 4px 10px;
	margin-top: 20px;
	display: inline-block;
}

/* Copy protection */
img {
	/*pointer-events: none; */
	-webkit-touch-callout:none;
	-webkit-user-select:none;
	-moz-touch-callout:none;
	-moz-user-select:none;
	touch-callout:none;
	user-select:none;
}

#mid_e {
	display: flex;
	justify-content: space-between;
}


/*
for tablet
================================================================== */
@media screen and (max-width: 974px){
	
	/* about_index_rwd.html固有 */
	.sub {padding: 10px 10px 0px 10px;}
	#mid_c {padding: 10px 10px 10px 10px;}
	#mid_e {padding: 10px 10px 10px 10px;}
	.padL30 {padding-left: 10px;}
	.col4flex img.h1000 {height :450px;}
	.next58.p5 {padding-right: 10px;}
	#mid_e {display: block; text-align: center;}
	#mid_e a {display: block;padding-bottom: 10px;}
}
@media screen and (max-width: 900px){
	img.w100p {width: calc(100% - 30px);max-width: 500px;}
}
@media screen and (max-width: 840px){
	img.w100p {width: calc(100% - 20px);max-width: 460px;}
}
@media screen and (max-width: 800px){
	img.w100p {width: calc(100% - 10px);max-width: 420px;}
	img.h1000 {height :400px;}

	/*.grid-container {
	grid-template-areas:"grid1 grid1 grid1" "grid2 grid2 grid2" "grid3 grid3 grid3";}
	.grid-containerB {
	grid-template-areas:"grid4 grid4 grid4" "grid5 grid5 grid5" "grid6 grid6 grid6";}
	.next67.p1, .next67.p4 {text-align: center;}
	.grid-area1, .grid-area2, .grid-area4, .grid-area5 {margin-bottom: 2em;}*/
}


@media screen and (max-width: 768px){
	a.mag:after {content: '';}
	a.mag {pointer-events: none;}
	section.PC{display:none;}
	section.SP{display:block;}
	section.SP .col2flexSP {display: flex;justify-content: center;}
	section.SP .col2flexSP div:nth-child(1){padding-right: 30px;}
	img.h1000 {height :300px;}
	img.w100p { width:100%; max-width: 100%;}
	img.w50p { width: 100%; max-width: 300px;}
	.grid-container {grid-template-columns: 1fr;}
	.grid-container div:nth-child(1) {margin-bottom: 20px;}

	.col3flexP2 {display: block;}
	.col3flexP2 > div.l, .col3flexP2 > div.r {width: 100%;}
	.col3flexP2 > div.l img, .col3flexP2 > div.r img {max-width: 200px;}
	.col3flexP2 > div.mid {width: 100%; margin: 1em auto;}
	.col3flexP2 > div.l .next72, .col3flexP2 > div.r .next72 {text-align: center;}

	.col2flex73 {flex-wrap: wrap;}
	.col2flex73.a .l {max-width: 480px;margin: auto;}
	.col2flex73.a .l, .col2flex73.a .r, .col2flex73.b .l, .col2flex73.b .r{width: 100%;}
}
@media screen and (max-width: 760px){
	#mid_d .box .r .ti span.spBlock{display:block;}
	.col2flexSP img.h1000 {height :390px;}
}
@media screen and (max-width: 740px){
	.subT1 {font-size: 220%;}
	.subT2 {font-size: 170%;}
	.subT3 {font-size: 130%;}
	.col2flexSP img.h1000 {height :360px;}

}
@media screen and (max-width: 700px){
	.right {float: none; margin-left: 0px;}
	.col2flexSP img.h1000 {height :320px;}
}
@media screen and (max-width: 640px){
	ul.col2 {width: auto;}
	ul.flex.col2 {display: block;}
	ul.flex.col2 li:nth-child(1) {width: auto;padding-right: 0;}
	ul.flex.col2 li:nth-child(2) {width: auto;padding-top: 20px;}
	.fBox{display: block;}
	.fBox .f1 {margin: 0 auto;text-align: center;}
	.fBox .f2, .fBox .f3 {width: auto;margin-left: 0;text-align: center;}
	.fBox .f2 img, .fBox .f3 img {max-width: 300px;margin: 0 auto;}
	/*#mid_e {padding: 10px 10px 10px 10px;}*/
	#mid_d {padding: 50px 10px 10px 10px;}
	
	.col2flex, .col3flex, .col2flexT {display: block;}
	.col2flex .ele, .col3flex .ele {width: auto;}
	.col3flex .ele:not(:last-child) {padding-bottom: 1em;}
	.col3flex .ele p:nth-child(2) {font-size: 13px;}
	.letter-1 {letter-spacing: 0px;}

	.col2flex.center .ele.sp {margin: 0 auto 30px;}
	.col2flex.center .ele {
		width: auto;margin-left: 0;margin-right: 0;
	}
	.col2flex.center .ele.L{margin-right: 0px;margin-bottom: 20px;}

	.col2flexT .ele.L {width: auto;}
	.col2flexT .ele.R {width: auto; margin-left: 0;}
	.w80p {width: auto;margin: 0 auto 10px;}
}
@media screen and (max-width: 630px){
	.margL2em {
		text-align:left;
	}
	.parent0 {display: block;}
	.max200 {max-width: 200px !important;}
	.parent0 .children ul.flex li {margin: 10px 0px 0px 0px;}
	.parent0 .children ul.flex li:first-child {margin-right: 10px;}

	.h3 {font-size: 18px;}
}
/*
for smartphone
================================================================== */
@media screen and (max-width: 580px){
	.no_sp {display: none;}
	.padL30 {padding-left: 0px;}
	.padL50 {
		padding-left: 0px !important;
	}
	.w300{margin: 0 auto;}
	.float_r {float: none;}
	.subT1 {font-size: 200%;}
	.subT2 {font-size: 140%;}
	.subT3 {font-size: 110%;}
	.font13.waku{margin-right: 0px;width: auto;}
	.mid_c_txt {padding: 10px 0px 10px 0px;}
	.lineh15{line-height: 1.3;}
}
@media screen and (max-width: 579px){
	img.w500 { width: 100%;}
	
}
@media screen and (max-width: 500px){
	.flex.col3 {display: block;}
	.flex.col2 {display: block;}
	ul.flex.col3 li.c3w2 {width: 100%;}
	ul.flex.col3 li, ul.flex.col2 li {width: 100%;}

	.parenthesis p {font-size: 20px;}
	.parenthesis p {font-size: 18px;}
	#mid_d .box .r .ti {font-size: 16px;}
	#mid_d .box .l {width: 70px;}
	#mid_d .box .r {width: calc(100% - 70px);padding: 12px;}
	#mid_d .box .l p {font-size: 20px;}
	#mid_d .des {line-height: 1.8; font-size: 15px;}
	.waku .font15.lh20{font-size: 15px;line-height: 1.8;}
	.subT1 {font-size: 180%;}
	.h3 {font-size: 16px;letter-spacing: -1px;}
}
@media screen and (max-width: 400px){
	ul.col2 li {display: block; width: 100%; text-align:center;}
	ul.col2 li.l {text-align: left;}
	ul.col2 li.spa {display: none;}
	ul.col2 li img {margin: 0 auto;}
	.parent0 .children ul.flex {display: block;}
	.parent0 .children ul.flex li {margin: 0 0px 10px 0px;}
	.parent0 .children ul.flex li:first-child {margin-right: 0px;}

	.h3 {font-size: 15px;letter-spacing: -2px;}
}
@media screen and (max-width: 340px){
	.flex.col3 {display: block;}
	ul.flex.col3 li {width: 100%;}
}
