@charset "utf-8";
/* CSS Document */


:root{
	--navy195: #195b9e;	/*header&menu bg*/
	--navy132: #132c42; /*header font*/
	--navy395: #395780; /*section font*/
	--blue: #edf6f9; /*lower bg*/
	--price_blue: #1A5DA1; /*price_plan*/
	--bk222: #222222;
	--gothic: 'Noto Sans JP', sans-serif;
	--mincho: 'Noto Serif JP', serif;
	--times: 'Times New Roman', serif;
}

html{
  font-size:62.5%;/*16px × 62.5% = 10px*/
	font-family: var(--gothic);
}

body{
	font-size: 1.6rem;
	overflow-x: hidden;
}

a{
	color: var(--navy132);
}

img{
	width: 100%;
}

h1,h2,h3{
	font-family: var(--mincho);
}

h2,h3,h4,p,li{
	color: var(--navy395);
}

.en_bg{
	font-size: 3rem;
	font-weight: 700;
	font-family: var(--mincho);
	position: relative;
	text-align: center;
	letter-spacing: 3px;
	z-index: 0;
}

.en_bg::before{
	content: attr(data-text);
	font-size: 140px;
	font-family: var(--times);
	color: rgba(247,247,247,1); /*#f7f7f7*/
	line-height: 1;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: -1;
}

.no_en_bg{
	font-size: 3.4rem;
	font-weight: 700;
	font-family: var(--mincho);
	letter-spacing: 3px;
}

.pc_none{
	display: none;
}

.outer{
	min-width: 1300px;
  max-width: 1920px;
	margin: auto;
}

.inner{
	width: 1140px;
	margin: auto;
}

.uppercase{
	text-transform: uppercase;
}

.bold{
	font-weight: 700;
}

span.marker{
	background: linear-gradient(transparent 50%, rgba(255,233,127,0.5) 50%);
}

span.marker_or{
	border-bottom: 2px solid #fdbd35;
}

ul.check li{
	background: url("../images/common/icon_check.png") no-repeat left/36px 36px;
	font-size: 2rem;
	font-weight: 600;
	font-family: var(--mincho);
	color: var(--bk222);
	padding-left: 50px;
}

a[href^="tel:"]{
  pointer-events: none;
}

button.link_btn{
	display: block;
	font-family: var(--gothic);
	width: 370px;
	height: 80px;
	margin: auto;
}

button.link_btn a::before{
	content: "";
	background: url("../images/common/arrow_b.png") no-repeat center/contain;
	width: 14px;
	height: 10px;
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
	transition: right 0.4s 0s ease;
}

button.link_btn a{
	background-color: #fff;
	display: block;
	font-size: 1.6rem;
	font-weight: 500;
	color: var(--navy395);
	border: 1px solid var(--navy395);
	line-height: 78px;
	position: relative;
	transition: background-color 0.4s 0s ease;
}

button.link_btn a:hover{
	background-color: #edf6f9;
}

button.link_btn a:hover::before{
	right: 10px;
}




/*------------------------------------

	header

------------------------------------*/
body:not(.top) header{
	border-bottom: 1px solid #195b9e;
}

header{
	background-color: #fff;
	height: 140px;
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	margin: 0 auto;
	z-index: 999;
}

header .outer{
	display: flex;
	align-items: center;
	font-family: var(--mincho);
	height: 100%;
}

header .logo{
	margin: 0 auto 0 25px;
	transition: opacity 0.3s 0s ease;
}

header .logo:hover{
	opacity: 0.5;
}

header .logo a{
	display: block;
}

header .logo,
header .logo img{
	max-width: 317px;
	width: 19vw;
	height: auto;
}

header nav ul{
	display: flex;
}

header nav li{	
	font-size: 1.7rem;
	margin: 0 10px;
}

header nav a{
	transition: opacity 0.3s 0s ease;
}

header nav a:hover{
	opacity: 0.5;
}

header .tel{
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 230px;
}

header .tel span:nth-of-type(1){
	font-size: 1.2rem;
}

header .tel span:nth-of-type(2){
	font-size: 2.7rem;
}

header .tel span:nth-of-type(3){
	font-size: 1.2rem;
	color: #838383;
}

