@charset "UTF-8";

/*girls_v2.0*/

input,
textarea {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: .2em;
}

.cl_black,
.cl_black01 {
	color: #000;
}

.cl_white,
.cl_white a,
.cl_white01,
.cl_white01 a {
	color: #fff;
}

.cl_gray01 {
	color: #666;
}

.fs_xs,
.fs_xs * {
	font-size: 9px;
	font-size: .9rem;
}

.fs_s,
.fs_s * {
	font-size: 12px;
	font-size: 1.2rem;
}

.fw_bold {
	font-weight: 700;
}

.td_none,
.td_none a {
	text-decoration: none;
}

.gr_gray02 {
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e3e2e2));
	background: -webkit-linear-gradient(#fff, #e3e2e2);
	background: linear-gradient(#fff, #e3e2e2);
}

.gr_pink02,
.gr_pink_02 {
	background: -webkit-gradient(linear, left top, left bottom, from(#f55e8f), color-stop(51%, #f03f78), to(#ed2e69));
	background: -webkit-linear-gradient(#f55e8f 0, #f03f78 51%, #ed2e69 100%);
	background: linear-gradient(#f55e8f 0, #f03f78 51%, #ed2e69 100%);
}

.bd_gray01 {
	border: solid 1px #ccc;
}

.btn_03 {
	border: 1px solid #ccc;
	-webkit-box-shadow: 0 0 4px #ddd;
	box-shadow: 0 0 4px #ddd;
}

.btn_03 a {
	display: block;
	text-decoration: none;
}

.btn_03.\+arrow a {
	background-image: url(/User/ViComm/man/Image/A001/sp/ico/ico_arrow_28.png);
	background-position: 97% 50%;
	-webkit-background-size: 6px auto;
	background-size: 6px auto;
	background-repeat: no-repeat;
}

.clearfix:after {
	display: block;
	clear: both;
	content: "";
}

.head_mg_01 {
	margin-top: 47px;
}

.fs_10,
.fs_10 * {
	font-size: 10px;
	font-size: 1rem;
}

.bg_gray03,
.bg_gray_03 {
	background: #333;
}

.cl_pink03,
.cl_pink_03 {
	color: #f2427b;
}

.bd_box,
.bd_box * {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.js_gnav {
	display: inline-block;
}

#js_gnav_btn {
	cursor: pointer;
}

#js_gnav_btn.active {
	background: #000;
	-webkit-transition: .4s ease-in-out;
	transition: .4s ease-in-out;
}

.js_gnav_cont {
	position: absolute;
	top: 50px;
	left: 0;
	display: none;
	width: 100%;
	background: #000;
	color: #fff;
}

.header_box.not_login {
	position: fixed;
}

.header_box {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 100;
	margin-top: -2px;
	width: 100%;
	height: 49px;
	background-color: #333;
	-webkit-box-shadow: 0 2px 2px rgba(0, 0, 0, .4);
	box-shadow: 0 2px 2px rgba(0, 0, 0, .4);
	text-align: center;
}

.btn_Notification,
.btn_mail,
.btn_menu,
.btn_point {
	display: block;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding-top: 8px;
	width: 50px;
	height: 51px;
	text-align: center;
	font-size: 10px;
	font-size: 1rem;
}

.ico_serch {
	margin: -1px auto 0 auto;
	width: 23px;
	height: 18px;
	background-position: 0 -640px;
}

.foot_ico_home {
	margin: 3px auto;
	width: 22px;
	height: 23px;
	background-position: 0 -703px;
}

.img_sprite_02 {
	display: block;
	background-image: url(/User/ViComm/man/Image/A001/sp/img/img_sprite_02.png);
	-webkit-background-size: 60px 498px;
	background-size: 60px 498px;
	background-repeat: no-repeat;
}

.ico_blog_03 {
	width: 18px;
	height: 15px;
	background-position: 1px -333px;
}

#gnav_menu_icon {
	display: block;
	margin: 4px auto 0;
	width: 20px;
	height: 22px;
	cursor: pointer;
	-webkit-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

#gnav_menu_icon span {
	display: block;
	margin-bottom: 2px;
	width: 20px;
	height: 4px;
	-webkit-border-radius: 1px;
	border-radius: 1px;
	background: #fff;
	-webkit-transition: all .4s ease-in-out;
	transition: all .4s ease-in-out;
	will-change: transform, opacity;
}

#gnav_menu_icon span#bar1 {
	margin-top: 2px;
}

#js_gnav_btn.active #gnav_menu_icon {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

#js_gnav_btn.active #gnav_menu_icon #bar1 {
	-webkit-transform: rotate(0) translateY(6px);
	transform: rotate(0) translateY(6px);
}

#js_gnav_btn.active #gnav_menu_icon #bar2 {
	opacity: 0;
}

#js_gnav_btn.active #gnav_menu_icon #bar3 {
	-webkit-transform: rotate(-90deg) translateX(5px);
	transform: rotate(-90deg) translateX(5px);
}

.gnav_cast {
	background-image: url(/User/ViComm/man/Image/A001/sp/img/img_sprite_06.png);
	-webkit-background-size: 109px 939px;
	background-size: 109px 939px;
	background-repeat: no-repeat;
}

