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

html {
    font-size: 100%;
}

body {
    font-size: 62.5%;
    font-family: Helvetica, Arial, Verdana, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    margin: 0;
    padding: 0;
}

.wrap {
    background: #ffffff;
    padding-bottom: 0;
    min-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

.width-full {
    clear: both;
    min-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

.width-full-inner {
    width: 960px;
    margin: 0 auto;
}

header {
    border-bottom: 1px solid #eeeeee;
}

header a {
    
}

header img {

}

.top-catch {
    width: 100%;
    height: 600px;
    overflow: hidden;
}

.top-catch > img {
    display: block;
    width: 100%;
    height: auto;
    /* float: left; */
    position: relative;
    z-index: 2;
}

.top-catch-txt-pc {
    float: right;
    position: relative;
    /* top: -550px; */
    right: 0;
    width: 410px;
    height: 500px;
    margin: -550px 0 0 0;
    position: relative;
    z-index: 2;
}
.top-catch-txt-pc img {
    display: block;
    float: right;
}

.top-catch-txt-pc p {
    float: left;
    display: block;
    -webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
    font-size: 150%;
    letter-spacing: .2em;
    margin: 40px 50px 0 0;
    line-height: 200%;
    text-shadow: 0px 0px 1px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 5px #ffffff, 0px 0px 5px #ffffff;
    color: #333333;
}


.pc-logo {
    width: 162px;
    height: 320px;
    position: relative;
    z-index: 3;
    top: -290px;
    left: 0;
    background: #73964e;
    padding: 5px;
    clear: both;
    margin: 0 0px -330px 0;
}

.pc-logo img {
    display: block;
    /* border: 1px solid #ffffff; */
    /* padding: 20px; */
    margin: 0 auto;
}
.pc-logo-inner {
    padding: 10px 5px 5px 5px;
    border: 1px solid #ffffff;
}

.pc-logo-inner p {
    color: #ffffff;
    text-align: center;
    font-size: 100%;
}

.pc-logo-inner h1 {
    font-size: 100%;
		font-weight: normal;
    margin: 0;
}

p.nav_handle {
    display: none;
}


nav.navigation {
    width: 1000px;
    margin: 0 auto;
    background: #ffffff;
    text-align: right;
    padding: 30px 0 30px 0;
}

span.navtxt-jp {
    font-size: 160%;
    text-align: center;
    display: block;
    color: #333333;
    line-height: 140%;
    /* letter-spacing: .1em; */
}

nav.navigation a {
    display: inline-block;
    text-decoration: none;
}

nav.navigation a + a {
    margin-left: 30px;
}

span.navtxt-en {
    display: block;
    margin-top: 10px;
    text-align: center;
    color: #73964e;
    font-size: 120%;
    letter-spacing: .1em;
}

.bg-beige {
    background: #f6f3ee;
}

.top-contents-area {
    width: 960px;
    margin: 0 auto;
    padding: 70px 0;
}

.top-contents-title-wrapper {
	text-align: center;
}

.top-contents-title {
	display: inline-block !important;;
	text-align: left !important;
}

ul.contents-list {
    list-style: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

ul.contents-list li {
    width: 230px;
    height: 230px;
    border-radius: 50%;
    overflow: hidden;
    float: left;
}

ul.contents-list
 li a {
    display: block;
}

ul.contents-list
 li img {
    display: block;
    width: 100%;
    height: auto;
}

ul.contents-list li + li {
    margin-left: 13px;
}

.bg-white {
    background: #ffffff;
}

section.goto-flow-area {
    width: 960px;
    margin: 0 auto;
}

.goto-flow-title {
    font-size: 190%;
    letter-spacing: .1em;
    color: #635245;
    width: 50%;
    /* background: #cccccc; */
    float: left;
    margin: 100px 0 0 0;
    text-align: center;
}

.goto-flow-txt {
    float: right;
    width: 50%;
    font-size: 150%;
    line-height: 180%;
    letter-spacing: .1em;
    color: #635245;
    padding: 60px 0;
    margin: 0 0 0 0;
}

.goto-flow-txt p {
    margin: 0;
}

a.btn-goto-flow {
    display: inline-block;
    text-decoration: none;
    background: #73964e;
    padding: 20px 60px;
    font-size: 110%;
    margin: 20px 0 0 0;
    color: #ffffff;
}

.bg-green {
    background: #8dab40;
}

section.goto-contact-area {
    width: 960px;
    margin: 0 auto;
    padding: 60px 0px 60px 0;
}

.goto-contact-title {
    text-align: center;
    font-size: 240%;
    color: #ffffff;
    letter-spacing: .1em;
    margin-bottom: 2em;
    margin-top: 0;
}

.goto-contact-title
 span {}

.goto-contact-title
 span::before {
    width: 2em;
    height: 1px;
    content: "";
    background: #ffffff;
    display: inline-block;
    position: relative;
    top: -.3em;
    margin: 0 1em 0 0;
}

.goto-contact-title span::after {
    width: 2em;
    height: 1px;
    content: "";
    background: #ffffff;
    display: inline-block;
    position: relative;
    top: -.3em;
    margin: 0 0 0 1em;
}

section.goto-contact-area p {
    font-size: 150%;
    text-align: center;
    color: #ffffff;
    margin: 0 20px;
}

a.goto-contact-btn {
    display: block;
    /* background: #aac565; */
    text-decoration: none;
    border: 2px solid #ffffff;
    color: #ffffff;
    font-size: 230%;
    margin: 40px auto 0 auto;
    padding: 20px 0;
    width: 400px;
    text-align: center;
    letter-spacing: .1em;
    /* font-weight: bold; */
    /* box-shadow: 0px 1px 8px rgba(0,0,0,0.2); */
}

section.top-point-area {
    padding: 70px 0;
    width: 800px;
    margin: 0 auto;
    overflow: hidden;
}

.top-point-title {
    margin: 0 0 3em 0;
    text-align: center;
    font-size: 230%;
    color: #8dab40;
}

ul.top-point-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

ul.top-point-list li {
     width: 230px;
     /* background: #cccccc; */
     float: left;
}

li.top-point-item
 a {
    display: block;
    text-decoration: none;
    color: #ffffff;
}

.point-img-wrap {
    background: #8dab40;
    padding: 6px;
}

.point-img {
    border: 1px solid #ffffff;
    overflow: hidden;
}

.point-img::before {
    display: block;
    width: 30px;
    height: 30px;
    content: "";
    background: #ffffff;
    transform: rotate(45deg);
    float: right;
    position: relative;
    top: -15px;
    right: -15px;
}

.point-img img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
}

.point-img-title {
    text-align: center;
    font-size: 160%;
    margin: 30px 0 20px 0;
		color: #ffffff;
}


li.top-point-item p {
    font-size: 150%;
    margin: 10px 2px 0 2px;
    line-height: 180%;
    color: #333333;
    text-align: justify;
}

ul.top-point-list li + li {
    margin: 0 0 40px 55px;
}
ul.top-point-list li:nth-child(3n+1) {
    clear: both;
    float: left;
    margin-left: 0;
}

.top-point-pickup {
	display: flex;
	justify-content: center;
	align-items: center;
	clear: both;
	padding-top: 30px;
}
.top-point-pickup-img {
	width: 60%;
	margin-left: 20px;
}
.top-point-pickup-img img {
	width: 100%;
}
.top-point-pickup-text {
    font-size: 190%;
		font-weight: bold;
    letter-spacing: .1em;
    color: #8dab40;
    width: 40%;
    text-align: center;
}

section.goto-map-area {}

a.goto-map-btn {
    display: block;
    text-decoration: none;
    color: #ffffff;
    font-size: 150%;
    letter-spacing: .2em;
    width: 100%;
    padding: 90px 0;
    background: url(../images/area_bg.png) no-repeat right center;
}

.goto-map-title {
    margin: 0 0 0 0;
    background: url(../images/arrow_round_white.png) no-repeat right center;
    background-size: 20px;
    width: 30%;
    text-align: center;
    margin-left: 20%;
}

section.goto-access-area {
    padding: 80px 0;
}

.goto-access-title {
    text-align: center;
    font-size: 230%;
    margin: 0;
    letter-spacing: .1em;
    color: #8dab40;
}

.map-width-full {
    min-width: 960px;
    width: 100%;
    height: 440px;
    margin: 45px 0;
}

.map-width-full
 iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

a.goto-access-btn {
    display: block;
    width: 380px;
    margin: 0 auto;
    text-align: center;
    font-size: 160%;
    font-weight: bold;
    text-decoration: none;
    color: #8dab40;
    border: 1px solid #8dab40;
    background: #faffec;
    padding: 15px 0;
}


.bg-black {
    background: #333333;
}

ul.footer-nav li {
    /* float: left; */
    font-size: 150%;
    display: inline-block;
}

ul.footer-nav li a {
    color: #ffffff;
    text-decoration: none;
}

ul.footer-nav li + li {
    margin-left: 10px;
    border-left: 1px solid #ffffff;
    padding: 0 0 0 12px;
}

ul.footer-nav li + li::before {
    /* content: "|"; */
    /* color: #ffffff; */
}

footer {
    padding: 20px 0;
}

.footer-nav {
    margin: 0;
    padding: 0;
    /* border-radius: .5rem; */
    /* box-shadow: 0px 0px 5px rgba(0,0,0,0.2); */
    list-style: none;
    text-align: center;
}

.footer-copyright {
    clear: both;
    text-align: center;
    margin: 30px 0 0 0;
    color: #ffffff;
    font-size: 120%;
    /* line-height: 150%; */
}
.footer-copyright a {
    text-decoration: none;
    color: #666666;
}

/*===================================
	下層ページ
===================================*/

.sub-catch {
    height: 300px;
}

.sub-catch + .width-full-inner .top-catch-txt-pc {display: none;}

.sub-catch img {
    margin: -25% 0 0 0;
}

.sub-catch + .width-full-inner .top-catch-txt-sp {
    display: block;
    width: 60%;
    margin: -145px auto 0 auto;
    position: relative;
    z-index: 3;
}

.sub-catch + .width-full-inner .top-catch-txt-sp img {
    display: block;
    width: 100%;
    position: relative;
    top: -70px;
    left: 100px;
}

main {
    margin: 40px 0 0 0;
}

.page-title {
    text-align: center;
    font-size: 280%;
    /* border: 1px dotted #cccccc; */
    /* border-left: 0; */
    /* border-right: 0; */
    padding: 1em 0 1em 0;
    font-weight: normal;
    letter-spacing: .1em;
    color: #ca235b;
}

section.section-wrap {
    padding: 40px 0;
}

address.access-info {
    text-align: center;
    font-style: normal;
    font-size: 250%;
    color: #73964e;
    margin: 0 0 30px 0;
	padding-top:30px;
}

.access-map {
    width: 100%;
    height: 400px;
    margin: 20px auto 40px auto;
}

.access-map iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

.access-map-txt {margin: 30px 0 100px 0;}

ul.access-map-list {
    text-align: center;
    font-size: 180%;
    list-style: none;
    margin: 0;
    padding: 0;
    color: #333333;
}

ul.access-map-list li {
    margin: 0 10px 20px 10px;
    /* display: inline-block; */
    line-height: 100%;
    /* background: #eef7d7; */
    /* padding: 15px 30px; */
}

.access-point {
    padding: 20px 30px 10px 30px;
    background: #fefefc;
    /* border: 1px solid #eeeeee; */
    margin: 0 0 40px 0;
    /* overflow: hidden; */
}

.access-point img {
    display: block;
    width: 100%;
    height: auto;
}

.access-point01 {
    position: relative;
    z-index: 3;
    float: right;
    /* background: #cccccc; */
    top: -430px;
    right: 110px;
    width: 370px;
    font-size: 170%;
    line-height: 180%;
    color: #de4d69;
    font-weight: bold;
    /* margin: 0 0 -70px 0; */
    letter-spacing: .1em;
}

ul.access-map-list li::before {
    display: block;
}

ul.pagein-link {
    margin: 0 auto 40px auto;
    padding: 0;
    list-style: none;
    font-size: 180%;
    text-align: center;
    width: 70%;
}

ul.pagein-link li {
    display: inline-block;
    margin: 0 5px 10px 5px;
    padding: 0;
}

ul.pagein-link a {
    text-decoration: none;
    background: #73964e;
    padding: .7em 1.5em;
    color: #ffffff;
    display: block;
}

h2.section-title {
    text-align: center;
    font-size: 360%;
    color: #8dab40;
    padding: 1.5em 0 0.25em 0;
    margin: 0 0 0 0;
	font-family: "Sawarabi Mincho", Helvetica, Arial, Verdana, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	letter-spacing: 0.2rem;
}

p.section-intro {
    text-align: center;
    font-size: 160%;
    color: #666666;
		    line-height: 180%;
}

ul.feature-list {
    margin: 50px 20px 50px 20px;
    padding: 0;
    font-size: 160%;
    color: #635245;
    line-height: 160%;
    background: #fbfbfb;
    padding: 50px 50px 35px 60px;
    /* box-shadow: 0px 0px 10px rgba(0,0,0,0.1); */
}

ul.feature-list li {
    margin-bottom: 20px;
}


ul.feature-list strong {
    color: #de4d69;
    font-weight: normal;
}

table {
  border-top: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
  border-collapse: collapse;
  width: 100%;
}
table th,
table td {
  border-left: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
  padding: 10px;
}
table th {
  background-color: #eee;
  text-align: left;
}

ul.flow-list {
    list-style: none;
    margin: 20px 20px 50px 20px;
    padding: 0;
}
ul.flow-list li + li {
    margin-top: 50px;
}
ol.flow-list {
    list-style: none;
    margin: 20px 20px 50px 20px;
    padding: 0;
    counter-reset: cnt;
}

ol.flow-list li {
    /* background: #cccccc; */
}

ol.flow-list li + li {
    margin-top: 50px;
}

h3.flow-list-title {
    font-size: 200%;
    text-align: center;
    counter-increment: cnt;
    color: #333333;
    letter-spacing: .2em;
}

h3.flow-list-title::before {
    content: counter(cnt);
    display: inline-block;
    width: 2em;
    height: 2em;
    background: #de4d69;
    color: #ffffff;
    border-radius: 50%;
    line-height: 2em;
    margin: 0 10px 0 0;
    text-align: center;
    font-weight: normal;
    font-size: 100%;
    text-indent: 4px;
}

.flow-flex {
	display:flex;
	flex-wrap: wrap;
	gap:12px;
}

.flow-flex .item{
	min-width:400px;
}

.flow-list-txt {
    padding: 20px 30px;
    font-size: 160%;
    line-height: 180%;
    background: #ffffff;
}

.flow-list-txt strong {
    color: #de4d69;
}

address.flow-list-address {
    font-style: normal;
    text-align: center;
    margin: 20px 0 0 0;
    display: block;
    overflow: hidden;
}

address.flow-list-address p {
    /* background: #f3dadf; */
    border: 1px solid #aac565;
    padding: 15px 0;
    margin: 20px auto 20px auto;
    display: block;
    width: 50%;
    color: #8dab40;
    font-size: 140%;
		font-weight: bold;
}
address.flow-list-address p span {
	font-size: 70%;
	font-weight: normal;
}

a.flow-list-btn-contact {
    display: block;
    text-decoration: none;
    width: 50%;
    text-align: center;
    margin: 0 auto 20px auto;
    font-size: 130%;
    background: #aac565;
    color: #ffffff;
    padding: 15px 0;
}

ul.map-list {
    list-style: none;
    margin: 0 auto;
    padding: 0;
    width: 100%;
    /* background: #000000; */
    overflow: hidden;
    text-align: center;
}

ul.map-list li {
    text-align: center;
    margin: 10px 15px 20px 15px;
    display: inline-block;
}

ul.map-list li a {
    display: block;
	position: relative;
	z-index: 2;
}
ul.map-list li + li {}

ul.map-list li a {
    text-decoration: none;
    /* color: #635245; */
    display: block;
    font-size: 150%;
    padding: 20px 25px;
    letter-spacing: .1em;
    background: #ffffff;
    border-width: 1px;
    border-style: solid;
}

ul.map-list li h3 {
    margin: 0;
}

.map-wrap {
    overflow: hidden;
    margin: 10px 0;
    padding: 60px;
    background: #ffffff;
}

.map-01 {
    width: 100%;
}

.map-wrap img {
    display: block;
    width: 100%;
}

.map-other {
    width: 53%;
    float: left;
    background: #ffffff;
    margin: 10px 0 0px 0;
}

.map-02 {
    width: 47%;
    float: right;
    margin: 10px 0;
}

.map-03 {
    width: 68%;
    float: left;
}

.map-04 {
    width: 31%;
    float: right;
}

.map-01 a {
    display: block;
    border: 4px solid #e2a5b9;
    padding: 30px 0;
    background: #ffffff;
}

.map-02 a {
    border: 4px solid #e2a5b9;
    background: #ffffff;
    display: block;
    padding: 11px 20px 10px 10px;
}

.map-other img {border: 4px solid #ffffff;border-right: none;padding: 10px 0px 18px 10px;background: #ffffff;width: 96%;}

.map-02 img {
    width: 105%;
}

.map-03 a {
    padding: 15px;
    border: 4px solid #e2a5b9;
    display: block;
}

.map-04 a {
    display: block;
    padding: 50px 10px 10px 10px;
    border: 4px solid #e2a5b9;
}

a.tag-map-01 {
	border-color: #aac565;
	color: #8dab40;
}

a.tag-map-02 {
	border-color: #f1b540;
	color: #ec9c00;
}

a.tag-map-03 {
	border-color: #ffbbcd;
	color: #e47399;
}

a.tag-map-04 {
	border-color: #91bce4;
	color: #4b92d4;
}

.area-img {
    background: #ffffff;
    width: 90%;
    margin: 0 auto;





}

.area-img img {
    display: block;
    margin: 0 auto 0 auto;
    padding: 30px 0 20px 0;
		width: 90%;
}

.price-img {
    width: 90%;
    margin: 0 auto;
    background: #ffffff;
}

.price-img img {
    display: block;
    width: 90%;
    height: auto;
    margin: 0 auto;
    padding: 20px 0px 30px 0;
    background: #ffffff;
}
.price-info {
    margin: 20px 100px 50px 100px;
}

.price-info p {
    font-size: 160%;
    line-height: 160%;
    color: #333333;
}

#area-privacy {
    overflow: hidden;
    margin: 50px 0;
    padding: 60px;
    background: #ffffff;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.1);
    font-size: 150%;
}
#area-privacy p{
	margin:0;
	padding:0;
	line-height:1.4;
}
#area-privacy dl{
	margin:0;
	padding:0;
}
#area-privacy dl dt{
	margin:1.5em 0 0.5em 0;
	padding:0;
    font-size: 115%;
}
#area-privacy dl dd{
	margin:0 1.5em;
	padding:0;
	line-height:1.4;
}
#area-privacy dl dd ul{
	margin:0.5em 0;
	padding:0;
}
#area-privacy dl dd ul li{
	margin:0 0 0 1.2em;
	padding:0;
}

