@charset "utf-8";

/**********************
*
* 共通
*
***********************/

/* メインコンテンツ */
.wrapper {
	width: 100%;
	height: 100%;
/*	-o-transition: all .5s ease;
	-ms-transition: all .5s ease;
	-moz-transition: all .5s ease;
	-webkit-transform: all .5s ease;
	transition: all 0.7s ease;*/
}

/* 覆う部分 ボタンが押される前の状態 */
.overlay {
	visibility: hidden;
	position: fixed;
	top: 0;
	left: 0;
	width: 99%;
	height: 100%;
	background: rgba(0,0,0,0);
	/* 移動
	-o-transition: all .5s ease;
	-ms-transition: all .5s ease;
	-moz-transition: all .5s ease;
	-webkit-transform: all .5s ease;
	transition: all 0.7s ease; */
  z-index:9998;
}

/* 閉じるボタン共通 */
.close {
	background-color: #808080;
	border-radius: 3px;
	color: #fff;
	display: block;
	font-size: 100%;
	margin: 15px 10px;
	padding: 6px 14px;
	border:none;
	text-align: center;
	width: 85%;
	float: left;
}
.close p{
	text-align:center;
}
.close span {
	background-color: #fff;
	border-radius: 2px;
	color: #808080;
	display: inline-block;
	margin-left: 4px;
	padding: 0 4px;
	margin-left: 20px;
	float: right;
}

/**********************
*
* ドロワーメニュー
*
***********************/

/* オープン時 コンテンツ全体に対する制御 コンテンツを左にずらす */
.sideOpen .wrapper,
.sideOpen .overlay {
	width: 100%;
	/* 移動
	-o-transform: translate3d(-77%, 0, 0);
	-ms-transform: translate3d(-77%, 0, 0);
	-moz-transform: translate3d(-77%, 0, 0);
	-webkit-transform: translate3d(-77%, 0, 0);
	transform: translate3d(-77%, 0, 0); */
	/* 変化
	-o-transition: all 0.7s ease;
	-ms-transition: all 0.7s ease;
	-moz-transition: all 0.7s ease;
	-webkit-transition: all 0.7s ease;
	transition: all 0.7s ease; */
}

/* オープン時 ボタンが押された状態 */
.sideOpen .overlay {
  position: fixed;
	visibility: visible;
	background: rgba(0,0,0,.5);
}

/* デザイン 閉じた状態 */
.drawerMenu {
	visibility: hidden;
	/*visibility: hidden;
	position: absolute;
	display: none;
	height: 0px;
	opacity: 0;
	overflow: hidden;*/
  position: fixed;
	width: 68%;
	height: auto;
	top: 0;
	margin-left: auto;
/*	padding:0 10px 10px;*/
	text-align: left;
	/* 移動 
	-o-transform: translate3d(145%, 0, 0);
	-ms-transform: translate3d(145%, 0, 0);
	-moz-transform: translate3d(145%, 0, 0);
	-webkit-transform: translate3d(145%, 0, 0);
	transform: translate3d(145%, 0, 0); */
}


/* デザイン 開いた状態 */
.drawerMenuOuter{
}
.drawerMenuOpen {
	visibility: visible;
	/*visibility: visible;
	display: block;*/
	/*position: fixed;
	overflow: visible;
	position: absolute;
	height: auto;
	opacity: 1;*/
	position: absolute;
	width: 68%;
	height: auto;
	top: 0;
	left: 30%;
	padding-left: 10px;
	margin-left: auto;
/*	padding:0 10px 10px; */
	text-align: left;
	z-index: 9999;
	
	/* 移動
	-o-transform: translate3d(34%, 0, 0);
	-ms-transform: translate3d(34%, 0, 0);
	-moz-transform: translate3d(34%, 0, 0);
	-webkit-transform: translate3d(34%, 0, 0);
	transform: translate3d(34%, 0, 0); */
	/* 変化
	-o-transition: all 0.7s ease;
	-ms-transition: all 0.7s ease;
	-moz-transition: all 0.7s ease;
	-webkit-transition: all 0.7s ease;
	transition: all 0.7s ease;
	transition-duration: 0.7s; */
	background: #ffffff;
	font-size:14px;
}

.drawerMenuNav {
	height: 100%;
	/*margin-top: 50px;*/
}

.drawerMenuNav ul{
	margin: 0 0 10px;
}

