@charset "UTF-8";

html,body{
	line-height: 1.6;
	margin:0;
}

body {
	-webkit-text-size-adjust: 100%;
	 font-family: "メイリオ", "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
img {
	max-width: 100%;
	height: auto;
}
.none {
	display: none;
}
ul{
	list-style:none;
}
.pc-only{
	display:none;
}
span.requ {
    color: #F00;
    margin-left: 0.5em;
}
/*
-------------------------------------------------------------------------*/
.inside {
	width: 100%;
	margin:0 auto;
}
/*
-------------------------------------------------------------------------*/
header {
    margin: 0 auto;
    padding: 0;
    width: 100%;
	background-color: #f797be;
	height:8px;
}
h1 {
    color: #ffffff;
    font-weight: normal;
    margin: 0 auto;
    padding:1%;
    text-align: center;
	width:auto;
	font-size:0.6rem;
	line-height:1.4;
	display:none;
}
h2 {
	width: 66%;
	float:left;
	padding:2% 0 2% 2%;
	margin:0;
	line-height:0;
	font-size:inherit;
}
h2 img {
	width: 90%;
}
header #header {
    width: 100%;
    background-color: #f797be;
	position:relative;
	height:8px;
}
header .wrapper{
	margin:0 auto;
	overflow:hidden;
	width:100%;
	line-height:0;
}
header .logo{
	position:absolute;
	top:0;
	left:2%;
	width:25%;
	z-index:1;
}
header .btn{
	/*float:left;
	width:30%;
	padding:2% 0;
	margin:0;*/
	display:none;
}
header .btn a{
	display:block;
	line-height:0;
	margin:0;
	padding:0;
}

