body {
	margin: 0px;
	padding: 0px;
	text-align: center;
	font-size: 20px;
	line-height: 2.0em;
	font-family:Avenir , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
	font-weight: 400;
	color: #000;
	background:center 68px no-repeat fixed #fff;
	-webkit-text-size-adjust: 100%;
}
body#inframe {
	background: transparent;
	overflow:hidden;
}
a:link,
a:visited {text-decoration: none; color: #000;}
a:hover,
a:active {text-decoration: none; color: #000;}

.pc {
	display: block;
}
.sp {
	display: none;
}
.center {
	text-align: center;
}
img {
	max-width: 100%;
	border: none;
}
img580 {
	max-width: 580px;
}
.no {
	font-family:"Times New Roman",Times;
	font-weight: 400;
}
.red {
	color: #ff0000;
}
s {
	color: #ff0000;
}
.black {
	color: #000;
}
s .black {
	font-size: 84%;
}
.txt-l {
	font-size: 120%;
	line-height: 1.0em;
}
.txt-s {
	font-size: 88%;
	line-height: 1.4em;
}
.txt-ss {
	font-size: 80%;
	line-height: 1.4em;
}


/* top
	height: 690px;
	padding: 30px 0 0;
 * --------------------------------------- */
#toppic {
	position: relative;
	display: block;
	margin: 0;
	padding: 0;
	text-align: center;
	background:#0090ff url(../images/back.png) center top repeat-x;
	background-size:cover;
}
#toppic img {
	margin: 0 auto;
}
#toppictelsp {
	position: absolute;
	top: 380px;
	left: 0px;
	display: block;
	width: 380px;
	height: 60px;
}

/* main
 * --------------------------------------- */
#mainbg {
	display: block;
	width: 1072px;
	height: 436px;
	margin: 0 auto;
	padding: 280px 8px 0;
	background: url(../images/mainbg.png) center top no-repeat;
	box-sizing: border-box;
}
.mb {
	display: block;
	width: 174px;
	height: 46px;
	float: left;
	margin: 0 2px 2px 0;
	padding: 3px 0 0;
	text-align: center;
	font-weight: bold;
	font-size: 18px;
	line-height: 1.0em;
	color: #ff2a23;
	background-color: #fff;
	border: 3px solid #00adf5;
	border-radius:12px;
	box-sizing: border-box;
	box-shadow:0 0 10px 2px rgba(0,0,0,0.2);
}
.mt {
	color: #00adf5;
}
@media only screen and (max-width: 680px) {
#mainbg {
	width: 680px;
	height: 800px;
	margin: 0 auto;
	padding: 280px 180px 0 16px;
	background: url(../images/mainbgsp.png) center top no-repeat;
}
.mb {
	width: 230px;
	height: 54px;
	font-size: 21.8px;
	line-height: 1.0em;
}
}

/* header
 * --------------------------------------- */
#header {
	position: fixed;
	left: 0;
	bottom: 0px;
	display: block;
	width: 100%;
	height: 128px;
	margin: 0;
	padding: 10px 0 0;
	text-align: center;
	border-top:4px solid #94E1F9;
	background-color: #AEEDFC;
	overflow: hidden;
	z-index: 600;
	box-shadow:0 0 10px 2px rgba(0,0,0,0.2);
}
.fixed #header {
	position: fixed;
	bottom: 0px;
}
#headerbody {
	max-width: 1060px;
	margin: 0 auto;
	padding: 10px 0 0px;
	text-align: center;
}
#header #menu {
	display: table;
	margin: 0 auto 0;
	padding: 0;
	text-align: center;
	list-style-type: none;
	overflow: hidden;
	letter-spacing: -.40em; /*隙間対策 */
}
#header #menu li {
	display: inline-block;
	margin: 0 5px;
	padding: 0;
	text-align: center;
	letter-spacing: normal; /*隙間対策 */
}
#header #menu .sp {
	display: none;
}
#header #menu li a {
	display: block;
	padding: 0;
	color: #fff;
	text-decoration: none;
}
#header #menu li.current a,
#header #menu li a:hover,
#header #login:hover {
	opacity: 0.6;
}
#header #menu li#menu-top,
#header #menu li#menu-end {
	width: 0px;
	overflow: hidden;
	border-left: 0px solid #ff0000;
	border-right: 0px solid #ff0000;
}
#header #menu li a img {
	width: 60px;
	height: auto;
}