.drawerMenuNav .drawerMenu_ttl{
	border-bottom:1px solid #00b5d4;
}
.drawerMenuNav .drawerMenu_ttl a{
	display:block;
	padding:5px 0;
	font-size: 16px;
	font-weight: bold;
	color:#00b5d4;
}

.drawerMenuNav .drawerMenu_ttlsub a {
    display: block;
    padding: 5px 0 5px 15px;
    font-size: 14px;
    font-weight: bold;
    color: #00b5d4;
    position: relative;
}
.drawerMenuNav .drawerMenu_ttlsub a:before {
    position: absolute;
    display: block;
    content: "";
    top: 50%;
    left: 0px;
    width: 5px;
    height: 5px;
    margin: -5px 0 0 0;
    border: 3px solid #00b5d4;
    border-radius: 999px;
}

.drawerMenuNav div.icon_box{
	margin: 8px 0 0;
	padding: 5px;	
}

.drawerMenuNav div.icon_box img{
	width:45px; 
	height:44px;
}

.drawerMenuNav li{
	border-bottom:1px dotted #ccc;
}
.drawerMenuNav li a{
	display:block;
	padding: 8px 0;
}

/* h3 下層リスト */
.childList{
	margin: 0 0 10px 5px;
}

.childList li:first-child{
	border-top:1px dotted #ccc;
}

.childList li a{
	padding:8px 5px 8px 15px;
	position:relative;
}
.childList li a:before {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 6px;
    height: 6px;
    margin: -4px 0 0 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: solid 2px #00b5d4;
    border-right: solid 2px #00b5d4;
}

.drawerMenuNav li.ul_first{
	margin:10px 0 0 0;
}

/**********************
*
* キャンペーン枠 
*
***********************/
.drawerMenuNav_campaign{
//	margin:0 8px;
	margin:3px;
	padding-bottom:2%;
//	border-bottom:1px solid #00b5d4;
}

.drawerMenuNav_campaign a{
	display:block;
	/*padding:3%;*/
	width:100%;
	/*border:2px solid #00b5d4;*/
	box-sizing:border-box;
}

.drawerMenuNav_campaign img.img_campaign{
//	float:left;
//	margin:3px 2% 2% 0;
//	width:25%;
//	margin:5px;
	width: 200px;
	display: block;
	margin: 0 auto;
}

.drawerMenuNav_campaign dl{
	margin: 0;
	box-sizing:border-box;
    line-height: 1.4;
    /*float: left;
    width: 73%;*/
}

.drawerMenuNav_campaign dt{
//    float: left;
//    width: 73%;
	width: 87%;
	margin: 3px;
	color:#004985;
	font-size: 105%;
	text-align: center;
	text-decoration:underline;
	font-weight:bold;
}

.drawerMenuNav_campaign dt span{
	font-size:12px;
}

.drawerMenuNav_campaign dd{
	clear:both;
	margin: 3px 2px;
	font-weight:normal;
	font-size:10px;
	background:none;
}

.drawerMenuNav_campaign dd a{
	font-size:11px;
	line-height:1.7;
	text-decoration:underline;
}

/**********************
*
* サイト内検索
*
***********************/

/* オープン時 メインコンテンツ<body>に対する制御 */
.searchOpen .overlay {
	visibility: visible;
	background: rgba(0,0,0,.5);
}
.searchOpen .overlay::after {
	visibility: visible;
	color: rgba(255,255,255,.8);
}

/* サイト内検索 閉じた状態 */
.siteSearchBox{
	visibility: hidden;
	position: fixed;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0);
}
/* サイト内検索 開かれた状態 */
.siteSearchBoxOpen{
	visibility: visible;
	display: block;
	width: auto;
	height: auto;/*20%*/
	/*margin-top: 47px;
	padding-top: 20px;*/
	font-size: 13px;
	background: #fff;
	z-index: 9999;
}
.siteSearchBoxOpen div.siteSearchBox_title{
	border-bottom:1px solid #00b5d4;
	border-left:3px solid #00b5d4;
	color: #00b5d4;
	margin: 0 0 0 10px;
	padding: 10px;
	font-size:16px;
	font-weight:bold;
}


.stM_searchBox_mini{
	margin: 10px auto;
}


/* サイト内検索 デザイン */
.gsc-search-box input.gsc-search-button,
.gsc-search-box input.gsc-search-button:hover,
.gsc-search-box input.gsc-search-button:focus {
	background-color: #00B5D4;
	background-image: none;
	border-color: #00B5D4;
	filter: none;
}
