@charset "utf-8";
/*//////////////////////////////////////////
	clearfix
//////////////////////////////////////////*/
.cl:before, .cl:after {
	content: " ";
	display: table;
}

.cl:after {
	clear: both;
}

.cl {
 *zoom: 1;
	display: block;
}

/* PC,SP スイッチ用クラス */
.pc {
	display: block;
}

.sp {
	display: none;
}

/*//////////////////////////////////////////
	basic
//////////////////////////////////////////*/
body {
	background: #fcfaf0;
	color: #000;
	line-height: 1.6;
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, 'MS Pゴシック', sans-serif;
	word-wrap: break-word;
	-webkit-font-smoothing: subpixel-antialiased;
}

h1 {
	font-size: 1.5rem;
	line-height: 1;
}

h2 {
	font-size: 1.25rem;
	line-height: 1.2;
}

h3 {
	font-size: 1.125rem;
	line-height: 1.3333;
}

a {
	color: #000;
	text-decoration: none;
}

header {
	background: #446cb3;
}

header a {
	color: #fff;
}

#glonav li a {
	display: block;
}

#wrap_breadcrumbs {
	padding: 0.75em 1rem;
}

#breadcrumbs li {
	margin-right: 2px;
	display: inline;
}

#breadcrumbs li:not(:first-child):before {
	content: ">";
	margin-right: 5px;
}

#breadcrumbs a {
	text-decoration: underline;
}

#title_border_top {
	height: 1.5rem;
	background: #bfc4bf;
	background: -webkit-gradient(linear, left top, left bottom, from(#bfc4bf), to(#fff));
	background: -moz-linear-gradient(top, #bfc4bf, #fff);
	background: linear-gradient(to bottom, #bfc4bf, #fff);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#bfc4bf', endColorstr='#fff', GradientType=0 );
}

#title_inner {
	padding: 1.5rem 1rem;
}

#title_inner h1{
	font-weight: bold;
}

.pagein  li a {
	color: #446cb3;
	font-weight: bold;
	display: block;
}

.pagein li a:before {
	content: "▼";
}

.pageout  li a {
	font-weight: bold;
	display: block;
}

.pageout  li a span {
	text-decoration: underline;
}

.pageout li a:before {
	content: "▶ ";
}

.sub_title {
	margin-bottom: 1rem;
	padding: 0.5rem 0 0.5rem 1.5rem;
	font-size: 1.5rem;
	border-bottom: 2px solid #f9bf3b;
	background: url("../img/common/corner.png") top left no-repeat;
	background-size: 25px 25px;
}

.sub_title .facility_sub_ttl {
  line-height: 1.6;
}

#store_finder {
	background: #fff;
}

#store_finder_title dl {
	width: 100%;
	display: table;
}

#store_finder_title dt {
	width: 30px;
	padding: 1rem 1.25rem;
	background: #446cb3;
	display: table-cell;
	text-align: center;
}

#store_finder_title dt img {
	width: auto;
	height: 28px;
	vertical-align: bottom;
}

#store_finder_title dd {
	padding: 1rem 1.25rem;
	display: table-cell;
}

#store_finder_title dd img {
	width: auto;
	height: 28px;
	vertical-align: bottom;
}

#store_finder_list p {
	padding: 0.75rem 3rem;
}

#store_finder_list ul {
	background: #446cb3;
	color: #fff;
}

#store_finder_list ul li {
	border-top: 1px solid #fff;
	background: url('../img/common/sidebar/arrow02.png') 90% 23px no-repeat;
	background-size: 8px 9px;
	font-size: 1.125rem;
	line-height: 4;
	cursor: pointer;
}

#store_finder_list ul li.active {
	background-image: url('../img/common/sidebar/arrow02_active.png');
}

#store_finder_list ul li #store_finder_area {
	padding: 0.25rem 2rem;
}

#store_finder_list ul ul {
	background: #587ec8;
	color: #fff;	
	display: none;
}

#store_finder_list ul ul li {
	border-top: 1px solid #fff;
	background: url('../img/common/sidebar/arrow02.png') 90% 23px no-repeat;
	background-size: 8px 9px;
	font-size: 1.125rem;
}

#store_finder_list ul ul #store_finder_pref {
	padding: 0.25rem 2.5rem;
}

#store_finder_list ul ul ul {
	background: #eee;
}

#store_finder_list ul ul ul li {
	border-top: 1px solid #eaeaea;
	background: url('../img/common/sidebar/arrow03.png') 90% 20px no-repeat;
	background-size: 8px 9px;
	font-size: 1.0rem;
}

#store_finder_list ul ul ul li:hover {
	background-color: #ddd;
}

#store_finder_list ul ul ul li #store_finder_target {
	padding: 0.25rem 2.5rem;
}

#store_finder_list ul ul ul img {
	width: 11px;
	height: 11px;
	position: relative;
	top: -3px;
	left: -30px;
}