#area-form {
    overflow: hidden;
    margin: 50px 0;
    padding: 60px;
    background: #ffffff;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.1);
}
#area-form p.intro{
	max-width:750px;
	margin:0 auto 1em;
	padding:0;
	text-align:left;
	font-size:150%;
}

#area-form span.kome {
	color:#F00;
	font-size:14px;
	font-weight:bold;
	padding:0 2px 0 5px;
}

.contact-form{
	margin-bottom:18px;
	table-layout: fixed;
}
.contact-form th{
	font-weight:normal;
	min-width:20%;
}

.item-check {
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-flex-direction: row; /* Safari */
	flex-direction:         row;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	margin:0 auto;
	padding:0;
	list-style:none;
}
.item-check li{
	margin:0;
	padding:5px 10px;
}
.contact-form input, .contact-form button, .contact-form textarea, .contact-form select {
}
.contact-form input[type="text"], .contact-form textarea {
	width:95%;
	padding: 0.5em;
	outline: none;
	border: 1px solid #DDD;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	font-size: 16px;
	outline: none;
	border: 1px solid #aaa;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.contact-form input[type="text"]:focus, .contact-form textarea:focus {
	border: 1px solid #1abc9c;
}
#area-form .btn input {
	display: inline-block;
	width: 9em;
	text-align: center;
	text-decoration: none;
	font-size:22px;
	line-height: 2.4em;
	outline: none;
	border:none;
	margin:4px 8px;
	padding:0 1em;
}
#area-form .btn input::before,
#area-form .btn input::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
#area-form .btn input,
#area-form .btn input::before,
#area-form .btn input::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

