@charset "utf-8";
/* CSS Document */

#mainvisual{
	width: 100%;
	height: 200px;
	background-image: url(../img/sub_main.jpg);
	background-size: cover;
	background-position: center;
	position: relative;
	/** 高さ揃えるcss**/
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center; /** 真ん中寄せ **/
}
#mainvisual::after{
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: #000;
	opacity: 0.2;
}
.main-title{
	padding-top:40px;
	font-family: U-OTF-GothicMB101Upr-Heavy;
	font-size: 1.4em;
	color: #fff;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
	z-index: 9;
	text-align:center;
	 /** 以下中央揃え**/
    display: -webkit-box;
    display: -ms-flexbox;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}


/*contents
================================================== */
#contents{
	width: 100%;
	background-color: #fff;
	overflow:hidden;
	padding:20px 0 80px;
}


/*「環境依存文字」の注意*/
.kankyo{
	color:#C00;
	font-size:100%;
	padding:0 10px 10px;
	line-height:1.8;
	text-indent:-1.5em;
    padding-left:1.5em;
	width:96%;
	margin:0 auto;
}

.black{
	color:#535353;
}


.contact_lasttext{
	padding: 10px;
	margin:0 10px 60px;
	border: solid 1px #ccc;
}

.contact_text a{
	text-decoration:underline;
	color:#535353;
}

.contact_lasttext a{
	text-decoration:underline;
	color:#535353;
}

span.big_red{
	margin-top:10px;
	color:#f60 !important;
	font-weight:900;
}
p.yukai{
	color:#535353;
	padding-top:10px;
	line-height:1.8em;
}




/*///////////////フォーム/////////////////*/
.red{
	color:#F00 !important;
}
.sanka{
	font-size:116%;
}

.form_text{
	padding:5px 0 0;
}

.form_text a{
	color:#177691;
	text-decoration:underline;
}

#form_box dl{
	color:#535353;
}

#form_box dl dt{
	display:block;
	width:100%;
	padding:1em 1em;
	font-weight:700;
	background:#f7f7f7;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	color:#362e2b;
	border-top:3px solid #00467e;
	border-bottom:1px solid #59493f;
}

#form_box dl dt span{
	color: #F60;
}

#form_box dl dd{
	margin:0 auto;
	overflow:hidden;
	display:block;
	padding:10px;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	background:#fff;
}

#form_box dl dd span{
	color:#454545;
}

#form_box dl dd textarea, .placeholder{
	width:100%;
	height:50px;
	font-size:100%;
	border-radius:10px;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}

input, select {
  vertical-align:middle;
}

#form_box .date{
	max-width:50%;
	min-width:45%;
	height:50px;
	border-radius:10px;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}

#form_box .time{
	width:100%;
	height:50px;
	border-radius:10px;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}

#form_box dl dd textarea{
	height:150px;
}

/*チェックボックス縦並び*/
.ef{
	display:block;
	margin-top:10px;
	margin-bottom:10px;
}


input[type=checkbox] {
    width: 30px;
    height: 30px;
    vertical-align: middle;
	padding:10px;
}

input[type=radio] {
    width: 25px;
    height: 25px;
    vertical-align: middle;
	padding:10px;
}

/*送信ボタン*/
input[type="submit"] {
  -webkit-appearance: none;
}

input[type="reset"] {
  -webkit-appearance: none;
}

#btn01{
	width:100%;
	margin:20px 0 20px 0;
	text-align:center;
}

#btn01 input{
	width: 95px;
    height: 45px;
    background:#535353;
    color: #FFF;
    cursor: pointer;
    font-size: 116%;
    font-weight: 900;
}

/*黄色い行*/
#form_box dt.new{
	border:none;
}
.kibou{
	padding-top:10px;
	color:#F00;
}

.kibou a{
	padding-top:10px;
	color:#535353;
	text-decoration:underline !important;
}

.dateselector-year{
	height:35px;
	margin-right:10px;
	font-size:108%;
	margin-bottom:10px;
}

.dateselector-month{
    height:35px;
	margin-right:10px;
	margin-bottom:10px;
	font-size:108%;
}

.dateselector-day{
    height:35px;
	font-size:108%;
	margin-bottom:10px;
}


.accordion  {
	width:100%;
    margin: 20px auto 20px;
}

.accordion_title {
    position:relative;
    cursor: pointer;
    letter-spacing: 1px;
    font-size: 100%;
    padding: 6px 10px; 
    text-align: left;
    background: #eee;
    color: #535353;
    width: 126px;
}

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

.accordion_title:after {
  content: "+";
  position: absolute;
  top: calc(50% - 0.5em);
  right: 10px;
  line-height: 1;
  padding: 0;
  pointer-events: none;
  font-size:100%;
}

.accordion::details-content {
  opacity: 0;
  block-size: 0;
  transition: .3s;
  transition-property: display, opacity, block-size, padding;
  transition-behavior: allow-discrete;
  line-height: 1.6em;
}

.accordion .accordion_content {
  padding: 0 2em 0 3em;
}

.accordion .accordion_content > *:first-of-type {
  margin-top: 0;
}

.accordion .accordion_content > *:last-of-type {
  margin-bottom: 0;
}

.accordion[open]::details-content {
  opacity: 1;
  block-size: auto;
  block-size: calc-size(auto, size);
}

.accordion[open] .accordion_content {
  padding: 1.4em 2em 1.4em 3em;
}

.accordion[open] .accordion_title:after {
  content: "-";
}