header .mail{
	background-color: var(--navy195);
	display: flex;
	flex-direction: column;
	justify-content: center;
	font-size: 1.7rem;
	width: 165px;
	height: 100%;
	position: relative;
	transition: background-color 0.3s 0s ease;
}

header .mail:hover{
	background-color: #53aed8;
}

header .mail a{
	display: block;
	color: #fff;
	padding: 0 10px 0 50px;
}

header .mail a::before{
	content: "";
	display: inline-block;
	background: url("../images/common/icon_mail.png") no-repeat center/contain;
	width: 23px;
	height: 23px;
	position: absolute;
	top: 50%;
	left: 20px;
	transform: translateY(-50%);
}

header .mail a::after{
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}




/*------------------------------------

	price_plan

------------------------------------*/
.price_plan{
	margin: 80px auto;
}

.price_plan .inner>p{
	color: var(--price_blue);
	font-size: 1.4rem;
	width: 680px;
  margin: 20px auto 30px;
}

.price_plan ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.reward.price_plan ul::after{
	content: "";
	width: 360px;
}

.price_plan li{
	width: 320px;
	margin: 20px;
}

.price_plan li p,
.price_plan li span{
	color: var(--price_blue);
	font-weight: 700;
}

.price_plan ul.main_plan li p.target{
	font-size: 1.4rem;
	position: relative;
	margin-bottom: 3px;
}

.price_plan ul.main_plan li p.target.ibaraki span{
	display: inline-block;
	background-color: #FFB53E;
	position: absolute;
	top: 0;
	right: 4px;
	padding: 0 5px;
}

.price_plan ul.main_plan li p.plan_name{
	background-color: var(--price_blue);
	font-size: 2.4rem;
	color: #fff;
	border-radius: 8px;
	padding: 2px 10px;
}

.price_plan ul.main_plan li p.plan_name span{
	display: inline-block;
	background-color: #fff;
	font-size: 1.8rem;
	font-weight: 700;
	color: var(--price_blue);
	border-radius: 5px;
	transform: translateY(-0.1em);
	padding: 0 5px;
	margin-right: 10px;
}

.price_plan ul.main_plan li p.price{
	font-size: 4.9rem;
	text-align: center;
  line-height: 1.2;
	letter-spacing: 2px;
}

.price_plan ul.main_plan li p.price span.en{
	display: inline-flex;
	flex-direction: column-reverse;
	margin: 0 5px;
}
/* 円 */
.price_plan ul.main_plan li p.price span.en span:nth-of-type(1){
	font-size: 2.3rem;
	line-height: 1;
}
/* 税込 */
.price_plan ul.main_plan li p.price span.en span:nth-of-type(2){
	font-size: 1.2rem;
}
/* ～ */
.price_plan ul.main_plan li p.price>span:nth-of-type(2){
	font-size: 2.8rem;
}

/* その他プラン */
.price_plan ul.other_plan .frame_border{
	border: 2px solid var(--price_blue);
	border-radius: 6px;
	overflow: hidden;
	margin-bottom: 5px;
}

.price_plan ul.other_plan p.target{
	background-color: var(--price_blue);
	color: #FFB53E;
	font-size: 1.4rem;
	padding: 5px 10px;
}

.price_plan ul.other_plan p.plan_name{
	font-size: 1.8rem;
	padding: 5px 10px;
}

.price_plan ul.other_plan p.price{
	font-size: 3rem;
	text-align: right;
	padding-right: 10px;
}

.price_plan ul.other_plan li p.price span.en{
	display: inline-flex;
	flex-direction: column-reverse;
	margin: 0 5px;
}
/* 円 */
.price_plan ul.other_plan li p.price span.en span:nth-of-type(1){
	font-size: 1.8rem;
	line-height: 1;
}
/* 税込 */
.price_plan ul.other_plan li p.price span.en span:nth-of-type(2){
	font-size: 0.9rem;
	line-height: 1.1;
}
/* ～ */
.price_plan ul.other_plan li p.price>span:nth-of-type(2){
	font-size: 2.1rem;
}

.price_plan ul.other_plan li>p{
	font-size: 1.2rem;
}




