@charset "UTF-8";
html {
scroll-behavior: smooth;
}
#voice {
  margin-top:-130px;
  padding-top:130px;
}
@media (max-width: 767px) {
#voice {
  margin-top:-50px;
  padding-top:50px;
}
}
/* 基本色 */
:root {
	--main-color: #5D9AB2;
	--accent-color: #BF6A7A;
	--dark-main-color: #c2bd6c;
	--text-bright-color: #fff;
	--icon-color: #fff;
	--icon-bk-color: #ddd;
	--gray-color: #ddd;
}

.line_color_bak {
  color: #32cb56;
  font-size: 1.25em;
}
.line_color,
.instagram_color {
display: inline-block;
  width: 1.25em;
height: 1.25em;
vertical-align: middle;
margin-right: 0.3em;
}


.ribbon {
  display: inline-block;
  position: relative;
  height: 60px;/*高さ*/
  line-height: 60px;/*高さ*/
  text-align: center;
  padding: 0 40px 0 18px;/*文字の左右の余白*/
  font-size: 20px;/*文字サイズ*/
  background: #ff0000;/*背景色*/
  color: #fff;/*文字色*/
  box-sizing: border-box;
}

.ribbon:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}

.ribbon:after {
  top: 0;
  right: 0;
  border-width: 30px 15px 30px 0px;
  border-color: transparent #f9e0bc transparent transparent;
  border-style: solid;
}

.fukidashi-01-12 {
  display: flex;
  justify-content: left;
  align-items: center;
  gap: 10px;
  padding: 1rem 12px 0;
color: #666;
margin-left: 0;
font-size: 0.85rem;
font-weight: 300;
}

@media screen and (max-width: 600px) {
    .fukidashi-01-12 {
      justify-content: center;
    }
}
.fukidashi-01-12::before {
  content: "";
  width: 20px;
  height: 1px;
  transform: rotate(60deg);
  box-sizing: border-box;
  background-color: #bab9b9;
}
.fukidashi-01-12::after {
  content: "";
  width: 20px;
  height: 1px;
  transform: rotate(-60deg);
  box-sizing: border-box;
  background-color: #bab9b9;
}


.paratop {
	margin-top: 0.5rem;
	margin-bottom: 18px;
	font-size: 0.9em;
	line-height: 1.7em;
	text-align: left;
  text-align: justify;
  text-justify: inter-ideograph;
}


.flex_photo {
  display: flex; /*横並び*/
	margin-bottom: 2rem;
}
.flex_photo .image{
  width: 160px; /*画像サイズ指定*/
	height: 160px;
  margin: 0;
  padding: 0;
}

.flex_photo .image img {
  width: 100%;
	min-width: 160px;
  height: auto;
}
.flex_photo .right {
  margin: 0 0 0 20px;
  padding: 0;
}
.flex_photo .title {
  margin: 0;
  padding: 0;

  font-weight: bold;
  font-size: 1.25rem;
}
.flex_photo .text {
  margin: 10px 0 0;
  padding: 0;
}
@media screen and (max-width: 500px){
.flex_photo {
  display: inline-block;; /*横並び*/
	}
	.flex_photo .image{
	  width: 160px; /*画像サイズ指定*/
	  margin: 0 auto;
	  padding: 0;
	}
	.flex_photo .image img {
	  width: 100%;
		min-width: 160px;
	  height: auto;
	}
	.flex_photo .title {
	  margin: 0.5rem auto;
	  text-align: center;
	}
.flex_photo .right {
	margin: 0 5% 0 5%;
	padding: 0;
	}

}

.accordion-006 {
		width: 100%;
    max-width: 1000px;
 margin: 0 auto;
    margin-bottom: 7px;
    background-color: #f2f2f2;
    border-radius: 5px;
}

.accordion-006 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1rem;
    color: #333333;
    font-weight: 700;
		font-size: 1rem;
    cursor: pointer;
		max-width: 1000px;
}

.summary_title {
	max-width: 90%;
}


.accordion-006 p {
  margin-bottom: 15px;
  line-height: 1.7em;
}
.accordion-006 figure {
  float: right;
  margin: 0.5rem 2rem 0 1rem;
  width: 30%;
max-width: 200px;
}
.accordion-006 figure img {
  width: 100%;

}

.accordion-006  .resizeimage2 img {
display: flex;
align-items: center;
	width: 50%;
margin: 0 2rem;
text-align: center;
}

@media (max-width: 600px) {
.accordion-006  .resizeimage2 img {
	width: 85%;
	height: auto;
margin: 0 2rem;
}
}

.font-weight_normal {
	font-size: 0.85rem;
	font-weight: 300!important;
	margin-left: 0.25rem!important;
}

.accordion-006 summary::-webkit-details-marker {
    display: none;
}

.accordion-006 summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 1rem;
    border-bottom: 3px solid #c2c2c2;
    border-right: 3px solid #c2c2c2;
    content: '';
    transition: transform .3s;
		z-index: 1;
}

.accordion-006[open] summary::after {
    transform: rotate(225deg);
		z-index: 10000;
}

.accordion-006 p {
    transform: translateY(-10px);

    opacity: 0;
    margin: 0;
    padding: .3em 2em 1.5em;
    color: #333333;
    transition: transform .5s, opacity .5s;
}


.accordion-006 p .padding_bottom_0{
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: .3em 2em 1.5em;

    color: #333333;
    transition: transform .5s, opacity .5s;
}

.accordion-006[open] p {
    transform: none;
    opacity: 1;
}
.topspace{
	text-indent : 1em;
}

/*PCのみbrを効かせる*/
@media screen and (max-width: 767px){
.br-PC {display: none; }
}