footer {
	padding-bottom: 1rem;
	background-color: #535353;
}

#footer_list_02 {
	font-size: 90%;
}

#footer_list_02 li {
	text-align: center;
	display: inline;
}

#footer_list_02 li:not(:first-child) {
	margin-left: 3px;
}

#footer_list_02 a {
	padding: 5px 7px;
	background: #c9c9c9;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
}

#footer_list_02 a:hover {
	background: #eee;
}

#copyright {
	color: #fff;
	font-size: 80%;
}

/* mac用スクロール常時表示 */
::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 7px;
}

::-webkit-scrollbar-thumb {
    border-radius: 4px;
    background-color: rgba(0,0,0,.5);
    box-shadow: 0 0 1px rgba(255,255,255,.5);
}

/*//////////////////////////////////////////
	mobile
//////////////////////////////////////////*/
@media screen and ( min-width: 320px ) and ( max-width: 740px )
{

.pc {
	display: none;
}

.sp {
	display: block;
}

html {
	font-size: 75%;
}

header {
	padding-top: 1rem;
}

#header {
	padding-bottom: 0.5rem;
	overflow: hidden;
}

#logo {
	margin-top: 1rem;
	margin-left: 1rem;
	float: left;
}

#logo img {
	width: 199px;
	height: 22px;
}

#toggle {
	margin-right: 1rem/*15px*/;
	font-size: 0.75rem;
	line-height: 1.2;
	text-align: center;
    display: block;
	float: right;
 }
 
#toggle a {
	padding-top: 30px;
	background: url("../img/common/menu.png") top center no-repeat;
	background-size: 29px 29px;
    display: block;
}
 
#toggle a:hover {
	background-image: url("../img/common/menu_on.png");
}

#toggle img {
	width: 27px;
	height: 27px;
}

#glonav {
	display: none;
	clear: both;
}

#glonav li {
	width: 100%;
	border-top: 1px solid #5e84ce;
	position: relative;
}

#glonav a {
	padding: 1rem 1.5rem;
}

#glonav a:hover {
	background: #194e91;
}

#glonav a:after {
	content: "▶";
	font-size: 0.5rem;
	position: absolute;
	right: 2rem;
}

#glonav .nav_img img {
	width: 20px;
	height: 20px;
	vertical-align: top;
}

#glonav .nav_img:after {
	content: " | ";
}

#header_decoration {
	display: none;
}

#title_inner {
	color: #fff;
	background: #446cb3;
	background: -webkit-gradient(linear, left top, left bottom, from(#446cb3), to(#476695));
	background: -moz-linear-gradient(top, #446cb3, #476695);
	background: linear-gradient(to bottom, #446cb3, #476695);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#446cb3', endColorstr='#476695', GradientType=0 );
}

#title_border_bottom {
	display: none;
}

.pagein {
	width: 100%;
	color: #446cb3;
	border-bottom: 2px solid #446cb3;
	display: table;
	table-layout: fixed;
}

.pagein li {
	padding: 0.5rem 1rem;
	display: table-cell;
}

.pagein li+li {
	border-left: 2px solid #446cb3;
}

.pagein span {
	display: none;
}

.pageout-sp {
	text-align: right;
	margin: 2rem 1rem 2rem;
}

.pageout-sp-selectbox {
	background: #fff;
	border: 2px solid #e5e5e5;
	border-radius: 5px;
	color: #0C2245;
	font-size: 16px;
	height: 73px;
	line-height: 30px;
	text-align: left;
	text-indent: 25px;
	vertical-align: middle;
	width: 300px;	
}

#main_inner {
	margin: 1.5rem 1rem 0rem 1rem;
	padding-bottom: 0.5rem;
	border-bottom: 1px dotted #595757;
}

#side {
	margin: 1rem 1rem 2rem;
}

#store_finder_title dd {
	background: url('../img/common/sidebar/arrow01.png') 90% center no-repeat;
	background-size: 7px 9px;
}

#store_finder_title dd.active {
	background-image: url('../img/common/sidebar/arrow01_active.png');
}

#store_finder_list {
	display: none;
}

#store_finder_list ul ul ul img {
	width: 11px;
	height: 11px;
	position: relative;
	top: -1px;
	left: -20px;
}

footer {
	padding-bottom: 100px;
	text-align: center;
}

#footer_top {
	display: none;
}

#footer_list_01 {
	background: #446cb3;
}

#footer_list_01 li {
	border-bottom: 1px solid #2e599e;
}

#footer_list_01 a {
	padding: 0.25rem;
	color: #fff;
	font-size: 1.25rem;
	display: block;
}

#footer_list_01 a:hover {
	background: #325ea4;
}

#footer_list_02 {
	margin: 1.5rem 0 1rem;
}

#topcontrol {
	position: fixed; 
	bottom: 5px; 
	right: 5px; 
	opacity: 1; 
	cursor: pointer; 
	display: block;
}

