@charset "UTF-8";
/* CSS Document */
#wrap h2{
font-size:24px;
font-weight:bold;
line-height:1.2em;
color:#0851A0;
margin-bottom:20px;
position: relative;
text-align:center;
}

#wrap h3{
font-size:20px;
margin-bottom:20px;
	color:#333;
	border-bottom:1px solid #0851A0;
	padding:8px 0;
font-weight:bold;
}

#wrap h4{
font-size:18px;
margin-bottom:20px;
color:#0851A0;
font-weight:bold;
padding:8px 0;
}
#wrap h5{
font-size:18px;
margin-bottom:10px;
font-weight:bold;
}
#wrap h6{
font-size:16px;
margin-bottom:10px;
}

#wrap p{
line-height:2.0em;
}
#wrap .fontL{
font-size:20px;
}
.note{
font-size:12px;
color:#333;
}
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{
font-weight:bold;
margin-bottom:8px;
}
#wrap dd{
margin-bottom:20px;
padding-left:8px;
}
#wrap table{
width:100%;
}
#wrap table th{
background:#F2F2F2;
vertical-align:top;
	border: 1px solid #CCC;
}
#wrap table td{
border: 1px solid #CCC;
word-break: break-all;
}
@media only screen and (min-width: 768px) {
#wrap h2{
font-size:32px;
margin-bottom:30px;
}

#wrap h3{
font-size:23px;
margin-bottom:20px;
font-weight:bold;
}
#wrap h4{
font-size:20px;
margin-bottom:30px;
}

#wrap dd{
margin-bottom:30px;
padding-left:14px;
}
}

.block{
clear:both;
padding-bottom:20px;
padding-top:20px;
}
.block02{
	background-color:#EEE;
padding-bottom:20px;
padding-top:20px;
}

.main-inner{
	display: flex;
	flex-flow: column;/* flex-flow:column;はアイテムを縦に並べる */
}
.main-inner2{
	display: flex;
	flex-flow: column;/* flex-flow:column;はアイテムを縦に並べる */
}

.bottom_bt{
text-align:center;
margin-bottom:20px;
}
.hidden{
display:none;
}


#visual{
	height:500px;
display: flex;
  justify-content: center;
  align-items: center;
  color:#FFF;
	min-height:200px;
	background-size:cover;
}
#visual h1{
	font-size:24px;
	text-shadow: 2px 2px 8px #000;
	line-height:24px;
}
#visual h1 span{
	font-size:16px;
}
#visual p{
	font-size:16px;
	line-height:24px;
	margin-top:20px;
	text-shadow: 2px 2px 8px #000;
}

.Lbox{
float:none;
width:100%;
padding:0 1%;
margin-bottom:20px;
}
.Rbox{
float:none;
width:100%;
padding:0 1%;
margin-bottom:20px;
}
.box3{
float:none;
width:100%;
padding:0 1%;
margin-bottom:20px;
}

@media only screen and (min-width: 768px) {
.block{
padding-bottom:60px;
padding-top:60px;
}
.block02{
padding-bottom:60px;
padding-top:60px;
}
.main-inner{
	flex-flow: row;/* flex-flow:row;はアイテムを横に並べる */
}
.main-inner2{
	flex-flow: row;/* flex-flow:row;はアイテムを横に並べる */
}
#visual{
	height:600px;
}
#visual h1{
	font-size:44px;
	line-height:44px;
}
#visual h1 span{
	font-size:24px;
}
#visual p{
	font-size:24px;
	line-height:32px;
}

.Lbox{
float:left;
width:48%;
padding:0 1%;
margin-bottom:20px;
}
.Rbox{
float:right;
width:48%;
padding:0 1%;
margin-bottom:20px;
}
.box3{
float:left;
width:33%;
padding:0 1%;
margin-bottom:20px;
}

}


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

.center{
	text-align:center;
}

#wrap p.copy{
	font-size:28px;
	text-align:center;
	position: relative;
	margin-bottom:32px;
}
#wrap p.copy:before {
  position: absolute;
  bottom: -10px;
  left: calc(50% - 30px);
  width: 60px;
  height: 5px;
  content: '';
  border-radius: 3px;
  background: #0851A0;
}

#wrap p.name{
	font-size:16px;
	text-align:center;
	margin-bottom:20px;
}


@media only screen and (min-width: 768px) {
.floatL,img.floatL{
	float:left;
	margin:0 30px 30px 0;
}
.floatR,img.floatR{
	float:right;
	margin:0 30px 0 30px;
}
#wrap p.copy{
	font-size:36px;
}
#wrap p.name{
	font-size:20px;
	margin-bottom:32px;
}
}