/* 基本設定： フォントサイズ */
/* 横幅小さい画面 */
@media (max-width: 767px) {
	:root {
		font-size: 14px;
	}
}
/* 縦幅小さい画面　スマホのランドスケープ対応 */
@media (max-height: 414px) {
	:root {
		font-size: 14px;
	}
}
/* 横幅大きい画面 */
@media (min-width: 768px) {
	:root {
		font-size: 16px;
	}
}

@media screen and (min-width: 768px) {
	/* br.sp_brはタブレット以上のサイズでは非表示にする */
  .sp_br{
    display: none;
  }
}

@media screen and (min-width: 400px) {
	/* br.sp_brはタブレット以上のサイズでは非表示にする */
  .sp_br_400{
    display: none;
  }
}

@media screen and (max-width: 767px) {
.conTOP	h1 {
		padding: 0;
	}
}

@media screen and (max-width: 600px) {
.conTOP	h1 {
		text-align: left!important;
	}
}



h3 {
	margin-top: 0;
	margin-bottom: 0;
	font-size: 1rem;
	text-align: center;
	font-weight: bold;
}

.title_price {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-size: 1rem;
  text-align: left!important;
  font-weight: bold;
}

p {
	margin-top: 0;
	padding-bottom: 0.2rem;
	padding: 0;
	font-size: 1rem;
	line-height: 1.7;
	text-align: justify;/* テキスト両端揃え */
	text-justify: inter-ideograph;/* テキスト両端揃え */
}

.padding_bottom_0_5 {
  padding-bottom: 0.75rem!important;/*conTOPとナビの間を空ける*/
}

.donemark {
	display: inline-block;
	width: auto;
	margin-top: 0;
	margin-bottom: 4px;
	padding: 0 4px;
	border-radius: 0.5em;
	background-color: #666;
	color: #fff;
	font-size: 0.7em;
	text-decoration: none;
	text-align: center;
	vertical-align: middle;
	width: 7em;
}

.tokyomark {
	display: inline-block;
	width: auto;
	padding: 0 4px;
	border-radius: 0.5em;
	border: solid 1px #32539e;
	background-color: #6d8cd3;
	color: #fff;
	font-size: 0.85em;
	text-decoration: none;
	text-align: center;
	vertical-align: middle;
		width: 7em;
}

.hokkaidomark {
	display: inline-block;
	width: auto;
	padding: 0 4px;
	border-radius: 0.5em;
	border: solid 1px #3e7351;
	background-color: #e6c9e4;
	color: #fff;
	font-size: 0.85em;
	text-decoration: none;
	text-align: center;
	vertical-align: middle;
	width: 7em;
}

.onlinemark {
	display: inline-block;
	width: auto;
	padding: 0 4px;
	background-color: #fff;
	color: #000;
	font-size: 0.7em;
	font-weight: 300;
	text-decoration: none;
	text-align: center;
	vertical-align: middle;
	width: 7em;
	border: solid 1px #ccc;
}

.onlinemark_B {
	display: inline-block;
	width: auto;
	padding: 0 4px;
	background-color: #fff;
margin-top: 0.25rem;
margin-bottom: 0.25rem;
margin-right: 0.25rem;
	color: #000;
	font-size: 0.85em;
	font-weight: 300;
	text-decoration: none;
	text-align: center;
	vertical-align: middle;
	width: 7em;
	border: solid 1px #ccc;
}

.daymark {
	display: inline-block;
	letter-spacing: 0.2em;
	padding: 4px;
	background-color: #e1e0e0;
	border-radius: 0.2em;
	color: #000;
	font-size: 0.85em;
	font-weight: 300;
	text-decoration: none;
	text-align: center;
	vertical-align: middle;
	width: 7em;
	border: solid 1px #ccc;
}

.endmark {
	display: inline-block;
	width: auto;
	padding: 0px;
	border-radius: 0.5em;
	border: solid 1px #333;
	background-color: #737373;
	color: #fff;
	font-size: 0.85em;
	text-decoration: none;
	text-align: center;
	vertical-align: middle;
	width: 6.5em;
}
.opacity{
	opacity:0.6;
}


table .uma{
	line-height: 3em;
	height="300";
}

@media screen and (max-width: 600px) {
  span .none {
    display: none;
  }
}



.small {
  font-size: 0.7rem;
}
.smallcap {
  font-size: 0.85rem;
	line-height: 1.4em;
	text-align: left;
}

.normal{
	font-weight: normal;
	vertical-align: middle;
}

.smallcap2 {
	display: inline-block;
  font-size: 0.85rem;
	text-align: left;
	margin-top: 10px;
	margin-bottom: 10px;
}

div .photo01{
	text-align: center;
	margin: 30px auto;
}

.smallcapline {
  font-size: 0.85rem;
	line-height: 1.5em;
	text-align: left;
	margin-bottom: 0.5rem;
}

.conBB ul li{
	line-height: 2rem;
  text-align: left;

}

.conBB ol{
	line-height: 2rem;
  text-align: left;
}

.conBB .smallcap {
  font-size: 0.85rem;
	line-height: 1.5em;
	text-align: left;
}





div .lineheight {
	line-height: 1.8;
}

.indent-3 {
	line-height: 1.8;
	padding-left:3em;
	text-indent:-3em;
}




table {
	line-height: 1.7;
	padding-left:10px;
	padding-right:10px;

	text-align: left;
	width: 100%;
  border-collapse: collapse;
}

tr {
		text-align: left;
}
.margin_top_1 {
	margin-top: 1rem;
}

/* height: 5em; 高さを入れない！ */
}




.noborder {
	border: none;
	padding-top: 10px;
	padding-bottom: -5px;
}

