@charset "utf-8";
/* =====================================
共通
===================================== */
#jp-header-primary *,
#jp-footer-primary * {
	font-family: "Hiragino Kaku Gothic ProN",Meiryo,"MS PGothic",Sans-serif;
	font-size: 12px;
	line-height: 1.6;
	box-sizing: border-box;
}
#jp-header-primary .pc,
#jp-footer-primary .pc {
	display: block;
}
#jp-header-primary .sp,
#jp-footer-primary .sp {
	display: none;
}
#jp-header-primary a:focus-visible,
#jp-footer-primary a:focus-visible {
	outline: 0;
}
#jp-header-primary a:hover,
#jp-footer-primary a:hover {
	opacity: 0.6;
}
/* 
======================================*/
/*= header
======================================*/
#header-2.jp-header-primary_nologout, #header-2.jp-header-primary_logout {
	height: 60px;
	border-bottom: 1px solid #ddd;
	padding: 10px 0;
	box-sizing: border-box;
	background-image: none;
}
#jp-header-primary.header-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 1200px;
	margin: auto;
	padding: 0 15px;
	box-sizing: border-box;
}
#jp-header-primary .header-logo_link img {
	width: 90px;
	height: 40px;
}
#jp-header-primary .header-link {
	display: inline-flex;
}
#jp-header-primary .header-link a {
/*   font-family: '源ノ角ゴシック Regular','源ノ角ゴシック','Source Han Sans','Source Han Sans Regular','SourceHanSans-Regular',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;*/
font-size: 14px;
line-height: 20px;
color: #333;
outline: none;
text-decoration: none;
}
/*#jp-header-primary.header-inner a:hover {
opacity: 0.6;
}*/
#jp-header-primary  .header-link-logout {
	padding-right: 10px;
	border-right: 1px solid #ddd;
}
#jp-header-primary .header-link-faq {
	display: inline-block;
	padding-left: 10px;
}
/* 
======================================*/
/*= footer
======================================*/
#jp-footer-primary {
	position: relative;
}
#jp-footer-primary a {
	color: #333333;
}
/*#jp-footer-primary a:hover {
opacity: 0.6;
}*/
/************footer-service**************/
#jp-footer-primary .footer-service {
	background-color: #F2F2F2;
	border-top: 1px solid #333;
	overflow: hidden;
}
#jp-footer-primary .footer-service_inner {
	margin: 30px auto;
	padding: 0 15px;
}
#jp-footer-primary .footer-service_column {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
#jp-footer-primary .footer-pntApp,
#jp-footer-primary .footer-service-others {
	width: 100%;
	max-width: 1170px;
	display: flex;
	justify-content: center;
	align-items: stretch;
}
#jp-footer-primary .footer-pntApp,
#jp-footer-primary .footer-service-others_list li {
	background-color: #FFFFFF;
	border-radius: 8px;
}
#jp-footer-primary .footer-pntApp {
	margin-bottom: 10px;
	padding: 20px 0;
}
#jp-footer-primary .footer-pntApp dl {
	display: grid;
	grid-template-columns: 52.7% 47.3%;
	align-items: center;
}
#jp-footer-primary .footer-pntApp_logo {
	padding: 0 3.3%;
	display: flex;
	align-items: center;
	border-right: 1px solid #DDDDDD;
}
#jp-footer-primary .footer-pntApp_logo-icon {
	flex: 0 0 62px;
}
#jp-footer-primary .footer-pntApp_logo-icon img {
	width: 50px;
}
#jp-footer-primary .footer-pntApp_logo-txt {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
}
#jp-footer-primary .footer-pntApp_logo-txt .pc {
	width: 187px;
}
#jp-footer-primary .footer-pntApp_logo-txt .txt {
	width: 100%;
}
#jp-footer-primary .footer-pntApp_btn_wrap {
	padding: 0 3.7%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
}
#jp-footer-primary .footer-pntApp_btn {
	display: flex;
	gap: 10px;
}
#jp-footer-primary .footer-pntApp_btn a {
	outline: none;
}
#jp-footer-primary .footer-pntApp_btn .appStore img {
	width: 109px;
}
#jp-footer-primary .footer-pntApp_btn .GooglePlay img {
	width: 135px;
}
#jp-footer-primary .footer-pntApp_code {
	width: 40px;
}
#jp-footer-primary .footer-pntApp_phone-pc {
	max-width: 180px;
	border-bottom: 1px solid;
}
#jp-footer-primary .footer-service-others_list {
	width: 100%;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: 60px;
	gap: 10px;
}
#jp-footer-primary .footer-service-others_list li a {
	min-height: 60px;
	display: flex;
	align-items: center;
	padding: 15px 40px 14px 20px;
	position: relative;
	outline: none;
	text-decoration: none;
}
#jp-footer-primary .footer-service-others_list li a::after {
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	background: url(/global/img/footer/jp_footer_primary_arrowR.png) 0 0 / contain no-repeat;
	right: 15px;
	position: absolute;
}
#jp-footer-primary .service-others_logo {
	margin-right: 15px;
	flex: 0 0 105px;
}
#jp-footer-primary .footer-service-others_more {
	text-align: right;
	margin: 15px auto 0;
	line-height: 20px;
	max-width: 1170px;
}
#jp-footer-primary .footer-service-others_more a {
	text-decoration: underline;
}
#jp-footer-primary .footer-service-others_more a:hover {
	text-decoration: none;
}
#jp-footer-primary .footer-service-others_more a::after {
	content: '';
	display: inline-block;
	width: 5px;
	height: 5px;
	border-top: 1px solid #111;
	border-right: 1px solid #111;
	transform: rotate(45deg);
	margin-left: 5px;
	margin-bottom: 2px;
}
/************SNS&brnd**************/
#jp-footer-primary .footer-sns-brnd {
	margin: 30px auto;
	padding: 0 15px;
	display: flex;
	align-items: center;
	justify-content: center;
}
#footer .footer-sns-brnd a,
#jp-footer-primary .footer-sns-brnd a {
	text-decoration: none;
}
#footer .footer-sns-brnd_social,
#jp-footer-primary .footer-sns-brnd_social {
	display: flex;
	justify-content: center;
	border-right: 1px solid #DDDDDD;
}
#jp-footer-primary .footer-sns-brnd_social li {
	margin-right: 30px;
}
#jp-footer-primary .footer-sns-brnd .sns-icon img {
	width: 40px;
}
#jp-footer-primary .footer-sns-brnd_site {
	margin-left: 30px;
}
#jp-footer-primary .footer-sns-brnd_site .brnd-icon {
	width: 127px;
}
/************footer-company以下**************/
#jp-footer-primary .footer-company {
	background: #666;
	padding: 16px 10px 17px;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 17px;
	box-sizing: border-box;
}
#jp-footer-primary .footer-company_link a {
	color: #fff;
	text-decoration: none;
}
#jp-footer-primary .footer-company_link a::after {
	content: "";
	display: inline-block;
	width: 10px;
	height: 10px;
	margin-left: 5px;
	background: url(/global/img/footer/icon-outlink.png) 0 0 no-repeat;
	background-size: 100%;
}
#jp-footer-primary .footer-company_link + .footer-company_link {
	margin-left: 30px;
}
#jp-footer-primary .footer-company-copy {
	padding-top: 10px;
	padding-bottom: 40px;
	text-align: center;
}
#jp-footer-primary .footer-company-copy_item {
	display: inline-block;
}
#jp-footer-primary .footer-company-copy_item span:first-child {
	margin-right: 0.2em;
}
#jp-footer-primary .footer-company-copy_item + .footer-company-copy_item {
	margin-left: 10px;
}
#jp-footer-primary .minsp-br {
	display: none;
}
/*
======================================*/
/*= pagetop・scroll-top(ページトップへ戻るリンク)
======================================*/
/************pagetop(旧)**************/
#pagetop,
#pagetop a {
	background-color: transparent !important;
	color: transparent !important;
	font-size: 0 !important;
	pointer-events: none !important;
}
/************scroll-top(新)**************/
#scroll-top {
	position: absolute;
	right: 10px;
	bottom: 18px;
	width: 40px;
	height: 40px;
}
#scroll-top :hover {
	opacity: 0.6;
}
#scroll-top a {
	outline: none;
}
@media screen and (max-width: 320px) {
	#scroll-top {
		right: 5px;
	}
}