@media only screen and (min-width: 768px) {
.contactBox{
	width:650px;
	margin:40px auto;
}
}


.menuBox{
	display: flex;
	flex-wrap: wrap; /* flex-flow:column;はアイテムを縦に並べる */
	list-style-type: none;
}
.mBox{
	list-style-type: none;
	margin-bottom:30px;
	padding:0 1%;
	width:100%;
	text-align:center;
}
.mBox img{
	margin-bottom:16px;
}
#wrap .mBox h2{
font-size:18px;
font-weight:bold;
line-height:1.2em;
color:#0851A0;
margin-bottom:20px;
}
#wrap .mBox p.read{
text-align:left;
}
.bt a{
	display:block;
	background:#FFF;
	border:1px solid #0851A0;
	border-radius:10px;
	padding:16px;
	color:#0851A0;
	text-align:center;
}
.bt a:hover{
	background:#0851A0;
	color:#FFF;
}

.bt2 a{
	display:block;
	background:#FFF;
	border:1px solid #008A83;
	border-radius:10px;
	padding:16px;
	color:#008A83;
	text-align:center;
}
.bt2 a:hover{
	background:#008A83;
	color:#FFF;
}

.mBox .bt img{
	margin-bottom:0px;
}

.p_bt{
	display: flex;
	flex-wrap: wrap; /* flex-flow:column;はアイテムを縦に並べる */
	list-style-type: none;
}
.p_bt p{
	width:100%;
	padding:0px;
	margin:0 1% 60px;
	overflow: hidden;
	text-align:center;
	font-size:12px;
}
.p_bt p a{
	display:block;
	position: relative;
	border:1px solid #0851A0;
	border-radius:10px;
	padding:16px;
	color:#0851A0;
	text-align:center;
}
.p_bt p a:hover{
	background:#0851A0;
	color:#FFF;
}

.p_bt p .link:after{
	display: inline-block;
	position: absolute;
	content: ">";
	right: 30px;
}

@media only screen and (min-width: 768px) {
.menuBox{
	display: flex;
	flex-wrap: wrap; /* flex-flow:column;はアイテムを縦に並べる */
}
.mBox{
	width:31%;
	padding:0px;
	margin:0 1% 30px;
	overflow: hidden;
}
.mBox img{
	margin-bottom:20px;
}
#wrap .mBox h2{
font-size:22px;
margin-bottom:30px;
text-align:left;
}
#wrap .mBox p.read{
min-height:130px;
}
.bt a{
	max-width:300px;
	margin:0 auto;
}
.bt2 a{
	max-width:300px;
	margin:0 auto;
}
.p_bt p{
	font-size:14px;
}

}

#wrap table.resp th{
width:20%;
}
@media only screen and (max-width:768px) {
#wrap table.resp tr{
display: block;
margin-bottom: 10px;}
#wrap table.resp th{
display: block;
width: 100%;
padding: 6px 4%;}
#wrap table.resp td{
display: block;
width: 100%;
padding: 6px 4%;}

}


/* field */
#logo40{position:fixed;top:16px;left:16px;width:12%;}
.v_anni{
	background-image: url(../images/bg_title.jpg);
	background-repeat: no-repeat;
	background-position: center center;
}
#anniversary div.imgBox {
	text-align:center;
	margin-bottom:20px;
}
.imgBox2{
	text-align:center;
	margin-bottom:0px;
	line-height:0;
}
@media only screen and (min-width: 768px) {
#logo40{position:fixed;top:30px;left:30px;width:9%;}
#anniversary .main-inner div.imgBox {
	flex: 0 0 540px;/* ウィンドウ幅に連動させず、幅340pxで固定 */
	order: 2;/* 回り込みを右へ */
}
#anniversary .main-inner div.textBox {
	flex: 1 1 auto;/* ウィンドウ幅に連動して伸縮 */
	order: 1;/* 回り込みを右へ */
	padding-right:30px;
}

#anniversary .main-inner2 div.imgBox {
	flex: 0 0 540px;/* ウィンドウ幅に連動させず、幅340pxで固定 */
	order: 1;/* 回り込みを右へ */
}
#anniversary .main-inner2 div.textBox {
	flex: 1 1 auto;/* ウィンドウ幅に連動して伸縮 */
	order: 2;/* 回り込みを右へ */
	padding-left:30px;
}

}