#webyoyaku {
	position: fixed; 
	bottom: 5px; 
	left: 5px; 
	opacity: 1; 
	cursor: pointer; 
	display: block;
}

.pagein_previous_link {
	display: none;
}

}



/*//////////////////////////////////////////
	tablet
//////////////////////////////////////////*/
@media screen and ( min-width: 741px ) 
{
	
html {
	font-size: 75%;
}

#header_inner {
	width: 100%;
	padding-top: 2rem;
	padding-bottom: 1rem;
	display: table;
}

#header {
	width: 30%;
	padding-left: 1rem;
	padding-right: 1rem;
	display: table-cell;
}

#logo img {
	width: 100%;
	max-width: 320px;
	height: auto;
}

#glonav {
	padding-right: 1rem;
	display: table-cell;
}

#glonav ul {
	width: 100%;
	table-layout: fixed;
	display: table;
}

#glonav li {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	border-left: 1px dashed #fff;
}

#toggle, .nav_img {
	display: none;
}

.block {
	display: block;
}

#header_decoration {
	height: 31px;
	background: url('../img/common/header_decoration.png') repeat-x;
}

#breadcrumbs {
	margin-right: 1rem;
	text-align: right;
}

#title {
	background: #fff;
}

#title_border_top {
	height: 1rem;
}

#title_inner {
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
	color: #446cb3;
	background: #fff;
}

#title_inner h1 {
	margin-left: 2rem;
	padding: 1rem;
	border-left: 5px solid #446cb3;
}

#title_border_bottom {
	display: block;
	height: 1rem;
	background: #bfc4bf;
	background: -webkit-gradient(linear, left bottom, left top, from(#bfc4bf), to(#fff));
	background: -moz-linear-gradient(bottom, #bfc4bf, #fff);
	background: linear-gradient(to top, #bfc4bf, #fff);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fff', endColorstr='#bfc4bf', GradientType=0 );
}

#content {
	margin: 3rem 1rem 1rem;
}

#main {
	width: 65%;
	float: left;
}

#side {
	width: 32%;
	float: right;
}

.pagein {
	margin-bottom: 2rem;
	display: inline-block;
}

.pagein li {
	padding: 0.25rem 0.75rem;
	border-left: 1px dotted #446cb3;
	display: inline-block;
}

.pagein span {
	font-weight: bold;
}

.pageout {
	margin-bottom: 2rem;
	display: inline-block;
}

.pageout li {
	padding: 0.25rem 0.75rem;
	border-left: 1px dotted #446cb3;
	display: inline-block;
}

.sub_title {
	margin-bottom: 2rem;
}

.pagein_previous_link {
	margin-bottom: 1rem;
	padding: 0.25rem;
	border-top: 1px dotted #595757;
}

.pagein_previous_link a {
	text-decoration: underline;
}

.to_previous {
	float: left;
}

.to_previous:before {
	content: "◀";
	font-size: 0.5rem;
	margin-right: 0.75rem;
}

.to_top {
	float: right;
}

.to_top:before {
	content: "▲";
	font-size: 0.5rem;
	margin-right: 0.75rem;
}

#store_finder_title dt {
	width: 24px;
}

#store_finder_title dt img,
#store_finder_title dd img {
	height: 20px;
}

#store_finder_list ul ul ul img {
	width: 11px;
	height: 11px;
	position: relative;
	top: -2px;
	left: -10px;
}

footer {
	padding-bottom: 0;
}

#footer_top {
	background-color: #446CB3;
	text-align: center;
}

#footer_top img {
	margin-top: 1.5rem;
	margin-bottom: 1rem;
}

#wrap_footer_bottom {
	padding-top: 1rem;
	padding-bottom: 3rem;
}

#footer_bottom {
	float: left;
}

#footer_list_01 {
	margin-right: 0.5rem;
	float: left;
}

#footer_list_01 li {
	border-right: 1px dotted #fff;
	display: inline;
}

#footer_list_01 a {
	padding: 0 1rem 0;
	color: #fff;
}

#footer_list_02 {
	float: left;
}

#copyright {
	margin-right: 1rem;
	float: right;
}

#topcontrol,
#webyoyaku {
	display: none;
}

}



/*//////////////////////////////////////////
	pc
//////////////////////////////////////////*/
@media screen and ( min-width: 1024px )
{

html {
	font-size: 87.5%;
}

#header_inner,
#wrap_breadcrumbs,
#title_inner,
#content,
#wrap_footer_bottom {
	width: 1024px;
	margin-left: auto;
	margin-right: auto;
}

#glonav ul {
	border-right: 1px dashed #fff;
}

#header_decoration {
	background-position: 50% top;
}

#store_finder_list ul li,
#store_finder_list ul li.active,
#store_finder_list ul ul li {
	background-position: 90% 29px;
}

#store_finder_list ul ul ul li {
	background-position: 90% 26px;
}

#footer_list_01 li:first-child {
	border-left: 1px dotted #fff;
}

}