@charset "UTF-8";

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

　　HEADER
------------------------------------------------------------ */
/* ロゴ周り
------------------------------------------------- */
@media (max-width:624px) {
/* Logo and site description */
.header-upper .logoBox {
	width:140px;
	padding:5px 0 5px 5px;
}
		.header-upper .logoBox .logo {
			width:115px;
			height:50px;
			display:block;
		}
		.header-upper .logoBox img {
			width:115px;
			height:auto;
		}
		
	header h1 {
		display:none;
		visibility:hidden;
	}
	.header-upper .tel {
		display:none;
		visibility:hidden;
	}
}
@media (min-width: 625px) {
/* Logo and site description */
.header-upper .logoBox {
	padding:13px 0 10px 5px;
	display:table;
	float:left;
}
	.header-upper .logoBox a.logo {
		width:150px;
		height:65px;
		display:table-cell;
	}
	.header-upper .logoBox img {
		width:150px;
		height:65px;
	}
	.header-upper .logoBox h1 {
		width:auto;
		display:table-cell;
		font-size:11px;
		line-height:14px;
		padding:5px 0 0 15px;
		margin:0;
		vertical-align:top;
	}
	
/* phone number */
.header-upper .tel {
	width:40%;
	max-width:343px;
	padding:50px 5px 0 0;
	text-align:right;
	float:right;
	box-sizing:content-box;
}
	.header-upper .tel img {
		width:100%;
		height:auto;
		max-width:350px;
	}
}
@media (min-width: 625px) and  (max-width: 959px)  {
	.header-upper {
		width:100%;
	}
}
@media (min-width: 960px)  {
	.header-upper {
		width:960px;
		margin:0 auto;
	}
}


/* ★Groval navigation
------------------------------------------------- */
header #nav {
	width:100%;
	height:50px;
	background:#5ac3df;
	z-index:1000;
}

nav ul li,
nav ul li a {
  -webkit-transition: 0.4s;
  -moz-transition: 0.4s;
  -ms-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
}

header #nav ul {
	margin:0 auto;
	padding:0;
	list-style:none;
}
header #nav ul li {
	margin:0;
}
	header #nav ul li a {
		display:block;
	}
	header #nav ul li a:hover {
		text-decoration:none;
	}

header #nav ul.gnav>li>a {
	color:#fff;
	background-repeat:no-repeat;
}
	header #nav ul.gnav>li.service>a {  background-image:url(../img/nav_service.png); }
	header #nav ul.gnav>li.price>a {  background-image:url(../img/nav_price.png); }
	header #nav ul.gnav>li.flow>a {  background-image:url(../img/nav_flow.png); }
	header #nav ul.gnav>li.voice>a {  background-image:url(../img/nav_voice.png); }
	header #nav ul.gnav>li.giftcard>a {  background-image:url(../img/nav_giftcard.png); }
	header #nav ul.gnav>li.faq>a {  background-image:url(../img/nav_faq.png); }
	header #nav ul.gnav>li>a:hover {
		color:#fff;
		background-color:#73d2eb;
	}