/*
-------------------------------------------------------------------------*/
#main {
	margin:0 auto;
	width: 100%;
}
#main p {
	width: 100%;
	margin:0;
}
#main p img {
	width: 100%;
}
/*
-------------------------------------------------------------------------*/
.block01 {
	background-color:#eae8df;
    background-image: url(../images/pin_top_left.png), url(../images/pin_top_right.png), url(../images/pin_bottom_left.png), url(../images/pin_bottom_right.png);
	background-repeat: no-repeat;
	background-position:left 2%  top 0.5%, right 2% top 0.5%, left 2% bottom 0.5%, right 2%  bottom 0.5%;
	background-size:8%;
	width:100%;
    margin: 0 auto 8%;
    padding: 8% 0 12%;
	border-radius:0;
}
.block01 div {
	display: inline;
}
.block01 h4 {
    padding: 6% 0 2%;
	width:80%;
	margin:0 auto;
}
.block01 dl {
    width: 100%;
	margin: 0 auto 2%;
	text-align: center;
}
.block01 dt {
    float: none;
	width: 100%;
	margin: 0 auto 1px;
	padding: 0;
	text-align: center;
	line-height: 0;
}
.block01 dd {
    float: none;
	width: auto;
	padding: 4%;
    height: auto;
    margin: 0 5.4% 4%;
	text-align: center !important;
	width:89%;
	box-sizing:border-box;
	display:block;
	font-size:0.8rem;
	background:#ffffff;
}
.block01 p{
	margin:0 auto;
	padding:0 4%;
	font-size:0.8rem;
}
/*
-------------------------------------------------------------------------*/
.block02 {
	background-image:url(../images/block_02_line_sp.png), url(../images/block_02_bg_sp.png);
	background-position:bottom center, top center;
	background-repeat:repeat-x, repeat-y;
    margin: 0 auto 8%;
	padding-bottom:3%;
}
.block02 .wrapper{
	width:92%;
	margin:0 4%;
}
.block02 .inside {
    width: 100%;
}
.block02 h3{
	margin:1% 4%;
	text-align:center;
}
.block02 .inside h5 {
	padding: 0 10%;
	margin: 0 auto;
	width: 70%;
}
.block02 p {
	text-align:center;
	padding:0;
	margin:0;
}
.block02 p.top{
	text-align: center;
	margin-bottom: 2%;
	padding: 3% 4%;
	background-image:url(../images/block_02_line_sp.png), url(../images/block_02_line_sp.png), url(../images/block_02_h3_bg_sp.png);
	background-position:top center, bottom center, top center;
	background-repeat: repeat-x, repeat-x, repeat-y;
	line-height:0;
}
.block02 p.txt{
	padding:0 4%;
	font-size:0.7rem;
}
.block02 p.tel{
	float:none;
	margin:0 0 2% 0;
}
.block02 p.btn{
	float:none;
}
/*
-------------------------------------------------------------------------*/
.block03 {
	margin-bottom:8%;
}
.block03 h4 {
    text-align: center;
	width:50%;
	margin:0 auto 2%;
}
.block03 h5{
	width:70%;
	padding:6% 0;
	margin:0 auto;
	text-align:center;
}
.block03 .inside {
    width: 100%;
	padding:0;
}
.block03 ul{
	margin:0 auto;
	padding:0 4%;
	list-style:none;
	font-size:0.8rem;
}
.block03 .grid {
	background:#ffffff;
	float: none;
	width: 100%;
	height: auto;
	border: #cccccc solid 2px;
	margin: 0 auto 8%;
	overflow: hidden;
	padding:2% 4%;
	box-sizing:border-box;
}
.block03 .grid span {
    padding:0;
	margin:0 0 6% 0;
	font-size:0.8rem;
}
.block03 .grid .price {
	background: #f9f8e1;
	position:inherit;
	width:auto;
	float:right;
	margin:4% 0;
	right:0;
	padding:2%;
}
.block03 .grid .price.wide {
	box-sizing:border-box;
	text-align:left;
	width:100%;
}
.block03 .grid .photo {
    padding: 0;
    margin: 0 auto 4%;
    text-align: center;
}
/*
-------------------------------------------------------------------------*/
.block04 h3 {
	text-align:center;
	margin:0 auto 4%;
	width:40%;
}
.block04 h4{
	text-align:center;
	margin:0 0 8% 0;
	font-weight:normal;
	font-size:1.1rem;
}
.block04 ul{
	margin:0 auto;
	padding:0;
	width:100%;
	overflow:hidden;
}
.block04 li{
	float:none;
	margin:0 auto 4%;
	list-style:none;
	text-align:center;
}
.block04 li img{
	border:#bfbfbf solid 1px;
	margin:0;
	width:98%;
}
.block04 li:first-child{
	margin-right:0;
}
.block04 .inside {
    width:100%;
	background-image: url(../images/pin_top_left.png), url(../images/pin_top_right.png), url(../images/pin_bottom_left.png), url(../images/pin_bottom_right.png), url(../images/back04.jpg);
	background-position:left 2%  top 0.5%, right 2% top 0.5%, left 2% bottom 0.5%, right 2%  bottom 0.5%, center top;
	background-repeat:no-repeat, no-repeat, no-repeat, no-repeat, repeat-y;
	background-size:8%,8%,8%,8%,100%;
	margin:0 auto 8%;
	padding:8% 4%;
	box-sizing:border-box;
}
.block04 p{
	text-align:left;
	margin-bottom:4%;
	font-size:0.8rem;
}
.block04 table{
	border-top:#ccbd72 solid 2px;
	border-left:#ccbd72 solid 2px;
	border-right:#ccbd72 solid 2px;
    border-collapse: collapse;
    border-spacing: 0;
	background:#ffffff;
	margin:0 auto 4%;
	width:100%;
	font-size:0.8rem;
}
.block04 tr{
	border-bottom:#ccbd72 solid 2px;
}
.block04 th{
	text-align:left;
	padding:2%;
	font-weight:normal;
}
.block04 th.ttl{
	background:#f9f8e1;
	text-align:center;
	font-size:0.9rem;
}
.block04 td{
	border-left:#ccbd72 solid 2px;
	padding:2%;
	width:50%;
}
.block04 .bridge{
	border-top:#c4bbb5 solid 1px;
	border-bottom:#c4bbb5 solid 1px;
	margin:0 auto 8%;
	padding:8% 0;
	overflow:hidden;
	box-sizing:border-box;
}
.block04 .bridge h5{
	font-size:1rem;
	font-weight:normal;
	margin:0 0 4% 0;
	line-height:1;
}
.block04 .bridge p{
	margin:0 0 4% 0;
	text-align:left;
}
.block04 .bridge figure{
	margin:0;
	text-align:center;
}
/*
-------------------------------------------------------------------------*/
.block05 {
	margin:0 auto 8%;
}
.block05 .inside {
    width: 100%;
}
.block05 h5 {
	width: 90%;
	margin:0 auto 6%;
	text-align:center;
}
.block05 ul {
    float: none;
	margin:0;
	padding:0;
}
.block05 li {
    float: none;
	text-align: center;
	font-size:0.9rem;
	list-style:none;
}
.block05 li img {
	width: 90%;
}
.block05 .arrow {
	padding: 0;
	margin: 4% auto;
}
.block05 .arrow img {
	width: 5%;
}
.block05 li span {
	width: 90%;
	text-align: center;
	margin: 5px auto 0;
	display:block;
}
/*
-------------------------------------------------------------------------*/
.block06 {
	width: 100%;
	height: auto;
	margin: 20% auto 10%;
	padding: 24% 0 8%;
	border: #AEA89C solid 1px;
	background-image:url(../images/back02.jpg);
	background-repeat:repeat;
  	background-position:center top;
	background-size:100%;
	position:relative;
	box-sizing:border-box;
}
.block06 .clip01 {
	position:absolute;
	top:2%;
	left:6%;
	width:15%;
}
.block06 .clip02 {
	position:absolute;
	top:-2%;
	right:6%;
	width:15%;
}
.block06 .inside {
    width: 100%;
}
.block06 h4 {
	width: 90%;
	margin: 0 auto 6%;
	padding:0;
}
.block06 ul {
    padding: 0 4% 0;
	margin-bottom:10%;
}
.block06 li{
	padding-left: 1em;
	text-indent: -1em;
	margin-bottom:4%;
	font-size:0.9rem;
	line-height:1.6;
}
.block06 p {
    padding: 0 4%;
	font-size:0.9rem;
	line-height:1.6;
}
.block06 p br.pc-only{
	display:none;
}
.block06 p img {
    padding:0 0 4%;
	width: 100%;
}
/*
-------------------------------------------------------------------------*/
.block07 {
	margin: 0 auto;
}
.block07 h4{
	width:35%;
	margin:0 auto 6%;
}
/*.block07 ul {
    width: 80%;
    margin: 0 auto 4rem;
    overflow: hidden;
	padding:0;
}*/
.block07 ul {
    width: 78%;
    margin: 0 auto;
	margin-bottom: 0px;
    overflow: hidden;
    margin-bottom: 4rem;
    float: right;
}
.block07 ul li {
    line-height: 2em;
    font-size: 1.3rem;
    margin-right: 3rem;
    padding-left: 2rem;
    background: url(../images/icn_list.svg) no-repeat left 0.5rem;
	background-size: auto auto;
    background-size: auto 20px;
    clear: both;
}
/*.block07 li {
    line-height: 2em;
    font-size: 1.2rem;
    padding-left: 2rem;
    background: url(../images/icn_list.svg) no-repeat left 0.8rem;
    background-size: auto 20px;
    clear: both;
}*/
/*
-------------------------------------------------------------------------*/
.block08{
	margin-bottom:8vw;
}
.block08 h4{
	width:35%;
	margin:0 auto 6%;
}
.block08 .access{
	width:100%;
	margin:0 auto;
	overflow:hidden;
}
.block08 .access dl {
    width: 100%;
    float: left;
    text-align: center;
    margin-bottom: 3rem;
	font-size:0.85rem;
}
.block08 .access dl dt {
    width: 75%;
    height: auto;
    margin: 0 auto;
}
.block08 .access dl dd {
    margin:1rem;
}
.block08 .access table {
    border-collapse: collapse;
	width: 100%;
	border: 0;
	color:#252525;
	border-spacing: 0;
}
.block08 .access table th {
    border: #b2b2b2 1px solid;
    background: #eaeaea;
    text-align: center;
    padding: 1rem 0;
}
.block08 .access table td {
    border: #b2b2b2 1px solid;
    text-align: center;
    padding:1.3rem 0;
}
.block08 .access .circle {
    background: url(../images/icn_list.svg) no-repeat center center;
        background-size: auto auto;
    background-size: 15px 15px;
}
.block08 .access .tel {
    text-align: center;
    font-size: 24px;
    font-family: "Rounded Mplus 1c", sans-serif;
    font-weight: 500;
}
.block08 .access .btn_contect {
    width: 90%;
    height: 100px;
    margin: 1.5rem auto 1rem 3%;
    float: left;
    background: #efecea url(../images/btn_arrow.svg) no-repeat -2px center;
    background-size: auto auto;
    background-size: 30px 25px;
    font-family: "Rounded Mplus 1c", sans-serif;
    font-weight: 500;
}
.block08 .access .btn_contect a{
    color: #333333;
    text-decoration: none;
}
.block08 .access .btn_contect, section .access .btn_contect a:hover {
    border: 4px #f445a5 solid;
    border-radius: 8px;
    text-align: center;
    font-size: 1.6rem;
    line-height: 4em;
    box-shadow: 5px 7px 0 #999999;
}
.block08 .access figure {
    width: 100%;
    height: 550px;
	float:right;
	margin:0 auto 2rem;
}
.block08 .visit {
    width: 100%;
    margin: 0 auto;
    clear: both;
    overflow: hidden;
}
.block08 .visit figure{
	width:100%;
	margin:0 auto 1rem;
}
.block08 .visit p{
	text-align:center;
	width:90%;
	margin:0 auto;
	font-size:0.8rem;
}
a[href^=tel]{
    color:inherit;
    text-decoration:inherit;
}
/*
-------------------------------------------------------------------------*/
.block09 {
	margin:0 auto 8%;
}
.block09.conf{
	margin-top:20%;
}
.block09 h3{
	padding:4% 0;
	border-top:#000000 solid 1px;
	border-bottom:#000000 solid 1px;
	text-align:center;
	margin:0 0 8% 0;
	line-height:0;
}
.block09 h3 img{
	width:80%;
}
.block09 table{
	margin:0 auto 4%;
	background:#efefef;
	width:100%;
}
.block09 table tr{
	border-bottom:none;
}
.block09 table th{
	padding:4% 10% 2%;
	display:block;
	width:100%;
	border-right:none;
	box-sizing:border-box;
	font-size:0.9rem;
}
.block09 table td{
	padding:2%;
	display:block;
	width:100%;
	box-sizing:border-box;
	font-size:0.9rem;
	border-bottom:#ffffff solid 1px;
}
.block09 table th{
	vertical-align:middle;
	text-align:center;
	border-bottom:#f797be solid 2px;
}
.block09 table th.v-al-t{
	vertical-align:top;
}
.block09 table.conf{
	background:#ffffff;
	border:#bfbfbf solid 1px;
	width:100%;
}
.block09 table.conf th{
	background:#efefef;
	border-right:none;
	padding:2%;
}
.block09 table.conf td{
	padding:2%;
}
.block09 table.conf tr{
	border-bottom:#bfbfbf solid 1px;
}
.block09 p{
	text-align:center;
	margin-bottom:4%;
	padding:0 4%;
	font-size:0.8rem;
}
.block09 p a{
	color:#5b5b5b;
}
.block09 .consent{
	background:#efefef;
	padding:2% 0;
	margin:0 auto 8%;
	text-align:center;
	width:100%;
	font-size:0.8rem;
}
.block09 .btn input.btn-submit {
	position:relative;
	text-align: center;
	background-image:url(../images/btn_submit.png);
	background-repeat:no-repeat;
	background-size:100%;
	display:block;
	height:20vw;
	width:95%;
	margin:0 auto 2%;
	line-height:1;
	cursor:pointer;	
}
.flex{
	display: flex;
	flex-direction:column-reverse ;
}
.block09 .btn input.btn-submit.conf {
	background-image:url(../images/btn_contact_offer_pc.png);
}
.block09 .btn input.btn-back {
	background-image:url(../images/btn_back.png);
	height:20vw;
	width:95%;
	background-position: center;
	background-repeat: no-repeat;
}
.block09 .ja{
	ime-mode: active;
}
.block09 .en{
	ime-mode: inactive;
}