#area-form .btn input {
  background-color: #73964e;
  color: #fff;
}
#area-form .btn input:hover {
  background-color: #59b1eb;
}

/*===================================
	文字揃え
===================================*/
.txt-center {
    text-align: center;
    font-size: 160%;
    color: #333333;
    line-height: 160%;
}


/*===================================
	SP|PCの非表示・表示要素切り替えclass
===================================*/
.pc-none {
    display: none;
}
.sp-logo {
    display: none;
}


/*===================================
	メディアクエリ
===================================*/
@media (max-width: 768px) {
		.sp-none {
			display: none;
			margin: 0;
			padding: 0;
			width: 1px;
			height: 1px;
			float: none;
			clear: both;
		}
		.pc-logo {
			display: none;
		}
		.pc-none {
			display: block;
		}
		.sp-logo {
			clear: both;
			margin: -130px 30px 0 10px;
			padding: 5px 14px 5px 5px;
			display: block;
			background: #73964e;
			width: 30%;
			height: auto;
			float: left;
			position: relative;
			z-index: 2;
			float: left;
		}

    .wrap {
        /* max-width: 768px; */
        min-width: 768px;
        width: 100%;
    }

    .width-full {
        min-width: 768px;
        width: 100%;
    }
    .width-full-inner {
        width: 100%;
        max-width: 768px;
    }
    .sub-catch img {
    margin: -10% 0 0 0;
}
    .top-catch {
        max-width: 768px;
        max-height: 384px;
        position: relative;
        z-index: 1;
    }

    .top-catch-txt-sp {
        clear: both;
        display: block;
        margin: -230px 10px 0 20px;
        position: relative;
        z-index: 99;
        overflow: hidden;
        width: 50%;
        float: right;
    }
    .top-catch-txt-sp img {
        display: block;
        margin: 0 auto;
        width: 100%;
        height: auto;
    }
		.sub-catch + .width-full-inner .top-catch-txt-sp {
				margin: -260px 0 0 0;
				overflow: visible;
				right: 10%;
		}
		.sub-catch + .width-full-inner .top-catch-txt-sp img {
		display: block;
		margin: 0 0 0 0;
		top: 0;
		left: 0;
		}
		
		.so-logo {
			display: block;
		}
		.sp-logo-inner {
    width: 100%;
    border: 1px solid #ffffff;
    padding: 3px;
		}
		
		.sp-logo-inner img {
				display: block;
				width: 100%;
				height: auto;
		}
		
		.sp-logo-inner p {
				margin: 3px 0 0 0;
				text-align: center;
				color: #dae6cd;
		}
		
		header {
				clear: both;
				/* float: right; */
				width: 100%;
				/* height: 70px; */
				margin: 0;
				padding: 0;
				/* background: #ffffff; */
				position: relative;
				z-index: 90;
		}
		p.nav_handle {
				font-size: 220%;
				text-align: center;
				/* height: 50px; */
				padding: 0;
				font-weight: bold;
				color: #73964e;
		}
		nav.navigation {
			width: 100%;
			background: #ffffff;
			overflow: hidden;
		}
		
		.top-contents-area {
    width: 100%;
    margin: 0 auto;
    padding: 70px 0;

		}
		ul.contents-list {
    list-style: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    text-align: center;
		}
		
		
		ul.contents-list li {
				width: 180px;
				height: 180px;
				margin-left: 10px;
				border-radius: 50%;
				overflow: hidden;
				float: left;
				/* display: inline-block; */
		}
		ul.contents-list li + li {
    margin-left: 10px;
  }
		nav.navigation {
			display: block;
			width: 100%;
			overflow: hidden;
			background: #ffffff;
			/* border: 1px dotted #cccccc; */
			/* border-right: 0; */
			/* border-left: 0; */
			/* border-bottom: 0; */
			padding: 0;
		}
		nav.navigation a {
			display: block;
			float: none;
			clear: both;
			width: 100%;
			background: #73964e;
			text-align: center;
			padding: 20px 0;
			font-weight: bold;
			font-size: 130%;
			letter-spacing: .1em;
		}
		span.navtxt-jp {
			color: #ffffff;
		}
		span.navtxt-en {
			display: none;
		}
		nav.navigation a + a {
			margin: 0;
			border-top: 1px dotted #ffffff;
		}
		section.goto-flow-area {
    width: 768px;
    margin: 0 auto;
  }
		
		.goto-flow-title {
				font-size: 190%;
				letter-spacing: .1em;
				color: #635245;
				width: 100%;
				/* background: #cccccc; */
				float: none;
				margin: 60px 0 0 0;
				text-align: center;
		}
		
		.goto-flow-txt {
				float: none;
				width: 100%;
				text-align: center;
				font-size: 150%;
				line-height: 180%;
				letter-spacing: .1em;
				color: #635245;
				/* padding: 40px 0; */
				margin: 0 4% 0 0;
		}
		
		.goto-flow-txt p {
				margin: 0;
		}
		
		a.btn-goto-flow {
				display: inline-block;
				text-decoration: none;
				background: #73964e;
				padding: 20px 60px;
				font-size: 110%;



				margin: 20px 0 0 0;
				color: #ffffff;
		}

		section.goto-contact-area {
				width: 768px;
				margin: 0 auto;
				/* padding: 50px 0 50px 0; */
		}
		
		.goto-contact-title {
				text-align: center;
				font-size: 240%;
				color: #ffffff;
				letter-spacing: .1em;
				margin-bottom: 2em;
				margin-top: 0;
		}
		
		.goto-contact-title
		 span::before {
				width: 2em;
				height: 1px;
				content: "";
				background: #ffffff;
				display: inline-block;
				position: relative;
				top: -.3em;
				margin: 0 1em 0 0;
		}
		
		.goto-contact-title span::after {
				width: 2em;
				height: 1px;
				content: "";
				background: #ffffff;
				display: inline-block;
				position: relative;
				top: -.3em;
				margin: 0 0 0 1em;
		}
		
		section.goto-contact-area p {
				font-size: 150%;
				text-align: center;
				color: #ffffff;
		}
	
		section.top-point-area {
				padding: 70px 0;
				width: 100%;
				margin: 0 auto;
				overflow: hidden;
		}
		
		ul.top-point-list {
				list-style: none;
				margin: 0;
				padding: 0;
		}
		
		ul.top-point-list li {
			width: 220px;
		}
		
		ul.top-point-list li + li {
				margin: 0 0 40px 30px;
		}

		ul.top-point-list li:nth-child(3n+1) {
				clear: both;
				float: left;
				margin-left: 25px;
		}
		.point-img {
			min-height: 230px;
		}
		.point-img-title {
			text-align: center;

			font-size: 170%;
			margin: 30px 20px 15px 20px;
			line-height: 160%;
		}
		li.top-point-item a p {
			margin: 10px 10px 0 10px;
		}
		
		ul.pagein-link {
    margin: 0 auto 40px auto;
    padding: 0;
    list-style: none;
    font-size: 180%;
    text-align: center;
    width: 90%;
}
		.goto-map-title {
			width: 40%;
		}

		.top-point-pickup {
			flex-direction: column-reverse;
			justify-content: center;
			padding-top: 10px;
		}
		.top-point-pickup-img {
			width: 89%;
			margin: 0;
		}
		.top-point-pickup-text {
			font-size: 190%;
			width: 100%;
			text-align: center;
		}



		section.goto-access-area {
				padding: 80px 0;
		}
		.map-width-full {
				min-width: 768px;
				width: 100%;
				height: 440px;
				margin: 45px 0;
		}

		.access-point01 {
			margin: 0;
			top: 0;
			width: 100%;
			margin: 30px 0;
			text-align: center;
			right: 0;
			left: 0;
		}
		
.page-title {
    font-size: 250%;
    line-height: 170%;
    padding: 1em 1em 2em 1em;
}
		ul.pagein-link li {
    display: block;
    margin: 0 30px 10px 30px;
    padding: 0;
		}
		ul.feature-list {
    margin: 50px 0px 0px 0px;
    padding: 0;
    font-size: 170%;
    color: #635245;
    line-height: 160%;
    background: #fbfbfb;
    padding: 50px 30px 35px 50px;
    /* box-shadow: 0px 0px 10px rgba(0,0,0,0.1); */
  }
		p.section-intro {
    text-align: left;
    font-size: 160%;
    color: #666666;
    margin-left: 20px;
    margin-right: 20px;
    line-height: 180%;
}
address.flow-list-address {
    font-style: normal;
    text-align: center;
    margin: 20px 0 0 0;
    display: block;
    overflow: hidden;
}

address.flow-list-address p {
    width: 95%;
		line-height: 150%;
}
address.flow-list-address p span {
	display: block;
}

a.flow-list-btn-contact {
    width: 95%;
    margin: 0 auto 20px auto;
}

.price-info {
    margin: 20px;
}

}

