@charset "utf-8";
/* ==========

    全体共通
   ========== */
   
body{
 margin: 0;
 padding: 0;
 overflow-x: hidden;
}

#WRAPPER{
	width:100%;
	font-size:100%;
	margin: 0;
	padding:0;
}

header#HEADER{
	width:100%;
	padding:0 0 0 0;
	background:none;
}

div.HeaderCont{
position:relative;
width:100%;
height:330px;
padding:10px 0 0 0;
margin: 0 auto;
	background: url("../images/top.png") center 0 no-repeat #fff;
background-size: contain;
}

header#HEADER h1{
	font-size:90%;
	text-align: center;
	margin-bottom:5px;
	color:#fff;
}

header#HEADER h2{
width:80%;
height:auto;
margin: 0 auto;
}

div.KaisiIcon{
position:absolute;
top:95px;
left:10px;
width:111px;
height:111px;
}

div.TopTxt{
z-index: 100;
position:absolute;
top:100px;
left:20px;
width:85%;
	line-height: 1.6em;
	font-size:80%;
	text-align: left;
}

div.TopTxt p{
  font-weight: 900;
  font-style: normal;
	color: #FF3D3D;
  text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
              -1px 1px 0 #FFF, 1px -1px 0 #FFF,
              0px 1px 0 #FFF,  0-1px 0 #FFF,
              -1px 0 0 #FFF, 1px 0 0 #FFF;
}

p.icon01{
	background: url("../images/icon01.png") 0 2px no-repeat;
	background-size:15px 15px;
	padding:0 0 0 20px;
}

p.icon02{
	background: url("../images/icon02.png") 0 2px no-repeat;
	background-size:15px 15px;
	padding:0 0 0 20px;
}

p.icon03{
	background: url("../images/icon03.png") 0 2px no-repeat;
	background-size:15px 15px;
	padding:0 0 0 20px;
}

p.icon04{
	background: url("../images/icon04.png") 0 2px no-repeat;
	background-size:15px 15px;
	padding:0 0 0 20px;
}


div.Hito{
position:absolute;
top:80px;
right:10px;
width:103px;
}

.TopTxt02{
position:absolute;
top:250px;
left:0;
width:100%;
	margin-bottom:30px;
	line-height: 1.6em;
	font-size:80%;
	text-align: center;
  font-weight: 900;
  font-style: normal;
}

.TopTxt02-2{
width:100%;
	margin-bottom:50px;
	line-height: 1.6em;
	font-size:100%;
	text-align: center;
	color: #FF3D3D;
}

span.marker {
  font-weight: 900;
  font-style: normal;
    background: linear-gradient(transparent 70%, #FFF133 70%);
}


div.AboutArea{
width:95%;
margin: 0 auto 50px auto;
	display: flex;
flex-wrap: wrap;
}

div.AboutArea dl{
width:46%;
	margin: 0 6px 6px 6px;
}

div.AboutArea dl dd{
	font-size:72%;
	font-weight: bold;
	line-height: 1.3em;
	text-align: center;
}

div.ProgramArea{
width:95%;
margin: 0 auto 50px auto;
	display: flex;
flex-wrap: wrap;
}

div.ProgramArea dl{
width:46%;
	margin: 0 6px 6px 6px;
}

div.ProgramArea dl dd{
	font-size:90%;
	font-weight: bold;
	line-height: 1.3em;
	text-align: left;
}

div.ProgramArea dl dd a{
	color: #000;
	text-decoration:none;
}


span.More{
	float: right;
	font-weight: bold;
}

span.More img{
margin-right:5px;
	vertical-align: middle;
}

/*モーダルウィンドウ*/
/* Modal Base */
.modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100%;
  z-index: 100;
}
.modal-bg {
  position: absolute;
  height: 100vh;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 101;
}

/* Modal Content */
.modal-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 600px;
  z-index: 102;
}
@media screen and (max-width: 640px) {
  .modal-content {
    width: 80vw;
  }
}
.modal-inner {
  position: relative;
  background: white;
  /*width: 100%;*/
  min-height: 100px;
  max-height: 500px;
  padding: 30px;
  overflow-x: hidden;
  overflow-y: auto;
}

/* Close Button */
.btn_close {
  display: block;
  position: absolute;
  top: -50px;
  right: 0;
  background-color: white;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  color: black!important;
  text-align: center;
  font-size: 30px;
  line-height: 35px;
  z-index: 105;
  text-decoration: none!important;

}

.TopTxt03{
width:90%;
margin: 0 auto 50px auto;
	line-height: 1.6em;
	font-size:100%;
	text-align: center;
	color: #FF3D3D;
  font-weight: 900;
  font-style: normal;
}

.TopTxt03 span{
  font-weight: 900;
  font-style: normal;
}

div.KoushiArea{
	width:90%;
	margin: 0 auto 50px auto;
}

div.KoushiAreaL{
	width:100%;
	margin: 0 auto 20px auto;
	float: none;
}

div.KoushiAreaR{
	width:100%;
	margin: 0 auto 20px auto;
	float: none;
}

div.KoushiAreaR p{
  font-weight: 700;
  font-style: normal;
}

p.Dan{
 text-indent: -1em;
 padding-left: 1em;
}

div.mailform{
	width:90%;
	margin: 0 auto 30px auto;
}

div.mailform dl{
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 10px;
}

div.mailform dl dt{
  width: 100%;
  padding-right:0px;
  margin-bottom: 5px;
	text-align: left;
}


div.mailform dl dd{
  width: 100%;
  margin-bottom: 10px;
}

.SizeL{
	padding:5px;
	width:100%;
	box-sizing: border-box;
}

div.ContactFormBtn{
	width:80%;
	margin: 20px auto 50px auto;
}

div.ContactFormBtn input{
	width:100%;
	padding:20px;
	background:#FF0000;
	color:#fff;
	border-radius: 10px;
  font-weight: 700;
  font-style: normal;
  border:none;
  cursor:pointer;
}

#FOOTER{
	width:100%;
}

p#pagetop {
z-index: 9999;
 position: fixed;
 bottom: 10px;
 right: 10px!important;
 width:80px;
 height:80px;
 }


div.FooterCopy{
	width:100%;
	padding:10px 0;
	text-align: center;
	font-size: 70%;
	background: #000;
	color: #fff;
}