.block09 input[type="text"],
.block09 textarea {
  outline: none;
  border: 1px solid #b2b2b2;
  border-radius: 6px;
  background:#ffffff;
  -webkit-transition: all .3s;
  transition: all .3s;
  padding:2vw;
	font-size: 16px;
	transform: scale(0.8);
}
.block09 input[type="text"]{
	width:95%;
}
.block09 textarea {
	width:95%;
	height:20vw;
	margin-bottom:4vw;
}
.block09 .checkbox {
  position: relative;
  display: inline-block;
  padding: 0 0 0 55px;
  vertical-align: middle;
  cursor: pointer;
}
.block09 .checkbox:after {
	-webkit-transition: border-color 0.2s linear;
	transition: border-color 0.2s linear;
	position: absolute;
	top: 50%;
	left: 15px;
	display: block;
	margin-top: -11px;
	width: 20px;
	height: 20px;
	border: 1px solid #bfbfbf;
	background:#fff;
	border-radius: 4px;
	content: '';
}
.block09 input[type=radio]:checked + .radio:before {
  opacity: 1;
}
/*check mark*/
.block09 .checkbox:before {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  position: absolute;
  top: 35%;
  left: 21px;
  display: block;
  margin-top: -10px;
  width: 7px;
  height: 14px;
  border-right: 4px solid #f797be;
  border-bottom: 4px solid #f797be;
  content: '';
  opacity: 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index:10;
}
input[type=checkbox]:checked + .checkbox:before {
  opacity: 1;
}
/*form - reset*/
input, button, textarea, select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
input, button, textarea, select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
input[type=radio], input[type=checkbox] {
  display: none;
}
/*block-thanks*/
.block-thanks {
    padding: 40% 0;
    margin: 0 auto;
}
.block-thanks p {
    text-align: center;
}
/*toContact*/
#toContact{
	position: fixed;
    bottom: 0px;
    width: 95%;
	display:block;
	left:0;
	right:0;
	text-align:center;
	margin:0 auto;
}
#contact::before {
    content: "";
    display: inline-block;
    height: 10px;
    margin-top: -10px;
    vertical-align: top;
}
/*
-------------------------------------------------------------------------*/
footer {  
    background-color: #f797be;
}
footer .copy {
    text-align: center;
    padding: 4% 1%;
	margin: 0;
	color: #ffffff;
	font-size:0.6rem;
}