@media (max-width: 667px) {
	.sp-logo {
		width: 30%;
		margin: -160px 0 0 33%;
		position: relative;
		z-index: 4;
		}

    .wrap {
        min-width: 667px;
        width: 100%;
    }

    .width-full {
        min-width: 667px;
        width: 100%;
    }
    .width-full-inner {
        width: 100%;
        max-width: 667px;
    }
    .top-catch {
        max-width: 667px;
        height: 334px;
    }

    .top-catch-txt-sp {
	    margin: -290px auto 0 auto;
	    float: none;
	    width: 70%;
	   }
    .top-catch-txt-sp img {
    }

		.sp-logo-inner {
		}
		
		.sp-logo-inner img {
		}
		
		.sp-logo-inner p {
		font-size: 150%;
		}
		
		header {
		width: 100%;
		margin: 190px 0 0 0;
		}
		
		.sub-catch + .width-full-inner + header {
    width: 100%;
    margin: 0 0 0 0;
}
		p.nav_handle {
				font-size: 220%;
				text-align: center;
		}

		.sub-catch + .width-full-inner .top-catch-txt-sp {
    left: 0;
    right: 0;
    margin: -266px auto 40px auto;
    /* overflow: visible; */
    padding: 0;
}
		.sub-catch + .width-full-inner + header .sp-logo {
				float: none;
				margin-top: 0;
		}
				
		.top-contents-area {
    width: 100%;
    margin: 0 auto;
    padding: 70px 0;
		}
		ul.contents-list {
    list-style: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    text-align: center;
		}
		
		ul.contents-list li {
				width: 310px;
				height: 310px;
				margin-left: 10px;
				margin-bottom: 10px;
				border-radius: 50%;
				overflow: hidden;
				float: left;
				/* display: inline-block; */
		}
		ul.contents-list li + li {
    margin-left: 15px;
  }


		nav.navigation {
		}
		nav.navigation a {
		}

		nav.navigation a + a {
		}
		section.goto-flow-area {
			width: 667px;
  }
		
		.goto-flow-title {
				font-size: 210%;
		}
		
		.goto-flow-txt {
				font-size: 180%;
				line-height: 190%;
		}
		
		.goto-flow-txt p {
				margin: 0 30px;
		}
		
		a.btn-goto-flow {
				font-size: 120%;
		}

		section.goto-contact-area {
				width: 667px;
		}
		
		.goto-contact-title {
				font-size: 240%;
		}
		
		section.goto-contact-area p {
				font-size: 180%;
				line-height: 180%;
		}
		
		a.goto-contact-btn {
				font-size: 230%;
		}
		
		section.top-point-area {
				padding: 70px 0;

				width: 100%;
				margin: 0 auto;
				overflow: hidden;
		}
		
		.top-point-title {
				margin: 0 0 3em 0;
				text-align: center;
				font-size: 230%;
				color: #8dab40;
		}
		
		ul.top-point-list {
				list-style: none;
				margin: 0;
				padding: 0;
		}
		
		ul.top-point-list li {
				 width: 45%;
				 margin: 0 0 0 2%;
		}
		
		li.top-point-item
		 a {
		}
		
		.point-img-wrap {
		}
		
		.point-img {
		}
		
		.point-img::before {
		}
		
		.point-img img {
		}
		
		.point-img-title {
				font-size: 180%;
				line-height: 160%;
		}
		
		
		li.top-point-item
		 a p {
				font-size: 160%;
				margin: 10px .5em 0 .5em;
		}
		
		ul.top-point-list li + li {
				margin: 0 0 20px 3%;
		}
		ul.top-point-list li:nth-child(3n+1) {
			float: left;
			clear: right;
			margin-left: 3%;
		}
		ul.top-point-list li:nth-child(2n+1) {
				clear: both;
				float: left;
				margin-left: 3%;
		}

		a.goto-map-btn {
				font-size: 150%;
				letter-spacing: .2em;
				padding: 90px 0;

		}
		
		.goto-map-title {
			width: 50%;
			margin-left: 0;
		}
		section.goto-access-area {
		}
		
		.goto-access-title {
				font-size: 230%;
		}
		
		.map-width-full {
				min-width: 667px;
				width: 100%;
				height: 440px;
				margin: 45px 0;
		}
	
		a.goto-access-btn {
				margin: 0 auto;
				font-size: 220%;
				padding: 15px 30px;
		}
		ul.footer-nav li {
    /* float: left; */
    font-size: 180%;
    line-height: 100%;
    margin-bottom: 20px;
		}

	
}