.campain {
	margin: 0 auto;
	padding: 0;
	text-align: center;
	background-color: #ff7220;
background: linear-gradient(to bottom, #ff852c 0%, #ff5e13 100%);
}
.campain img {
	margin: 0 auto;
	max-width: 100%;
	vertical-align: top;
}

/* Contents
 * --------------------------------------- */
#contents {
	position: relative;
	width: 100%;
	min-height: 200px;
	margin: 0 auto;
	padding: 0px 0 0;
	color: #000;
}

.section {
	width: 100%;
	margin: 0 auto;
	padding: 0;
}
.sectionbody {
	width: 100%;
	margin: 0 auto;
	padding: 0px 0 60px 0;
}
#banners .sectionbody {
	padding: 8px 0 12px;
}
#banners img {
	display: block;
	margin: 10px auto 0px;
}
#banners a {
	margin: 0 auto 0px;
}
.banner {
	max-width: 600px;
}
#con2 .sectionbody ,
#con4 .sectionbody ,
#con6 .sectionbody ,
#con8 .sectionbody ,
#con10 .sectionbody ,
#con12 .sectionbody {
}

.sectionin {
	max-width: 1000px;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
	text-align:left;
}


ul#txtmenu {
	width: 100%;
	margin: 16px auto 0;
	padding: 0;
	text-align: center;
	list-style-type: none;
	overflow: hidden;
	letter-spacing: -.40em; /*隙間対策 */
}
ul#txtmenu li {
	letter-spacing: normal; /*隙間対策 */
	display: inline-block;
	width: 49.0%;
	margin: 0 0.5% 6px;
	padding: 0;
	background-color: #f5fbff;
	border:4px solid #00a2ff;
	border-radius:12px;
	box-sizing: border-box;
}
ul#txtmenu li a {
	display: inline-block;
	width: 100%;
	height: 2.2em;
	margin: 0 auto;
	padding: 0;
	text-align: center;
	line-height: 2.0em;
	vertical-align: middle;
	overflow: hidden;
	box-sizing: border-box;
}
ul#txtmenu li a span {
	display: inline-block;
	width: 100%;
	margin: 0;
	padding: 0 0 0;
	text-align: center;
	font-weight: bold;
	font-size: 1.2em;
	line-height: 1.0em;
	color: #00a2ff;
	vertical-align: middle;
	box-sizing: border-box;
}
/* ■SP
 * --------------------------------------- */
@media only screen and (max-width: 680px) {
ul#txtmenu li a {
	height: 2.2em;
	line-height: 2.0em;
}
ul#txtmenu li a span {
	font-size: 1.0em;
	line-height: 1.0em;
}
}
/* //SP */


.tribox {
	float: left;
	width: 333px;
	margin: 20px auto 60px 0;
	padding: 0;
	overflow: hidden;
}
.tribox img {
	width: 220px;
	margin: 0 auto;
}
.txt {
	max-width: 1000px;
	margin: 0 auto 20px;
	padding: 0px;
	text-align: left;
	line-height: 1.6em;
	overflow: hidden;
}
.centertxt {
	text-align: center;
}
.txt ol,
.txt ul {
	margin: 0;
	padding: 4px 0 0 20px;
}
.txt li {
	margin: 0 0 4px;
}
.txt p {
	margin: 0 0 15px;
	padding: 0;
}
.column-txt {
	margin: 0 auto;
	width: 1000px;
	max-height: 530px;
	overflow: auto;
	column-width: 475px;
	-moz-column-width: 475px;
	-webkit-column-width: 475px;
	-ms-column-width: 475px;
	column-gap: 40px;
	-moz-column-gap: 40px;
	-webkit-column-gap: 40px;
	-ms-column-gap: 40px;
}

/* 
 * --------------------------------------- */

.cell {
	width: 640px;
	margin: 0 auto 20px;
}
.cell .cset {
	margin: 0 0 3px;
	padding: 0;
	color:#000;
	background:#eee;
	overflow: hidden;
}
.cell .cset div {
	float: left;
	display: block;
	margin: 0;
	padding: 8px 4% 7px;
}
.cell .cleft {
	width: 16%;
	text-align: right;
}
.cell .cright {
	width: 64%;
	text-align: left;
	border-left: solid 3px #fff;
}

