@charset "UTF-8";

body{
	margin: 0 auto;
	font-family: 'メイリオ', 'Hiragino Kaku Gothic Pro', sans-serif;
	background: #2659a8;
}
.body{
	width:100%;
}
img {
	max-width: 100%;
	height: auto;
}
a:link {color:#000000; text-decoration: none; } /*未訪問のリンクの色*/
a:visited {color:#000000; text-decoration: none; } /*訪問済みのリンクの色*/
a:hover {color:#ff0000; text-decoration: none; } /*カーソルが乗っているリンクの色*/
a:active {color:#ff0000; text-decoration: none; } /*クリック中のリンクの色*/
h1{
	margin: 0 auto;
	background-color: #c61203;
	font-size:1.2em;
	padding:10px;
	color:#ffffff;
  text-align: center;
}
h2{
	background:#ef6330;
	color: #ffffff;
	font-size:1.2em;
	padding:10px 0;
	text-align: center;
	margin: 10px 0 30px 0;
}
h3{
	margin:20px 0 10px 0;
	background: #533011;
	color:#fff;
  padding:10px;
}
h4{
  border-bottom: dotted 2px #000;
  padding:5px 0;
  font-size:1.1em;
  margin:20px auto 10px auto;
}
h2 + h3{
	margin-top: 1.6em;
}

.b{
  font-weight: bold;
  font-size:1.2em;
  line-height: 1.3em;
}
.red{
  font-weight: bold;
  font-size:1.2em;
  line-height: 1.3em;
  color:#bf0000;
}
.red-s{
  color:#ff0000;
  line-height: 0.8em;
}
.orange{
  font-weight: bold;
  font-size:1.2em;
  line-height: 1.3em;
  color:#ef6330;
}
.purple{
  font-weight: bold;
  font-size:1.2em;
  line-height: 1.3em;
  color:#6604bc;
}
.underline{
  background:linear-gradient(transparent 70%, #FFFF00 0%);
}
br.pc{
  display: none;
}
	
/*header*/
header{
	background-color: #ffffff;
}
header .header-innner {
	background:#b49658;
	padding:0;
}
header .header-innner .header_pc {
	display: none;
}
header .header-innner .header_sp {
	display: block;
}
header p{
	margin:0;
}

/*sec01*/
.sec01 .sec01-innner{
	background-color: #ffffff;
	padding:10px;
	display:flex;
	flex-wrap: wrap;
}
.sec01 p{
	margin:0 0 10px 0;
	padding:5px 5px 5px 10px;
	line-height:1.5em;
}
.sec01 .sec01-innner .sec01-txt{
	width: 100%;
}
.sec01 .sec01-innner .sec01-p{
	text-align: center;
	padding:10px 5px;
}
.sec01 .sec01-innner .sec01-photo img{
	display: block;
	margin:10px auto;
}
.sec01 .sec01-innner .sec01-ttl{
	text-align: right;
}
.sec01 .guest,.sec01 .present{
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  margin:20px 0;
  text-align: center;
}
.sec01 .guest .g-p,.sec01 .present .present-p{
  width: 90%;
}
.sec01 .guest .g-p .name,.sec01 .present .present-p .name{
  text-align: center;
  margin:0 0 10px 0 !important;
  padding:0 !important;
  line-height: 1.2em;
  font-weight: bold;
}
.sec01 .price{
  color:#bf0000;
  margin-left:0.5em;
  font-size:1.2em;
  line-height: 1.3em;
  font-weight: bold;
}

/*sec02*/
 .sec02 .common-txt p{
    margin:10px auto;
  }
.sec02 .sec02-innner{
	background-color: #ffffff;
	padding:10px;
}
.sec02 .sec02-innner .sec02-out{
	width: 90%;
	margin: 0 auto;
	/*text-align: center;*/
}
.sec02 .sec02-innner .sec02-out br{
	display: none;
}
.sec02-people{
	margin: 0 auto 1.6em;
	display: flex;
	justify-content: center;
}
.sec02-people figure{
	margin: 0;
	text-align: center;
	width: 32%;
	font-size: 0.9em;
}
.sec02-people figure:not(:first-child){
	margin-left: 1em;
}
.sec02-people figcaption span{
	display: block;
	color: #494949;
}
.sec02 .form_link,.sec01 .form_link{
  text-align: center;
  max-width: 330px;
	margin: 0 auto 30px auto !important;
  background: #f64d0a;
  padding:10px 20px;
  border-radius:10px;
  font-size:1.5em;
  font-weight:bold;
}
.sec02 .form_link a,.sec01 .form_link a{display:block;}
.sec02 .form_link a:link,.sec01 .form_link a:link {color:#fff; text-decoration: none; } /*未訪問のリンクの色*/
.sec02 .form_link a:visited,.sec01 .form_link a:visited {color:#fff; text-decoration: none; } /*訪問済みのリンクの色*/
.sec02 .form_link a:hover,.sec01 .form_link a:hover {color:#ffff00; text-decoration: none; } /*カーソルが乗っているリンクの色*/
.sec02 .form_link a:active,.sec01 .form_link a:active {color:#ffff00; text-decoration: none; } /*クリック中のリンクの色*/

.sec02 .form_link_gout{
  text-align: center;
  max-width: 330px;
	margin: 0 auto 10px auto !important;
  background: #3e3d3d;
  padding:10px 20px;
  border-radius:10px;
  font-size:1.5em;
  font-weight:bold;
  color:#fff !important; 
}
.sec02 .form_link_gout a{display:block;}
.sec02 .form_link_gout a:link {color:#fff; text-decoration: none; } /*未訪問のリンクの色*/
.sec02 .form_link_gout a:visited {color:#fff; text-decoration: none; } /*訪問済みのリンクの色*/
.sec02 .form_link_gout a:hover {color:#fff; text-decoration: none; } /*カーソルが乗っているリンクの色*/
.sec02 .form_link_gout a:active {color:#fff; text-decoration: none; } /*クリック中のリンクの色*/


/*sec03*/
.sec03-innner{
	background-color: #ffffff;
	padding:10px;
}
.sec03 p{
	text-align: center;
}

/*common*/
.common-innner{
	background-color: #ffffff;
	padding:20px 10px;
}

/*article*/
.article .article-out{
	background-color: #ffffff;	
	padding:10px 0;
}
.article .article_innner{
	margin:10px auto 20px auto;
	width:90%;
}
.article .article_innner p{
	font-size:0.8em;
	margin:0;
	text-align: left;
}
.article02 p{
  font-size: 1.1em;
  font-weight: bold;
}
.article03 h1{
  background: #ff0000;
}
.article03{
  color: #ff0000;
}


/*footer*/
.footer{
	background: #aca8a9;
	margin:0;
	font-size: 0.8em;
	padding:5px 10px;
	text-align: center;
}

/* ########### 640px以上 ########### */
@media screen and (min-width: 640px){
  body{
    width: 100%;
  }
	
  br.sp{
    display: none;
  }
  h1{
    text-align: center;
	  font-size:1.4em;
	  padding:10px 0 10px 20px;
  }
	.h-ttl{
	  padding:20px 0 20px 20px;
}
  br.pc{
    display: block;
  }


	/*header*/
	header .header-innner {
		padding:0;
	}
	header .header-innner .header_pc img{
		max-width: 100%;
		margin: 0 auto;
    vertical-align:bottom;
	}
	header .header-innner .header_sp {
		display: none;
	}
	header .header-innner .header_pc {
		display: block;
		margin:0 auto;
		text-align: center;
	}

  /*sec01*/
	.sec01{
		margin-top:0;
	}
	.sec01 .sec01-innner{
		margin:0 auto;
		padding:5px;
	}
  .sec01 .guest .g-p,.sec01 .present .present-p{
    width: 33.3333%;
    text-align: center;
  }
  .sec01 .fl .fl-innner{
    text-align: left;
    border:solid 2px #000;
    margin:10px;
  }
  .sec01 .fl .fl-innner p{
    width:90%;
    margin:10px auto;
  }
  .sec01 h4{
    width: 90%;
    margin:10px auto;
  }
  
  /*sec02*/
  .sec02 .sec02-innner{
		margin:0 auto;
		padding:5px;
	}
	.sec02-people figure{
		width: auto;
	}

	/*common*/
	.common-innner{
		margin:0 auto;
		text-align: center;
	}

	/*article*/
	.article .article-out{
		display: flex;
		text-align: center;
	}
	
	.sec02 .form_link,.sec01 .form_link{
		max-width: 400px;
		margin: 0 auto;
    padding:10px 20px;
	}
	.sec02 .form_link_gout{
		max-width: 400px;
		margin: 0 auto;
    padding:10px 20px;
	}
}

/* ########### 980px以上 ########### */
@media screen and (min-width: 980px){
  .sec01 .guest{
    width: 80%;
    margin:0 auto;
  }  
}

  
/* ########### 1200px以上 ########### */
@media screen and (min-width: 1200px){
  body{
    width:1280px;
  }
	header .header-innner {
		padding:0;
	}
	header .header-innner .header_pc img {
		max-width: 1280px;
		margin: 0 auto;
	}
	h1{
		margin: 0 auto;
    padding:20px 0;
	}
  h4{
    width: 60%;
    margin:30px auto 20px auto;
  }
  h2{
    font-size:1.4em;
    margin:20px auto 40px auto;
    width:80%;
  }

	/*sec01*/
	.sec01 p{
		font-size: 1.0em;
		line-height: 1.7em;
    margin: 10px 0 0 0;
	}
  .sec01 .fl{
    width:80%;
    margin:20px auto;
  }
  
	/*sec02*/
	.sec02 .sec02-innner{
		padding:20px 0;
	}
	.sec02 .sec02-innner .sec02-out{
		text-align: center;
	}
	.sec02 .sec02-innner .sec02-out br{
		display: inline;
	}
	.sec02 .form_link,.sec01 .form_link{
    padding:20px;
	}
	.sec02 .form_link_gout{
    padding:20px;
	}
  .sec02 	.common-innner{
		padding:1.0em 0;
	}

	/*common*/
	.common-innner{
		padding:1.6em 0;
	}
	.common-innner .common-txt{
		line-height: 1.2em;
		font-size: 1.2em;
		padding:5px;
	}
	.common-innner .common-txt h3{
		margin: 10px auto;
		width: 80%;
		text-align:center;
	}
	.common-innner .common-txt + .common-txt{
		padding-top: 1em;
	}

	/*article*/
	.article .article-out{
		margin:0 auto;
	}
	.article .article-out .article_innner{
		font-size:1.2em;
		margin:20px auto;
	}
	.article .article-out .article_innner p{
		text-align:center;
	}
}