@media (max-width: 568px) {
	.sp-logo {
		margin: -160px 0 0 33%;
		width: 30%;
		}

    .wrap {
        min-width: 568px;
        width: 100%;
    }

    .width-full {
        min-width: 568px;
        width: 100%;
    }
    .width-full-inner {
        width: 100%;
        max-width: 568px;
    }
    .top-catch {
        max-width: 568px;
        max-height: 284px;
    }

    .top-catch-txt-sp {
	    margin: -250px auto 15px auto;
	    width: 60%;
	    display: block;
	   }
    .top-catch-txt-sp img {
    width: 100%;
    }
		
		.sub-catch + .width-full-inner + header .sp-logo {
		margin: 0px 0 0 31%;
		width: 30%;
		}


		.sp-logo-inner {
		}
		
		.sp-logo-inner img {
		}
		
		.sp-logo-inner p {
		}
		
		header {
		position: relative;
		z-index: 99;
		text-align: center;
		}
		p.nav_handle {
				font-size: 220%;
		}
		
		.top-contents-area {
    width: 100%;
    margin: 0 auto;
    padding: 40px 0 15px 0;
  }
		ul.contents-list {
    list-style: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    text-align: center;
		}
		
		ul.contents-list li {
				width: 240px;
				height: 240px;
				margin-left: 25px;
				margin-bottom: 25px;
				border-radius: 50%;
				overflow: hidden;
				float: left;
				/* display: inline-block; */
		}
		ul.contents-list li + li {
    margin-left: 25px;
  }


		nav.navigation {
		}
		nav.navigation a {
		}

		nav.navigation a + a {
		}
		section.goto-flow-area {
			width: 568px;
		}
		
		.goto-flow-title {
				font-size: 210%;
		}
		
		.goto-flow-txt {
				font-size: 180%;
				line-height: 190%;
		}
		
		.goto-flow-txt p {
				margin: 0 30px;
		}
		
		a.btn-goto-flow {
				font-size: 110%;
				width: 80%;
				padding: 1em 1em;
		}

		section.goto-contact-area {
				width: 568px;
		}
		
		.goto-contact-title {
				font-size: 240%;
		}
		
		section.goto-contact-area p {
				font-size: 180%;
				line-height: 180%;
				margin: 0 30px;
		}
		
		a.goto-contact-btn {
				font-size: 230%;
		}
		
		section.top-point-area {
				padding: 70px 0;
				width: 100%;
				margin: 0 auto;
				overflow: hidden;
		}
		
		.top-point-title {
				margin: 0 0 3em 0;
				text-align: center;
				font-size: 230%;
				color: #8dab40;
		}
		
		ul.top-point-list {
				list-style: none;
				margin: 0;
				padding: 0;
		}
		
		ul.top-point-list li {
				 width: 45%;
				 margin: 0 0 0 2%;
		}
		
		li.top-point-item
		 a {
		}
		

		.point-img-wrap {
		}




		
		.point-img {
		min-height: 230px;
		}
		
		.point-img::before {
		}
		
		.point-img img {
		}
		
		.point-img-title {
				font-size: 170%;
				line-height: 160%;
				margin-left: 0;
				margin-right: 0;
		}
		
		
		li.top-point-item
		 a p {
				font-size: 160%;
				margin: 10px .5em 0 .5em;
		}
		
		ul.top-point-list li + li {
				margin: 0 0 20px 3%;
		}
		ul.top-point-list li:nth-child(3n+1) {
			float: left;
			clear: right;
			margin-left: 3%;
		}
		ul.top-point-list li:nth-child(2n+1) {
				clear: both;
				float: left;
				margin-left: 3%;
		}

		a.goto-map-btn {
				font-size: 150%;
				letter-spacing: .2em;
				padding: 90px 0;

		}
		
		.goto-map-title {
			width: 50%;
			margin-left: 0;
		}
		section.goto-access-area {
		}
		
		.goto-access-title {
				font-size: 230%;
		}
		
		.map-width-full {
				min-width: 568px;
				width: 100%;
				height: 400px;
				margin: 45px 0;
		}
	
		a.goto-access-btn {
				margin: 0 auto;
				font-size: 220%;
				padding: 15px 30px;
				width: 70%;
		}
		ul.footer-nav li {
    /* float: left; */
    font-size: 180%;
    line-height: 100%;
    margin-bottom: 20px;
		}
		.map-wrap {
    overflow: hidden;
    margin: 50px 10px;
    padding: 20px;
    background: #ffffff;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.1);
}
.map-01 a{
	padding: 5px 0 5px 0;
}
.map-other img {
	padding: 5px 0px 0px 0;
}
.map-02 a{
	padding: 5px 5px 2px 5px;
	overflow: hidden;
}
.map-02 img {
	width: 110%
}
.map-03 a{
	padding: 10px 5px 0px 0;
}
.map-04 a {
    padding: 21px 0px 5px 5px;
    }
    ul.map-list li {
    	display: block;
    	font-size: 90%;
    	margin: 0 10px;
    }
    ul.map-list li + li {
    	margin: 5px 10px 0 10px;
    }
		#area-privacy {
    overflow: hidden;
    margin: 50px 10px;
    padding: 20px;
    background: #ffffff;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.1);
}
		#area-form {
    overflow: hidden;
    margin: 30px 5px;
    padding: 15px;
    background: #ffffff;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.1);
}
}