.gnav_cast_02 {
	display: block;
	margin: 0 auto 3px;
	width: 22px;
	height: 22px;
	background-position: 0 -262px;
	-webkit-background-size: 72.67px 626px;
	background-size: 72.67px 626px;
}

.gnav_cast_04 {
	display: block;
	margin: 3px auto 6px;
	width: 22px;
	height: 16px;
	background-position: 0 0;
	-webkit-background-size: 72.67px 626px;
	background-size: 72.67px 626px;
}

.gnav_cast_20 {
	display: inline-block;
	width: 21.33px;
	height: 21.33px;
	background-position: 0 -240.67px;
	-webkit-background-size: 72.67px 626px;
	background-size: 72.67px 626px;
}

.gnav_cast_21 {
	display: inline-block;
	margin: 0 5px 0 0;
	width: 18px;
	height: 18px;
	background-position: 0 -122.67px;
	-webkit-background-size: 72.67px 626px;
	background-size: 72.67px 626px;
}

.gnav_cast_22 {
	display: inline-block;
	margin: 0 5px 0 0;
	width: 18px;
	height: 18px;
	background-position: 0 -104.67px;
	-webkit-background-size: 72.67px 626px;
	background-size: 72.67px 626px;
}

.gnav_cast_23 {
	display: inline-block;
	margin: 0 5px 0 0;
	width: 18px;
	height: 18px;
	background-position: 0 -86.67px;
	-webkit-background-size: 72.67px 626px;
	background-size: 72.67px 626px;
}

.gnav_cast_24 {
	display: inline-block;
	margin: 0 5px 0 0;
	width: 18px;
	height: 18px;
	background-position: 0 -68.67px;
	-webkit-background-size: 72.67px 626px;
	background-size: 72.67px 626px;
}

.gnav_cast_25 {
	display: inline-block;
	margin: 0 5px 0 0;
	width: 18px;
	height: 18px;
	background-position: 0 -50.67px;
	-webkit-background-size: 72.67px 626px;
	background-size: 72.67px 626px;
}

.gnav_cast_26 {
	display: inline-block;
	margin: 0 5px 0 0;
	width: 18px;
	height: 18px;
	background-position: 0 -140.67px;
	-webkit-background-size: 72.67px 626px;
	background-size: 72.67px 626px;
}

.gnav_cast__menu03 {
	-webkit-tap-highlight-color: transparent;
	tap-highlight-color: transparent;
}

.gnav_cast__menu03 .item {
	float: left;
	padding: 6px;
	width: 50%;
	height: 50px;
	border-right: 1px solid #bbb;
	border-bottom: 1px solid #bbb;
	background: #fff;
	-webkit-tap-highlight-color: transparent;
	tap-highlight-color: transparent;
}

.gnav_cast__menu03 .item.item_large {
	height: 56px;
}

.gnav_cast__menu03 .item.item_small {
	height: auto;
}

.gnav_cast__point {
	position: relative;
	height: 40px;
	background: #555;
	color: #fff;
}

.gnav_cast__point .col1 {
	float: left;
	padding: 0 2px 0 30px;
	width: 35%;
	background-image: url(/User/ViComm/man/Image/A001/sp/ico/ico_point_11.png);
	background-position: 5% 45%;
	-webkit-background-size: 20px 20px;
	background-size: 20px;
	background-repeat: no-repeat;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 40px;
}

.gnav_cast__point .col2 {
	float: left;
	padding: 0 2px 0;
	width: 30%;
	text-align: right;
	font-weight: 700;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 40px;
}