h2 {
	margin: 0 auto 30px;
	padding: 10px 20px 6px;
	font-size: 44px;
	line-height: 90px;
	letter-spacing: -0.04em;
	text-align: center;
	font-weight: normal;
	color: #fff;
	background-color: #00a2ff;
}
h2 span{
	max-width:1000px;
	margin:0 auto;
	display:block;
	text-align:left;
	position:relative;
}
h2.zenkoku span:before,
h2.time5 span:before,
h2.time10 span:before,
h2.time30 span:before,
h2.walk2 span:before {
	position:absolute;
	top:-30px;
	right:-20px;
}
h2.time5 span:before {
	content:url(../images/img_time5.png);
}
h2.time10 span:before {
	content:url(../images/img_time10.png);
}
h2.time30 span:before {
	content:url(../images/img_time30.png);
}
h2.walk2 span:before {
	content:url(../images/img_walk2.png);
}
h2.zenkoku span:before {
	content:url(../images/img_zenkoku.png);
}
h3 {
	margin: 0 auto 1.0em;
	padding: 0;
	font-size: 26px;
	line-height: 1.3em;
	letter-spacing: -0.02em;
	font-weight: normal;
	color: #333;
}
h4 {
	margin: 0;
	padding: 0 0 4px;
	font-size: 20px;
	line-height: 1em;
	font-weight: normal;
}
.jpn {
}

.map_box {
	border:6px solid #00a2ff;
	border-radius:12px;
	padding: 20px 28px 20px;
	line-height:1.4;
}
.map_box h3 {
	margin-right: 20px;
	padding: 18px 28px 12px;
	line-height:1.4;
	background:#ffff00;
	border-radius:16px;
}
.map_box dt{
	margin-top:30px;
	font-size: 140%;
	margin-bottom:8px;
}
.map_box dd{
	color:#333;
	margin-left:10px;
}
#access img {
	max-width: calc(100% - 20px);
}
.map_img_box {
	overflow: hidden;
	margin-bottom: 30px;
	padding: 0 10px;
	text-align: center;
	vertical-align: top;
}
.map_img_box img {
	width: 400px;
	border: 6px solid #fff;
}
.cv_box {
	margin-top: 80px;
}

.leftimg {
	float: left;
	margin: 0 15px 0px 0;
}
.rightimg {
	float: right;
	margin: 0 0 15px 15px;
}