@media( max-width: 480px) {
    
	.sp-logo {
		margin: -110px 0 0 32%;
		}

    .wrap {
        min-width: 480px;
        width: 100%;
    }

    .width-full {
        min-width: 480px;
        width: 100%;
    }
    .width-full-inner {
        width: 100%;
        max-width: 480px;
    }
    .top-catch {
        max-width: 480px;
        max-height: 240px;
    }


    .top-catch-txt-sp {
	    margin: -150px auto 0 auto;
	    width: 80%;
	   }
    .top-catch-txt-sp img {
    }

    .sub-catch + .width-full-inner .top-catch-txt-sp {
        
margin: -210px auto 5px auto;
    }

		.sp-logo-inner {
		}
		
		.sp-logo-inner img {
		}
		
		.sp-logo-inner p {
		}
		
		header {
		margin: 134px 0 0 0;
		}
		p.nav_handle {
				font-size: 220%;
		}
		
		.top-contents-area {
    width: 100%;
    margin: 0 auto;
    padding: 40px 0 15px 0;
  }
		ul.contents-list {
    list-style: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    text-align: center;
		}
		
		ul.contents-list li {
				width: 45%;
				height: 45%;
				margin-left: 3%;
				margin-bottom: 3%;
				border-radius: 50%;
				/* border-radius: 0; */
				overflow: hidden;
				float: left;
				/* display: inline-block; */
		}
		ul.contents-list li + li {
    margin-left: 3%;
  }


		nav.navigation {
		}
		nav.navigation a {
		}

		nav.navigation a + a {
		}
		section.goto-flow-area {
			width: 480px;
		}
		
		.goto-flow-title {
				font-size: 210%;
		}
		
		.goto-flow-txt {
				font-size: 180%;
				line-height: 190%;
		}
		
		.goto-flow-txt p {
				margin: 0 30px;
		}
		
		a.btn-goto-flow {
				font-size: 110%;
				width: 80%;
				padding: 1em 1em;
		}

		section.goto-contact-area {
				width: 480px;
		}
		
		.goto-contact-title {
				font-size: 240%;
		}
		
		section.goto-contact-area p {
				font-size: 180%;
				line-height: 180%;
				margin: 0 30px;
		}
		
		a.goto-contact-btn {
				font-size: 230%;
		}
		
		section.top-point-area {
				padding: 70px 0;
				width: 100%;
				margin: 0 auto;
				overflow: hidden;
		}
		
		.top-point-title {
				margin: 0 0 3em 0;
				text-align: center;
				font-size: 230%;
				color: #8dab40;
		}
		
		ul.top-point-list {
				list-style: none;
				margin: 0;
				padding: 0;
		}
		
		ul.top-point-list li {
				 width: 45%;
				 margin: 0 0 0 2%;
		}
		
		li.top-point-item
		 a {
		}
		
		.point-img-wrap {
		}
		
		.point-img {
		min-height: 245px;
		}
		
		.point-img::before {
		}
		
		.point-img img {
		}
		
		.point-img-title {
				font-size: 180%;
				line-height: 160%;
				margin: 20px;
		}
		
		
		li.top-point-item
		 a p {
				font-size: 160%;
				margin: 10px .5em 0 .5em;
		}
		
		ul.top-point-list li + li {
				margin: 0 0 40px 3%;
		}
		ul.top-point-list li:nth-child(3n+1) {
			float: left;
			clear: right;
			margin-left: 3%;
		}
		ul.top-point-list li:nth-child(2n+1) {
				clear: both;
				float: left;
				margin-bottom: 50px;
		}

		a.goto-map-btn {

				font-size: 150%;
				letter-spacing: .2em;
				padding: 90px 0;

		}
		
		.goto-map-title {
			width: 60%;
			margin-left: 0;
		}
		section.goto-access-area {
		}
		
		.goto-access-title {
				font-size: 230%;
		}
		
		.map-width-full {
				min-width: 480px;
				width: 100%;
				height: 400px;
				margin: 45px 0;
		}
	
		a.goto-access-btn {
				margin: 0 auto;
				font-size: 220%;
				padding: 15px 30px;
				width: 70%;
		}
		ul.footer-nav li {
    /* float: left; */
    font-size: 180%;
    line-height: 100%;
    margin-bottom: 20px;
		}

}