.gnav_cast__point .gnav_cast__pointlink {
	position: absolute;
	top: 8px;
	right: 5px;
	padding: 0;
	width: 95px;
	height: 21px;
	border: 1px solid #ccc;
	-webkit-border-radius: 15px;
	border-radius: 15px;
	background-color: #ff065d;
	background-image: url(/User/ViComm/man/Image/A001/sp/ico/ico_arrow_13.png);
	background-image: url(/User/ViComm/man/Image/A001/sp/ico/ico_arrow_13.png), -webkit-gradient(linear, left top, left bottom, from(#ff7c9d), to(#ff065d));
	background-image: url(/User/ViComm/man/Image/A001/sp/ico/ico_arrow_13.png), -webkit-linear-gradient(#ff7c9d, #ff065d);
	background-image: url(/User/ViComm/man/Image/A001/sp/ico/ico_arrow_13.png), linear-gradient(#ff7c9d, #ff065d);
	background-position: 95% 50%, 100%;
	-webkit-background-size: auto 13px, 100%;
	background-size: auto 13px, 100%;
	background-repeat: no-repeat;
	color: #fff;
	text-align: center;
	text-decoration: none;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 24px;
}

.header__menuCont {
    top: 49px;
    left: 0%;
    width: 100%;
    border: none;
    border-top: none;
    border-bottom: none;
    background: #fff;
    color: #000;
		text-align: left;
		overflow: scroll!important;
}

.header__menuCont .bdb_dot_01 {
	border-color: #555;
}

.header__closeBtn {
	margin: 2px 3px;
	padding: 3px 0 2px;
	width: 100px;
	border: 1px solid #b8b8b8;
	text-align: center;
}

.header__closeBtn a {
	color: #fff;
}

#js_gnav_mask {
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	display: none;
	width: 100%;
	height: 200%;
	background: #000;
	opacity: .3;
}

.gnav_user_white.gnav_user_04 {
	margin: 0 auto 9px;
}

/*バッチ用*/

.gnav_user_white .batch_mail {
	top: -29px;
}

.batch_Notification,
.batch_mail {
	position: relative;
	left: 12px;
	display: inline-block;
	padding: 1px 2px 1px 2px;
	min-width: 17px;
	min-height: 15px;
	-webkit-border-radius: 9px;
	border-radius: 9px;
	text-align: center;
	font-size: 10px;
	font-size: 1rem;
}

.gnav_user_white.gnav_user_03 {
	width: 22px;
}

.gnav_cast_white {
	width: 22px;
	margin: 0 auto;
}

.gnav_cast_white.gnav_cast_04 {
	background-image: none;
	margin: 1px auto 8px;
}

.gnav_cast_white .gnav_cast_02 {
	display: none;
}



.batch_legs {
	position: relative;
	top: 0px;
	left: 12px;
	display: inline-block;
	padding: 1px 2px 1px 2px;
	min-width: 17px;
	min-height: 15px;
	-webkit-border-radius: 9px;
	border-radius: 9px;
	background: #FF3079;
	text-align: center;
	font-size: 10px;
	font-size: 1rem;
}

.gnav_cast_white .batch_mail {
	top: -32px;
}

.ext_castMainNavi__itemCont .item.camera .batch_counter,
.ext_castMainNavi__itemCont .item.mail .batch_counter,
.ext_castMainNavi__itemCont .item.footprint .batch_counter {
	background: #FF3079;
}

.blink_01 {
	-webkit-animation-name: blink_01;
	animation-name: blink_01;
	-webkit-animation-duration: 2s;
	animation-duration: 2s;
	-webkit-animation-timing-function: ease-in-out;
	animation-timing-function: ease-in-out;
	-webkit-animation-delay: 1s;
	animation-delay: 1s;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
	-webkit-animation-direction: alternate;
	animation-direction: alternate;
}

@-webkit-keyframes blink_01 {
	from {
		opacity: 1;
	}
	40% {
		opacity: 1;
	}
	to {
		opacity: 0;
	}
}

@keyframes blink_01 {
	from {
		opacity: 1;
	}
	40% {
		opacity: 1;
	}
	to {
		opacity: 0;
	}
}


/*ハンバーガーメニュー用*/

.js_gnav .btn_menu {
	color: #666;
}

.js_gnav .btn_menu .batch_menu {
	color: #fff;
}

#gnav_menu_icon {
	margin: 5px auto -2px;
}

#gnav_menu_icon span {
	background: #322f34;
	height: 3px;
	margin-bottom: 3px;
}

#js_gnav_btn.active a {
	background: none;
}


.js_fixedBannerActive {
	bottom: 43px;
}

/*通知ポップアップ用*/
.piko_notification_none {
	display: none;
}
.done .piko_notification_wrap {
   display: none;
}
.piko_notification_wrap {
    animation-play-state: paused;
    width: 95%;
    opacity: 0;
    z-index: 101;
    border: 1px solid #fff;
    position: fixed;
    margin: 0 2.5%;
    background: #fff;
    top: 2%;
    padding: 5px 5px;
    box-shadow: 1px 1px 8px 2px rgba(0,0,0,0.4);
animation-name: anime;
animation-duration: 5s;
animation-delay: 1s;
animation-timing-function: ease;
animation-direction:alternate;
}
@keyframes anime {
    100% {opacity:0;}
    60% {opacity:1;}
    0% {opacity:1;}
}

/*プッシュ通知用*/
.gr_pink_orange {
    background: -webkit-gradient(linear, left top, left bottom, from(#f9741a), to(#ed2e69));
    background: -webkit-linear-gradient(90deg, #f9741a, #ed2e69);
    background: linear-gradient(90deg, #f9741a, #ed2e69)
}
.web_push_none {
	display: none;
}
.web_push_wrap {
    animation-play-state: paused;
    width: 95%;
    opacity: 0;
    z-index: 101;
    border: 1px solid #fff;
    position: fixed;
    margin: 0 2.5%;
    background: #fff;
    top: 2%;
    padding: 5px 5px;
    box-shadow: 1px 1px 8px 2px rgba(0,0,0,0.4);
animation-name: web_push_anime;
animation-duration: 5s;
animation-delay: 1s;
animation-timing-function: ease;
animation-direction:alternate;
}
@keyframes web_push_anime {
    100% {opacity:0;}
    60% {opacity:1;}
    0% {opacity:1;}
}

/*PC用*/
#pc .footer_fixed_box_inner {
	inset: 0;
	width: 480px!important;
	margin: auto auto 0;
	height: 50px;
	border-left: #ccc 1px solid;
	border-right: #ccc 1px solid;
}