@media (max-width: 624px) {
header {
	height:108px;
}

nav ul.gnav {
	width:100%;
	background-color:#5ac3df;
}

nav ul.gnav>li {
	position: relative;
}

	nav ul.gnav>li>a {
		height:40px;
		font-size:14px;
		text-align:left;
		padding-left:40px;
		line-height:40px;
		background-position:10px center;
		background-repeat:no-repeat;
		border-top:1px #81d4ea solid;
	}
	
	nav ul.gnav li.signup a {/* 会員登録 */
		background-color:#ee6677;
		border-top:1px #81d4ea solid;
		background-image: url(../img/icon_createID.png);
	}
		nav ul.gnav li.signup a:hover {
			background-color:#fa8c90;
		}
		
/* ==========================
	MeanMenu 2.0.7
============================ */
nav .meanmenu-reveal {
	display: none;
}

.mean-bar {
	width: 100%;
	height: 50px;
	background: none;
	padding: 0;
	z-index: 999999;
	position:absolute;
}

.mean-bar .meanmenu-reveal {
	width: 50px;
	height: 50px;
	position: absolute;
	top: 0;
	right: 0;
	cursor: pointer;
	color: #fff;
	text-decoration: none;
	display: block;
	box-sizing:content-box;
	border:none !important;
	outline:none !important;
	background:url(../img/btn_menu_torigger.png) no-repeat center top;
	
	-webkit-transition: none !important;
	-moz-transition: none !important;
	-ms-transition: none !important;
	-o-transition: none !important;
	transition:none !important;
}

.mean-bar .meanmenu-reveal:hover {
	background:#9b3d4 url(../img/btn_menu_torigger.png) no-repeat center top;
}
	
	.mean-container a.meanclose {
		color:#fff;
		text-decoration:none;
		background:url(../img/btn_menu_torigger.png) no-repeat center bottom;
		background-color:#9b3d4;
	}

.mean-bar .mean-nav {
	width: 100%;
	background: #fff;
	position:absolute;
	top:50px;
}

.mean-nav ul li a.mean-expand {
	width: 44px;
	padding: 0 !important;
	text-align: center !important;
	position: absolute;
	right: 0;
	top: 1px;
	z-index: 2;
	line-height:40px;
	text-decoration:none;
	background-image:none !important;
	background-color: rgba(255,255,255,0.2);
	border: none !important;
	border-left: 1px solid rgba(200,200,200,0.4) !important;
}

.mean-nav ul li a.mean-expand:hover {
	text-decoration:none;
	background: rgba(255,255,255,0.4);
}

	.mean-push {
		width: 100%;
		padding: 0;
		margin: 0;
		clear: both;
	}
	
	.mean-nav .wrapper {
		width: 100%;
		padding: 0;
		margin: 0;
	}
	
	.mean-remove {
		display: none !important;
	}

	
/* child Menu */
nav ul.gnav li>ul.childnav {
	background:#fff;
}
	nav ul.gnav li>ul.childnav>li {
		width:100%;
	}
	nav ul.gnav li>ul.childnav>li>a {
		color:#555;
		font-size:14px;
		height:36px;
		line-height:36px;
		padding-left:40px;
		background-image:none;
		border-top:1px #ccc dotted;
	}
	nav ul.gnav li>ul.childnav li>a:hover {
		color:#1188bb;
		background-color:#d6f3fc;
	}
}
@media (min-width: 625px) {
header #nav ul.gnav {
	width:100%;
	display:table;
	table-layout:fixed;
	border-left:1px #fff solid;
	z-index:10000;
}
	header nav ul.gnav>li {
		width:20%;
		display:table-cell;
		padding:0;
		box-sizing:border-box;
		position:relative;
		z-index:10;
		overflow:hidden;
	}
	header nav ul.gnav>li:hover {
		overflow:visible;
	}
	
	header #nav ul.gnav>li>a {
		color:#fff;
		text-align:center;
		line-height:50px;
		border-right:1px #fff solid;
		background-repeat:no-repeat;
		box-sizing:border-box;
	}
	
	header #nav ul.gnav li.signup,
	header #nav ul.gnav li.entry {
		display:none;
	}
	