.pricetable{
	border-top: solid 1px #bbb;
	border-left: solid 1px #bbb;
	width:100%;
	border-collapse: collapse;
}
.pricetable tr:nth-of-type(odd) td{
	background:#f1f1f1;
}
.pricetable tr:nth-of-type(even) td{
	background:#fff;
}
.pricetable th,
.pricetable td{
	border-bottom: solid 1px #bbb;
	border-right: solid 1px #bbb;
	text-align:center;
	border-collapse: collapse;
}
.pricetable th:nth-of-type(1) {width:30%;}
.pricetable th:nth-of-type(2) {width:30%;}
.pricetable th:nth-of-type(3) {width:40%;}
.pricetable th{
    background-color: #00a2ff;
    color: #FFF;
}
.pricetable.table7 th:nth-of-type(1) {width:50%;}
.pricetable.table7 th:nth-of-type(2) {width:25%;}
.pricetable.table7 th:nth-of-type(3) {width:25%;}
.pricetable.table7 td:nth-of-type(1) {text-align:left;padding:5px 10px;}
.pricetable.table7 img {vertical-align:middle;}
.pricetable.table7 td:nth-of-type(2) {color:#d71c24;font-weight:700;font-size:1.2em;font-family:Futura PT;}
.pricetable.table7 td:nth-of-type(3) {color:#d71c24;font-weight:700;font-size:1.2em;font-family:Futura PT;}
.pricetable.table7 td small {margin-left:3px;font-size:0.7em;}


.pricetable tr td:nth-of-type(1) {
	width: 50%;
	text-align: left;
	padding-left: 180px;
}
.pricetable tr td:nth-of-type(2) {
	width: 50%;
	text-align: right;
	padding-right: 160px;
}
@media only screen and (max-width: 680px) {
.pricetable tr td:nth-of-type(1) {
	width: 44%;
	padding-left: 30px;
}
.pricetable tr td:nth-of-type(2) {
	width: 56%;
	padding-right: 30px;
}
}

.watchtable{
	border-top: solid 1px #bbb;
	border-left: solid 1px #bbb;
	width:100%;
	border-collapse: collapse;
}
.watchtable th,
.watchtable td{
	border-bottom: solid 1px #bbb;
	border-right: solid 1px #bbb;
	text-align:center;
	border-collapse: collapse;
}
.watchtable th{
	width:25%;
	color: #fff;
	background-color: #0084e0;
}
.watchtable td.blue{
	background-color: #dff6ff;
}



.boxbody {
	width: 100%;
	margin: 12px auto 8px;
	border-top: solid 1px #bbb;
	border-left: solid 1px #bbb;
	box-sizing:border-box;
}
.box {
	display: table;
	width: 100%;
	margin: 0;
	padding: 0;
	border-bottom: solid 1px #bbb;
	border-right: solid 1px #bbb;
	letter-spacing: -.40em; /*隙間対策 */
	background-color: #fff;
	box-sizing:border-box;
}
.box:first-of-type {
	background-color: #00a2ff;
	color:#FFF;
}
#contents .box:first-of-type  > div.type{
	padding:12px 0;
}
.box:nth-child(even) {
	background-color: #f6f6f6;
}
.box > div {
	display: inline-block;
	margin: 0;
	padding: 12px 0;
	text-align: center;
	vertical-align: center;
	line-height: 1em;
	letter-spacing: normal; /*隙間対策 */
	box-sizing:border-box;
}
.box > div.type {
	width: 50%;
	font-size: 16px;
}
#con0 .box > div.type ,
#con1 .box > div.type ,
#con2 .box > div.type ,
#con3 .box > div.type {
	width: 40%;
}
#con0 .box > div.type ,
#con1 .box > div.type {
	padding: 0 0 6px;
	vertical-align: bottom;
}
.box > div.price {
	width: 50%;
	font-size: 20px;
	border-left: solid 1px #bbb;
}
#con0 .box > div.price ,
#con1 .box > div.price ,
#con2 .box > div.price ,
#con3 .box > div.price {
	width: 40%;
	border-right: solid 1px #bbb;
}
.box:first-child > div.price {
	font-size: 16px;
}
.box > div.time {
	width: 20%;
	font-size: 20px;
}
.box:first-child > div.time {
	font-size: 16px;
}
.glassprice {
	color: #00a2ff;
}
.glasslimit {
	display: inline-block;
	margin-left: 12px;
	padding: 4px 8px 3px;
	color: #fff;
	background-color: #00a2ff;
	line-height: 1em;
	font-size: 80%;
	-webkit-border-radius: 6px; /*角丸*/
	-moz-border-radius: 6px;
	border-radius: 6px;
}






#map {
	display: block;
	width: 1000px;
	height: 360px;
	margin: 0 auto 8px;
}

.mcell .cleft {
	width: 32%;
	text-align: right;
}
.mcell .cright {
	width: 50%;
	text-align: left;
}
.need {
	margin: 0 auto 0 7px;
	padding: 2px 3px 1px 3px;
	font-size: 80%;
	line-height: 80%;
	color: #fff;
	text-align: center;
	background-color: #00a2ff;
	-webkit-border-radius: 2px; /*角丸*/
	-moz-border-radius: 2px;
	border-radius: 2px;
}
/*form
 * --------------------------------------- */
#mailframe {
	width: 800px;
	height: 600px;
	margin: 0 auto;
	border: none;
}
form {
	margin: 0;
	padding: 0;
}
input[type="text"],
input[type="number"],
input[type="email"],
input[type="tel"],
input[type="search"],
input[type="url"],
select,
textarea {
	width: 92%;
	font-size: 18px;
	border:1px;
}
.phone_num {
	display:block;
	margin:20px auto;
}
a.button,
input[type="submit"],
input[type="button"] {
	display: block;
	width: 588px;
	height: 56px;
	margin: 0 auto;
	padding: 0;
	text-align: center;
	font-family: "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
	color:#fff;
	background: #229f73;
	-webkit-border-radius: 12px; /*角丸*/
	-moz-border-radius: 12px;
	border-radius: 12px;
	cursor: pointer;
}
a.button {
	height: 48px;
	padding: 10px 0px 0px;
	font-size: 24px;
}
a.button2 {
	display: block;
	width: 588px;
	height: 50px;
	background:#e1801e;
	box-shadow:0 4px 0 #af590c;
	-webkit-border-radius: 12px; /*角丸*/
	-moz-border-radius: 12px;
	border-radius: 12px;
	margin: 80px auto 50px;
	font-family: "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
	color:#fff;
	text-align: center;
	line-height:50px;
	font-size:1.2em;
	font-weight:700;
}
a.button2:hover {
	opacity:0.7;
}
a.redbutton {
	height: 46px;
	margin: 0 auto 20px;
	padding: 12px 0px 0px;
	background: #eb0000;
}
input[type="submit"],
input[type="button"] {
	height: 56px;
	font-size: 24px;
}
.button:link,
.button:visited {
	color:#fff;
	text-decoration: none;
}
.button:hover,
input[type="submit"]:hover,
input[type="button"]:hover {
	color:#fff;
	text-decoration: none;
	opacity: 0.7;
}