/*------------------------------------

	contact_area

------------------------------------*/
.contact_area{
	background: url("../images/common/bg_contact.jpg") no-repeat center/cover;
	height: 340px;
	margin-bottom: 120px;
}

.contact_area .inner{
	padding-top: 100px;
}

.contact_area h2{
	margin-bottom: 100px;
}

.contact_area h2.en_bg::before{
	color: rgba(209,227,235,0.5);
}

.contact_area ul{
	display: flex;
	justify-content: space-around;
}

.contact_area li{
	width: 480px;
	height: 180px;
	border-radius: 15px;
	text-align: center;
}

.contact_area li a{
	display: block;
}

.contact_area li.tel_box{
	background-color: #fff;
	border: 2px solid #a5c5e5;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
}

.contact_area li.tel_box a::after{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.contact_area li.tel_box div{
	color: var(--navy195);
	letter-spacing: 2px;
}

.contact_area li.tel_box div:nth-of-type(1),
.contact_area li.mail_box div:nth-of-type(1){
	font-size: 1.8rem;
	font-weight: 600;
	font-family: var(--mincho);
}

.contact_area li.tel_box div:nth-of-type(2){
	font-size: 4rem;
	font-weight: 700;
	letter-spacing: 4px;
}

.contact_area li.mail_box{
	background-color: var(--navy195);
}

.contact_area li.mail_box div{
	margin: 20px auto;
}

.contact_area li.mail_box button{
	width: 345px;
	height: 65px;
}

.contact_area li.mail_box div,
.contact_area li.mail_box button.link_btn a{
	color: #fff;
}

.contact_area li.mail_box button.link_btn a{
	background-color: var(--navy195);
	border: 1px solid #fff;
}

.contact_area li.mail_box button.link_btn a:hover{
	background-color: rgba(61,142,199,0.9);
}

.contact_area li.mail_box button.link_btn a::before {
  background: url(../images/common/arrow_w.png) no-repeat center/contain;
}



/*------------------------------------

	footer

------------------------------------*/
footer{
	padding-top: 80px;
	margin-bottom: 110px;
}

footer nav{
	display: flex;
	justify-content: center;
	margin-bottom: 30px;
}

footer nav>ul{
	display: flex;
	justify-content: space-between;
}

footer nav>ul>li{
	width: 140px;
}

footer nav a{
	transition: opacity 0.3s 0s ease;
}

footer nav a:hover{
	opacity: 0.5;
}

footer nav>ul a{
	font-size: 1.5rem;
	color: var(--navy395);
}

footer nav ul.child_nav{
	margin-top: 10px;
}

footer nav ul.child_nav li{
	margin-bottom: 5px;
}

footer nav ul.child_nav a{
	font-size: 1.4rem;
	color: #93a5bd;
}

footer p{
	font-size: 3.2rem;
	font-weight: 600;
	font-family: var(--mincho);
	color: var(--navy132);
	text-align: center;
	margin-bottom: 10px;
}

footer small{
	display: block;
	font-size: 1.5rem;
	color: var(--navy395);
	text-align: center;
}


/*------------------------------------

	page_top

------------------------------------*/
.page_top{
	display: none;
	position: fixed;
	right: 10px;
	bottom: 10px;
}

.page_top svg{
	width: 50px;
	height: 50px;
}







/*------------------------------------------------------------------------------------
		スマホ
------------------------------------------------------------------------------------*/



@media screen and (max-width:750px){
	
	
	.pc_none{
		display: block;
	}
	
	.sp_none{
		display: none;
	}
	
	.outer,
	.inner{
		width: 90%;
	}
	
	.outer{
		min-width: auto;
    max-width: auto;
	}

	a[href^="tel:"]{
		pointer-events: auto;
	}
	
	.en_bg{
	font-size: 2.2rem;
	font-weight: 700;
	font-family: var(--mincho);
	position: relative;
	text-align: center;
	letter-spacing: 3px;
	z-index: 0;
}

	.en_bg::before{
		content: attr(data-text);
		font-size: 18vw;
		font-family: var(--times);
		color: rgba(247,247,247,1); /*#f7f7f7*/
		line-height: 1;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		z-index: -1;
	}

	.no_en_bg{
		font-size: 2.6rem;
		font-weight: 700;
		font-family: var(--mincho);
		letter-spacing: 3px;
	}

	.uppercase{
		text-transform: uppercase;
	}

	.bold{
		font-weight: 700;
	}

	span.marker{
		background: linear-gradient(transparent 50%, rgba(255,233,127,0.5) 50%);
	}
	
	span.marker_or{
		border-bottom: 2px solid #fdbd35;
	}

	ul.check li{
		background: url("../images/common/icon_check.png") no-repeat left/36px 36px;
		font-size: 1.8rem;
		font-weight: 600;
		font-family: var(--mincho);
		color: var(--bk222);
		padding-left: 50px;
	}

	a[href^="tel:"]{
		pointer-events: auto;
	}

	button.link_btn{
		display: block;
		font-family: var(--gothic);
		width: 260px;
		height: 60px;
		margin: auto;
	}

	button.link_btn a::before{
		content: "";
		background: url("../images/common/arrow_b.png") no-repeat center/contain;
		width: 14px;
		height: 10px;
		position: absolute;
		top: 50%;
		right: 15px;
		transform: translateY(-50%);
		transition: right 0.4s 0s ease;
	}

	button.link_btn a{
		background-color: #fff;
		display: block;
		font-size: 1.6rem;
		font-weight: 500;
		color: var(--navy395);
		border: 1px solid var(--navy395);
		line-height: 58px;
		position: relative;
		transition: background-color 0.4s 0s ease;
	}

	button.link_btn a:hover{
		background-color: #edf6f9;
	}

	button.link_btn a:hover::before{
		right: 10px;
	}

	
	
/*------------------------------------

	header(SP)

------------------------------------*/
	body:not(.top) header{
		border-bottom: 1px solid #195b9e;
	}

	header{
		height: 60px;
	}

	header .logo{
		margin: 0 auto 0 0;
	}
	
	header .logo,
	header .logo img{
		width: 158px;
		height: auto;
	}
	
	header .logo a{
		display: block;
	}
	
	header nav{
		background-color: var(--navy195);
		width: 100%;
		position: fixed;
		top: 60px;
		left: -120%;
	}
	
	header nav ul{
		display: block;
	}

	header nav li{
		border-bottom: 1px solid #fff;
		text-align: center;
		margin: auto;
	}

	header nav a{
		display: block;
		background: url("../images/common/arrow_w.png") no-repeat 90% 50%/14px 10px;
		color: #fff;
		padding: 20px 0;
		transition: all 0.3s 0s ease;
	}
	
	header nav a:hover{
		background: url("../images/common/arrow_w.png") no-repeat 95% 50%/14px 10px;
	}

	header .tel,
	header .mail{
		display: none;
	}
	
	header button.menu_btn{
		display: block;
		width: 30px;
		height: 25px;
		position: relative;
	}
	
	header button.menu_btn::before,
	header button.menu_btn::after{
		content: "";
		display: block;
		background-color: var(--navy195);
		width: 30px;
		height: 2px;
		position: absolute;
		left: 0;
		transition: all 0.3s 0s ease;
	}
	
	header button.menu_btn::before{
		top: 0;
	}
	
	header button.menu_btn::after{
		bottom: 0;
	}
	
	header button.menu_btn span{
		display: block;
		background-color: var(--navy195);
		width: 30px;
		height: 2px;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translateY(-50%);
		transition: all 0.3s 0s ease;
	}
	
	header button.menu_btn.menu_open::before{
		top: 50%;
		transform: rotate(45deg) translateY(-50%);		
	}
	
	header button.menu_btn.menu_open::after{
		top: 50%;
		transform: rotate(-45deg) translateY(-50%);		
	}
	
	header button.menu_btn.menu_open span{
		opacity: 0;
	}
	
	
	
/*------------------------------------

	price_plan(SP)

------------------------------------*/
	.price_plan{
		margin: 60px auto;
	}

	.price_plan .inner>p{
		color: var(--price_blue);
		font-size: 1.4rem;
		width: 100%;
		max-width: 600px;
		margin: 20px auto 30px;
	}

	.price_plan ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}

	.reward.price_plan ul::after{
		content: "";
		width: 300px;
	}

	.price_plan li{
		max-width: 280px;
		width: 100%;
		margin: 20px 10px;
	}

	.price_plan li p,
	.price_plan li span{
		color: var(--price_blue);
		font-weight: 700;
	}

	.price_plan ul.main_plan li p.target{
		font-size: 1.2rem;
		position: relative;
		margin-bottom: 3px;
	}	

	.price_plan ul.main_plan li p.target.ibaraki{
		padding-right: 50px;
	}	

	.price_plan ul.main_plan li p.target.ibaraki span{
		display: inline-block;
		background-color: #FFB53E;
		position: absolute;
		top: 0;
		right: 4px;
		padding: 0;
	}

	.price_plan ul.main_plan li p.plan_name{
		background-color: var(--price_blue);
		font-size: 2rem;
		color: #fff;
		border-radius: 8px;
		padding: 2px 10px;
	}

	.price_plan ul.main_plan li p.plan_name span{
		display: inline-block;
		background-color: #fff;
		font-size: 1.4rem;
		font-weight: 700;
		color: var(--price_blue);
		border-radius: 5px;
		transform: translateY(-0.1em);
		padding: 0 5px;
		margin-right: 10px;
	}

	.price_plan ul.main_plan li p.price{
		font-size: 3rem;
		text-align: center;
		line-height: 1.2;
		letter-spacing: 2px;
	}

	.price_plan ul.main_plan li p.price span.en{
		display: inline-flex;
		flex-direction: column-reverse;
		margin: 0 5px;
	}
	/* 円 */
	.price_plan ul.main_plan li p.price span.en span:nth-of-type(1){
		font-size: 1.6rem;
		line-height: 1;
	}
	/* 税込 */
	.price_plan ul.main_plan li p.price span.en span:nth-of-type(2){
		font-size: 1.1rem;
	}
	/* ～ */
	.price_plan ul.main_plan li p.price>span:nth-of-type(2){
		font-size: 2.2rem;
	}

	/* その他プラン */
	.price_plan ul.other_plan .frame_border{
		border: 2px solid var(--price_blue);
		border-radius: 6px;
		overflow: hidden;
		margin-bottom: 5px;
	}

	.price_plan ul.other_plan p.target{
		background-color: var(--price_blue);
		color: #FFB53E;
		font-size: 1.2rem;
		padding: 5px 10px;
	}

	.price_plan ul.other_plan p.plan_name{
		font-size: 1.6rem;
		padding: 5px 10px;
	}

	.price_plan ul.other_plan p.price{
		font-size: 2.2rem;
		text-align: right;
		padding-right: 10px;
	}

	.price_plan ul.other_plan li p.price span.en{
		display: inline-flex;
		flex-direction: column-reverse;
		margin: 0 5px;
	}
	/* 円 */
	.price_plan ul.other_plan li p.price span.en span:nth-of-type(1){
		font-size: 1.5rem;
		line-height: 1;
	}
	/* 税込 */
	.price_plan ul.other_plan li p.price span.en span:nth-of-type(2){
		font-size: 0.9rem;
		line-height: 1.1;
	}
	/* ～ */
	.price_plan ul.other_plan li p.price>span:nth-of-type(2){
		font-size: 1.8rem;
	}

	.price_plan ul.other_plan li>p{
		font-size: 1.2rem;
	}
	
	
	
	
	
	
	
/*------------------------------------

	contact_area(SP)

------------------------------------*/
	.contact_area{
		background: url("../images/common/bg_contact.jpg") no-repeat center/cover;
		height: 200px;
		margin-bottom: 120px;
	}

	.contact_area .inner{
		padding-top: 40px;
	}

	.contact_area h2{
		margin-bottom: 60px;
	}

	.contact_area h2.en_bg::before{
		color: rgba(209,227,235,0.5);
	}

	.contact_area ul{
		display: flex;
		justify-content: center;
    flex-wrap: wrap;
	}

	.contact_area li{
		width: 280px;
		height: auto;
		border-radius: 15px;
		text-align: center;
		padding: 20px 10px;
		margin: 10px;
	}

	.contact_area li a{
		display: block;
	}

	.contact_area li.tel_box{
		background-color: #fff;
		border: 2px solid #a5c5e5;
		display: flex;
		flex-direction: column;
		justify-content: center;
		position: relative;
		transition: background-color 0.3s 0s ease;
	}

	.contact_area li.tel_box:hover{
		background-color: #f7fbff;
	}

	.contact_area li.tel_box a::after{
		content: "";
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}

	.contact_area li.tel_box div{
		color: var(--navy195);
		letter-spacing: 2px;
	}

	.contact_area li.tel_box div:nth-of-type(1),
	.contact_area li.mail_box div:nth-of-type(1){
		font-size: 1.6rem;
		font-weight: 600;
		font-family: var(--mincho);
	}

	.contact_area li.tel_box div:nth-of-type(2){
		font-size: 2.6rem;
		font-weight: 700;
		letter-spacing: 4px;
	}
	
	.contact_area li.tel_box div:nth-of-type(3) span{
		display: inline-block;
		font-size: 1.5rem;
	}

	.contact_area li.mail_box{
		background-color: var(--navy195);
	}

	.contact_area li.mail_box div{
		margin: 0 auto 20px;
	}

	.contact_area li.mail_box button{
		width: 245px;
		height: auto;
	}

	.contact_area li.mail_box div,
	.contact_area li.mail_box button.link_btn a{
		color: #fff;
	}

	.contact_area li.mail_box button.link_btn a{
		background-color: var(--navy195);
		border: 1px solid #fff;
		font-size: 1.5rem;
		line-height: 58px;
	}

	.contact_area li.mail_box button.link_btn a:hover{
		background-color: rgba(61,142,199,0.9);
	}

	.contact_area li.mail_box button.link_btn a::before {
		background: url(../images/common/arrow_w.png) no-repeat center/contain;
	}
	
	
	
/*------------------------------------

	footer(SP)

------------------------------------*/
	footer{
		padding-top: 200px;
		margin-bottom: 60px;
	}

	footer nav{
		display: flex;
		flex-wrap: wrap;
		margin-bottom: 30px;
	}

	footer nav>ul{
		display: block;
		margin: 0 auto;
	}
	
	footer nav>ul,
	footer nav>ul>li{
		width: 140px;
		margin-bottom: 8px;
	}
	
	footer nav>ul>li{
		
	}

	footer nav a{
		transition: opacity 0.3s 0s ease;
	}

	footer nav a:hover{
		opacity: 0.5;
	}

	footer nav>ul a{
		font-size: 1.5rem;
		color: var(--navy395);
	}

	footer nav ul.child_nav{
		margin-top: 0;
	}

	footer nav ul.child_nav li{
		margin-bottom: 5px;
	}

	footer nav ul.child_nav a{
		font-size: 1.4rem;
		color: #93a5bd;
	}

	footer p{
		font-size: 2.4rem;
		font-weight: 600;
		font-family: var(--mincho);
		color: var(--navy132);
		text-align: center;
		margin-bottom: 10px;
	}

	footer small{
		display: block;
		font-size: 1.1rem;
		color: var(--navy395);
		text-align: center;
	}
	
	
/*------------------------------------

	sp_contact

------------------------------------*/	
	.sp_contact{
		display: flex;
		width: 100%;
		position: fixed;
		bottom: 0;
		left: 0;
	}
	
	.sp_contact button{
		width: 50%;
		max-height: 50px;
		position: relative;
	}
	
	.sp_contact button.fix_tel,
	.sp_contact button.fix_mail{
		transition: background-color 0.2s 0s ease;
	}
	
	.sp_contact button.fix_tel{
		background-color: #53aed8;
	}
	
	.sp_contact button.fix_tel:hover{
		background-color: #75bee0;
	}
	
	.sp_contact button.fix_mail{
		background-color: var(--navy195);
	}
	
	.sp_contact button.fix_mail:hover{
		background-color: #477cb1;
	}
	
	.sp_contact button a{
		display: block;
		width: 100%;
		height: 100%;
	}
	
	.sp_contact button img{
		width: 100%;
		max-height: 50px;
	}
	
	
/*------------------------------------

	page_top(SP)

------------------------------------*/
	.page_top{
		display: none;
		position: fixed;
		right: 3px;
		bottom: 55px;
	}

	.page_top svg{
		width: 25px;
		height: 25px;
	}
	
	
	
	
}