/* child Menu */
header nav ul.gnav li>ul.childnav {
	width:100%;
	position:absolute;
	top:50px;
	left:0;
	display:block;
}
header nav ul.gnav li>ul.childnav * {
	visibility: hidden;
  	overflow: hidden;
	filter: alpha(opacity=25);
	-moz-opacity:0.25;
	opacity:0.25;
	z-index:100000;
}
header nav ul.gnav li:hover>ul.childnav * {
	visibility:visible;
  	overflow: visible;
	filter: alpha(opacity=100);
	-moz-opacity:1;
	opacity:1;
}
	header nav ul.gnav li>ul.childnav>li {
		height:0;
		display:block;
		line-height:36px;
		border-left:1px rgba(255,255,255,075) solid;
		border-right:1px rgba(255,255,255,0.75) solid;
		border-bottom:1px rgba(255,255,255,0.75) solid;
	}
	header nav ul.gnav li:hover>ul.childnav>li {
		height:37px;
		line-height:36px;
		border-left:1px rgba(90,195,255,0.75) solid;
		border-right:1px rgba(90,195,255,0.75) solid;
		border-bottom:1px rgba(90,195,255,0.75) solid;
	}
	header nav ul.gnav li>ul.childnav>li>a {
		background:none;
		padding:0 0 0 15px;
		white-space:nowrap;
		margin-bottom:1px;
	}
	header nav ul.gnav li:hover>ul.childnav>li>a {
		color:#555;
		background-color:rgba(255,255,255,0.98);
	}
	header nav ul.gnav li:hover>ul.childnav>li>a:hover {
		color:#1188bb !important;
		background-color:#d6f3fc;
	}
}
@media (min-width: 625px) and  (max-width: 959px)  {
	header #nav ul.gnav>li>a {
		padding:0 0 0 10px;
		background-position:10px center;
	}
}
@media (min-width: 960px)  {
header nav {
	width:960px;
	margin:0 auto;
}

	header #nav ul.gnav>li {
		width:192px;
	}
	
	header #nav ul.gnav>li>a {
		padding-left:15px;
		background-position:22px center;
	}
}


/* 　sub navigation
------------------------------------------------- */
header #nav ul.subnav {
	position:absolute;
	top:0;
}

/* ☆sub navigation */
header ul.subnav {
	width:auto;
	position:absolute;
	top:0;
	z-index:100;
}

@media (max-width: 624px) {
/* ☆sub navigation */
header ul.subnav {
	display:inline-block;
	right:0;
}

	header #nav ul.subnav li {
		white-space:nowrap;
		padding:0;
	}
	
	header #nav ul.subnav li a {
		height:60px;
		font-size:12px;
		display:block;
		padding: 33px  7px 0 7px;
	}
		header #nav ul.subnav li.signup,
		header #nav ul.subnav li.staff_entry,
		header #nav ul.subnav li.entry {
			display:none;
		}
		header #nav ul.subnav li.login a {/* ログイン */
			color:#222;
			border-left:1px #ccc solid;
			background:#fff url(../img/icon_login.png) no-repeat center 10px;
		}
		header #nav ul.subnav li.login a:hover {
			background-color:#d6f3fc;
		}
}
@media (min-width: 625px) {
header #nav ul.subnav {
	width:auto;
	display:table;
}

	header #nav ul.subnav li {
		display:table-cell;
		white-space:nowrap;
		padding:0 4px 0 0;
	}
	
	header #nav ul.subnav li a {
		font-size:12px;
		display:inline-block;
		padding: 0  8px 0 36px;
		line-height:36px;
		border-bottom-left-radius:6px;
		border-bottom-right-radius:6px;
	}
	
	header #nav ul.subnav li.signup a {/* 会員登録 */
		color:#fff;
		background:#ee6677 url(../img/icon_createID.png) no-repeat 8px center;
	}
	header #nav ul.subnav li.signup a:hover {
		background:#fa8c90 url(../img/icon_createID.png) no-repeat 8px center;
	}
	header #nav ul.subnav li.entry a {/* スタッフ登録 */
		background:#1f95c3 url(../img/icon_staff_entry.png) no-repeat 8px center;
	}
	header #nav ul.subnav li.entry a:hover {
		background:#3cacd6 url(../img/icon_staff_entry.png) no-repeat 8px center;
	}
	header #nav ul.subnav li.login a {/* ログイン */
		color:#222;
		border-left:1px #ccc solid;
		border-right:1px #ccc solid;
		border-bottom:1px #ccc solid;
		background:#fff url(../img/icon_login.png) no-repeat 6px center;
	}
	header #nav ul.subnav li.login a:hover {
		background-color:#d6f3fc;
	}
}
@media (min-width: 625px) and  (max-width: 959px)  {
	header #nav ul.subnav {
		right:0;
	}
}
@media (min-width: 960px)  {
	header #nav ul.subnav {
		left:50%;
		margin-left:70px;
	}
}


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

