@charset "utf-8";
/* text color
----------------------------------------------------- */
a,a:link,a:visited { color:#282828; }
a:hover,a:active { text-decoration: underline; }

/* sh_header_box
------------------------------------------------- */
#sh_header{
	margin:0 auto 35px;
	padding:10px 20px;
	min-height:60px;
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	background-color: #FFF;
	border-bottom:1px solid #DCE6E5;
}

#sh_header h1{
	margin-right: auto;
	padding-right:10px;
	display: flex;
	align-items: center;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	line-height:1;
	min-height:45px
}

#sh_header h1 a{
	display: flex;
	align-items: flex-end;
	color:#282828;
}

#sh_header h1 img{
	display: block;
    width: 68px;
    height:auto;
}

#sh_header h1 a {
	font-size: 18px;
	font-weight: bold;
}

#sh_header h1 a:hover,
#sh_header h1 a:active {
	text-decoration: none;
}


#sh_header h1 span.site-name,
#sh_header h1 span.site-nameadult {
	display: block;
	padding-left:6px;
}

#sh_header .header_link{
	margin-left: 20px;
	display: flex;
	align-items: center;
}
#sh_header .header_link a.login{
	padding:10px;
	display: block;
	color:#282828;
}

#sh_header .header_link a.login:hover,
#sh_header .header_link a.login:active{
    text-decoration: underline; 
}

#sh_header .nav-open{
	display: none;
}
/*********** 768px以下の設定 ************/
@media(max-width: 768px) {
	#sh_header h1 {
		min-height: 39px;
	}
	#sh_header h1 img{
		width: 58px;
	}
	#sh_header h1 a {
		font-size: 15px;
	}
}
/* ad_banner
------------------------------------------------- */

#header_ad_small{
	position: absolute;
	right: calc(50% - 160px);
    bottom: 10px;
	width: 320px;
	height: 100px;
}

#header_ad_small.responsive_hide{
	display: none;
}

#affiliate_ad_small{
	margin: 0 auto;
	width: 320px;
}

.category_ad_small.responsive_hide{
	display: none;
}

#affiliate_ad_small{
	margin: 0 auto;
	width: 320px;
}

#affiliate_ad_small.responsive_hide{
	display: none;
}

/* コンテンツ箇所用パーツ
------------------------------------------------- */

.sh_heading_main_b{
	width:100%;
	margin-bottom:20px;
	padding:1px 10px 0px 15px;
    font-size:2rem;
	text-align:left;
	border-left:1px solid #36D6BD;
}

.share_help_icon{
	background:url(../image/share_parts.png) no-repeat -400px -1400px;
	text-indent:23px;
}


/* side_menu用パーツ
------------------------------------------------- */

/* -- 新規登録/ログインボタン -- */
.side_login{
	margin-bottom: 25px;
}

.side_login a{
	padding:8px 10px;
	width:100%;
	display:block;
	border:1px solid #36D6BD;
	text-align: center;
}

.side_login a:hover{
    background-color: #F2F5F5;
    text-decoration: none;
}


/* 共通フッタ（国内版）
------------------------------------------------- */

.pagetop{
	position: fixed;
	bottom: 15px;
	right: 20px;
	display: flex;
	width: 50px;
	height:50px;
	background-color:rgba(0,0,0,.3);
	border-radius: 50px;
	z-index:7;
}

.pagetop:before{
	content:"";
	position: absolute;
	top: calc(50% - 3px);
	left: calc(50% - 5px);
    width: 10px;
    height: 10px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: rotate(-45deg);
}

.pagetop:hover{
	background-color:rgba(0,0,0,.4);
}

.common_footer{
	margin-top: 150px;
	padding:25px 0 30px;
	background-color: #F2F5F5;
	text-align: left;
}

.common_footer .footer_wrap{
	margin-bottom: 30px;
	padding:0 20px 30px;
	display: flex;
	border-bottom:1px solid #ddd;
}

.common_footer h1{
	margin-bottom:35px;
	padding:0 20px;
	width: 108px;
}

.common_footer h1 img{
	width: 68px;
	display: block;
}

.common_footer h2{
	margin-bottom: 18px;
	font-size:1.4rem;
}

.footer_info{
	margin-right:100px;
	width: 100%;
	max-width: 440px;
}

.footer_info li{
	margin-bottom: 18px;
}

.footer_info time{
	margin-bottom: 5px;
	color:#878E8D;
	display: block;
}

.footer_info a br{
	display: none;
}


.footer_link a{
    color:#282828;
}

.footer_link a:hover,
.footer_link a:active{
    text-decoration: underline; 
}

.support .footer_link li{
    margin-bottom: 30px;
}
.support .footer_link li:last-child{
    margin-bottom: 0;
}

.common_footer .copyright{
	margin-top:25px;
	padding:0 20px;
	font-size:1.2rem;
	color:#7B8789;
}

.common_footer .help_search{
	margin-top:10px;
	display: flex;
}

.common_footer .help_search input[type=text]{
	padding:5px;
	border-radius: 5px 0 0 5px;
	display: block;
	width: 145px;
}

.common_footer .help_search button{
	padding:0 8px;
	background-color: #C5D0CE;
	border:none;
	border-radius: 0 5px 5px 0;
	cursor:pointer;
	width: 50px;
}

.common_footer .help_search button:hover{
	background-color: #B4C2BF;
}

.common_footer .help_search button img{
	margin: 0 auto;
	display: block;
}
.footer_link_bottom{
	padding:0 20px;
	display: flex;
	flex-wrap: wrap;
}

.footer_link_bottom li{
	margin-right: 40px;
	margin-bottom: 20px;
}

.footer_link_bottom li:last-child{
	margin-right: 0;
}

.footer_link_bottom li.footer_langselect_wrap{
	margin-left: auto;
	margin-top:-10px;
}

/*********** 768px以下の設定 ************/
@media(max-width: 768px) {

	.pagetop{
		bottom: 45px;
	}

	.common_footer{
		margin-top: 150px;
		padding:25px 0 30px;
		background-color: #F2F5F5;
		position: relative;
	}

	.common_footer .footer_wrap{
		margin-bottom: 30px;
		padding:0 20px 30px;
		display: block;
		border-bottom:1px solid #ddd;
	}

	.footer_info{
		margin-bottom: 60px;
	}

	.support .footer_link li{
		margin-bottom: 30px;
	}
	.support .footer_link li:last-child{
		margin-bottom: 0;
	}

	.common_footer .copyright{
		margin-top:25px;
		padding:0 20px;
		font-size:1.2rem;
		color:#7B8789;
	}

	.common_footer .help_search{
		margin-top:10px;
		display: flex;
	}

	.common_footer .help_search input[type=text]{
		padding:5px;
		border-radius: 5px 0 0 5px;
		display: block;
		width: 145px;
	}

	.common_footer .help_search button{
		padding:0 8px;
		background-color: #C5D0CE;
		border:none;
		border-radius: 0 5px 5px 0;
		cursor:pointer;
		width: 50px;
	}

	.common_footer .help_search button:hover{
		background-color: #B4C2BF;
	}

	.footer_link_bottom{
		padding:0 20px;
		display: flex;
		flex-wrap: wrap;
	}

	.footer_link_bottom li{
		margin-right: 40px;
		margin-bottom: 20px;
	}

	.footer_link_bottom li.footer_langselect_wrap{
		margin-left: 0;
		margin-top:0;
		position: absolute;
		top: 20px;
		right: 10px;
	}
}