/* ▲===▲===▲===▲===▲===▲===▲===▲ */
/* ▼===▼===▼===▼===▼===▼===▼===▼
タブレット用（1009px以下 最適化:768px）
===================================== */
@media screen and (max-width: 1009px) and (min-width: 768px) {}

/* ▼===▼===▼===▼===▼===▼===▼===▼
タブレット未満スマホ（767px以下 最適化:420-320px）
===================================== */
@media screen and (max-width: 767px) {
	#jp-header-primary a:hover,
	#jp-footer-primary a:hover {
		opacity: 1;
	}
	#jp-header-primary .pc,
	#jp-footer-primary .pc {
		display: none;
	}
	#jp-header-primary .sp,
	#jp-footer-primary .sp {
		display: block;
	}
/* 
======================================*/
/*= footer
======================================*/
/************footer-service**************/
#jp-footer-primary .footer-service_column {
	display: block;
}
#jp-footer-primary .footer-pntApp,
#jp-footer-primary .footer-service-others {
	max-width: 100%;
	flex: none;
}
#jp-footer-primary .footer-pntApp {
	margin-bottom: 0;
	padding: 20px;
}
#jp-footer-primary .footer-pntApp dl {
	grid-auto-flow: row;
	grid-template-columns: auto;
	gap: 20px;
}
#jp-footer-primary .footer-pntApp dt {
	display: flex;
	gap: 15px;
}
#jp-footer-primary .footer-pntApp_logo {
	display: block;
	padding: 0;
	border-bottom: 0;
	border: none;
}
#jp-footer-primary .footer-pntApp_logo-icon {
	margin-bottom: 10px;
	margin-right: 0;
	flex:none;
}
#jp-footer-primary .footer-pntApp_logo-icon img {
	width: 186px;
}
#jp-footer-primary .footer-pntApp_btn_wrap {
	justify-content: center;
}
#jp-footer-primary .footer-pntApp_btn .appStore img,
#jp-footer-primary .footer-pntApp_btn .GooglePlay img {
	width: auto;
	height: 50px;
}
#jp-footer-primary .footer-pntApp_phone-sp {
	flex: 0 0 26.5%;
	max-width: 81px;
}
#jp-footer-primary .footer-service-others_list {
	display: block;
	width: 100%;
}
#jp-footer-primary .footer-service-others_list li {
	margin-top: 10px;
}
#jp-footer-primary .footer-service-others_list li a {
	height: auto;
	padding: 20px 45px 20px 15px;
}
#jp-footer-primary .service-others_logo {
	margin-right: 10px;
}
#jp-footer-primary .footer-service-others_more {
	text-align: center;
	margin-top: 20px;
	max-width: 100%;
}
/************SNS&brnd**************/
#jp-footer-primary .footer-sns-brnd {
	display: block;
}
#jp-footer-primary .footer-sns-brnd_line,
#jp-footer-primary .footer-sns-brnd_social {
	border-right: 0;
	border-bottom: 1px solid #DDDDDD;
}
#jp-footer-primary .footer-sns-brnd_social li:first-child {
	margin-left: 30px;
}
#jp-footer-primary .footer-sns-brnd_line {
	display: flex;
	justify-content: space-between;
	padding-bottom: 20px;
}
#jp-footer-primary .footer-sns-brnd_line dt {
	display: flex;
	align-items: center;
}
#jp-footer-primary .footer-sns-brnd_line .sns-icon {
	margin-right: 10px;
	flex: 0 0 40px;
}
#jp-footer-primary .footer-sns-brnd_line-btn {
	margin-left: 10px;
	flex: 0 0 50%;
	min-width: 190px;
}
#jp-footer-primary .footer-sns-brnd_line-btn a {
	background-color: #24C755;
	border-radius: 8px;
	color: #FFFFFF;
	height: 100%;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	font-size: 14px;
}
#jp-footer-primary .footer-sns-brnd_social {
	padding: 20px 0;
}
#jp-footer-primary .footer-sns-brnd_site {
	margin-left: 0;
	text-align: center;
	margin-top: 20px;
}
#jp-footer-primary .footer-sns-brnd_site .brnd-icon {
	width: 159px;
}
/************footer-company以下**************/
#jp-footer-primary .footer-company {
	padding: 20px 10px;
	height: auto;
	flex-wrap: wrap;
	justify-content: flex-start;
}
#jp-footer-primary .footer-company_link + .footer-company_link {
	margin-left: 20px;
}
#jp-footer-primary .footer-company_link a:hover {
	opacity: 1;
}
}

@media screen and (max-width: 640px) {
	#jp-footer-primary .footer-company_link:last-child {
		margin-left: 0;
		margin-top: 15px;
		width: 100%;
		text-align: left;
	}
}
@media screen and (max-width: 400px) {
	#jp-footer-primary .minsp-br {
		display: block;
	}
}