@charset "UTF-8";
/* CSS Document */
#wrap h2{
	padding:4px 8px;
	font-size:18px;
	font-weight:bold;
	margin-bottom:35px;
	text-align:center;
	line-height:1.3;
}

#wrap h3{
font-size:16px;
margin-bottom:20px;
color:#000;
	position: relative;
  padding: 0 ;
}

#wrap h4{
font-size:18px;
margin-bottom:16px;
color:#000;
font-weight:bold;
  padding: 0 50px;
}

#wrap h5{
font-size:16px;
margin-bottom:10px;
font-weight:bold;
}
#wrap h6{
font-size:14px;
margin-bottom:10px;
}
#wrap p{
line-height:2.0em;
}
strong{
font-weight:bold;
}
.left{
text-align:left;
}
.right{
text-align:right;
}
.center{
text-align:center;
}
.red{
color:#CC0000;
}
#wrap ul{
margin:0 0 16px 20px;
}
#wrap ul li{
	line-height:1.6em;
	margin-bottom:16px;
	list-style-type: disc;
}
#wrap ol{
margin:0 0 16px 40px;
}
#wrap ol li{
list-style-type: decimal;
line-height:2.0em;
margin-bottom:16px;
}
#wrap dt{
margin-bottom:8px;
}
#wrap dd{
margin-bottom:20px;
padding-left:8px;
}
#wrap table{
width:100%;
}
#wrap table th{
font-weight:bold;
border-bottom: 1px solid #000;
}
#wrap table td{
border-bottom: 1px solid #000;
}
#wrap iframe{
	max-width:100%;
}
@media only screen and (min-width: 768px) {
#wrap h2{
	padding:2px 12px;
	font-size:28px;
	margin-bottom:60px;
}
#wrap h3{
font-size:24px;
margin-bottom:30px;
}
#wrap h3::after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 40%;
  height: 1px;
  background-color: #000;
}
#wrap h3::after {
  right:0;
}
#wrap h4 {
margin-bottom:20px;
}

#wrap dd{
margin-bottom:30px;
padding-left:14px;
}
#wrap table th{
font-size: 16px;
padding: 8px;
}
#wrap table td{
font-size: 16px;
padding: 8px;
}
}
.block{
clear:both;
padding-bottom:20px;
}

.hidden{
display:none;
}

@media only screen and (min-width: 768px) {
.block{
padding-bottom:80px;
}
}


.floatL,.alignleft,img.alignleft{
	margin:0 auto 30px;
	display: block;
	text-align:center;
}
.floatR,.alignright,img.alignright{
	margin:0 auto 30px;
	display: block;
	text-align:center;
}
.aligncenter{clear: both;display: block;margin:auto;}


@media only screen and (min-width: 768px) {
.floatL,.alignleft,img.alignleft{
	float:left;
	margin:0 30px 30px 0;
}
.floatR,.alignright,img.alignright{
	float:right;
	margin:0 30px 0 30px;
}
}



#type{
	padding:30px 0;
}
.typeList{
	display: flex;
	flex-wrap: wrap; /* flex-flow:column;はアイテムを縦に並べる */
	margin-top:30px;
	margin-bottom:30px;
  justify-content: center;
  align-items: center;
}
.typeList .typeBox{
	padding:0 10px;
	margin:0 auto 20px;
	margin:0 1% 20px;
	width:48%;
	text-align:center;
}
@media only screen and (min-width: 768px) {
#type{
	padding:60px 0;
}
.typeList{
	display: flex;
	flex-wrap: wrap; /* flex-flow:column;はアイテムを縦に並べる */
	margin-top:60px;
	margin-bottom:30px;
}
.typeList .typeBox{
	padding:0;
	margin:0 1% 20px;
	width:23%;
	flex-flow: row;/* flex-flow:row;はアイテムを横に並べる */
}
}

#concept{
	padding:30px 0;
}
#concept .aboutBox,
#concept .aboutBox2{
	display: flex;
	flex-flow: column;
	margin-bottom:20px;
}
#concept .aboutBox div.imgBox,
#concept .aboutBox2 div.imgBox {
	text-align:center;
	margin-bottom:20px;
}

#concept .aboutBox div.imgBox img,
#concept .aboutBox2 div.imgBox img{
filter: drop-shadow(12px 12px 0px rgba(137,119,100,0.15));
}

#concept .aboutBox2 div.textBox {
	text-align:right;
}

@media only screen and (min-width: 768px) {
#concept{
	padding:60px 0;
}
#concept .aboutBox{
	flex-flow: row;/* flex-flow:row;はアイテムを横に並べる */
	align-items:center;
	padding:30px;
	margin-bottom:40px;
}
#concept .aboutBox div.imgBox {
	flex: 0 0 500px;/* ウィンドウ幅に連動させず、幅340pxで固定 */
	order: 1;/* 回り込みを右へ */
	margin-bottom:0px;
}
#concept .aboutBox div.textBox {
	flex: 1 1 auto;/* ウィンドウ幅に連動して伸縮 */
	order: 2;/* 回り込みを右へ */
	padding-left:60px;
}

#concept .aboutBox2{
	flex-flow: row;/* flex-flow:row;はアイテムを横に並べる */
	align-items:center;
	padding:30px;
	margin-bottom:40px;
}
#concept .aboutBox2 div.imgBox {
	flex: 0 0 500px;/* ウィンドウ幅に連動させず、幅340pxで固定 */
	order: 2;/* 回り込みを右へ */
	margin-bottom:0px;
}
#concept .aboutBox2 div.textBox {
	flex: 1 1 auto;/* ウィンドウ幅に連動して伸縮 */
	order: 1;/* 回り込みを右へ */
	padding-right:60px;
}

}