.onborder {
	padding-top: 10px;
	padding-bottom: 10px;
}



.packing{
	vertical-align: top;
	line-height: 1.5;
	margin-top: 1em;
	margin-bottom: 1em
}

td{
		text-align: left;
		margin-right: 1em;
}
.tdright{
		text-align: right;
}

th {
		padding-right: 0.5em;
		width: 170px;
}


table {
	line-height: 1.8;
	margin-right:auto
	text-align: left;
	width: 100%;
}

.foot{
	margin-top: 0;
	margin-bottom: 3rem!important;

}

.tdright_button{
	text-align: right;
}

@media screen and (max-width: 640px) {
  .last td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%;
  }
  th {
	　　border-bottom: none;

	  }
  td {
　　border-bottom: none;

  }
	.tdright{
		text-align: left;
		padding-bottom: 0;
	}
	.tdright_button{
		text-align: left;
		padding-bottom: 1rem;
	}

	tr {
		margin-bottom: 1em;
		text-align: left;
		padding-bottom: 1rem;
	}
td .bottom_2rem{
		margin-bottom: 2rem;
	}

	table {
		margin-bottom: 0;
	}
	tr:first-child {
		padding-top: 1rem;
		padding-bottom: 1rem;
	}
	.btnsmall{
		margin-top: 0.5rem;
	}
}



/* 基本設定： ページ全体 */
body {
		margin: 0;
		font-family:
			-webkit-text-size-adjust: 100%; /* iOSランドスケープモード対策 */
	}

/* youtubeライブのしきり　step2〜4 */
  hr {
    background-color: #fff;
  }
  .conT hr{
    border-width: 1px 0px 0px 0px; /* 太さ */
    border-style: solid; /* 線種 */
    border-color: #cdcdcd;   /* 線色 */
    height: 1px;         /* 高さ(※古いIE用) */
    margin-top: 2rem;
    margin-bottom: 0rem;
    width: 100%;
  }
/* /youtubeライブのしきり　step2〜4 */
.text_bk{
	color: #000;
}

.text_red{
	color: #fd0000!important;
}

.text_yellow{
	color: #fdd23c;
}
.text_pink{
	color: #fb0690;
}

.text_gray{
	color: #999999;
}

.text_gry{
	color: #999999;
}

/* 子供たちの心の声を聞く特別プログラム */
.img_baby img{
  margin: 0 auto;
  width: 160px;
max-width: 160px;
  height: auto;
}
.lineheight2 {
  line-height: 2;
}


/* TOPイメージ */
/* TOPイメージ */