.kent,
.kent a,
.kent a:link,
.kent a:visited,
.kent a:hover {
	color:#fff;
	text-decoration: none;
}


/* footer
 * --------------------------------------- */
#footer {
	position: relative;
	width: 100%;
	margin: 0px auto 0;
	padding: 20px 0;
	text-align: center;
	color: #fff;
	background: #000;
	overflow: hidden;
}
#footer #menu-body {
	position: relative;
	display: block;
	max-width: 1000px;
	margin: 0 auto;
	padding: 0;
	text-align: left;
}
#footer #menu-box {
	float: left;
	margin: 0px auto 0 0px;
}
#footer .logo {
	margin: 0px 0px 0;
	padding: 0;
	color:#FFF;
}
#footer .logo img {
	display: block;
	margin: 0;
	width: 287px;
	height: auto;
}
#footer .menu {
	float: left;
	margin: 0px auto 0 10px;
	padding: 0;
	list-style-type: none;
}
#footer .menu li {
	list-style: none;
	margin: 0;
	padding: 0;
}
#footer .menu > li {
	cursor:pointer;
	position: relative;
	height: 30px;
	text-align: left;
	font-size: 15px;
	line-height: 15px;
	letter-spacing: 2px;
}
#footer .menu li a {
	color: #000;
	display: block;
	height: 22px;
	padding: 8px 28px 0 8px;
	text-decoration: none;
}
#footer .tel {
	float: right;
	margin: 0px 0px 0 auto;
	font-size: 17px;
	line-height: 24px;
	letter-spacing: 1px;
	text-align: right;
	color: #fff;
	overflow: hidden;
}
#footer .tel a {
	color: #fff;
}
#footer .menu li ul {
	margin: 0;
	padding: 0 0 10px 4px;
}
#footer .menu li ul li {
	margin: 0;
	padding: 0;
	font-size: 12px;
	line-height: 13px;
	color: #fff;
}
#footer .menu li ul li a {
	display: block;
	height: 18px;
	padding: 4px 24px 0 12px;
}
#footer .menu li ul li a:link, #footer .menu li ul li a:visited {
	color: #fff;
	text-decoration: none;
}
#footer a * {
	-webkit-transition: 0.4s;
	-moz-transition: 0.4s;
	-ms-transition: 0.4s;
	-o-transition: 0.4s;
	 transition: 0.4s;
}

#footer a:hover {
	color: #fff;
	background: rgba(255,255,255,0.5);
	text-decoration: none;
	-webkit-transition: 0.4s;
	-moz-transition: 0.4s;
	-ms-transition: 0.4s;
	-o-transition: 0.4s;
	 transition: 0.4s;
}



#contents-wrap {
	position: relative;
}
#page-top {
	position: fixed;
	bottom: 120px;
	right: 20px;
	font-size: 77%;
	display:none;
	font-size: 30px;
	z-index: 400;
}
#page-top a {
	text-decoration: none;
	color: #666;
	width: 60px;
	height: 60px;
	text-align: center;
	display: block;
	background:rgba(255,255,255,0.6);
	border-radius: 5px;
}
#page-top a:hover {
	text-decoration: none;
	background:rgba(255,255,255,1);
}

#accesspic {
	width: 640px;
	height: 520px;
	margin: 0 auto 8px;
	overflow: hidden;
}
#accesspic img {
	width: 640px;
	height: auto;
}