@media( max-width: 375px) {
    .sub-catch + .width-full-inner .top-catch-txt-sp {
    margin: -170px auto 15px auto;
    width: 80%
}

	.sp-logo {
		margin: -80px 0 10px 31.5%;
		width: 30%;
		}

    .wrap {
        min-width: 375px;
        width: 100%;

    }

    .width-full {
        min-width: 375px;
        width: 100%;
    }
    .width-full-inner {
        width: 100%;
        max-width: 375px;
    }
    .top-catch {
        max-width: 375px;
        max-height: 188px;
    }

    
		.sp-logo-inner {
		}
		
		.sp-logo-inner img {
		}
		
		.sp-logo-inner p {
		font-size: 120%;
		}
		
		header {
			margin: 90px 0 0 0;
		}
		p.nav_handle {
				font-size: 220%;
		}
		
		.top-contents-area {
    width: 100%;
    margin: 0 auto;
    padding: 40px 0 15px 0;
  }
		ul.contents-list {
    list-style: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    text-align: center;
		}
		
		ul.contents-list li {
				width: 80%;
				height: 200px;
				margin-left: 10%;
				margin-bottom: 1%;
				border-radius: 50%;
				border-radius: 0;
				overflow: hidden;
				float: left;
				/* display: inline-block; */
		}
		ul.contents-list li + li {
    margin-left: 10%;
  }
  ul.contents-list
 li img {
 	margin: -80px 0 0 0;
 }


		nav.navigation {
		}
		nav.navigation a {

		}

		nav.navigation a + a {
		}
		section.goto-flow-area {
			width: 375px;
		}
		
		.goto-flow-title {
				font-size: 210%;
		}
		
		.goto-flow-txt {
				font-size: 180%;
				line-height: 190%;
		}
		
		.goto-flow-txt p {
				margin: 0 30px;
		}
		
		a.btn-goto-flow {
				font-size: 110%;
				width: 68%;
				padding: 1em 1em;
		}

		section.goto-contact-area {
				width: 375px;
		}
		
		.goto-contact-title {
				font-size: 240%;
		}
		
		section.goto-contact-area p {
				font-size: 170%;
				line-height: 170%;
				margin: 0px 20px;
		}
		
		a.goto-contact-btn {
				font-size: 200%;
				width: 80%;
		}
		
		section.top-point-area {
				padding: 70px 0;
				width: 100%;
				margin: 0 auto;
				overflow: hidden;
		}
		
		.top-point-title {
				margin: 0 0 1em 0;
				text-align: center;
				font-size: 230%;
				color: #8dab40;
		}
		
		ul.top-point-list {
				list-style: none;
				margin: 0 10px;
				padding: 0;
		}
		
		ul.top-point-list li {
				 width: 46%;
				 margin: 0 0 50px 0;
				 /* background: #ffffff;*/
				 padding: 0;
				 float: left;
		}
		
		li.top-point-item
		 a {
		}
		
		about-point .point-img-wrap {
		float: none;
		width: 75%;
		margin: 0 auto;
		}
		
		about-point .point-img {
		min-height: auto;
		}
		
		.point-img::before {
		}
		
		.about-point .point-img img {
		width: 50%;
		margin: 20px 15% 0 auto;
		}
		
.about-point .point-img-title {
    font-size: 240%;
    line-height: 160%;
    margin: 20px 10px 10px 10px;
}
		
		.point-img {
		min-height: 200px;
		}
		
		.point-img::before {
		}
		
		.point-img img {
		}
		
		.point-img-title {
				font-size: 180%;
				line-height: 160%;
				margin: 20px 0 0 0;
		}
		
		li.top-point-item
		 a p {
				font-size: 180%;
				margin: 20px 20px 0 20px;
				padding: 0;
		}
		
		ul.about-point li + li {
		margin: 0 0 40px 0;
		}
		ul.about-point li:nth-child(3n+1) {
		margin-left: 0;
		}
		ul.about-point li:nth-child(2n+1) {
		margin-left: 0;
		}

		a.goto-map-btn {
				font-size: 150%;
				letter-spacing: .2em;
				padding: 90px 0;

		}
		
		.goto-map-title {
			width: 80%;
			margin-left: 0;
		}
		section.goto-access-area {
		}
		
		.goto-access-title {
				font-size: 230%;
		}
		
		.map-width-full {
				min-width: 375px;
				width: 100%;
				height: 400px;
				margin: 45px 0;
		}
	
		a.goto-access-btn {
				margin: 0 auto;
				font-size: 220%;
				padding: 15px 30px;
				width: 80%;
				font-size: 180%;
		}
		ul.footer-nav li {
    /* float: left; */
    font-size: 180%;
    line-height: 100%;
    margin-bottom: 20px;
		}
		
		.about-point li.top-point-item {
				width: 100%;
				margin-bottom: 50px;
				margin-left: 0;
		}
}