　　MAIN
----------------------------------------------------------- */
@media (max-width: 759px) {
#mainWrap {
	min-height:300px;
}

.mainBody {
width:98%;
padding-top:15px;
}
	.breadcrumb {
		display:none;
		visibility:hidden;
	}
}
@media (min-width: 760px) {
#mainWrap  .breadcrumb {
	width:100%;
	margin-left:auto;
	margin-right:auto;
	clear:both;
}
}
@media (min-width: 760px) and  (max-width: 959px)  {
#mainWrap {
	min-height:360px;
}
	.mainBody {
		width:760px;
	}
	#mainWrap  .breadcrumb {
		width:760px;
	}
}
@media (min-width: 960px)   {
#mainWrap {
	min-height:480px;
}
	.mainBody {
		width:960px;
	}
	#mainWrap  .breadcrumb {
		width:960px;
	}
}

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

　　FOOTER
------------------------------------------------------------ */
footer {
	width:100%;
}
footer .upperSide {
	width:100%;
}

footer div.signeture p.tel {
	height:45px;
	padding:5px 0 0 0;
	font-size:12px;
}
	footer div.signeture p.tel small {
		font-size:16px;
		color:#33aacc;
		padding:0 5px 0 0;
	}
	footer div.signeture p.tel a {
		font-size:20px;
		color:#33aacc;
		text-decoration:none;
	}
	footer div.signeture p.tel span {
		font-size:10px;
		padding:1px 4px;
		background:#eee;
	}
	footer div.signeture address {
		font-size:12px;
		line-height:1;
	}

footer .underSide aside {
	display:block;
}
	footer aside ul.sms {	
		width:auto;
		list-style:none;
		padding:0;
		display:table;
	}
	footer aside ul.sms li {
		height:20px;
		margin:0;
		display:table-cell;
		overflow:hidden;
	}
	footer .underSide aside .copyright {
		font-size:10px;
	}

/* 　ページトップへボタン
------------------------------------------------- */
footer,
footer .nav {
	overflow:visible;
	visibility:visible;
	position:relative;
	z-index:2000;
}

footer .nav .btnPagetop {
	width:36px;
	height:31px;
	display:block;
	right:10px;
	color:#fff;
	top:-61px;
	right:10px;
	z-index:3000;
	line-height:31px;
	position:absolute;
	border-top-left-radius:5px;
	border-top-right-radius:5px;
	background:#59c3df url("../img/icon_pagetop.png") no-repeat center top;
	-webkit-transition:none !important;
	-moz-transition:none !important;
	transition:none !important;
}
	footer .nav .btnPagetop:hover {
		text-decoration:none;
		background:#59c3df url("../img/icon_pagetop.png") no-repeat center bottom;
	}