.conTOP {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 20vh;
	min-height: 300px;
	background-image: url(../img/img_conTOP.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	background-color: #000;
	text-align: center;
margin: 0 auto 0;
	padding: 10px;
}

.conTOP .container2 {
	margin: 0 auto;
	padding-left: 16px;
	padding-right: 16px;
}






.background_Glay {
background-color: #ccc;
}

/* H1にワイド%を入れてはいけない
/* H1にワイド%を入れてはいけない
 */
.conTOP h1 {

	margin-bottom: 0rem;
	letter-spacing: 0.05em;
	text-align: center;
	line-height: 1.1;
	font-size: 3rem;
	font-weight: 300;
	color: #fff;
text-shadow:2px 2px 6px #000;
/* 	text-shadow:2px 2px 10px #522e12; */
}

@media (max-width: 400px) {
.conTOP h1 {

	margin-bottom: 0rem;
	letter-spacing: 0.05em;
	text-align: center;
	line-height: 1.1;
	font-size: 2.75rem;
	font-weight: 400;
	color: #fff;
text-shadow:2px 2px 6px #000;
/* 	text-shadow:2px 2px 10px #522e12; */
}
}
.conTOP h2 {
	margin-top: 4rem;
	margin-bottom: 0.2rem;
	font-size: 2rem;
	letter-spacing: +0.03em;
	text-align: center;
	color: #fff;
	text-shadow:2px 2px 10px #522e12;
}

.conTOP h3 {
 margin-bottom: 0.3rem;
	font-size: 1.35rem;
	font-weight: bold;
	letter-spacing: 0.1em;
	text-align: center;
	color: #fff;
	text-shadow:2px 2px 10px #000;
}

/* 量子催眠 */
.conTOP h5 {
	display: inline-block;
	font-size: 1rem;
	font-weight: 700;
	top: auto;
	padding: 0.2rem;
	letter-spacing: 0.05em;
	text-align: center;
	color: #fff;
	margin-top: 2rem;
	margin-bottom: 2rem;
	width: 6rem;
  height: auto;
  background-color: #e7141a;
  border-radius: 0;
	vertical-align: middle;
	transform: skewX(-20deg);
}

/* 期間限定 */
.conTOP .gentei {
	display: inline-block;
	font-size: 1rem;
	font-weight: 300;
	top: auto;
	padding: 0.5rem 1rem;
	letter-spacing: 0.05em;
	text-align: center;
	color: #fff;
	margin-top: 1rem;
	margin-bottom: 5rem;
	width: auto;
  height: auto;
  background-color: none;
  border-radius: 0;
	vertical-align: middle;
}



@media (min-width: 768px) {
	.conTOP {
	min-height: 400px;
	background-size:cover;/* 370pxではchromでwave下に線が出た */
	margin: 0 auto 0;
	}
	.conTOP .container {
		margin-right: 100px;
	}

	.conTOP h1 {
		font-size: 3.5rem;
		line-height: 1.3;
	}

	.conTOP h2 {
		margin-top: 3rem;
		margin-bottom: 0;
		font-size: 2rem;
		text-align: center;
		color: #fff;
	}

	.conTOP h3 {
		font-size: 1.65rem;
		text-align: center;
		color: #fff;
	}
}

.checkbox_kyori {
	display: inline-block;
	margin-right: 5rem;
}



@media screen and (min-width:768px) and ( max-width:900px) {
	.conTOP h1 {
		font-size: 2.85rem;
	}
}

@media (max-width: 460px) {
  .conTOP h1 {
		font-size: 2.4rem;
	}
}

@media (max-width: 374px) {
  .conTOP h1 {
		font-size: 2.2rem;
	}
  .conTOP h3 {
		margin-top: 1.5rem;
	}
}




/* テキストのみセクション */


	.conT {
		background-color: #fff;
		color: #000;
		padding-top: 0;


	}

	.conT .container {
		padding-top: 1rem;
		align-items: center;
		justify-content: center;
		background-color: #fff;
	}

	.conT .containerleft {
		padding-top: 4px;
		align-items: left;
		justify-content: center;
	}

	.conT ul{
		padding-left: 1.25em;
		line-height: 2.5;
		align-items: center;
		justify-content: center;
	}

  .conT ul li{
line-height: 1.7;
    text-align: left;
list-style: disc;

  }
	.conT h1 {
		margin-top: 1rem;
		margin-bottom: 1rem;
		font-size: 2rem;
		font-weight: 700;
		line-height: 1.3;
		text-align: center;
		background-color: #fff;

	}



	.conT h2 {
		margin-top: 0.3rem;
    margin-bottom: 1rem;
		font-size: 1.5rem;
		font-weight: 300;
		text-align: center;

			margin-left: 0.5rem;
			margin-right: 0.5rem;

	}


	.conT h6 {
		margin-top: 1rem;
		margin-bottom: 0.25rem;
		font-size: 1.4rem;
		font-weight: 300;
		text-align: center;

			margin-left: 0.5rem;
			margin-right: 0.5rem;

	}



	.conT h3 {
		margin-top: 2rem;
		margin-bottom: 0.8rem;
		font-size: 1.05rem;
		font-weight: 700;
		text-align: center;
	}

	.conT h5 {
		margin-top: 2rem;
		margin-bottom: 0.8rem;
		font-size: 1.05rem;
		font-weight: 700;
		text-align: left;
	}

	.font_weight_300{
			font-weight: 300!important;
		}

.top_0{
		margin-top: 1.25rem!important;
	}
.bottom_225{
		margin-bottom: 3rem;
	}

.h5_unde-line {

	border-bottom: 1px solid #ccc;
}



	.conT h5 .bigtext{
		font-size: 2.5rem;
		font-weight: 300;

	}

	.conT h4 {
		margin-top: 2rem;
		margin-bottom: 1rem;
padding-bottom: 0.25rem;
		font-size: 1.25rem;
		font-weight: 300;
		letter-spacing: 0em;
		color: #000;
		text-align: center;
    border-bottom: solid 1px #e0dede;
  position: relative;

	}





.btn{
		display: inline-block;
		margin-top: 5px;
		margin-bottom: 10px;
		padding: 5px 15px;
		border-radius: 15px;
		background-color: #8aaeb2;
		color: #fff;
		font-size: 14px;
		text-decoration: none;

	}

.btnsmall{
	display: inline-block;
	padding: 3px 12px;
	border-radius: 1rem;
	background-color: #41affc;
	color: #fff;
	font-size: 1rem;
	font-weight: 700;
	text-decoration: none;
	vertical-align: middle;
	text-align: right;

}
a.btnsmall,
a.btnsmall:hover,
a.btnsmall:visited {
	text-decoration: none!important;
}

a.btnsmall {
			color: #fff;
		}


		.consuuji {
			margin: 0 auto;
			padding-bottom: 1em;
		}
		.consuuji .p {
			line-height: 1.7em;
		}
		.consuuji ol{
			/*要素の連番（カウンタ）の値をリセットする*/
			counter-reset: li;
		}
		.consuuji li{
			position: relative;

			padding-left: 20px;
			margin: 0 0 0.7em;
			margin-bottom: 1.25rem;
			/*デフォルトのスタイルを非表示にする*/
			list-style: none;
		}
		.consuuji li:before{
			position: absolute;
			top: 0;
			left: 0;
			font-weight: bold;
			/*要素の連番（カウンタ）の値を進める*/
			counter-increment: li;
			/*自動連番を付ける関数*/
			content: counter(li)'.';
		}

		.consuuji_m {
			margin: 0 auto;
			padding-bottom: 0em;
		}
		.consuuji_m .p {
			line-height: 1.7em;
		}
		.consuuji_m ol{
			/*要素の連番（カウンタ）の値をリセットする*/
			counter-reset: li;
margin-left: 2rem;

		}
		.consuuji_m li{
			position: relative;
			padding-left: 20px;
			margin: 0 0 0.7em;
			margin-bottom: 1rem;
			color: #333;
			list-style: none;
		}
		.consuuji_m li:last-child{
			margin-bottom: 0rem;
		}
		.consuuji_m li:before{
			position: absolute;
			top: 0;
			left: 0;
			font-weight: bold;
			/*要素の連番（カウンタ）の値を進める*/
			counter-increment: li;
			/*自動連番を付ける関数*/
			content: counter(li)'.';
		}

.width_wide{
	padding-left: 30px!important;
}


.consuuji li:before{
	position: absolute;
	top: 0;
	left: 0;
	font-weight: bold;
	/*要素の連番（カウンタ）の値を進める*/
	counter-increment: li;
	/*自動連番を付ける関数*/
	content: counter(li)'.';
}

	div .btncenter{
			text-align: left;
		}


	@media screen and (max-width: 680px) {
		div .btncenter{
				text-align: center;
			}
		}


.conT a{

}

	.conT a.store {
		display: inline-block;
		padding: 10px 30px;
		border-radius: 30px;
		background-color: #fd0000;
		color: #fff;
		font-size: 1.2em;
		border: solid 2px currentColor;
		font-weight: normal;
		text-decoration: none;
	}
	.conT a.store:hover	{
		background-color: #fa5959;
	}

	.conT .center {
		text-align: center;
		margin-bottom: -0.5rem;
	}

	.conT .kanbai {
  text-decoration: line-through;
}

	.conT .pad40 {
    max-width: 80%;
    margin-left: 10%;
    margin-right: 10%;
	}

	.conT .bnr {
		width: 260px;
  	margin: 12px auto 0 auto;
		text-align: center;
		display: cover;
	}

	.conT .smalltext {
		text-align: center;
		font-size: 0.85rem;
		line-height: 1.5;
    max-width: 90%;
    margin-left: 5%;
    margin-right: 5%;
	}

	.conT .smalltext_left {
		text-align: left;
		font-size: 0.85rem;
		line-height: 1.6;
	}

	.conBB .smalltext_left {
		text-align: left;
		margin-top: 1rem;
		font-size: 0.85rem;
		line-height: 1.6;
	}

.smalltext15 {
		vertical-align: middle;
		font-size: 1.05rem;

	}

	.conT .pad40 {
		max-width: 90%;
		text-align: left;
		margin-left: auto;
		margin-right: auto;
	}

	.conT .red {
		text-align: center;
		color: #ff0033;
	}

	.conT .cap {
		padding-top: 0;
		padding-bottom: 0.5rem;
		font-size: 0.9rem;
		font-weight: 600;
		text-align: center;
	}

  .conT .cap_B {
		padding-top: 0;
		padding-bottom: 0.25rem;
		font-size: 1.05rem;
		font-weight: 600;
		text-align: center;
	}

	.conT .name {
		margin-top: 1rem;
		margin-bottom: 0.2rem;
		font-size: 1.75rem;
		text-align: center;
	}

	.conT .prof {
		display: inline-block;
		padding-top: 2px;
		padding-bottom: 2rem;
		font-size: 12px;
		letter-spacing: 0.3em;
		border-top : 5px solid #999;
		text-align: center;
	}

	.conT .sec_num img {
		display: block;
		align-items: center;
		justify-content: center;
		margin: auto;
		width: 20%;
	}

	.conT .circle img {
		display: block;
		margin: auto;
		padding-top: 20px;
		width: 14%;
	}

	.conT .storesjp_logo img {
		width: 160px;
		height: 31px;
	}

	.conT .round_line {
		display: block;
		align-items: center;
		justify-content: center;
		border: solid 1px #ccc;
		border-radius: 24px;
		background-color: #fff;
		color: #000;
		font-size: 1rem;
		text-decoration: none;
		text-align: center;
	}
.conT .round_line h2{
  line-height: 1.3;
}

	@media (max-width: 767px) {
		.conT .round_line {
			margin-left: 0;
			margin-right: 0;
	}
	}

  .conT .round_line_orange {
    padding: 1.5rem;
		display: block;
		align-items: center;
		justify-content: center;
		border: solid 1px #ccc;
		border-radius: 24px;
		background-color: #fcdfbb;
		color: #000;
		font-size: 1rem;
		text-decoration: none;
		text-align: center;
	}
.conT .round_line_orange h2{
  line-height: 1.3;
}

	@media (max-width: 767px) {
		.conT .round_line_orange {
      padding: 1.5rem 1rem;
			margin-left: 0;
			margin-right: 0;
	 }
	}



	.conT .text {
		padding: 0;
		text-align: left;

	}

	.conT .textleft {
		padding-top: 10px;
		display: inline-block;
		text-align: left;
		padding-left:1em;
		text-indent:-1em;
	}



	.conT .mailinglist {
		margin: 0 10px 10px;
		text-align: left;
		font-size: 1rem;
	}

	.conT .textleft15 {
		display: inline-block;
		text-align: left;
		padding-left:1.4em;
		text-indent:-1.4em;
	}

	.conT .secnumber {
		display: block;
		position: center;
	}



.diplomaimg {
	margin-left: 20%;
	margin-right: 20%;
	border: solid 1px #8b8b89;
}

@media (max-width: 600px) {
.diplomaimg {
	margin-left: 0;
	margin-right: 0;
}
}





	.conT a.yoyakublue {
		display: inline-block;
		margin: 16px;
		margin-bottom: 32px;
		padding: 10px 30px;
		border-radius: 30px;
		background-color: #001efd;
		color: #fff;
		font-size: 1.2em;
		font-weight: bold;
		text-decoration: none;
	}

	.conT a.yoyakublue:hover	{
		background-image: linear-gradient(
			rgba(255,255,255,0.2),
			rgba(255,255,255,0.2)
		);
	}


	@media (min-width: 768px) {
	.conT .container {

		flex-flow: column nowrap;
		max-width: 1000px;
		margin-left: auto;
		margin-right: auto;
		}
	}

	@media (min-width: 768px) {
	.conT .containerleft {

		flex-flow: column nowrap;
		max-width: 768px;
		margin-left: auto;
		margin-right: auto;
		}
	}

	.conT .sec_num img {
		width: 140px;
		height: 249px;
	}
	.conT .pad40 {
		width: 580px;
		text-align: left;
		margin-left: auto;
		margin-right: auto;
	}

	.conT .circle img {
		display: block;
		padding-top: 20px;
		width: 46px;
		height: 46px;
	}
	.conT .resizeimage img {

		width: 100%;
  max-width: 750px;
	}







.conT a:hover	{
	text-decoration: underline;
}

.conT a.yoyaku {
	display: inline-block;
	width: auto;
	margin-bottom: 1rem;
	padding: 16px 20px;
	border-radius: 30px;
background-color: #fd0000;
	color: #fff;
	font-size: 1.25rem;
	font-weight: bold;
	text-decoration: none;
}

.conT a.yoyaku:hover	{
	background-image: linear-gradient(
		rgba(255,255,255,0.2),
		rgba(255,255,255,0.2)
	);
}

@media (max-width: 767px) {
.conT a.yoyaku {
  font-size: 1.15rem;
padding: 10px 16px;
	width: auto;
}
}

.conT a.yoyakucal {
	display: inline-block;
	width: 80%;
	margin-top: 5px;
	margin-bottom: 10px;
	padding: 10px 20px;
	border-radius: 30px;
	background-color: #001ce4;
	color: #ffff00;
	font-size: 1em;
	font-weight: bold;
	text-decoration: none;
}

.conT a.yoyakucal:hover	{
	background-image: linear-gradient(
		rgba(255,255,255,0.2),
		rgba(255,255,255,0.2)
	);
}
@media (max-width: 767px) {
.conT a.yoyakucal {
  font-size: 0.85em;
	width: 80%;
	letter-spacing: -0.07em;
}
}

.paratop {
	margin-top: 0.5rem;
	margin-left: 1rem;
	margin-bottom: 0.5rem!important;
	line-height: 1.3rem!important;
}

.paratop_bana {
	margin-top: 0.5rem;
	margin-left: 0rem;
	margin-bottom: 0.5rem;
	line-height: 1.3rem;
	font-size: 0.85rem;
}

.BGnone {
	background-color: #fff;
  padding-bottom: none;
	width: 100%;
}


.BGnone div {
	padding-right: 10px;
	padding-left: 10px;
}


/* ２カラム */
.conBB {
	background-color: #fff;
	color: #000;
}

.conBB .container {
	padding: 0;
}

.conBB .wrap {
	text-align: center;
	padding: 0 0.05rem 1rem;
}

.conBB .wrap:last-child {
	padding-bottom:0;
}

@media (min-width: 768px) {
.conBB .wrap {
	padding-left: 0;
	padding-right: 0;
	text-align: center;
	padding-bottom:1rem;
	}

.conBB .wrap p{
		padding-left: 0;
		padding-right: 0;
		padding-bottom: 0;
}
}

.conBB h1 {
	margin-top: 1rem;
	margin-bottom: 0.5rem;
	font-size: 1.75rem;
	font-weight: 300;
	text-align: center;
}

.conBB h2 {
	font-size: 1.65rem;
	font-weight: 500;
	margin-top: 10px;
	margin-bottom: 20px;
	text-align: center;
}

.conBB h3 {
	margin-top: 2rem;
	font-size: 1.3rem;
	text-align: center;
}



.conBB h4 {
	margin-top: 0rem;
	margin-bottom: 1rem;
	font-size: 0.7rem;
	font-weight: 300;
	letter-spacing: 0.5em;
	color: #97a2a3;
	text-align: center;
}

.conBB h6 {
	border-bottom: 1px solid #ccc;
	margin-bottom: 1rem;
padding-bottom: 0.25rem;
	font-size: 1.05rem;
	line-height: 1.3;
	text-align: left;
	font-weight: bold;

}

.margin_top_0 {
	margin-top: 0!important;
}

.border_bottom{
	border-bottom: 1px solid #ccc;
	margin-bottom: 1rem;

}




.conBB p {
	margin-top: 0;
	margin-bottom: 0.5rem!important;
	font-size: 1rem;
	line-height: 1.7;
	text-align: justify;/* テキスト両端揃え */
	text-justify: inter-ideograph;/* テキスト両端揃え */
}


.conT ul,
.conBB ul {
font-size: 1rem;
line-height: 1.5;
padding: 0;
}


@media (max-width: 767px) {
.conT ul,
.conBB ol,
.conBB ul {
font-size: 1rem;
line-height: 1.5;
padding-left: 0.25rem;
padding-right: 0.5rem;
}
}
.conT li,
.conBB li{
margin-left: 1.25rem;
}

.conBB .wrap li{
  line-height: 1.6;
  padding-bottom: 0.75rem;
}

.conBB ul .ireko{
  margin-left: 1rem;
}
.conT ul,
.conBB ol,
.conBB ul {
margin-left: 0.25rem;
list-style-position: outside;
}
.conBB ol li::before{
  counter-increment: listnum;
  text-align: left;

}
.conBB ol li::marker{
  font-weight: bold;
text-align: right;

}
/*
.conBB .margin_left_1_25 {
  margin-left: 0rem;
}
@media (max-width: 767px) {
.conBB .margin_left_1_25 {
  margin-left: 0rem;
}
}
 */
.margin_left_1_5 {
    margin-left: 1.5rem !important;
  margin-right: 0.5rem;
}


.conBB .wrapper {
  position:relative;
  display:inline-block;
	background: #000;/* 背景を黒にする */
}

.conBB .filter-img {
 display: block;
 opacity: .6;/* 画像の透明度 */
 filter: blur(1px);/* 画像のぼかし */
}

.conBB .label {
	width: auto;
  position:absolute;
  color:white;
	font-size: 14px;
	line-height: 1.8;
	text-align: left;
  padding:10px 15px;
}
.conBB .label-left-top{
  left:0px;
  top:0px;
}

.conBB .text {
	padding: 0;
	text-align: left;
	padding-left: 10px;
	padding-right: 10px;
}
.conBB a.yoyaku {
	display: inline-block;
	margin-top: 10px;
	margin-bottom: 30px;
	padding: 0 30px;
	border-radius: 30px;
	background-color: #fd0000;
	color: #fff;
	font-size: 1.2em;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
}


.conBB a.yoyaku:hover	{
background-image: linear-gradient(
	rgba(255,255,255,0.2),
	rgba(255,255,255,0.2)
);
}


.conBB .caption{
	margin-top: 0.5rem;
	padding-bottom: 1rem;
	padding: 0;
	font-size: 0.9rem;
	line-height: 1.7;
}

.conBB div .captionmini{
	margin-top: 0.5rem;
	padding-bottom: 0.25em;
	font-size: 0.85rem;
	line-height: 1.7;
	text-align: left;
	text-indent: -1.3em;
	padding-left: 1.3em;
}



@media (max-width: 667px) {
	.conBB .wrap:last-child	{
		margin-top: 1.5rem;
margin-bottom: 3rem;
	}
}

@media (min-width: 668px) {
	.conBB .container {
		display: flex;
		max-width: auto;
		margin-left: auto;
		margin-right: auto;
	}

	.conBB .wrap	{
		flex: 1;
		margin-left: 0px;
		margin-right: 0px;
	}

	.conBB .wrap:first-child	{
		margin-right: 2rem;
	}
	.conBB .circle img {
		display: block;
		padding-top: 10px;
		width: 68px;
		height: 68px;
	}

}


/* フッター */
footer {
    background-color: #000;
}







.footA h3 {
	margin-top: 0.5rem;
	font-size: 1.2rem;
	text-align:left;
	font-weight: 900;
	letter-spacing: 0.23em
}

.footA p {
	margin-top: 0;
	margin-bottom: 0;
	letter-spacing: 0.08em;
	font-size: 14px;
}

.footA a {
	color: inherit;
	text-decoration: none;
}


/* フッターB： フッターメニュー */
.footB div {
	margin-bottom: 20px;
}

.footB h3 {
	margin-top: 0;
	margin-bottom: 10px;
	border-bottom: solid 1px currentColor;
	font-size: 14px;
}

.footB ul {
	margin: 0;
	padding: 0;
	list-style: none;
}






@media (min-width: 768px) {
	.footB {
		display: flex;
	}

	.footB div {
		flex: 1;
	}

	.footB div:not(:first-child) {
		margin-left: 30px;
	}
}

/* ムービー： Youtube */
.youtube {
  position: relative;
	display : block;
  margin : 0 auto;
	text-align: center;
  width: 100%;
  padding-top: 56.25%;
	margin-bottom:6px;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}


@media (min-width: 768px) {
	.youtube {
	  position: relative;
		align-items: center;
	  width: 750px;
	  padding-top: 422px;
		margin-bottom:20px;
	}

	.youtube div {
		flex: 1;
	}

	.youtube div:not(:first-child) {
		margin-left: 20px;
	}
}


/* フッターC： コピーライト */
.footC {
	font-size: 12px;
	text-align: center;
	font-family: 'Montserrat', sans-serif;
}


/* フッターD： SNSメニュー */
.footD {
	margin-top: 20px;
}

.footD ul {
	display: flex;
	margin: 0;
	padding: 0;
	list-style: none;
}

.footD a {
	display: block;
	margin-right: 8px;
	padding: 0;
	color: inherit;
	font-size: 16px;
	text-decoration: none;
	border: solid 1px currentColor;
	width: 2em;
	line-height: 2em;
	border-radius: 50%;
	text-align: center;
}

.footD a:hover {
	background-color: rgba(0,0,0,0.3);
}






/* コンテンツページ: 記事 */
.post .container {
	max-width: 800px;
	max-width: var(--middle-width);
	margin-left: auto;
	margin-right: auto;
	padding: 30px 10px;
}

.post h1 {
	padding-left: 0.5rem;
	border-left: solid 0.75rem #BF6A7A;
	border-left: solid 0.75rem var(--accent-color);
	font-size: 2rem;
}

.post p {
	font-size: 1rem;
	line-height: 2;
}

.post img {
	max-width: 100%;
}


/* コンテンツページ: パンくずリスト */
.bread ol {
	display: flex;
	margin: 0;
	padding: 0;
	list-style: none;
}

.bread a {
	display: block;
	padding: 5px;
	color: inherit;
	font-size: 0.875rem;
	text-decoration: none;
}

.bread a::after {
	margin-left: 10px;
	content: '\f054';
	font-family: 'FontAwesome';
	opacity: 0.3;
}

.bread a:hover {
	background-color: rgba(0,0,0,0.3);
}

.exclamationicon::before {
  font-family: "Font Awesome 5 Pro";
  font-weight: 400; /*←ココ！！！！！！！*/
  content: "\f071";
  vertical-align: middle;
}



/* アバウトページ： 画像と沿革 */
.history {
	background-color: #5D9AB2;
	background-color: var(--main-color);
	color: #fff;
	color: var(--text-bright-color);
}

.history .text {
	padding: 20px;
}

.history h2 {
	margin-top: 0;
	margin-bottom: 10px;
	font-size: 1.5rem;
}

.history .photo {
	min-height: 300px;
	background-image: url(../img/plant.jpg);
	background-position: center;
	background-size: cover;
}

.history table {
	border-collapse: collapse;
	border-top: solid 1px #ddd;
	border-top: solid 1px var(--gray-color);
	font-size: 0.875rem;
}

.history th,
.history td {
	padding-top: 1.8rem;
	padding-bottom: 1.8rem;
	border-bottom: solid 1px #ddd;
	border-bottom: solid 1px var(--gray-color);
}

.history th {
	padding-right: 1rem;
	text-align: left;
	word-break: keep-all;
}


@media (min-width: 768px) {
	.history .container {
		display: flex;
		max-width: 1000px;
		max-width: var(--large-width);
		margin-left: auto;
		margin-right: auto;
	}

	.history .photo {
		flex: 3;
	}

	.history .text {
		flex: 2;
		padding: 50px;
	}
}


/* お問い合わせページ: 問い合わせ先 */
.contact {
	margin-top: 20px;
	margin-bottom: 20px;
	padding: 20px;
	border: solid 1px #ddd;
	border: solid 1px var(--gray-color);
	text-align: center;
}

.contact span	{
	display: inline-block;
	margin-bottom: 20px;
	font-size: 2.2rem;
	width: 2em;
	line-height: 2em;
	border-radius: 50%;
	text-align: center;
	background-color: #5D9AB2;
	background-color: var(--main-color);
	color: #fff;
	color: var(--icon-color);
}

.contact h2 {
	margin-top: 0;
	font-size: 1.2rem;
}

.contact a {
	font-size: 1.4rem;
	color: inherit;
	text-decoration: none;
}


@media (min-width: 768px) {
	.contact-wrap {
		display: flex;
	}

	.contact {
		flex: 1;
	}

	.contact:first-child {
		margin-right: 20px;
	}
}


/* お問い合わせページ： 地図 */
.location iframe {
	width:100%;
	height: 400px;
	vertical-align: bottom;
}

.location h2 {
	margin: 0;
	padding-top: 20px;
	padding-bottom: 20px;
	background-color: #5D9AB2;
	background-color: var(--main-color);
	color: #fff;
	color: var(--text-bright-color);
	font-size: 1.5rem;
	text-align: center;
}



/* 記事一覧A */
.listA h1 {
	text-align: center;
}

.listA .container {
	display: flex;
	flex-wrap: wrap;
	max-width: 1000px;
	max-width: var(--large-width);
	margin: 30px auto;
}

.listA article {
	flex: 1 1 300px;
	display: flex;
}

.listA a {
	flex: 1;
	margin: 10px;
	display: block;
	border: solid 1px #ddd;
	border: solid 1px var(--gray-color);
	color: inherit;
	text-decoration: none;
}

.listA a:hover {
	opacity: 0.8;
}

.listA .photo {
	min-height: 150px;
	background-position: center;
	background-size: cover;
}

.listA .text {
	margin: 10px;
}

.listA h2 {
	font-size: 18px;
}

.listA p {
	font-size: 14px;
	opacity: 0.8;
}


/* 記事一覧B */
.listB h1 {
	text-align: center;
}

.listB .container {
	display: flex;
	flex-wrap: wrap;
	max-width: 1000px;
	max-width: var(--large-width);
	margin: 30px auto;
}

.listB article {
	flex: 1 1 384px;
	display: flex;
}

.listB a {
	flex: 1;
	margin: 10px;
	display: flex;
	border: solid 1px #ddd;
	border: solid 1px var(--gray-color);
	color: inherit;
	text-decoration: none;
}

.listB a:hover {
	opacity: 0.8;
}

.listB .photo {
	flex: 2;
	min-height: 0;
	background-position: center;
	background-size: cover;
}

.listB .text {
	flex: 3;
	margin: 10px;
}

.listB h2 {
	font-size: 18px;
}

.listB p {
	font-size: 14px;
	opacity: 0.8;
}

@media (max-width: 384px) {
	.listB .photo {
		flex: 1;
	}

	.listB p {
		display: none;
	}
}


/* 記事一覧C */
.listC h1 {
	text-align: center;
}

.listC .container {
	display: flex;
	flex-wrap: wrap;
	max-width: none;
	margin: 2px auto;
}

.listC article {
	flex: 1 1 250px;
	display: flex;
}

.listC a {
	position: relative;
	flex: 1;
	margin: 2px;
	display: block;
	border: solid 1px #ddd;
	border: solid 1px var(--gray-color);
	background-color: currentColor;
	color: inherit;
	text-decoration: none;
}

.listC a:hover {
	opacity: 0.8;
}

.listC .photo {
	min-height: 250px;
	background-position: center;
	background-size: cover;
	opacity: 0.6;
}

.listC .text {
	position: absolute;
	bottom: 0;
	left: 0;
	margin: 10px;
	color: #fff;
	color: var(--text-bright-color);
}

.listC h2 {
	margin: 0;
	font-size: 18px;
}

.listC p {
	margin: 0;
	font-size: 14px;
	opacity: 0.8;
}

@media (min-width: 1000px) {
	.listC article {
		flex: 1 1 25%;
	}
}


/* アレンジ: ヘッダーの色 */
.head-color {
	background-color: #5D9AB2;
	background-color: var(--main-color);
	color: #fff;
	color: var(--text-bright-color);
}

.head-color .headA {
	background-color: transparent;
	color: inherit;
}

.head-color .headC {
	color: inherit;
}


/* アレンジ: ヘッダーとヒーローイメージを一体化 */
.head-hero {
	background-color: transparent;
	color: #fff;
	color: var(--text-bright-color);
}

.head-hero .headA {
	background-color: transparent;
	color: inherit;
}

.head-hero .headC {
	color: inherit;
	opacity: 1;
}

@media (max-width: 767px) {
	.head-hero .headB {
		background-color: rgba(0,0,0,0.6);
	}
}


/* アレンジ: ヘッダーを画面上部に固定 */
.head-fixed,
.nohero .head-fixed {
	position: fixed;
}

.nohero .head-fixed + * {
	margin-top: 70px;
}

@media screen and (min-width: 600px){
.br-sp {display: none; }
}