@media( max-width: 320px) {

	.sub-catch + .width-full-inner .top-catch-txt-sp {

			margin: -140px auto 15px auto;
			width: 95%
	}

	.sp-logo {
		margin: -75px 0 0 27%;
		width: 37%;
		}
		.sub-catch + .width-full-inner + header .sp-logo {
			margin: 0px 0 0 27%;
		width: 40%;
		}

    .wrap {
        min-width: 320px;
    }

    .width-full {
        min-width: 320px;
        width: 100%;
    }
    .width-full-inner {
        width: 100%;
        max-width: 320px;
    }
    .top-catch {
        max-width: 320px;
        max-height: 160px;
    }

		
		header {
			margin: 105px 0 0 0;
		}
		p.nav_handle {
				font-size: 220%;
		}

		nav.navigation a + a {
		}
		section.goto-flow-area {
			width: 320px;
		}

		section.goto-contact-area {
				width: 320px;
		}
		
		.goto-contact-title {
				font-size: 240%;
		}
		
		.goto-contact-title span::before,
		.goto-contact-title span::after {
				display: none;
		 }

		section.goto-contact-area p {
				font-size: 170%;
				line-height: 170%;
				margin: 0px 20px;
		}
		
		a.goto-contact-btn {
				font-size: 180%;
				width: 90%;
		}
		
		section.top-point-area {
				padding: 70px 0;
				width: 100%;
				margin: 0 auto;
				overflow: hidden;
		}
		
		.top-point-title {
				margin: 0 0 1em 0;
				text-align: center;
				font-size: 230%;
				color: #8dab40;
		}
		.top-point-list li {
				width: 90%;
				margin: 0 0 10px 0;
				background: none;
				padding: 10px;
		}
				
		li.top-point-item a {
		}
		
		.point-img-wrap {
				float: none;
				width: 96%;
				margin: 0 auto;
		}
		
		.point-img {
				min-height: 100px;
		}
		
		.point-img::before {
		}
		
		.point-img img {
				width: 80%;
				margin: 10px auto 10px 11%;
		}
		
		.point-img-title {
				font-size: 180%;
				line-height: 160%;
				margin: 20px 0;
		}
		
		li.top-point-item a p {
				font-size: 155%;
				margin: 0 0 0 0;
				padding: 20px 0;
				text-align: left;
		}
		
		ul.top-point-list li + li {
				margin: 0 0 2% 2%;
		}
		ul.top-point-list li:nth-child(3n+1) {
			float: left;
			clear: right;
			margin-left: 3%;
		}
		ul.top-point-list li:nth-child(2n+1) {
				clear: both;
				float: left;
				margin-left: 2%;
		}

		a.goto-map-btn {
				font-size: 150%;
				letter-spacing: .2em;
				padding: 90px 0;
		}
		
		.goto-map-title {
			width: 80%;
			margin-left: 0;
		}
		section.goto-access-area {
		}
		
		.goto-access-title {
				font-size: 230%;
		}
		
		.map-width-full {
				min-width: 320px;
				height: 300px;
		}
	
		a.goto-access-btn {
				margin: 0 auto;
				font-size: 220%;
				padding: 15px 0;
				width: 90%;
				font-size: 174%;
		}
		ul.footer-nav li {
    /* float: left; */
    font-size: 180%;
    line-height: 100%;
    margin-bottom: 20px;
		}

		.point-img-wrap {
			margin: 0 20px;
		}

}


table {
  border-collapse: collapse;
  width: 100%;
  font-size: 160%;
  line-height: 180%;
  width: 90%;
  margin: 30px auto 60px auto;
}
table th,
table td {
  padding: 10px;
  border: 1px solid #cccccc;
  background: #ffffff;
}
table th {
  background-color: #eee;
  text-align: center;
  width: 30%;
}

@media screen and (max-width: 400px) {
	table {
			border-top: 1px solid #cccccc;
			margin: 0 auto 60px auto;
			width: 90%;
	}
  table td {
    display: block;
    text-align: center;
    border-right: none;
  }
  table th {
    display: block;
    border-top: none;
    border-bottom: none;
    border-right: none;
    width: auto;
  }
}

:focus {
	outline:none;
}

.foot-info {
	text-align: center;
	margin:0 auto 22px;
	padding:0;
	width:100%;
	max-width:480px;
	color:#fff;
}
.foot-info dt{
	margin:0;
	padding:0;
	font-size:22px;
	line-height:1.8;
}
.foot-info dd{
	margin:0;
	padding:0;
	font-size:18px;
	line-height:1.4;
}

.area-inner {
	position: relative;
	background: #fff;
	padding-bottom:24px;
}

.area-inner::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  border-image-source: repeating-linear-gradient(45deg, #8FD3AD 0, #8FD3AD 3px, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0) 6px);
  border-width: 20px;
  border-image-slice: 20;
  border-image-repeat: round;
  border-style: solid;
  z-index: 1;
}

.modal {
	position: relative;
	width:90%;
	max-width:480px;
	margin:10px auto;
	text-align: center;
	z-index:2;
}
.modal a{
	display: block;
	overflow:hidden;
}
.modal a img:hover{
	transform:scale(1.1);
	transition:0.3s;
}
.modal img{
	width:100%;
	height:auto;
}

.flex-modal {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin:10px auto;
	text-align: center;
	z-index:2;
	gap:10px;
}
.flex-modal figure{
	margin:0;
}
.flex-modal figcaption{
	margin-top:1em;
	font-size:16px;
}
.flex-modal a{
	display: block;
	overflow:hidden;
	text-decoration: none;
	z-index:2;
}
.flex-modal a img:hover{
	transform:scale(1.1);
	transition:0.3s;
}
.flex-modal img{
	width:100%;
	max-width:240px;
	height:auto;
}
.modal-intro {
	text-align:center;
	font-size:16px !important;
	line-height:1.8;
}

.flex-modal2 {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin:10px auto;
	text-align: center;
	z-index:2;
	gap:10px;
}
.flex-modal2 a{
	width:100%;
	width:240px;
	display: block;
	overflow:hidden;
	text-decoration: none;
}
.flex-modal2 a img:hover{
	transform:scale(1.1);
	transition:0.3s;
}
.flex-modal2 img{
	width:100%;
	height:auto;
}


.flex-flow {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin:10px auto;
	text-align: center;
	z-index:2;
	gap:10px;
}
.flex-flow figure{
	margin:0;
}
.flex-flow a{
	display: block;
	overflow:hidden;
	text-decoration: none;
	z-index:2;
}
.flex-flow a img:hover{
	transform:scale(1.1);
	transition:0.3s;
}
.flex-flow img{
	width:100%;
	max-width:320px;
	height:auto;
}

input#submit-btn {
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    background: #666;
    color: #ffffff;
    letter-spacing: 1px;
    border: 0;
	cursor: pointer;
}
input#submit-btn[disabled] {
  background-color: #ccc;
  cursor: not-allowed;
}

.form-check {
	line-height:2;
	font-size:18px;
}