@media (max-width: 639px) {
footer .nav ul.fnav li {
		width:50%;
}
	footer .nav ul.fnav li:nth-of-type(odd) {
		border-right:1px #fff solid;
	}
	footer .underSide div.signeture {
		margin:0 auto;
	}
}
@media (min-width: 640px) and  (max-width: 959px)  {
footer .nav ul.fnav li {
		width:33.3%;
		border-right:1px #fff solid;
}
	footer .nav ul.fnav li:nth-of-type(3n) {
		border-right:none;
	}
	
footer .underSide div.signeture {
	width:500px;
	min-height:71px;
	padding:10px 0 0 192px;
	margin:0 auto;
	text-align:left;
	background:url(../img/logo_footer.png) no-repeat left center;
}
}
@media (max-width: 959px)   {
footer .nav ul.fnav {
	width:100%;
	list-style:none;
	padding:0;
	margin:0;
	background:#5ac3df;
	border-top:1px #fff solid;
}
	footer .nav ul.fnav li {
		float:left;
		border-bottom:1px #fff solid;
	}
	
	footer .nav ul.fnav li a {
		color:#fff;
		display:block;
		line-height:44px;
	}
	footer .nav ul.fnav a:hover {
		background-color:#44b1d4;
		text-decoration:none;
	}

	footer .nav dl {
		display:none;
	}

footer aside {
	display:block;
	padding:5px 0;
	background:#5ac3df;
}

footer aside ul.sms {
		margin: 0 auto;
		padding:0;
		text-align:center;
	}
	footer aside ul.sms li {
		display:inline-block;
		padding:0 5px;
		margin:0 0 5px 0;
		font-size:12px;
		vertical-align:top;
	}
	footer ul.sms li a { font-size:12px; }

	footer .copyright {
		color:#fff;
		line-height:20px;
	}
	
footer .nav .btnPagetop {
	top:-30px;
}
}
@media (min-width: 960px)  {
footer .upperSide {
	background:#5ac3df;
	text-align:center;
	padding:30px 0 0 0;
}

footer .nav {
	width:960px;
	padding:0;
	margin:0 auto 30px auto;
	display:block;
	background:url(../img/fnav_border.png) repeat-y left top;
}
footer .nav dl.fnav {
	float:left;
	text-align:left;
	padding:0 10px;
	margin:0 ;
}
footer .nav dl.fnav:nth-of-type(1),
footer .nav dl.fnav:nth-of-type(2) {
	width:192px;
}
footer .nav dl.fnav:nth-of-type(3) {
	width:380px;
}
footer .nav dl.fnav:nth-of-type(4) {
	width:195px;
	float:right;
}

footer .nav dl.fnav dt,
footer .nav dl.fnav dd {
	margin:0;
	padding:0;
}
	footer .nav dl.fnav a {
		display:block;
		line-height:22px;
		color:#fff;
	}
	footer .nav dl.fnav a:hover {
		background-color:#44b1d4;
		text-decoration:none;
	}
	footer .nav dl.fnav dt a {
		font-size:12px;
		padding:0 5px;
		font-weight:normal;
	}
	footer .nav dl.fnav dd a {
		font-size:11px;
		padding:0 5px 0 18px;
		background:url(../img/bullet_fnav.png) no-repeat 4px center;
	}

footer .nav dl.fnav dt.btn {
	width:100% !important;
	background:none;
}
footer .nav dl.fnav dt.btn a {
	width:100% !important;
	border-radius:5px;
	line-height:36px;
	padding-left:18px;
	border:none;
	background-repeat:no-repeat;
	background-position:10px center;
}
	footer .nav dl.fnav dt.btn a.createID {
		margin:15px 0 3px 0;
		background-image:url(../img/icon_createID.png);
	}
	footer .nav dl.fnav dt.btn a.staffentry {
		background-image:url(../img/icon_staff_entry.png);
	}

footer .underSide {
	width:960px;
	padding:10px 0 15px 0;
	margin:0 auto;
}

footer .underSide div.signeture {
	width:60%;
	min-height:71px;
	float:left;
	text-align:left;
	padding:0 0 0 192px;
	background:url(../img/logo_footer.png) no-repeat left center;
}
	footer div.signeture p.tel {
		height:45px;
		padding:5px 0 0 0;
		font-size:12px;
	}
	footer div.signeture p.tel small {
		font-size:16px;
		color:#33aacc;
		padding:0 5px 0 0;
	}
	footer div.signeture p.tel a {
		font-size:20px;
		color:#33aacc;
		text-decoration:none;
	}
	footer div.signeture p.tel span {
		font-size:10px;
		padding:1px 4px;
		background:#eee;
	}
	footer div.signeture address {
		font-size:12px;
		line-height:1;
	}

footer .underSide aside {
	width:40%;
	float:right;
	text-align:right;
	padding:10px 0 0 0;
}
	footer aside ul.sms {
		height:40px;
		margin:0 0 0 auto;
		padding:0;
		display:table;
	}
	footer aside ul.sms li {
		display:table-cell;
		padding:0 0 0 15px;
	}
	footer .underSide aside .copyright {
		font-size:10px;
	}

footer .nav .btnPagetop {
	top:-61px;
}

footer .nav ul { display:none; }
}
