@charset "utf-8";
/*===============================================================
	
	2014/9/18
	
===============================================================*/

/* 初期化
----------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-style:normal;
	font-weight: normal;
	font-size: 100%;
	vertical-align: baseline;
	outline: none;
}
blockquote, q {	quotes: none;	}
blockquote:before, blockquote:after,
q:before, q:after {	content: '';	content: none;}
input, textarea {	margin: 0;	padding: 0;	}
table{	border-collapse: collapse; border-spacing:0;	}
body { font-family:'Hiragino Kaku Gothic Pro','メイリオ','Meiryo','ＭＳ Ｐゴシック',Osaka,sans-serif; }
h1,h2,h3,h4,h5,h6,p,li,th,td,dt,dd { font-size:14px; line-height:25px; }
caption,th,td { text-align:left; vertical-align:top; }
img { vertical-align:top; border:0; }
ul,li { list-style:none; }
option { padding-right:1em; }
address,caption { font-style:normal; font-weight:normal; }
a {	outline:none;	text-decoration:underline; }
a:focus {	outline:none;	}
ul a ,li a {	zoom:1;	}
label {	cursor:pointer; }
strong { font-weight:bold; }

/* HTML5
----------------------------------------------------------------*/
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

/* iOS3.1のhtml5対応 */
article,aside,canvas,details,figcaption,figure,
footer,header,hgroup,menu,nav,section,summary { display:block;
}

/* 文字サイズ、装飾
----------------------------------------------------------------*/
.bold	{	font-weight:bold; }
.cap {
	font-size:14px;
	line-height:25px;
}
.red	{	color:#f00;		}
.yellow	{	color:#cbb847;		}
.blue	{	color:#0047a2;		}
.lightblue { color:#00afd7; }
.green	{	color:#5b9000;	}
.brown	{	color:#633;		}
.pink	{	color:#f3c;		}
.gray	{	color:#eaeeed;		}
.deepgray { color:#92999f ;}
.align_center	{	text-align:center;		}
.align_right	{	text-align:right;		}
.valign_top		{	vertical-align:top;		}
.valign_middle	{	vertical-align:middle;	}
.valign_bottom	{	vertical-align:bottom;	}
.replace {	overflow:hidden;	white-space:nowrap;	text-indent:-100%;	}

/* フロート関係
----------------------------------------------------------------*/
.clear {
	width:100%;
	overflow:hidden;
}
.clearboth {
	clear:both;
}
.cf:before,
.cf:after {
	content: " ";
	display: table;
}
.cf:after {
	clear: both;
}
.cf {
	*zoom: 1;
}
.flol {
	display:inline; /* IE6 */
	float:left;
}
.flor {
	display:inline; /* IE6 */
	float:right;
}
/* マージン
----------------------------------------------------------------*/
.mt05	{	margin-top:5px;		}
.mt10	{	margin-top:10px;	}
.mt15	{	margin-top:15px;	}
.mt20	{	margin-top:20px;	}
.mt25	{	margin-top:25px;	}
.mt30	{	margin-top:30px;	}
.mt40	{	margin-top:40px;	}
.mt50	{	margin-top:50px;	}
.mt60	{	margin-top:60px;	}
.mt70	{	margin-top:70px;	}
.mt80	{	margin-top:80px;	}
.mt90	{	margin-top:90px;	}
.mt100	{	margin-top:100px;	}

.mb05	{	margin-bottom:5px;	}
.mb10	{	margin-bottom:10px;	}
.mb15	{	margin-bottom:15px;	}
.mb20	{	margin-bottom:20px;	}
.mb25	{	margin-bottom:25px;	}
.mb30	{	margin-bottom:30px;	}
.mb40	{	margin-bottom:40px;	}
.mb50	{	margin-bottom:50px;	}

/* パディング
----------------------------------------------------------------*/
.pt10, .pv10, .pa10 { padding-top:   10px !important; }
.pr10, .ph10, .pa10 { padding-right: 10px !important; }
.pb10, .pv10, .pa10 { padding-bottom:10px !important; }
.pl10, .ph10, .pa10 { padding-left:  10px !important; }

/* ボックスモデル幅指定
----------------------------------------------------------------*/
.bg_w	{ width:100%; }
.page_w	{ width:1050px; }
.main_w	{ width:760px; }
.sub_w	{ width:240px; }

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.bg_w,
	.page_w,
	.main_w	{ width:100%; }
	.sub_w	{ width:100%; }
}	/* for SP max-width: 800px */

/* html/body設定
----------------------------------------------------------------*/
html {
	background:url(../img/bg_ocean.jpg) no-repeat 50% 0, #00a8e6;
	background:url(../img/bg_ocean.jpg) no-repeat 50% 0, -moz-linear-gradient(top, #00a8e6 0%, #e3eef4 35%, #e3eef4 100%);
	background:url(../img/bg_ocean.jpg) no-repeat 50% 0, -webkit-gradient(left top, left bottom, color-stop(0%, #00a8e6), color-stop(35%, #e3eef4), color-stop(100%, #e3eef4));
	background:url(../img/bg_ocean.jpg) no-repeat 50% 0, -webkit-linear-gradient(top, #00a8e6 0%, #e3eef4 35%, #e3eef4 100%);
	background:url(../img/bg_ocean.jpg) no-repeat 50% 0, -o-linear-gradient(top, #00a8e6 0%, #e3eef4 35%, #e3eef4 100%);
	background:url(../img/bg_ocean.jpg) no-repeat 50% 0, -ms-linear-gradient(top, #00a8e6 0%, #e3eef4 35%, #e3eef4 100%);
	background:url(../img/bg_ocean.jpg) no-repeat 50% 0, linear-gradient(to bottom, #00a8e6 0%, #e3eef4 35%, #e3eef4 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a8e6', endColorstr='#e3eef4', GradientType=0 );
	background-attachment: fixed;
}
body {
	width: 100%;
	color:#fff;
	text-align:left;
	font-size:14px;
	line-height:25px;
	-webkit-text-size-adjust:none; /* 縦横文字サイズ同じ */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

a {
	color:#36C;
	-webkit-transition: background-color 0.1s linear, color 0.1s linear, border-color 0.1s linear, border-width 0.1s linear, opacity 0.1s linear;
	-ms-transition: background-color 0.1s linear, color 0.1s linear, border-color 0.1s linear, border-width 0.1s linear, opacity 0.1s linear;
	-moz-transition: background-color 0.1s linear, color 0.1s linear, border-color 0.1s linear, border-width 0.1s linear, opacity 0.1s linear;
	-o-transition: background-color 0.1s linear, color 0.1s linear, border-color 0.1s linear, border-width 0.1s linear, opacity 0.1s linear;
}
a:hover { color:#39F }

.boxshadow {
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.20);
	-moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.20);
	-webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.20);
}
.sp {
	display:none;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {
}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～640px */
@media only screen and (max-width: 800px) {
	html {
		background:url(../img/bg_ocean_sp.jpg) no-repeat 50% 0, #00a8e6;
		background:url(../img/bg_ocean_sp.jpg) no-repeat 50% 0, -moz-linear-gradient(top, #00a8e6 0%, #e3eef4 8%, #e3eef4 100%);
		background:url(../img/bg_ocean_sp.jpg) no-repeat 50% 0, -webkit-gradient(left top, left bottom, color-stop(0%, #00a8e6), color-stop(8%, #e3eef4), color-stop(100%, #e3eef4));
		background:url(../img/bg_ocean_sp.jpg) no-repeat 50% 0, -webkit-linear-gradient(top, #00a8e6 0%, #e3eef4 8%, #e3eef4 100%);
		background:url(../img/bg_ocean_sp.jpg) no-repeat 50% 0, -o-linear-gradient(top, #00a8e6 0%, #e3eef4 8%, #e3eef4 100%);
		background:url(../img/bg_ocean_sp.jpg) no-repeat 50% 0, -ms-linear-gradient(top, #00a8e6 0%, #e3eef4 8%, #e3eef4 100%);
		background:url(../img/bg_ocean_sp.jpg) no-repeat 50% 0, linear-gradient(to bottom, #00a8e6 0%, #e3eef4 8%, #e3eef4 100%);
		-webkit-background-size:800px auto;
		background-size:800px auto;
	}
	.pc {
		display:none;
	}
	.sp {
		display:block;
	}
	.fit,
	.fit img {
		width:100%;
		height:auto;
	}
}	/* for SP max-width: 800px */

/*===============================================================
	
	基本文字サイズ
	
===============================================================*/

h2 {
	font-size:15%;	/* 24px */
	font-weight:bold;
}
h3 {
}
p {
	font-size:14px;
	line-height:25px;
}
.notes {
	margin-top:10px;
}
.notes li {
	color:#b29f8a;
	margin-top:5px;
	line-height:1.4;
}


/*===============================================================
	
	レイアウト
	
===============================================================*/
.wrapper {
	min-height:775px;
}
.wrap_inner {
	width:1050px;
	margin: 0 auto;
	padding-top:35px;
	padding-bottom:100px;
}

.subcontainer {
	float:left;
	position:static;
	z-index:99900;
	padding-top:10px;
}
.maincontainer {
	float:right;
	position: relative;
}

/*@media screen and (max-width: 1250px) {
	.wrap_inner {
		width:1050px;
		margin:0 0 0 auto;
	}
}*/	
/* for tablet max-width: 1250px */

/* 表示領域以下 */
/*@media screen and (max-width: 1200px) {
	.wrap_inner {
		width:1050px;
		margin:0 0 0 auto;
	}
}	*/
/* for tablet max-width: 1200px */

/* タブレット以下 */
@media screen and (max-width: 940px) {
}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.wrapper {
		min-height:0;
	}
	.wrapper ,
	.mypage_top .wrapper {
	}
	.wrap_inner {
		width:100%;
		padding-top: 0;
	}
	.top .wrap_inner {
		padding-bottom: 0;
	}
	.maincontainer {
		/* width: calc(100% - 30px); */
		padding: 80px 0 0;
		
	}
	.subcontainer {
		position:fixed;
		top:0;
		padding-top:0;
	}
}

/*===============================================================
	
	ヘッダ
	
===============================================================*/

.header h1 {
	width: 183px;
	height: 119px;
	padding: 20px 15px 0;
	margin: 0 auto;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.header h1 a {
	display:block;
	width: 183px;
	height: 119px;
	background:url(../img/header_logo.png) no-repeat 0 0;
	background-size:183px 119px;
	text-indent:-100%;
	overflow:hidden;
}
.header .head_btns {
	margin:12px auto 0;
}
.header .head_btns .login {
	width:118px;
	height:36px;
	float:left;
}
.header .head_btns .login a ,
.header .head_btns .logout a {
	display:block;
	background:rgba(0,87,173,1);
	color:#FFF;
	width:108px;
	padding: 6px 5px;
	font-weight: bold;
	font-size:14px;
	text-align:center;
	text-decoration:none;
	
	border-radius:18px;
	-webkit-border-radius:18px;
	-moz-border-radius:18px;
	
	/* box-shadow: 0px 2px 1px rgba(0, 0, 0, 0.10);
	-moz-box-shadow: 0px 2px 1px rgba(0, 0, 0, 0.10);
	-webkit-box-shadow: 0px 2px 1px rgba(0, 0, 0, 0.10); */
	box-shadow: 0 2px 0 #002F5D;
	-moz-box-shadow: 0 2px 0 #002F5D;
	-webkit-box-shadow: 0 2px 0 #002F5D;
}
.header .head_btns .login a:hover ,
.header .head_btns .logout a:hover {
	background:rgba(0,87,173,.7);
}

.header .head_btns .logout {
	width:118px;
	height:36px;
	margin:0 auto;
}
.header .head_btns .logout a {
	/* background:#e2f0f9; */
	background: rgba(0,87,173,1);
}

.header .head_btns .entry {
	width:118px;
	height:36px;
	float:right;
}
.header .head_btns .entry a {
	display:block;
	background:rgba(255,231,55,1);
	color:#0052A3;
	width:108px;
	padding: 6px 5px;
	font-weight: bold;
	font-size:14px;
	text-align:center;
	text-decoration:none;
	
	border-radius:18px;
	-webkit-border-radius:18px;
	-moz-border-radius:18px;
	
	/* box-shadow: 0px 2px 1px rgba(0, 0, 0, 0.10);
	-moz-box-shadow: 0px 2px 1px rgba(0, 0, 0, 0.10);
	-webkit-box-shadow: 0px 2px 1px rgba(0, 0, 0, 0.10); */
	box-shadow: 0 2px 0 #002F5D;
	-moz-box-shadow: 0 2px 0 #002F5D;
	-webkit-box-shadow: 0 2px 0 #002F5D;
}
.header .head_btns .entry a:hover {
	background:rgba(255,231,55,.8);
}



/* タブレット以下 */
@media screen and (max-width: 940px) {
}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.header {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width:calc(100% - 30px);
		padding:0 15px;
		position:static;
		z-index:99900;
		border-radius:0px;
		-webkit-border-radius:0px;
		-moz-border-radius:0px;
		height: 73px;
	}
	.header h1 {
		padding:0;
		height: 60px;
		width: 91px;
		order:1;
		margin: 0;
	}
	.header h1 a {
		display:block;
		background:url(../img/sp_header_logo.png) no-repeat 0 0;
		padding:0;
		text-indent:100%;
		width: 100%;
		height: 100%;
		background-size: 100% auto;
		background-position-y: 50%;
	}
	.header.fixed {
		background: #FFF;
		-webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.2);
		-moz-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.2);
		box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.2);
	}
	.header.fixed h1 a {
		background-image:url(../img/sp_header_logo_02.png);
	}
	.header .head_btns {
		margin-top:0;
		padding:5px 0;
		float:right;
		order:3;
		margin: 0;
		width: calc(420/720*100%);
		margin-right: 54px;
	}
	.header .head_btns .cf {
		display:-webkit-flex;
		display:-moz-flex;
		display:-ms-flex;
		display:-o-flex;
		display:flex;
		justify-content: flex-end;
	}
	.header .head_btns .cf:before,
	.header .head_btns .cf:after {
		display:none !important;
	}
	.header .head_btns .login ,
	.header .head_btns .logout ,
	.header .head_btns .entry {
		float:none;
		width: calc(215/394*100%);
		height: auto;
	}
	.header .head_btns .login {
		order:1;
		width: calc(165/394*100%);
	}
	.header .head_btns .logout {
		order:1;
		margin:0 0 0 auto;
	}
	.header .head_btns .entry {
		order:2;
		margin-left:3%;
	}
	.header .head_btns .login a ,
	.header .head_btns .logout a ,
	.header .head_btns .entry a {
		display:inline-block;
		height:28px;
		line-height:28px;
		font-size:13px;
		width: calc(100% - 20px);
		padding:5px 10px;
		border-radius:19px;
		-webkit-border-radius:19px;
		-moz-border-radius:19px;
	}
	
	.header .menu {
		position:absolute;
		right:24px;
		top:22px;
		width:28px;
		height:38px;
		text-indent: -9999px;
		background:url(../img/sp_icon_menu.png) no-repeat 0px 0px;
		background-size:100%;
		cursor:pointer;
		order:3;

	}
	.header.fixed .menu{
		
		background-image:url(../img/sp_icon_menu_02.png);
	}
	.header .open {
		position: fixed;
		z-index: 1;
		background:url(../img/sp_icon_menu_close.png) no-repeat 0px 0px !important;
		background-size:22px auto !important;
	}
	#overlay {
		position: fixed;
		background: rgba(0,22,44, .81);
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		display: none;
	}
}	/* for SP max-width: 800px */
/* SP向けレイアウトの指定：～320px */
@media only screen and (max-width: 375px) {
	.header .menu {
		right:15px;
	}
	.header .head_btns {
		width:auto;
		flex:1;
		margin-right:45px;
		padding: 0;
	}
	.header .head_btns .login a ,
	.header .head_btns .logout a ,
	.header .head_btns .entry a {
		padding: 5px 5px;
	}
	.header .head_btns .entry {
		width: 80px;
	}
	.header .head_btns .login {
		width: 65px;
	}
	.header .head_btns .login a,
	.header .head_btns .logout a,
	.header .head_btns .entry a {
		width: calc(100% - 10px);
		font-size:11px;
	}
}	/* for SP max-width: 320px */

/*===============================================================
	
	MENU
	
===============================================================*/
.nav {
	margin-top: 15px;
	width:240px;
	
}
.nav ul {
	border-radius:10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	box-shadow: 0px 3px 6px rgba(0,0,0,0.16);
}
.nav ul li {
	width:240px;
	background-color:transparent;
	transition: all .3s;
}
.nav ul li:first-child a{
	border-top-left-radius:10px;
	border-top-right-radius:10px;
}
.nav ul li:last-child a {
	border-bottom-left-radius:10px;
	border-bottom-right-radius:10px;
}
.nav ul li:last-child a {
	border-bottom:none;
}
.nav ul li a {
	display:block;
	/*width:200px;*/
	padding:13px 10px 8px 45px;
	line-height:29px;
	text-decoration:none;
	color:#444;
	border-bottom:1px solid #E2E2E2;
	background:url(../img/icon_arrow_blue.png) no-repeat left 23px center #FFF;
	/* background: #fff; */
	font-weight:bold;
	box-sizing:content-box;
}
.nav ul li a:hover,
.nav ul li a.active {
	background:url(../img/icon_arrow_blue.png) no-repeat left 23px center #E7EFF5;
}

.submenu {
	display:none;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.nav {
		position: fixed;
		left: 15px;
		top: 87px;
		z-index:99900;
		width:calc(100% - 30px);
		margin: 0 auto;
		margin-top:0;
		opacity:0;
		background-color: #0057AD;
		border-radius: 10px;
	}
	.nav:before {
		content: '';
		position: absolute;
		top: -15px;
		right: 15px;
		width: 0;
		height: 0;
		border-left: 11px solid transparent;
		border-right: 11px solid transparent;
		
		border-bottom: 15px solid #0057AD;
	}
	.nav ul {
		clear: both;
		display:-webkit-flex;
		display:-moz-flex;
		display:-ms-flex;
		display:-o-flex;
		display:flex;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		-o-flex-wrap:wrap;
		flex-wrap:wrap;
		width:100%;
	}
	.nav ul li {
		display:-webkit-flex;
		display:-moz-flex;
		display:-ms-flex;
		display:-o-flex;
		display:flex;
		width:50%;
		border-bottom:2px solid rgba(0,0,0,0.1);
		font-size:12px;
		line-height:15px;
		background-color: transparent;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		-moz-box-sizing:border-box;
		-ms-box-sizing:border-box;
		-o-box-sizing:border-box;
	}
	.nav ul li:nth-child(2n+1) {
		border-right:2px solid rgba(0,0,0,0.1);
	}

	.nav ul li a {
		display:-webkit-flex;
		display:-moz-flex;
		display:-ms-flex;
		display:-o-flex;
		display:flex;
		align-items: center;
		width:100%;
		padding:12px 5px 12px 32px;
		border:none;
		line-height:15px;
		background: url(../img/icon_arrow_blue.png) no-repeat left 10px center #0057AD;
		vertical-align:middle;
		color:#FFF;
		font-size: 12px;
		font-weight: normal;
	}
	.nav ul li a:hover,
	.nav ul li a.active {
		background-color:#1A68B5;
		background-position: left 10px top 50%;
	}
	.nav ul li:first-child a {
		border-radius:0;
		border-top-left-radius: 10px;
		
	}
	.nav ul li:nth-child(2) a {
		border-radius:0;
		border-top-right-radius: 10px;
		
	}
	.nav ul li:last-child a {
		border-radius:0;
		border-bottom-left-radius: 10px;
	}
	
}	/* for SP max-width: 800px */


/*===============================================================
	
	ページタイトル
	
===============================================================*/
.pagetitle {
	margin-top:10px;
	background:url(../img/mypage/pagetitle_mypage.png) no-repeat 10px center #0057AD;
	width:auto;
	height:60px;
	text-indent:-100%;
	overflow:hidden;
	font-size:15px;
	font-weight:bold;

	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.mypage .pagetitle {
	background-image:url(../img/mypage/pagetitle_mypage.png);
}
.introduce .pagetitle {
	background-image:url(../img/introduce/pagetitle_introduce.png);
}
.introduce .cooca_use .pagetitle {
	background-image:url(../img/introduce/pagetitle_introduce_use.png);
}
.introduce .cooca_put .pagetitle {
	background-image:url(../img/introduce/pagetitle_introduce_put.png);
}
.matriculant .pagetitle {
	background-image:url(../img/introduce/pagetitle_introduce_matriculant.png);
}
.faq .pagetitle {
	background-image:url(../img/introduce/pagetitle_introduce_fag.png);
}
.entry .pagetitle {
	background-image:url(../img/entry/pagetitle_entry.png);
}
.entry_confirm .pagetitle {
	background-image:url(../img/entry/pagetitle_entry_confirm.png);
}
.entry_finish .pagetitle {
	background-image:url(../img/entry/pagetitle_entry_finish.png);
}
.entry_finish .pagetitle_mycooca {
	background-image:url(../img/entry/pagetitle_entry_mycooca.png);
}
.login .pagetitle {
	background-image:url(../img/login/pagetitle_login.png);
}
.login .still .pagetitle {
	background-image:url(../img/login/pagetitle_still.png);
}
.remainder .pagetitle {
	background-image:url(../img/reminder/pagetitle_forget.png);
}
.remainder_resetting .pagetitle {
	background-image:url(../img/reminder/pagetitle_resetting.png);
}
.remainder .finish .pagetitle {
	background-image:url(../img/reminder/pagetitle_resetting_finish.png);
}
.pass .pagetitle {
	background-image:url(../img/mypage/pagetitle_pass.png);
}
.pass_confirm .pagetitle {
	background-image:url(../img/mypage/pagetitle_pass_change.png);
}
.pass_reset .pagetitle {
	background-image:url(../img/mypage/pagetitle_pass_reset.png);
}
.campaign .pagetitle {
	background-image:url(../img/mypage/pagetitle_campaign.png);
}
.campaign_detail .pagetitle {
	background-image:url(../img/mypage/pagetitle_campaign_detail.png);
}

.cardcheck .pagetitle {
	background-image:url(../img/cardcheck/pagetitle_cardcheck.png);
}

.erviceguide .pagetitle {
	background-image:url(../img/mypage/pagetitle_erviceguide.png);
}
.pointuse .pagetitle {
	background-image:url(../img/point/pagetitle_pointuse.png);
}
.history .pagetitle {
	background-image:url(../img/point_history/pagetitle_history.png);
}
.topics_list .pagetitle {
	background-image:url(../img/mypage/pagetitle_topics.png);
}
.topics_detail .pagetitle {
	background-image:url(../img/mypage/pagetitle_topics_detail.png);
}
.exite .pagetitle {
	background-image:url(../img/exit/pagetitle_exite.png);
}
.exite_finish .pagetitle {
	background-image:url(../img/exit/pagetitle_exite_finish.png);
}
.family_create .pagetitle {
	background-image:url(../img/exit/pagetitle_entry.png);
}
.family_join .pagetitle {
	background-image:url(../img/exit/pagetitle_join.png);
}
.family_history .pagetitle {
	background-image:url(../img/exit/pagetitle_family_history.png);
}
.member .pagetitle {
	background-image:url(../img/exit/pagetitle_family_history.png);
}
.member_list .pagetitle {
	background-image:url(../img/family/pagetitle_exite_member.png);
}
.member_remove .pagetitle {
	background-image:url(../img/family/pagetitle_exite_member_remove.png);
}
.member_remove_finish .pagetitle {
	background-image:url(../img/family/pagetitle_exite_member_remove_finish.png);
}
.request .pagetitle {
	background-image:url(../img/family/pagetitle_exite_member_request.png);
}
.dissolve .pagetitle {
	background-image:url(../img/family/pagetitle_exite_member_dissolve.png);
}
.privacypolicy .pagetitle {
	background-image:url(../img/privacypolicy/pagetitle_privacypolicy.png);
}
.agreement .pagetitle {
	background-image:url(../img/agreement/pagetitle_agreement.png);
}
.notitle .pagetitle {
	background-image:url(../img/notfound/pagetitle_notitle.png);
}
.sitepolicy .pagetitle {
	background-image:url(../img/sitepolicy/pagetitle_sitepolicy.png);
}
.display .pagetitle {
	background-image:url(../img/display/pagetitle_display.png);
}
.company .pagetitle {
	background-image:url(../img/company/pagetitle_company.png);
}
.company .hansyakai .pagetitle {
	background-image:url(../img/company/pagetitle_hansyakai.png);
}
.shikin .pagetitle {
	background-image:url(../img/shikin/pagetitle_shikin.png);
}
.contact .pagetitle {
	background-image:url(../img/contact/pagetitle_contact.png);
}
.charge .pagetitle {
	background-image:url(../img/charge/pagetitle_charge.png);
}
.party .pagetitle {
	background-image:url(../img/party/pagetitle_party.png);
}
.party_confirm .pagetitle {
	background-image:url(../img/party/pagetitle_party_confirm.png);
}
.party_finish .pagetitle {
	background-image:url(../img/party/pagetitle_party_finish.png);
}
.announcement .pagetitle {
	background-image:url(../img/announcement/pagetitle_announcement.png);
}

.page .section .pagetitle {
	background:url(../img/icon_section_headline.png) no-repeat 25px center #0057AD;
	background-size:20px 30px;
	height:20px;
	line-height:20px;
	padding:20px 20px 20px 55px;
	font-size:20px;
	color:#fff;
	text-indent:0;
	
	
	border-bottom-left-radius: 0px;
	-webkit-border-bottom-left-radius: 0px;
	-moz-border-bottom-left-radius: 0px;
	border-bottom-right-radius: 0px;
	-webkit-border-bottom-right-radius: 0px;
	-moz-border-bottom-right-radius: 0px;
}

.page .section .pagetitle.notbox {
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.mypage .pagetitle {
		background:#0051a3;
		color:#fff;
		
		margin-top:0px;
		padding:0px 15px 0px;
		width:auto;
		height:auto;
		line-height:30px;
		text-indent:0;
		
		border-radius: 0px;
		-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
	}
		
	.introduce .pagetitle ,
	.introduce .cooca_use .pagetitle ,
	.introduce .cooca_put .pagetitle ,
	.matriculant .pagetitle ,
	.faq .pagetitle ,
	.entry .pagetitle ,
	.entry_confirm .pagetitle ,
	.entry_finish .pagetitle ,
	.entry_finish .pagetitle_mycooca ,
	.login .pagetitle ,
	.login .still .pagetitle ,
	.remainder .pagetitle ,
	.remainder_resetting .pagetitle ,
	.remainder .finish .pagetitle ,
	.pass .pagetitle ,
	.pass_confirm .pagetitle ,
	.pass_reset .pagetitle ,
	.campaign .pagetitle ,
	.campaign_detail .pagetitle ,
	.erviceguide .pagetitle ,
	.pointuse .pagetitle ,
	.history .pagetitle ,
	.topics_list .pagetitle ,
	.topics_detail .pagetitle ,
	.exite .pagetitle ,
	.exite_finish .pagetitle ,
	.family_create .pagetitle ,
	.family_join .pagetitle ,
	.family_history .pagetitle ,
	.member .pagetitle ,
	.member_list .pagetitle ,
	.member_remove .pagetitle ,
	.member_remove_finish .pagetitle ,
	.request .pagetitle ,
	.dissolve .pagetitle ,
	.privacypolicy .pagetitle ,
	.agreement .pagetitle ,
	.notitle .pagetitle ,
	.sitepolicy .pagetitle ,
	.display .pagetitle ,
	.company .pagetitle ,
	.company .hansyakai .pagetitle ,
	.shikin .pagetitle ,
	.contact .pagetitle ,
	.charge .pagetitle {
		/*background:url(../img/sp_bg_wave.png) repeat-x 0 bottom #8ed3f5;*/
		background:#0057AD;
		background-size:215px 10px;
		margin-top:0px;
		padding:15px;
		width:auto;
		height:auto;
		line-height:20px;
		color:#FFF;
		text-indent:0;
		
		border-radius: 0px;
		-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
	}
	.login .pagetitle {
		background: #0052A3;
		padding: 10px 15px 10px;
		color: #FFF;
	}
	.page .section .pagetitle {
		border-radius: 0px;
		-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
		border-bottom:0;
		background:url(../img/sp_icon_section_headline.png) no-repeat 10px center #0057AD;
		background-size:20px 30px;
		height:20px;
		line-height:20px;
		padding:15px 15px 15px 50px;
		font-size:14px;
		color:#fff;
	}
	
	.page .section .pagetitle.notbox {
		border-radius: 0px;
		-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
	}
}	/* for SP max-width: 800px */


/*===============================================================
	
	パン屑
	
===============================================================*/
.breadcrumb {
	margin: 8px 0;
}
.breadcrumb ul li {
	line-height:20px;
	float:left;
	color:#FFF;
	font-weight:bold;
	font-size: 12px;
}
.breadcrumb ul li a {
	padding-right:25px;
	background:url(../img/breadcrumb_arw.png) no-repeat right 10px center;
	color:#FFF;
	text-decoration: none;
	transition: all .3s;
}
.breadcrumb ul li a:hover {
	color:#0051a3;
	text-decoration: underline;
}
.breadcrumb + .section {
	margin-top:0;
}
/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.breadcrumb {
		margin:10px 0;
		padding:0px 15px;
		line-height:20px;
	}
	.breadcrumb ul {
		margin:0 0px;
	}
	.breadcrumb ul li {
		font-size:10px;
	}
	.breadcrumb ul li a {
		padding-right:26px;
		background:url(../img/sp_breadcrumb_arw.png) no-repeat right 10px center;
		background-size:4px 9px;
		color:#fff;
		text-decoration:underline;
	}
	
}	/* for SP max-width: 800px */


/*===============================================================
	
	カラム
	
===============================================================*/


/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {

}	/* for SP max-width: 800px */

/*===============================================================
	
	PAGETOP
	
===============================================================*/
#btn_pagetop {
	width:100%;
	overflow:hidden;
}

#btn_pagetop a {
	display:block;
	position:absolute;
	right:-300px;
	top:0;
	width:95px;
	height:95px;
	color:#fff;
	background:url(../img/pc-pagetop-arw.png) no-repeat 0px 0px;
	text-indent:100%;
	overflow:hidden;
	white-space:nowrap;
	z-index:1000;
	position:fixed;
}
#btn_pagetop a:hover {
	opacity:0.8;

}

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	#btn_pagetop a {
		width:65px;
		height:45px;
		background:url(../img/sp-pagetop-arw.png) no-repeat center center;
		background-size:65px 45px;
	}
	#btn_pagetop a:hover {
		opacity: 1;
	}

}	/* for SP max-width: 800px */

/*===============================================================
	
	headline
	見だし
	
===============================================================*/
.headline {
	line-height:20px;
	border:5px solid #039;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {

}	/* for SP max-width: 800px */
/*===============================================================
	
	subhead
	小見出し
	
===============================================================*/
.subhead {
	font-weight:bold;
	color:#fff;
	background:url(../img/subhead_bg.gif) no-repeat 0 2px;
	padding-left:15px;
	line-height:25px;
	font-size:14px;
}

.whitebox .subhead ,
.whitebox2 .subhead {
	font-weight:bold;
	color:#333;
	background:url(../img/subhead_bg.gif) no-repeat 0 2px;
	padding-left:15px;
	line-height:25px;
	font-size:14px;
}

.box .subhead {
	background:none;
	padding:0;
}

.whitebox2.secondbox {
	margin-top:0px;
	padding-top:30px;
	
	border-top-left-radius: 0px;
	-webkit-top-bottom-left-radius: 0px;
	-moz-border-top-left-radius: 0px;
	border-top-right-radius: 0px;
	-webkit-border-top-right-radius: 0px;
	-moz-border-top-right-radius: 0px;
}


/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.whitebox2.secondbox {
		padding-top:15px;
	}
}	/* for SP max-width: 800px */
/*===============================================================
	
	section
	headlineとcontentなど、複数の要素、機能がひとまとまりとなったラッパ。
	ウィジェット的な利用。
	
===============================================================*/
.section {
	margin:35px auto 0;
	width:740px;
}
.login .section {
	width: 100%;
}
/*.second_section {
	margin-top:60px;
}*/

.exite .second_section {
	margin-top:60px;
}

.section p {
	margin-top:10px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.section {
		margin:30px auto 0;
		width:100%;
	}
	/*.first_section {
		margin-top:15px;
	}*/
}	/* for SP max-width: 800px */
/*===============================================================
	
	content
	単一で固有の要素、機能　section内に配置
	
===============================================================*/
.content {
	margin-top:15px;
}
.login .content {
	margin-top: 20px;
}
.content:first-child {
	margin-top:0px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {

	.txt_content {
		margin:15px 15px 0;
	}
	.box_content {
		margin-left:15px;
		margin-right:15px;
	}

}	/* for SP max-width: 800px */

/*===============================================================
	
	column
	囲み、メモなどサブ的な括り。
	
===============================================================*/
.column {
	padding: 5px 20px 25px;
	background-color: #FFF;
	border-radius:10px;
}
.headline + .column {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}
/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {

}	/* for SP max-width: 800px */







/*
===============================================================
===============================================================
	
	パーツ毎（ウィジェット毎）

===============================================================	
===============================================================
*/



/*===============================================================
	
	白枠
	
===============================================================*/
.whitebox {
	color:#333;
	/* margin-top:20px; */
	background:rgba(255,255,255,1);
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}

.whitebox2 {
	color:#333;
	padding:30px;
	background:rgba(255,255,255,1);
	box-shadow:2px 2px 0px rgba(0,0,0,0.1);

	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.login .whitebox2 {
	background: #FFF;
}
.whitebox .content:first-child ,
.whitebox2 .content:first-child {
	margin-top:0;
}

.secondbox {
	margin-top:20px;
}

.whitebox p:first-child ,
.whitebox2 p:first-child {
	margin-top:0;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.whitebox ,
	.whitebox2 {
		background:rgba(255,255,255,1);
		border:1px solid #eee;
		border-radius: 0px;
		-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
	}
	
	.whitebox {
		margin-top:40px;
	}
	.whitebox2 {
		padding:10px 15px;
		padding-bottom:30px;
	}
	.whitebox2 p {
		line-height:20px;
	}
	.whitebox .content:first-child ,
	.whitebox2 .content:first-child {
		margin-top:0;
	}
}	/* for SP max-width: 800px */



/*===============================================================
	
白枠内文字サイズ
	
===============================================================*/
.whitebox2 .emphasize {
	text-align:center;
	color:#039;
	font-size:34px;
	font-weight:bold;
	line-height:50px;
}

@media screen and (max-width: 940px) {
}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.whitebox2 .emphasize {
		font-size:26px;
		line-height:36px;
		text-align:left;
		margin-top:20px;
	}
}	/* for SP max-width: 800px */


/*===============================================================
	
	フォーム
	
===============================================================*/
.form {
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {

}	/* for SP max-width: 800px */

/*===============================================================
	
	btn
	
===============================================================*/
.submit {
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}

.submit input, .submit a {
    display: block;
    width: 350px;
    padding: 20px 0;
    text-decoration: none;
    color: #fff;
    font-size: 16px;
    line-height: 20px;
    font-weight: bold;
    letter-spacing: 0em;
    background: url(../img/pc_btn_star.png) no-repeat left center, url(../img/pc_btn_arw.png) no-repeat right 10px center #0051a3;
    background-size: 50px 60px, 7px 12px;
    border: 0;
    cursor: pointer;
    text-align: center;
    box-shadow: 0 2px 0 rgba(0,0,0, 0.2);
    border-radius: 10px;
    -webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.beginner + .submit_2btns .submit input,
.beginner + .submit_2btns .submit a {
	border-radius:24px;
	background: url(../img/pc_btn_arw01.png) no-repeat right 10px center #0052A3;
	background-size: 6px 10px;
	padding: 14px 0;
}
.beginner + .submit_2btns .flor .submit input,
.beginner + .submit_2btns .flor .submit a {
	color:#0052A3;
	background: url(../img/pc_btn_arw02.png) no-repeat right 10px center #FFE737;
	
}
.submit input:hover,
.submit a:hover {
	background-color: rgba(255,255,255,0.1);
	opacity: .7;
	margin-left:auto;
	margin-right:auto;
}
.submit-single input,
.submit-single a {
	background-color: rgba(255,255,255,0.1);
	width:200px;
	margin:0 auto;
	text-align:center;
}

.submit_link {
	background-color:#0051a3;
}
.submit_back {
	background-color:#0051a3;
}
.submit_back a {
	background:none;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.submit {
		/*width:80%;*/
		margin:0 auto;
		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		background:#0051a3;
	}
	.submit input,
	.submit a {
		display:block;
		width:100%;
		padding:10px 0;
		text-decoration:none;
		color:#fff;
		font-size:14px;
		line-height:25px;

		background:
			url(../img/sp_btn_star.png) no-repeat left center,
			url(../img/sp_btn_arw.png) no-repeat right center ;
		background-size:
			37px 45px,
			15px 15px;
			
		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
			
	}

	.submit_2btns_sp .submit_back ,
	.submit_2btns_sp .submit_link {
		width:auto;
		margin:0 0px;
	}
	.submit_2btns_sp .submit_back a {
		background:none;
	}

}	/* for SP max-width: 800px */


/*===============================================================
	
	submit_cancel
	
===============================================================*/
.submit_cancel {
	background-color:#6cf;

	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.submit_cancel input,
.submit_cancel a {
	
	background:
		url(../img/pc_btn_star.png) no-repeat left center;
	backgrodun-size:
		50px 60px;
	color:#039;
	text-shadow: 0px 1px 1px rgba(0,0,0, 0.2);
}

.submit_cancel input:hover,
.submit_cancel a:hover {
	background-color:rgba(255,255,255,0.2);
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.submit_cancel {
		background-color:#6cf;
		
		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
	}
	.submit_cancel input,
	.submit_cancel a {
		background-color:#6cf;
	}
	.submit_2btns_sp .submit_cancel {
		width:auto;
		margin:0;
	}

}	/* for SP max-width: 800px */


/*===============================================================
	
	submit_2btns
	
===============================================================*/
.submit_2btns {
	margin:30px auto 0;
	width: 680px;
}
.submit_2btns .submit input,
.submit_2btns .submit a {
	width:325px;
}
.whitebox2 .submit_2btns .submit input,
.whitebox2 .submit_2btns .submit a {
	width:330px;
}
.beginner + .submit_2btns {
	position: absolute;
	width:413px;
	margin-top: 0;
	left: 50%;
	transform: translate(-50%, -85px);
}
.beginner + .submit_2btns .submit input,
.beginner + .submit_2btns .submit a {
	width:252px;
	border-radius:30px;
	box-shadow: 0 3px 0 #002F5D;
}
.beginner + .submit_2btns .flor .submit input,
.beginner + .submit_2btns .flor .submit a {
	width:150px;
}
.beginner + .submit_2btns .submit a {
	width:252px;
	border-radius:30px;
	box-shadow: 0 3px 0 #002F5D;
}
/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.submit_2btns {
		margin:15px 15px 0 15px;
		width:auto;
	}
	.submit_2btns .submit input,
	.submit_2btns .submit a {
		width:100%;
	}
	.submit_2btns .flol,
	.submit_2btns .flor {
		width:49%;
	}
	.beginner + .submit_2btns {
		width:100%;
		margin: 0;
	}
	.beginner + .submit_2btns .submit input,
	.beginner + .submit_2btns .submit a,
	.beginner + .submit_2btns .flor .submit input,
	.beginner + .submit_2btns .flor .submit a {
		width:100%;
		padding: 7px 0;
	}
	.beginner + .submit_2btns .flol,
	.beginner + .submit_2btns .flor {
		display: block;
		width:calc(564/680*100%);
		margin: 0 auto;
	}
	.beginner + .submit_2btns .submit {
		background: transparent;
	}
	.whitebox2 .submit_2btns .submit input,
	.whitebox2 .submit_2btns .submit a {
		width:100%;
	}

	.submit_2btns_sp .flol,
	.submit_2btns_sp .flor {
		width:80%;
		float:none;
		margin-top:10px;
	}
	.submit_2btns_sp .flol .submit,
	.submit_2btns_sp .flor .submit{
		margin-top:10px;
	}

}	/* for SP max-width: 800px */



/*===============================================================
	
	影
	
===============================================================*/

.shdow_out {
	box-shadow: 2px 2px rgba(0,0,0,0.1) ;
}
.shdow_out_btn {
	/* box-shadow: 2px 2px rgba(0,0,0,0.1) ; */
}
.shdow_in {
	/*box-shadow: 2px 2px  rgba(0,0,0,0.1) inset;
	border:1px solid rgba(0,0,0,0.1);*/
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.shdow_out_btn {
		/* box-shadow: 0px 2px rgba(0,0,0,0.1) ; */

		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
	}
	.shdow_in {
	}
}	/* for SP max-width: 800px */

/*===============================================================
	
	テキストリンク
	
===============================================================*/
.txtlink a ,
.locallink a ,
.blanklink a {
	padding-left:17px;
	font-weight:bold;
	color:rgba(40,167,225,1);
	text-decoration:none;
}
.txtlink a:hover ,
.locallink a:hover ,
.blanklink a:hover {
	color:rgba(40,167,225,0.7);
}
.txtlink a {
	background:url(../img/icon_arw_txtlink.png) no-repeat 3px center;
	background-size:6px 11px;
}
.locallink a {
	background:url(../img/icon_arw_local.png) no-repeat 0 center;
	background-size:11px 6px;
}
.blanklink a {
	background:url(../img/icon_arw_blank.png) no-repeat 1px center;
	background-size:10px 8px;
}

a[href*=".pdf"] {
	display: inline-block;
	padding-right: 35px;
	background: url(../img/icon_pdf.svg) no-repeat right center;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
}	/* for SP max-width: 800px */

/*===============================================================
	
	縦方向のフロー
	
===============================================================*/
.vflowlist {
}
.vflowlist .listbox {
	width:100%;
	position:relative;
	/*background:url(../img/vflow_bg.gif) repeat-y 0 0 #fcfcfc;*/
	color:#333;
	
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	padding-bottom:20px;

	background:
		url(../img/vflow_list_bg_03.png) no-repeat 0 bottom,
		url(../img/vflow_list_bg_01.png) no-repeat 0 top,
		url(../img/vflow_list_bg_02.png) repeat-y 0 0;
	background-size:
		100% auto,
		100% auto,
		100% auto;
}

.vflowlist .no01 p.txt {
	background:url(../img/vflow_no_01.png) no-repeat 15px 17px;
}
.vflowlist .no02 p.txt {
	background:url(../img/vflow_no_02.png) no-repeat 15px 17px;
}
.vflowlist .no03 p.txt {
	background:url(../img/vflow_no_03.png) no-repeat 15px 17px;
}
.vflowlist .no04 p.txt {
	background:url(../img/vflow_no_04.png) no-repeat 15px 17px;
}
.vflowlist .no05 p.txt {
	background:url(../img/vflow_no_05.png) no-repeat 15px 17px;
}
.vflowlist .no06 p.txt {
	background:url(../img/vflow_no_06.png) no-repeat 15px 17px;
}
.vflowlist .no07 p.txt {
	background:url(../img/vflow_no_07.png) no-repeat 15px 17px;
}
.vflowlist .no08 p.txt {
	background:url(../img/vflow_no_08.png) no-repeat 15px 17px;
}
.vflowlist .no09 p.txt {
	background:url(../img/vflow_no_09.png) no-repeat 15px 17px;
}

.vflowlist .last {
	background:
		url(../img/vflow_list_bg_04.png) no-repeat 0 bottom,
		url(../img/vflow_list_bg_01.png) no-repeat 0 top,
		url(../img/vflow_list_bg_02.png) repeat-y 0 0;
	padding-bottom:10px;
	background-size:
		100% auto,
		100% auto,
		100% auto;
}

.vflowlist .listbox p.txt {
	padding:15px 15px 15px 65px;
}


/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.vflowlist .listbox {
		background:
			url(../img/sp_vflow_arw.png) no-repeat center bottom,
			url(../img/sp_vflow_list_bg_01.png) no-repeat left top,
			url(../img/sp_vflow_list_bg_03.png) no-repeat right top,
			url(../img/sp_vflow_list_bg_07.png) no-repeat left bottom,
			url(../img/sp_vflow_list_bg_09.png) no-repeat right bottom,
			url(../img/sp_vflow_list_bg_04.png) repeat-y left 0,
			url(../img/sp_vflow_list_bg_06.png) repeat-y right 0,
			url(../img/sp_vflow_list_bg_08.png) repeat-x 0 bottom,
			url(../img/sp_vflow_list_bg_02.png) repeat-x 0 top,
			url(../img/sp_vflow_list_bg_05.png) repeat 0 0 #fcfcfc;
	}
	.vflowlist .last {
		background:
			url(../img/sp_vflow_list_bg_01.png) no-repeat left top,
			url(../img/sp_vflow_list_bg_03.png) no-repeat right top,
			url(../img/sp_vflow_list_bg_07.png) no-repeat left bottom,
			url(../img/sp_vflow_list_bg_09.png) no-repeat right bottom,
			url(../img/sp_vflow_list_bg_04.png) repeat-y left 0,
			url(../img/sp_vflow_list_bg_06.png) repeat-y right 0,
			url(../img/sp_vflow_list_bg_08.png) repeat-x 0 bottom,
			url(../img/sp_vflow_list_bg_02.png) repeat-x 0 top,
			url(../img/sp_vflow_list_bg_05.png) repeat 0 0 #fcfcfc;
		padding-bottom:20px;
	}

	.vflowlist .listbox p.txt {
		line-height:20px;
	}
	
	.vflowlist .no01 p.txt {
		background:url(../img/sp_vflow_no_01.png) no-repeat 15px 15px,
	}
	.vflowlist .no02 p.txt {
		background:url(../img/sp_vflow_no_02.png) no-repeat 15px 15px,
	}
	.vflowlist .no03 p.txt {
		background:url(../img/sp_vflow_no_03.png) no-repeat 15px 15px,
	}
	.vflowlist .no04 p.txt {
		background:url(../img/sp_vflow_no_04.png) no-repeat 15px 15px,
	}
	.vflowlist .no05 p.txt {
		background:url(../img/sp_vflow_no_05.png) no-repeat 15px 15px,
	}
	.vflowlist .no06 p.txt {
		background:url(../img/sp_vflow_no_06.png) no-repeat 15px 15px,
	}
	.vflowlist .no07 p.txt {
		background:url(../img/sp_vflow_no_07.png) no-repeat 15px 15px,
	}
	.vflowlist .no08 p.txt {
		background:url(../img/sp_vflow_no_08.png) no-repeat 15px 15px,
	}
	.vflowlist .no09 p.txt {
		background:url(../img/sp_vflow_no_09.png) no-repeat 15px 15px,
	}
}	/*


/*===============================================================
	
	メインビジュアル
	
===============================================================*/
.mainvisual {
	border-radius: 10px;
	box-shadow: 0px 10px 20px rgba(0,0,0,.2);
}
.mainvisual.slick-slider .slick-list,
.mainvisual .slick-slide,
.mainvisual .slick-slide img {
	height: auto;
	border-radius:10px;
	overflow: hidden;
}

.mainvisual.slick-slider {
	margin-bottom: 104px;
	
}
/* .slick-slider .item {
	padding:10px 0;
} */
/* Dots */
.slick-dots {
	position: absolute;
	bottom: -48px;
}
.slick-dots li {
	width: 12px;
	height: 12px;
	border:2px solid #FFF;
	background-color:transparent;
	border-radius: 50%;
	margin: 0 15px;
	transition: all .3s;
}
.slick-dots li button:before {
	display: none;
	font-size: 30px;
	line-height: 30px;

	width: 40px;
	height: 40px;

	content: '●';

	opacity: 1;
	color:#fff;
}
.slick-dots li.slick-active button:before {
    opacity: 1;
    color:#106ac5;
}
.slick-dots li.slick-active {
	background-color:#FFF;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.mainvisual_wrap {
		text-align:center;
		/* padding:10px 20px 30px;
		background:
			url(../img/sp_bg_top_head.png) repeat-x center -80px,
			url(../img/sp_bg_mainvisual_foot.png) repeat-x center bottom #8ed3f5;
		background-size:
			5px 160px,
			215px 20px; */
			padding: 0 15px;
	}
	.mypage_top .mainvisual_wrap {
		padding:5px 20px 1px;
		/* background:
			url(../img/sp_bg_top_head.png) repeat-x center -95px,
			url(../img/sp_bg_mainvisual_foot.png) repeat-x center bottom #8ed3f5;
		background-size:
			5px 160px,
			215px 20px; */
	}
	.mainvisual {
		margin:0;
		height:auto;
		border-width:5px;
		box-shadow: 0px 5px 10px rgba(0,0,0,.2);
	}

	/* Dots */
	.slick-slider {
		margin-bottom: 30px;
	}
	.mainvisual.slick-slider {
		margin-bottom: 40px;
	}
	.slick-dots {
		position: absolute;
		bottom: -32px;
	}

	.slick-dots li {
	   width: 30px;
	}
	.mainvisual .slick-dots li {
		width: 7px;
		height: 7px;
		border-width: 1px;
		margin: 0 9px;
	 }
	.slick-dots li button:before {
		font-size: 20px;
	}
	.mainvisual .slick-slide img {
		border-radius:5px;
	}

}	/* for SP max-width: 800px */


/*===============================================================
	
	初めてCooCaをご利用される方へ
	
===============================================================*/
.beginner {
	position:relative;
	padding:41px 0 44px;
	margin:80px auto 44px;
	border-radius: 0 0 10px 10px;
	-webkit-border-radius: 0 0 10px 10px;
	-moz-border-radius: 0 0 10px 10px;
	background: url(../img/bg_beginner.png) no-repeat 0 0;
	background-size: 100% auto;
}
.top .beginner {
	margin: 0;
	padding:0 0 20px;
	background: none;
}
.top .beginner .beginnerInner {
	position:relative;
	padding-top:39px;
	padding-bottom: 44px;
	margin:80px auto 0;
	border-radius: 10px 10px 0 0;
	-webkit-border-radius: 10px 10px 0 0;
	-moz-border-radius: 10px 10px 0 0;
	background: #2eb0e5;
}
.top .beginner .beginnerInner::after {
	position: absolute;
	left: 0;
	bottom: -60px;
	content: '';
	width: 100%;
	height: 60px;
	background: url(../img/bg_beginner.png) no-repeat 0 100%;
	z-index: 1;
}
.beginner h3 img ,
.beginner h4 img ,
.beginner .image img ,
.beginner .point img {
	display:none;
}
.beginner h3 {
	padding-bottom: 14px;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
}
.beginner h3 .spDisplay {
	display: none;
}
/* .beginner h4 {
	width: 100%;
	max-width:612px;
	height:109px;
	background:url(../img/pc_beginner_copy.png) no-repeat 0 0;
	background-size:100% auto;
	margin:5px auto 0;
} */
.imageLogo {
	margin-bottom: 13px;
	text-align: center;
}
.bannerList01 {
	display:-webkit-flex;
	display:flex;
	flex-flow:row wrap;
	justify-content:space-between;
	margin: 0 32px;
	text-align: center;
}
.bannerList01 li {
	width:calc((100% - 30px) / 2);
}
.bannerList02 {
	margin: -2px 30px 4px 35px;
	text-align: center;
}
.bannerList02 li {
	display: inline;
	width: auto;
}
.bannerList02 li:first-child {
	margin-right: -32px;
}
.paymentImage {
	padding-bottom: 226px;
	text-align: center;
}
.photoImage {
	position: absolute;
	right: 7px;
	bottom: -76px;
	z-index: 2;
}
.blockInner {
	padding: 77px 0 44px;
	border-radius: 0 0 10px 10px;
	-webkit-border-radius: 0 0 10px 10px;
	-moz-border-radius: 0 0 10px 10px;
	background: #fff;
}
.stepList {
	display:-webkit-flex;
	display:flex;
	flex-flow:row wrap;
	justify-content:space-between;
	width: 611px;
	margin: 0 auto 24px;
}
.stepList li {
	width: auto;
}
.stepList li:nth-child(2),
.stepList li:nth-child(4) {
	margin-top: 30px;
}
.stepList li .stepImage {
	margin-top:0;
	padding-bottom: 5px;
	text-align: center;
}
.stepList li .stepText {
	color:#F92E6F;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.3;
	text-align: center;
}
.stepList li .stepText span {
	display: block;
	padding-bottom: 4px;
	color:#006098;
	font-size: 18px;
	font-weight: bold;
}
.photoBlock {
	position: relative;
}
.photoBlock .button {
	position: absolute;
	left: 50%;
	bottom: -43px;
	width: 386px;
	margin-left: -200px;
	z-index: 3;
}
.photoBlock .button a {
	display: block;
	padding: 18px 10px 14px;
	background: #0052A3;
	border-radius:25px;
	box-shadow: 0 3px 0 #002F5D;
	color: #fff;
	font-size: 18px;
    line-height: 20px;
    font-weight: bold;
	text-align: center;
	text-decoration: none;
}
.photoBlock .button a:hover {
	opacity: .7;
}
.pointButton {
	margin: 0 24px 10px 30px !important;
	padding: 13px 10px 10px;
	border-radius: 10px;
	background: #f92e6f;
	font-size: 21px;
	font-weight: bold;
	text-align: center;
}
.pointButton .spDisplay {
	display: none;
}
.pointInfo {
	margin: 0 0px 10px 0px !important;
	padding: 13px 10px 10px;
	border-radius: 10px;
	background: #f92e6f;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	color: #ffffff;
}
.pointInfo .spDisplay {
	display: none;
}
.styleText {
	color: #1A1311;
	font-size: 14px;
	text-align: center;
}
.styleText .spDisplay {
	display: none;
}
.beginner .point {
	width:98px;
	height:102px;
	background:url(../img/pc_beginner_point.png) no-repeat 0 0;
	background-size:98px 102px;
	position:absolute;
	top:255px;
	right:0;
}
.clearfix { zoom:1; }
.clearfix:after {
	display:block;
	clear:both;
	content:"";
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.beginner {
		position: relative;
		width:auto;
		/* padding-top:0; */
		overflow:hidden;
		margin: 0 15px;
		/* background-position:15px 8px; */
		background: url(../img/bg_beginner_sp.png) no-repeat 0 0;
		background-size: 100% auto;
		/* padding-bottom: 111px; */
		padding: 20px 0;
		border-radius:0 0 10px 10px;
		-webkit-border-radius:0 0 10px 10px;
		-moz-border-radius:0 0 10px 10px;
	}
	.top .beginner .beginnerInner {
		margin: 0 15px;
		padding: 35px 0 20px;
	}
	.top .beginner .beginnerInner::after {
		position: absolute;
		left: 0;
		bottom: -39px;
		content: '';
		width: 100%;
		height: 100px;
		background: url(../img/bg_beginner_sp.png) no-repeat 0 100%;
		background-size: 100% auto;
		z-index: 1;
	}
	.beginner h3 img ,
	.beginner h4 img ,
	.beginner .image img ,
	.beginner .point img {
		display:block;
	}
	.beginner h3 {
		/* width:auto; */
		width: auto;
		height:auto;
		background:none;
		font-size: 16px;
		line-height: 1.3;
		top: 0;
	}
	.beginner h3 .spDisplay {
		display: block;
	}
	.imageLogo {
		margin-bottom: 10px;
	}
	.imageLogo img {
		width: 96%;
	}
	.blockInner {
		margin: 0 15px;
		padding: 20px 0 30px;
	}
	.bannerList01 {
		margin: 0 auto;
		padding:0 10px;
	}
	.bannerList01 li {
		width:100%;
		margin-bottom: 10px;
	}
	.bannerList01 li:last-child {
		margin-bottom: 0;
	}
	.bannerList01 li img {
		width: 100%;
		height: auto;
	}
	.bannerList02 {
		margin: 0 10px 5px;
		text-align: center;
	}
	.bannerList02 li {
		display: inline;
		width: auto;
	}
	.bannerList02 li img {
		width: 50%;
		height: auto;
	}
	.bannerList02 li:first-child {
		margin-right: -20px;
	}
	.paymentImage {
		padding:0 10px 40%;
		text-align: center;
	}
	.paymentImage img {
		width: 100%;
		height: auto;
	}
	.photoImage {
		right: 0;
		bottom: -30px;
		padding-left: 20px;
		text-align: right;
	}
	.photoImage img {
		width: 100%;
		height: auto;
	}
	.stepList {
		width: auto;
		justify-content: space-around;
		margin: 20px 10px 0;
	}
	.stepList li {
		width:50%;
		max-width:280px;
		margin-bottom: 25px;
		text-align: center;
	}
	.stepList li img {
		width:100%;
	}
	.stepList li:nth-child(2),
	.stepList li:nth-child(4) {
		margin-top: 0;
	}
	.stepList li .stepImage {
		padding-bottom: 5px;
		text-align: center;
	}
	.stepList li .stepImage img {
		max-width: 100%;
		height: auto;
	}
	.stepList li .stepText {
		font-size: 12px;
	}
	.stepList li .stepText span {
		font-size: 14px;
	}
	.photoBlock {
		position: relative;
		margin-bottom: 40px;
	}
	.photoBlock .button {
		width: 90%;
		left: 5%;
		bottom: 0;
		margin-left: 0;
	}
	.photoBlock .button a {
		display: block;
		padding: 12px 10px 10px;
		background: #0051a3 url(../img/pc_btn_arw.png) no-repeat right 10px center;
		font-size: 3.5vw;
		line-height:4.3vw;
	}
	.photoBlock .button a:hover {
		opacity: .7;
	}
	.pointButton {
		margin: 0 10px 10px !important;
		padding: 10px;
		font-size: 15px;
		text-align: center;
	}
	.pointButton .spDisplay {
		display: block;
	}
	.pointInfo {
		margin: 0 0px 10px !important;
		padding: 10px;
		font-size: 12px;
		text-align: center;
	}
	.pointInfo .spDisplay {
		display: block;
	}
	.styleText {
		padding: 0 10px;
		font-size: 12px;
	}
	.styleText .spDisplay {
		display: block;
	}
	.beginner h4 {
		width:100%;
		max-width: 683px;
		height:auto;
		background:none;
		/* margin-top:108px; */
		margin-top: 15.5%;
	}
	.beginner .image {
		width:auto;
		height:auto;
		background:none;
		margin-top:31%;
	}
	.beginner .point {
		width:17%;
		height:auto;
		background:none;
		position:absolute;
		top:34%;
		right:-1%;
	}
	.beginner .point img {
		width:100%;
	}

}	/* for SP max-width: 800px */

@media only screen and (max-width: 736px) {
	.photoBlock .button {
		bottom: -5px;
	}
}
@media only screen and (max-width: 640px) {
	.photoBlock .button {
		bottom: -15px;
	}
}
@media only screen and (max-width: 580px) {
	.photoBlock .button {
		bottom: -35px;
	}
}
@media only screen and (max-width: 375px) {
	.photoBlock .button {
		bottom: -45px;
	}
	.photoBlock .button a {
		font-size:13px;
	}
}

/*===============================================================
	
	ボックス
	
===============================================================*/
.box {
	width:auto;
	margin:0px auto 0;
	background:#fff7f7;
	border:2px solid #f9c;
	padding:14px 29px 14px;
	color:#f09;
	
	border-radius:10px;
	-webkit-border-radius:10px;
	-moz-border-radius:10px;
}
.box .subhead {
	color:#333;
}
.box p {
	font-weight:bold;
	margin-top:10px;
}

.whitebox .box {
	width:auto;
	margin-top:20px;

	border-radius:5px;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
}
.whitebox2 .box {
	border-radius:5px;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
}

/* ファミリー作成 */
.family_create .box {
	margin-top:30px;
}
.family_create .whitebox2 {
	padding:15px;
}

/* 注意書き用  */
.note {
	padding:15px 25px;
	border-width:5px;
	color:#333;
}

/* 連絡事項用  */
.info {
	padding:15px 25px 25px;
	border-width:5px;
	color:#333;
	border:5px solid #6cf;
	background:#fff;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.box {
		width:auto;
		margin:0;
		margin-top:15px;
		border:2px solid #f9c;
		padding:13px;
		line-height:15px;
		border-width:1px;
		border-radius:5px;
		-webkit-border-radius:5px;
		-moz-border-radius:5px;
	}
	/* マイページ */
	.mypage .whitebox {
		padding-bottom:20px;
		margin-top:0;
	}

	/* 連絡事項用  */
	.info {
		padding:15px 25px 25px;
		border-width:5px;
		color:#333;
		border:5px solid #6cf;
		background:#fff;
	}

}	/* for SP max-width: 800px */






/*===============================================================
	
	会員情報
	
===============================================================*/

.status {
	padding:30px 10px 0px 30px;
}
.status .member {
	width:350px;
	float:left;
}
.status .member h3.welcome {
	color:#6cf;
	font-weight:bold;
	font-size:23px;
	line-height:30px;
	border-bottom:5px solid #6cf;
}
.status .member h3.welcome span {
	color:#039;
	font-weight:bold;
	padding:0 10px;
}
.status p {
	margin-top:0;
}


/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.status {
		padding:10px 0px 0px 0px;
	}
	.status .member {
		width:auto;
		padding:0 15px;
		float:none;
	}
	.status .member h3.welcome {
		font-size:15px;
	}
}	/* for SP max-width: 800px */


/*===============================================================
	
	カード
	
===============================================================*/
.status .member .card {
	margin-top:10px;
}
.status .member .card .image {
	padding-top:5px;
	width:80px;
	float:left;
}
.status .member .card .image img {
	box-shadow: 2px 2px 1px rgba(0, 0, 0, 0.10);
	-moz-box-shadow: 2px 2px 1px rgba(0, 0, 0, 0.10);
	-webkit-box-shadow: 2px 2px 1px rgba(0, 0, 0, 0.10);
}
.status .member .card .txt {
	padding-top:3px;
	overflow:hidden;
}
.status .member .card .txt p {
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.status .member .card {
		width:auto;
		padding:10px 15px 0 15px;
	}
}	/* for SP max-width: 800px */


/*===============================================================
	
	バーコード
	
===============================================================*/
.status .barcode {
	position:relative;
	width:340px;
	/*height:100px;*/
	float:right;
}
.status .barcode .image {
	width:300px;
	background:#fff;
	padding:19px 9px;
	text-align:center;
	border:1px solid #ccc;
}
.status .barcode .image img {
	width:100%;
}
.status .barcode .btn a {
	position:absolute;
	right:0px;
	top:0;
	z-index:100;
	display:block;
	width:20px;
	height:20px;
	background:url(../img/barcode_open.png) no-repeat 0 0;
	background-size:20px;
	text-indent:100%;
	overflow:hidden;
}
.status .barcode .open a {
	background:url(../img/barcode_close.png) no-repeat 0 0;
	background-size:20px;
}


/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {

	.status .barcode {
		width:auto;
		height:auto;
		min-height:20px;
		margin:10px auto;
		position:relative;
		float:none;
		text-align:center;
	}
	.status .barcode .image {
		width:auto;
		padding:30px 9px;
		border:0;
	}
	.status .barcode .image img {
		max-width:100%;
		height:auto;
	}
	.status .barcode .close a {
	}
	
	.barcode {
		margin-left:-20px;
		width:100%;
	}
	
	/* card_sp */
	.status .card_sp {
		padding:10px 15px 0 15px;
		width:auto;
	}
	.status .card_sp p {
		margin-top:0;
	}
	.status .card_sp .id {
		position:relative;
		width:100%;
		height:22px;
		font-weight:bold;
		
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	}
	.status .card_sp .id img {
		box-shadow: 2px 2px rgba(0,0,0,0.1) ;
	}
	.status .card_sp .id p {
		position:absolute;
		top:0;
		left:43px;
		font-size:10px;
		line-height:22px;
		font-weight:normal;
	}
	.status .card_sp .family {
		margin-top:5px;
		font-size:12px;
		line-height:20px;
	}
}	/* for SP max-width: 800px */


/*===============================================================
	
	バリュー残高・ポイント
	
===============================================================*/
.balance {
	padding:20px 30px 0;
}
.balance p {
	margin-top:0;
}
.balance .balance_box {
	width:330px;
	text-align:right;
	margin-left:-5px;
}
.balance .value {
	float:left;
	background:url(../img/hl_value.gif) no-repeat 0 0;
}
.balance .point {
	/* float:right; */
	float:left;
	background:url(../img/hl_point.gif) no-repeat 0 0;
}
.balance .balance_box .val {
	margin-top:12px;
	padding-right:5px;
	line-height:30px;
	font-size:20px;
	font-weight:bold;
	color:#fff;
}
.balance .balance_box .unit {
	padding-right:5px;
	font-size:11px;
	line-height:20px;
	color:#28a7e1;
}
.balance .balance_box .link {
	text-align:left;
}
.balance .balance_box .link a {
	display:block;
	color:#999;
	text-decoration:none;
	background:url(../img/mypage/icon_value_link.png) no-repeat 0 center;
	background-size:14px 13px;
	padding-left:20px;
	line-height:20px;
	font-size:12px;
}
.balance .balance_box .link a:hover {
	text-decoration:underline;
}


/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	/* バリュー残高・ポイント */
	.balance {
		padding:0px 15px 0 5px;
	}
	.balance .balance_box {
		width:275px;
		margin:0 auto;
	}
	.balance .value {
		float:none;
		background:url(../img/sp_hl_value.gif) no-repeat 0 0;
		background-size:275px 35px;
	}
	.balance .point {
		float:none;
		background:url(../img/sp_hl_point.gif) no-repeat 0 0;
		background-size:275px 35px;
	}
	.balance .balance_box .val {
		font-size:15px;
		line-height:20px;
		padding-right:5px;
		padding-top:7px;
	}
	.balance .balance_box .unit {
		font-size:10px;
		line-height:10px;
		padding-right:5px;
		margin-top:3px;
	}
	.balance .balance_box .link a {
		padding-top:0px;
		padding-left:20px;
		line-height:15px;
		font-size:12px;
		margin-left:12px;
	}
}	/* for SP max-width: 800px */


/*===============================================================
	
	有効期限確認
	
===============================================================*/
.expiration {
	padding:20px 30px 0px;
}

.expiration .btn {
	text-align:right;
	background:url(../img/btn_expiration.png) no-repeat right 0;
}
.expiration .btn a {
	display:block;
	width:190px;
	height:45px;
	line-height:40px;
	margin-left:auto;
	margin-right:0px;
	text-align:center;
	color:#333;
	text-decoration:none;
}
.expiration .open {
	background:url(../img/btn_expiration_open.png) no-repeat right 0;
}
.expiration .expiration_box {
	background:#fff;
	border:1px solid #ccc;
	border-top:0;
	padding:0 19px 20px;
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	-webkit-border-bottom-left-radius: 5px;
	-webkit-border-bottom-right-radius: 5px;
	-moz-border-radius-bottomleft: 5px;
	-moz-border-radius-bottomright: 5px;
}
.expiration .expiration_box .list {
	/* width:300px; */
}
.expiration .expiration_box .value {
	float:left;
}
.expiration .expiration_box .point {
	/* float:right; */
}
.expiration .expiration_box .list dt,
.expiration .expiration_box .list dd {
	/*width:150px;*/
	line-height:20px;
	padding:20px 0 0;
}
.expiration .expiration_box .list dt {
	float:left;
	font-weight:bold;
}
.expiration .expiration_box .list dd {
	/*width:150px;*/
	/*float:right;*/
	text-align:right;
	overflow: hidden;
}

.expirationBase {
	margin-top: 10px;
}
.expirationBase .refund {
	margin: 0 30px;
}
.expirationBase .refund p + p {
	margin-top: 5px;
}
.expirationBase .refund a {
	display: inline-block;
	padding: 0 1em;
	line-height: 30px;
	text-decoration: none;
	border: 1px solid #CCC;
	border-radius: 5px;
	background-color: #FFF40C;
	transition: opacity 0.3s;
}
.expirationBase .refund a:hover {
	opacity: 0.7;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.expiration {
		padding:10px 15px 15px;
	}
	.expiration .btn {
		background:url(../img/sp_mypage_btn_expiration.png) no-repeat center center #fff;
		background-size:110px 20px;
		border:1px solid #ddd;
		text-indent:0;
		
		border-bottom-radius: 5px; 
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
	}
	.expiration .btn a {
		display:block;
		width:100%;
		height:45px;
		line-height:45px;
		text-align:center;
	}
	.expiration .open {
		background:url(../img/sp_mypage_btn_expiration_open.png) no-repeat center center #fff;
		background-size:110px 20px;
		border-bottom:0;
		background-size:110px 20px;
		border-bottom-radius: 0px; 
		-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
		border-top-left-radius: 5px; 
		border-top-right-radius: 5px; 
		-webkit-border-top-left-radius: 5px; 
		-webkit-border-top-right-radius: 5px;
		-moz-border-radius-topleft: 5px;
		-moz-border-radius-topright: 5px;
	}
	.expiration .expiration_box {
		border:1px solid #ccc;
		border-top:0;
		padding:0 14px 0px;
	}
	.expiration .expiration_box .list {
		display:block;
		border-top:1px solid #eee;
		padding:5px 0;
		width:100%;
	}
	.expiration .expiration_box .value {
		float:none;
	}
	.expiration .expiration_box .point {
		float:none;
	}
	.expiration .expiration_box .list dt,
	.expiration .expiration_box .list dd {
		width:auto;
		line-height:20px;
		padding:10px 0;
		font-size:12px;
		display:block;
	}
	.expiration .expiration_box .list dt {
		float:left;
		font-weight:bold;
	}
	.expiration .expiration_box .list dd {
		width:auto;
		float:right;
		text-align:right;
	}

	.expirationBase {
		margin-top: 20px;
	}
	.expirationBase .refund {
		margin: auto;
	}
	.expirationBase .refund p {
		margin: 0 15px;
	}
	.expirationBase .refund a {
		display: block;
		padding: unset;
		text-align: center;
		line-height: 40px;
		transition: unset;
	}
}	/* for SP max-width: 800px */


/*===============================================================
	
	機能
	
===============================================================*/

.myfunction {
	text-align:center;
	padding:10px 30px 30px;
}
.myfunction .myfunction_box {
	margin-top:10px;
	position:relative;
	width:680px;
	height:100px;
}
.myfunction .myself {
	background:url(../img/myfunction_myself_bg.png) no-repeat 0 0;
}
.myfunction .family {
	background:url(../img/myfunction_family_bg.png) no-repeat 0 0;
	height:120px;
}

/* btn */
.myfunction .myfunction_box .btn {
	width:170px;
	height:60px;
	padding-right:10px;
	position:absolute;
	display:block;
}
.myfunction .myfunction_box .btn a {
	display:table-cell;
	background:#6cf;
	width:160px;
	padding-right:5px;
	height:60px;
	color:#fff;
	text-decoration:none;
	text-align:left;
	font-weight:bold;
	line-height:20px;
	vertical-align:middle;
	padding-left:45px;
	
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

.myfunction .myfunction_box .smallbtn {
	background:url(../img/mypage/myfunction_family_smallbtn_bg.png) no-repeat 0 0;
}
.myfunction .myfunction_box .smallbtn a {
	display:block;
	height:27px;
	line-height:27px;
	padding-left:40px;
	width:125px;
}
.myfunction .myfunction_box .smallbtn_last {
	background-position:0 4px;
}
.myfunction .myfunction_box .smallbtn_last a {
	margin-top:4px;
}

.myfunction .myfunction_box .valuechage {
	top:20px; left:130px;
}
.myfunction .myfunction_box .point {
	top:20px; left:310px;
}
.myfunction .myfunction_box .history {
	top:20px; left:490px;
}
.myfunction .myfunction_box .memberlist {
	top:20px; left:130px;
}
.myfunction .myfunction_box .familypoint {
	top:20px; left:310px;
}
.myfunction .myfunction_box .make {
	top:20px; left:490px;
}
.myfunction .myfunction_box .entry {
	top:50px; left:490px;
}

/* btn icon */
.myfunction .myfunction_box .valuechage a {
	padding-left:45px;
	background:url(../img/mypage/icon_valuechage.png) no-repeat 12px center;
}
.myfunction .myfunction_box .point a {
	padding-left:45px;
	background:url(../img/mypage/icon_point.png) no-repeat 13px center;
}
.myfunction .myfunction_box .history a {
	background:url(../img/mypage/icon_history.png) no-repeat 13px center;
}
.myfunction .myfunction_box .memberlist a {
	background:url(../img/mypage/icon_memberlist.png) no-repeat 16px center;
}
.myfunction .myfunction_box .familypoint a {
	background:url(../img/mypage/icon_familypoint.png) no-repeat 12px center;
}
.myfunction .myfunction_box .make a {
	background:url(../img/mypage/icon_makefamily.png) no-repeat 15px center;
}
.myfunction .myfunction_box .entry a {
	background:url(../img/mypage/icon_entryfamily.png) no-repeat 15px center;
}

.myfunction .myfunction_box .btn a:hover {
	background-color:rgba(255,255,255, 0.3);
}

.howto_family {
	position:absolute;
	top:80px; left:130px;
}
.howto_family p {
	padding:10px 0;
	margin-top:0;
	font-size:10px;
	line-height:20px;
	font-weight:bold;
}
.howto_family p a {
	color:#fff;
	text-decoration:none;
	background:url(../img/mypage/icon_family_link.png) no-repeat 0 0;
	background-size:14px 13px;
	padding:0px 0 2px 15px;
}
.howto_family p a:hover {
	text-decoration:underline;
}


/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.myfunction {
		text-align:center;
		padding:0px 0px 0px;
	}
	.status + .myfunction {
		padding-top:20px;
	}
	.myfunction .myfunction_box {
		margin-top:0px;
		padding:15px;
		padding-top:60px;
		border-top:1px solid rgba(255,255,255, 0.3);
		border-bottom:1px solid rgba(0,0,0, 0.3);
		width:auto;
		height:135px;
		position:relative;
	}

	.myfunction .myself {
		background:url(../img/mypage/sp_icon_myfunction_01.png) no-repeat center 3px #039;
		background-size:100px 65px;
	}
	.myfunction .family {
		background:url(../img/mypage/sp_icon_myfunction_02.png) no-repeat center 3px #039;
		background-size:100px 65px;
		height:170px;
	}

	.myfunction .myfunction_box .btn {
		float:none;
		width:auto;
		height:auto;
		padding-right:0px;
		position:relative;
	}
	.myfunction .myfunction_box .btn a {
		margin-top:10px;
		display:block;
		background:#28a7e1;
		width:100%;
		height:35px;
		line-height:35px;
		padding:0;
		text-align:center;
	}
	.myfunction .myfunction_box .smallbtn {
		background:none;
	}
	.myfunction .myfunction_box .btn a br {
		display:none;
	}

	.myfunction .myfunction_box .valuechage {
		top:0px; left:0px;
	}
	.myfunction .myfunction_box .point {
		top:0px; left:0px;
	}
	.myfunction .myfunction_box .history {
		top:0px; left:0px;
	}
	.myfunction .myfunction_box .memberlist {
		top:0px; left:0px;
	}
	.myfunction .myfunction_box .familypoint {
		top:0px; left:0px;
	}

	.myfunction .myfunction_box .makeentry {
		position:relative;
		width:100%;
		height:35px;
		padding-top:0px;
	}
	.myfunction .myfunction_box .makeentry .smallbtn {
		padding:0;
		margin:0;
	}
	.myfunction .myfunction_box .make {
		position:absolute;
		top:0px; left:0px;
		width:48%;
		padding:0;
		margin-top:0px;
	}
	.myfunction .myfunction_box .entry {
		position:absolute;
		top:0px; left:52%;
		width:48%;
		padding:0;
	}

	.howto_family {
		position:absolute;
		top:200px; left:15px;
	}

}	/* for SP max-width: 800px */


/*===============================================================
	
	通知
	
===============================================================*/
.notification {
	position:absolute;
	top:-5px;
	left:-5px;
	background:url(../img/icon_notification.png) no-repeat 0 0;
	background-size:30px 30px;
	z-index:1000;
	text-indent:100%;
	overflow:hidden;
	width:30px;
	height:30px;
}
.myfunction .myfunction_box .btn .notification {
	top:-5px;
	left:-5px;
}
.myfunction .myfunction_box .smallbtn .notification {
	top:-5px;
	left:-5px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {
}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.notification {
		float:left;
		position:relative;
	}
	.myfunction .myfunction_box .makeentry .smallbtn .notification {
		top:5px;
		left:-5px;
	}
}


/*===============================================================
	
	ボタン群
	
===============================================================*/
.top .btns ,
.mypage_top .btns {
	background: rgba(255,255,255,0.8);
	padding:15px;
	margin:30px auto;
	width:710px;
	overflow:hidden;
	
	border-bottom-radius: 10px; 
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.top .btns .clear ,
.mypage_top .btns .clear {
	width:720px;
}
.top .btns li a ,
.mypage_top .btns li a {
	display:block;
	width:170px;
	height:40px;
	float:left;
	margin-right:10px;
	text-indent:-9999px;
	overflow:hidden;
	background-size: contain!important;

	border-bottom-radius: 5px; 
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

.top .btns li.card a ,
.mypage_top .btns li.card a {
	background:url(../img/btns_01.png) no-repeat 50% 50%;
}
.top .btns li.group a ,
.mypage_top .btns li.group a {
	background:url(../img/btns_02.png) no-repeat 50% 50%;
}
.top .btns li.profit a ,
.mypage_top .btns li.profit a {
	background:url(../img/btns_03.png) no-repeat 50% 50%;
}
.top .btns li.qa a ,
.mypage_top .btns li.qa a {
	background:url(../img/btns_04.png) no-repeat 50% 50%;
}

.top .btns li a:hover ,
.mypage_top .btns li a:hover {
	opacity: .80;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {
}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.top .btns ,
	.mypage_top .btns {
		display:none;
	}
	.top .btns li a:hover ,
	.mypage_top .btns li a:hover {
		opacity: 1;
	}

}	/* for SP max-width: 800px */


/*===============================================================
	
	全ページ共通ボタン群
	
===============================================================*/
.common_btns_wrap {
	width:100%;
	margin:0 auto;
	display:block;
	z-index:99999;
	position:fixed;
		bottom:0;
		left:0;
}
.common_btns_wrap .page_w {
	width: 100%;
}
.common_btns_wrap .common_btns {
	margin: 0 auto;
}
.common_btns_wrap .common_btns .common_btns_inner {
	display:block;
	/* float:right; */
	background:#D3E3EE;
	padding:10px 0;
	/* padding-right:5px; */
	margin-top:15px;
	/* width:720px; */
	width: 100%;
	box-shadow: 0 -6px 10px rgba(0, 0, 0, .13);
}
.common_btns .cf {
	margin:0 auto;
}
.common_btns_wrap .common_btns ul {
	display: flex;
	width: 100%;
	width: 100%;
	width: 1050px;
}
.common_btns_wrap .common_btns ul li {
	width: 25%;
	height: 36px;
	border-right:1px solid #86AED3;
}
.common_btns_wrap .common_btns ul li:first-child {
	border-left:1px solid #86AED3;
}
@media only screen and (max-width: 800px) {
	.common_btns_wrap .common_btns ul {
		width:auto;
	}
	.common_btns_wrap .common_btns ul li {
		height: auto;
		display: flex;
		align-items: center;
	}
	.common_btns_wrap .common_btns ul li:first-child {
		border-left:none;
	}
	.common_btns_wrap .common_btns ul li:last-child {
		border-right:none;
	}
}

.common_btns li a {
	display:block;
	/* width:170px; */
	/* height:55px; */
	width: 100%;
	height: 100%;
	float:left;
	/* margin-right:10px; */
	text-indent:100%;
	overflow:hidden;
	
	border-radius: 5px; 
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

.common_btns li.card a {
	background:url(../img/btns_01.png) no-repeat 50% 50%;
}
.common_btns li.group a {
	background:url(../img/btns_02.png) no-repeat 50% 50%;
}
.common_btns li.profit a {
	background:url(../img/btns_03.png) no-repeat 50% 50%;
}
.common_btns li.qa a {
	background:url(../img/btns_04.png) no-repeat 50% 50%;
}

.common_btns li a:hover {
	opacity: .80;
}

.common_btns li img {
	display:none;
}


/* タブレット以下 */
@media screen and (max-width: 1250px) {
	.common_btns_wrap .common_btns {
		margin:0 0 0 auto;
	}
}	/* for tablet max-width: 1250px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.common_btns_wrap .common_btns {
		width:100%;
		display:block;
		z-index:99999;
		position:fixed;
			bottom:0;
			left:0;
		background:none;
	}
	.common_btns_wrap .common_btns .common_btns_inner {
		float:none;
		/* padding:0; */
		margin:0;
		width:100%;
		/* background:none; */
	}
	.common_btns li {
		margin:0 auto;
		width:25%;
		float:left;
		background:none;
	}
	.common_btns li.card a ,
	.common_btns li.group a ,
	.common_btns li.profit a ,
	.common_btns li.qa a {
		display:block;
		width:100%;
		height:auto;
		background:none;
		margin-right: 0;
		
		border-radius: 0px; 
		-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
	}
	.common_btns li a:hover {
		opacity: 1;
	}
	.common_btns li a img {
		display:block;
		/* width:100%; */
		max-width: 100%;
		height:auto;
		margin: 0 auto;
		overflow:hidden;
	}

}	/* for SP max-width: 800px */


/*===============================================================
	
	お知らせ
	
===============================================================*/
.topics {
	/* margin:30px auto 0; */
	margin: 0 auto;
}
.topics .headline {
	padding:10px;
	border:0;
	background:url(../img/topics_headline.png) no-repeat 24px 10px #0057AD;
	text-indent:-9999px;
	overflow:hidden;
	height:36px;
	background-size: auto 36px;
	
	border-radius: 10px 10px 0 0;
	-webkit-border-radius:10px 10px 0 0;
	-moz-border-radius: 10px 10px 0 0;
}
.topics .headline h3 {
	display:block;
	height:36px;
	float:left;
	width:121px;
	text-indent:-9999px;
	overflow:hidden;
}
.topics p {
	margin-top:0;
	color:#333;
}
.topics .headline span.btn a {
	margin:0px 35px 0 0;
	overflow:hidden;
	display:block;
	height:36px;
	line-height:36px;
	width:155px;
	float:right;
	background:url(../img/topics_headline_btn.png) no-repeat 0px center;
	text-indent:100%;
}
.topics .headline span.btn_campaign a {
	width:185px;
	background:url(../img/topics_headline_btn_campaign.png) no-repeat 0px center;
	text-indent:100%;
	margin-right: 25px;
}
.topics .headline span a:hover {
	opacity: 1;
}

.topics .list {
	background:rgba(255,255,255,1);
	/* background: #EEF7FC; */
	border-radius: 0 0 10px 10px;
	-webkit-border-radius: 0 0 10px 10px;
	-moz-border-radius: 0 0 10px 10px;
}
.bannerBlock + .topics .list {
	background-color: #EEF7FC;
}
.bannerBlock + .topics .column {
	background-color: #EEF7FC;
}
.topics .list .item {
	padding:20px 0px 19px 0px;
	/* margin:0 20px; */
	/* width:700px; */
	border-bottom:1px solid #ddd;
}
.topics .list .item:last-child {
	border-bottom:0px;
}
.topics_nolink .list .item {
	background:none;
	padding:20px 0px;
}
.topics .list .item .image {
	margin-right:20px;
	padding:14px 25px;
	width:70px;
	/* height:80px; */
	text-align:center;
	vertical-align:middle;
	float:left;
	background:#fff;
	border-radius:3px;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
}
.topics .list .item .image a {
	display: block;
}
.topics .list .item .image img {
	width: 100%;
}
.topics .topictxt {
	float:left;
	/* width:520px; */
	width:calc(100% - 140px);
}
.topics .topictxt p {
	line-height:20px;
}
.topics .noimg .topictxt {
	width:700px;
}
.topics .topictxt .datebox {
	/* height:30px; */
	margin-top: 3px;
}
.topics .topictxt .datebox p {
	display:block;
	float:left;
}
.topics .topictxt .date {
	/* font-weight:bold; */
	line-height:30px;
	/* width:110px; */
	margin-right: 15px;
	font-weight: bold;
}
.topics .topictxt .category {
	text-decoration:none;
	/* margin-top:3px; */
	display:block;
	width:100px;
	
	/* padding:1px 0 0 0; */
	line-height:20px;
	text-align:center;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	font-size: 13px;
	border:2px solid #0A8BD2;
	background: #fff;
	color:#0A8BD2;
	font-weight: bold;
}
.topics .topictxt .notice {
	margin-top:3px;
}
.topics .topictxt .notice a {
	color:#3566CC;
	text-decoration: underline;
}
.topics .topictxt .notice a:hover {
	text-decoration: none;
}
.topics .topictxt .btn {
	margin:0 0 0 auto;
	width:120px;
	height:27px;
}
.topics .topictxt .btn a {
	display:block;
	background:url(../img/topics_btn_detail01.png) no-repeat 0 0;
	text-indent:-100%;
	overflow:hidden;
	width:120px;
	height:27px;
	color:#666;

	border-radius: 38px;
	-webkit-border-radius: 38px;
	-moz-border-radius: 38px;
}
.topics .topictxt .btn a:hover {
	opacity: .80;
}


/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.topics {
		margin-top:15px;
		width:auto;
	}
	.topics .headline {
		border-radius: 0px;
		-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
		border-bottom:0;
		background:url(../img/sp_topics_headline.png) no-repeat 15px 10px #0057AD;
		background-size:auto 25px;
		height:25px;
		line-height:20px;
	}
	.topics .headline h3 {
		height: 25px;
	}
	.topics .column {
		margin-top:0px;
		background:none;
		padding: 0;
	}
	.topics .list {
		border-radius: 0px;
		-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
	}
	.topics .list .item {
		padding:10px 63px 9px 15px;
		background:url(../img/sp_arw_topics_link.png) no-repeat right 18px center;
		background-size:14px auto;
		width:auto;
		margin:0;
		border-top:1px solid rgba(255,255,255,0.5);
		border-bottom:1px solid rgba(0,0,0,0.2);
	}
	.topics .list .item:last-child {
		border-bottom:1px solid rgba(0,0,0,0.2);
	}
	.topics_nolink .list .item {
		background:none;
		padding:10px 0px 9px 0;
	}
	.topics .list .item .image {
		float:left;
		width:53px;
		/* height:40px; */
		margin-right:20px;
		padding: 8px 15px;
	}
	.topics .list .item .image img {
		/* width:55px; */
		/* height:40px; */
	}

	.topics .topictxt {
		/* width:auto; */
		/* float:none; */
		/* margin-left:90px; */
		width: calc(100% - 103px);
	}
	.topics .noimg .topictxt {
		margin-left:0px;
		width:auto;
	}
	.topics .topictxt .datebox {
		height:auto;
	}
	.topics .topictxt .datebox p {
		text-align:left;
	}
	.topics .topictxt .date {
		font-weight:bold;
		line-height:19px;
		font-size:12px;
		width:auto;
		margin-top:0;
		padding-right:10px;
	}
	.topics .topictxt .category {
		color:#28a7e1;
		background:none;
		display:block;
		font-size:11px;
		width:auto;
		border-width: 1px;
		line-height: 1;
		padding:0;
		margin:0;
		border-radius:2px;
		padding: 3px 4px;
	}
	.topics .topictxt .category p {
		display:block;
	}
	.topics .topictxt .notice {
		font-size:12px;
		line-height:18px;
		margin-top:5px;
		width:auto;
	}
	.topics .topictxt .notice a {
		/*text-decoration: none;*/
	}

	.topics .btn_gotolist a ,
	.topics .btn_campaign a {
		text-align:center;
		font-weight:bold;
		margin:15px auto;
		display:block;
		width:80%;
		padding:10px 0;
		text-decoration:none;
		color:#fff;
		font-size:12px;
		line-height:25px;
		
		background:
			url(../img/sp_btn_star.png) no-repeat left center,
			url(../img/sp_btn_arw.png) no-repeat right center #0051a3;
		background-size:
			37px 45px,
			15px 15px;
			
		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
	}
	.topics .btn_gotolist a.shdow_out_btn {
		background:
			url(../img/sp_btn_arw.png) no-repeat right 15px center #0051a3;
		background-size:
			15px 15px;
		border-radius: 25px;
		-webkit-border-radius: 25px;
		-moz-border-radius: 25px;
	}


}	/* for SP max-width: 800px */



/*===============================================================
	
	お知らせカテゴリメニュー
	
===============================================================*/

.topics_category_menu {
	text-align:right;
}
.topics_category_menu p {
	display:inline;
	padding-right:10px;
}
.topics_category_menu select {
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.topics_category_menu {
		text-align:center;
	}
	.topics_category_menu p {
	}
	.topics_category_menu select {
	}
}	/* for SP max-width: 800px */
/*===============================================================
	
	お知らせ詳細
	
===============================================================*/
.topics_detail {
}
.topics_detail .subhead {
	margin-top:10px;
}
.topics_detail .ditailbox {
	margin-top:20px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 800px) {
	.topics_detail .whitebox2,
	.campaign_detail .whitebox2 {
		margin-top:15px;
		padding-top:30px;
	}
	.topics_detail .ditailbox,
	.campaign_detail .ditailbox {
		margin-top:20px;
	}
	.topics_detail .ditailbox img,
	.campaign_detail .ditailbox img {
		width:auto;
		height:auto;
		max-width:100%;
	}
}	/* for SP max-width: 800px */




/*===============================================================
	
	テキストフィールド単体
	
===============================================================*/
.input_fullbox {
	background:#eee;
	padding:13px;
	margin-top:10px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.input_fullbox {
		background:#fff;
		padding:0px;
		margin-top:5px;
	}
}	/* for SP max-width: 800px */

/*===============================================================
	
	ボタン
	
===============================================================*/
.btnbox .btn a {
	display:block;
	font-weight:bold;
	clear:#fff;
	width:350;
	height:70px;
	line-height:70px;
	margin:0 auto;
	text-align:center;
	text-decoration:none;
	color:#fff;
	font-size:16px;
	line-height:70px;

	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}

.one_btn {
	background:#039;
	margin-top:40px;
	margin:40px auto 0;
	text-align:center;
	width:350px;

	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.one_btn {
	margin:30px auto 0;
	background-color:#0051a3;
}

.cancel_btn {
	background-color:#8ed3f5;
}
.cancel_btn a {
	color:#039;
}
.back_btn {
	background-color:#8ed3f5;
}
.back_btn a {
	color:#039;
}
.modalbox .one_btn {
	margin-top:40px;
}

.back_btn a {
	background:
		url(../img/pc_btn_star.png) no-repeat left center;
	backgrodun-size:
		50px 60px;
	color:#0051a3;
	text-shadow: 0px 1px 1px rgba(0,0,0, 0.2);
}
.back_btn a:hover {
	background-color:rgba(255,255,255,0.2);
}


.big_btn {
	width:80%;
}
.big_btn a {
	width:100%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	background:
		url(../img/pc_btn_star.png) no-repeat left center,
		url(../img/pc_btn_arw.png) no-repeat right 10px center #0051a3;
	backgrodun-size:
		50px 60px,
		7px 12px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.btnbox .btn a {
		width:175px;
		height:50px;
		line-height:50px;
		font-size:16px;
	}

	.one_btn {
		margin:20px auto 0;
		width:auto;
		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
	}
	.one_btn a {
		width:100%;
	}

	.big_btn {
		width:90%;
	}
	.big_btn a {
		width:100%;
	}
}	/* for SP max-width: 800px */


/*===============================================================
	
小サイズボタン
	
===============================================================*/
.smallbtnbox .btn {
	width:160px;
	height:40px;
	margin:0 auto;
	background:#fff;
	border:1px solid #eee;

	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;

	box-shadow: 0px 2px rgba(0,0,0,0.1) ;

}
.smallbtnbox .btn a {
	display:block;
	font-weight:bold;
	color:#fff;
	line-height:40px;
	margin:0 auto;
	text-align:center;
	text-decoration:none;
	color:#039;
	font-size:14px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
}
.smallbtnbox .btn a:hover {
	/*background-color:#f5f5f5;*/
	color:#39f;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.smallbtnbox .btn {
		width:50%;
		margin:10px auto 0;
	}
}	/* for SP max-width: 800px */


/*===============================================================
	
	タブ
	
===============================================================*/
.tab_content {
	/* margin-top:30px; */
}
/* head */
.tab_content .head {
	height:50px;
	overflow:hidden;
}
.tab_content .head .inner {
	height:50px;
}
.tab_content .head .tab_btn {
	width:49%;
}
.tab_content .head .tab_value {
	float:left;
}
.tab_content .head .tab_point {
	float:right;
}
.tab_content .head .tab_btn a {
	display:block;
	background:#0051a3;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	-webkit-border-top-left-radius: 10px;
	-webkit-border-top-right-radius: 10px;
	-moz-border-radius-topleft: 10px;
	-moz-border-radius-topright: 10px;
	width:100%;
	height:50px;
	float:left;
	text-decoration:none;
	color:#fff;
	text-align:center;
	line-height:50px;
	text-decoration:none;
	font-size:16px;
	font-weight:bold;
}
.tab_content .head .active a {
	background:rgba(255,255,255,1);
	color:#0051a3;
}

/* settingDisplay */
.tab_content .settingDisplay div {
	margin-bottom:20px;
	padding:8px 10px;
	border:1px solid #28A7E1;
	border-radius:0 0 5px 5px;
	background:#FFF;
}
.tab_content .settingDisplay .ttlSetting {
	color:#FFF;
	padding:5px 10px 3px;
	text-align:center;
	border-radius:5px 5px 0 0;
	background:#28A7E1;
}
.tab_content .settingDisplay p {
	margin:0;
}
.tab_content .settingDisplay dl,
.tab_content .settingDisplay dd {
	overflow:hidden;
}
.tab_content .settingDisplay dt {
	float:left;
}

/* body */
.tab_content .body {
	background:rgba(255,255,255,1);
	padding:0 30px 10px;
	
	border-bottom-left-radius: 10px; 
	border-bottom-right-radius: 10px; 
	-webkit-border-bottom-left-radius: 10px; 
	-webkit-border-bottom-right-radius: 10px;
	-moz-border-radius-bottomleft: 10px;
	-moz-border-radius-bottomright: 10px;
}
.charge .tab_content .body {
	color:#333;
	padding:30px;
}
.tab_content .body .list {
}
.tab_content .body .list .item {
	padding:20px 0 19px;
	border-top:1px solid rgba(255,255,255,0.8);
	border-bottom:1px solid rgba(0,0,0,0.05);
	color:#333;
}
.tab_content .body .list .item:first-child {
	border-top:0;
}
.tab_content .body .list .item:last-child {
	border-bottom:0;
}
.tab_content .body .list .item .logo {
	background:#fff;
	width:150px;
	height:100px;
	line-height:100px;
	text-align:center;
	vertical-align:middle;
	float:left;
}
.tab_content .body .list .item .logo img {
	vertical-align:middle;
}
.tab_content .body .list .item .txtbox {
	margin:20px 20px 0 170px;
}
.tab_content .body .list .item .txtbox .date {
	font-weight:bold;
}
.tab_content .body .list .item .txtbox .txt {
	margin-top:10px;
}
.tab_content .body .list .item .txtbox .txt .store {
	font-weight:bold;
	color:#003399;
}
.tab_content .body .list .item .txtbox .txt .get {
	font-weight:bold;
	color:#ff6666;
}


/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.tab_content {
		margin-top:15px;
	}

	.tab_content .shdow_out {
		box-shadow: 0px 0px rgba(0,0,0,0.0) ;
	}

	.tab_content .head .tab_btn a {
		border-top-left-radius: 5px; 
		border-top-right-radius: 5px; 
		-webkit-border-top-left-radius: 5px; 
		-webkit-border-top-right-radius: 5px;
		-moz-border-radius-topleft: 5px;
		-moz-border-radius-topright: 5px;
	}

	/* settingDisplay */
	.tab_content .settingDisplay {
		padding-top:20px;
	}
	.tab_content .settingDisplay div {
		margin-bottom:0;
	}

	.tab_content .body {
		padding:0 10px 20px;
		
		border-radius: 0px; 
		-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
	}
	.charge .tab_content .body {
		padding:10px 10px 20px;
	}

	.tab_content .body .list .item {
		padding:10px 0 9px;
	}

	.tab_content .body .list .item .logo {
		width:60px;
		height:50px;
		line-height:50px;

		background:#fff;

	
		border-radius:3px;
		-webkit-border-radius:3px;
		-moz-border-radius:3px;
	}
	.tab_content .body .list .item .logo img {
		width:60px;
	}
	.tab_content .body .list .item .txtbox {
		margin:0px 20px 0 70px;
	}
	.tab_content .body .list .item .txtbox .date {
		font-size:12px;
	}
	.tab_content .body .list .item .txtbox .date p {
		margin-top:0;
	}
	.tab_content .body .list .item .txtbox .txt {
		margin-top:0px;
		font-size:12px;
		line-height:15px;
	}
}	/* for SP max-width: 800px */


/*===============================================================
	
	ページナビ
	
===============================================================*/

.page_nav_wrp {
	width:auto;
	text-align:center;
}

.page_nav {
	display: table;
	margin-left: auto;
	margin-right: auto;

}
.page_nav ul {
	margin-top:20px;
}
.page_nav ul li {
	margin:0 5px;
	float:left;
	background-color:#0051a3;
	width:25px;
	height:25px;
	border-radius:3px;
}
.page_nav ul li a {
	display:block;
	font-size:12px;
	font-weight:bold;
	color:#fff;
	text-decoration:none;
	width:25px;
	height:25px;
	text-align:center;
}

.page_nav ul li.prev a {
	background:url(../img/page_nav_arw_prev.png) no-repeat 10px center;
}


.page_nav ul li.next a {
	background:url(../img/page_nav_arw.png) no-repeat 10px center;
}


.page_nav ul li.nowpage {
	background-color:#FFF;
	border:solid;
	border-width:1px;
	border-color:#0099ff;
	width:23px;
	height:23px;

}
.page_nav ul li.nowpage a {
	color:#0099ff;
}

/* [wp-pagenavi] ----------*/
.wp-pagenavi {
	width:auto;
	padding-top:20px;
	text-align:center;
}
.wp-pagenavi a,
.wp-pagenavi span {
	color:#FFF;
	display:inline-block;
	width:25px;
	height:25px;
	margin:0 5px;
	font-size:12px;
	font-weight:bold;
	text-decoration:none;
	line-height:25px;
	box-sizing:border-box;
	border:1px solid #0099FF;
	border-radius:3px;
	background-color:#0099FF;
}
.wp-pagenavi .previouspostslink {
	background:#0099ff url(../img/page_nav_arw_prev.png) no-repeat 10px center;
}
.wp-pagenavi .nextpostslink {
	background:#0099ff url(../img/page_nav_arw.png) no-repeat 10px center;
}
.wp-pagenavi .current {
	color:#0099FF;
	background:#FFF;
}


/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.page_nav_wrp {
		margin:0 20px;
	}
	.page_nav ul {
		margin-top:5px;
	}
	.page_nav ul li {
		margin-top:10px;
		margin-left:5px;
		width:40px;
		height:40px;
	}

	.page_nav ul li a {
		line-height:40px;
		font-size:14px;
		width:40px;
		height:40px;
	}

	.page_nav ul li.prev a {
		background-image:url(../img/sp_page_nav_arw_prev.png);
		background-repeat: no-repeat;
		background-position:left;
		background-position:15px;
		background-size:8px 14px;
	}


	.page_nav ul li.next a {
		background-image:url(../img/sp_page_nav_arw.png);
		background-repeat: no-repeat;
		background-position:left;
		background-position:15px;
		background-size:8px 14px;
	}

	.page_nav ul li.nowpage {
		width:38px;
		height:38px;
	}

/* [wp-pagenavi] ----------*/
.wp-pagenavi {
	margin:5px 20px 0;
	padding:0;
}
.wp-pagenavi a,
.wp-pagenavi span {
	color:#FFF;
	display:inline-block;
	width:40px;
	height:40px;
	margin:10px 5px 0;
	font-size:14px;
	font-weight:bold;
	text-decoration:none;
	line-height:40px;
	box-sizing:border-box;
	border-radius:3px;
	background-color:#0099FF;
}
.wp-pagenavi .previouspostslink {
	background:url(../img/sp_page_nav_arw_prev.png) no-repeat 15px left;
	background-size:8px 14px;
}
.wp-pagenavi .nextpostslink {
	background:url(../img/sp_page_nav_arw.png) no-repeat 15px left;
	background-size:8px 14px;
}

}	/* for SP max-width: 800px */

/*===============================================================
	
	番号なしリスト
	
===============================================================*/
.nonolist {
}
.nonolist li {
	background:url(../img/icon_list.png) no-repeat 3px 7px;
	background-size:4px 4px;
	padding-left:15px;
	line-height:20px;
	margin-top:10px;
}

.box .nonolist li:first-child {
	margin-top:5px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
}	/* for SP max-width: 800px */



/*===============================================================
	
	情報リスト
	
===============================================================*/
.infolist {
}
.infolist dl {
	border-bottom:1px solid #ddd;
	padding:10px 0;
}
.infolist dl dt ,
.infolist dl dd {
	font-size:16px;
	line-height:25px;
	font-weight:bold;
}
.infolist dl dt {
	display:block;
	float:left;
	color:#999;
	width:140px;
}
.infolist dl dd {
	color:#039;
	margin-left:150px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
}	/* for SP max-width: 800px */


/*===============================================================
	
	公告リスト
	
===============================================================*/
dl.announcementlist {
	display: flex;
	flex-wrap: wrap;
}
.announcementlist > dt {
	width: 22%;
	padding: 15px 0;
}
.announcementlist > dd {
	width: 78%;
	padding: 15px 0;
}
.announcementlist > dt:not(:first-of-type),
.announcementlist > dd:not(:first-of-type) {
	border-top: 1px solid #DDD;
}
.announcementlist .filesize {
	font-size: 0.8em;
}

.announcementlist > li {
	padding: 15px 0;
}
.announcementlist > li + li {
	border-top: 1px solid #DDD;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
}	/* for SP max-width: 800px */

/*===============================================================
	
	flowchart
	
===============================================================*/
.flowchart ul {
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:-o-flex;
	display:flex;
	justify-content: space-between;
}
.flowchart ul:before,
.flowchart ul:after {
	content:none;
}
.flowchart .step {
	position: relative;
	display:block;
	width:auto;
	width:20%;
	padding: 12px 5px 11px;
	background:#FFF;
	color:#0094CF;
	border-top-left-radius:5px;
	border-bottom-left-radius:5px;
	font-size: 13px;
	line-height:18px;
	text-align: center;
}

.flowchart .step:after {
	position: absolute;
	content:'';
	width: 0; 
	height: 0; 
	border-top: 20px solid transparent;
	border-bottom: 20px solid transparent;
	border-left: 20px solid #FFF;
	top: 0;
	right: -20px;
	font-weight:bold;
}

.flowchart .step.on {
	background:#039;
	color:#FFF;
}
.flowchart .step.on:after {
	border-left-color:#039;
}
.flowchart .step:last-child:after {
	display: none;
}
.flowchart .step:last-child {
	border-radius:5px;
}

.threestep {
	padding:0 50px;
}
.threestep .section {
	width:auto;
}
.threestep .flowchart ul {
	justify-content: space-around;
}
.threestep .flowchart .step {
	width:25%;
	padding: 11px 5px;
}
/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.flowchart {
		width:calc(100% - 30px);
		margin:10px auto;
		padding:0;
		text-align:center;
	}
	.threestep {
		padding:0px;
		margin-top:15px;
	}
	.flowchart .step {
		display:-webkit-flex;
		display:-moz-flex;
		display:-ms-flex;
		display:-o-flex;
		display:flex;
		align-items: center;
		justify-content:center;
		width:calc(25% - 15px);
		height:40px;
		padding:5px;
		margin-top:10px;
		font-size:11px;
		box-sizing: border-box;
	}
	.flowchart .step:after {
		right:-15px;
		border-left-width:15px;
	}
}	/* for SP max-width: 800px */

/* SP向けレイアウトの指定：～400px */
@media only screen and (max-width: 425px) {
	.flowchart .step {
		width:calc(25% - 10px);
		font-size:10px;
		line-height:15px;
	}
	.flowchart .step:after {
		right:-10px;
		border-left-width:10px;
	}
	.threestep .flowchart .step {
		width:30%;
	}
}

/* SP向けレイアウトの指定：～360px */
@media only screen and (max-width: 360px) {
	.flowchart .step {
		
	}
	
}


/*===============================================================
	
	form_section
	
===============================================================*/
.form_section {
	margin-top:15px;
	padding-bottom:10px;
}


/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.form_section {
		margin-top:15px;
		padding-bottom:0px;
	}

}	/* for SP max-width: 800px */

/*===============================================================
	
	form_table
	
===============================================================*/
.form_table {
	margin-top:0px;
}
.form_table th {
	width:160px;
	background:#EEF7FC;
	padding:20px 20px 0 20px;
	border-top:1px solid #fff;
	border-bottom:1px solid #d6eefa;
}

.form_table td {
	background:#EEF7FC;
	border-top:1px solid #fff;
	border-bottom:1px solid #d6eefa;
}
.form_table .odd th,
.form_table .odd td {
	background:#EEF7FC;
	border-top:1px solid #fff;
	border-bottom:1px solid #d6eefa;
}
.login .box + .content .form_table th {
	width: 103px;
	padding: 27px 15px;
	border-top:none;
	border-bottom:3px solid #FFF;
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
}
.login .box + .content .form_table td {
	border-top:none;
	border-bottom:3px solid #FFF;
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
}
.form_table .inputother {
	
}


/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.form_table {
		margin-top:0;
		display:block;
	}
	.form_table tbody,
	.form_table tr {
		display:block;
	}
	.form_table th,
	.form_table td{
		display:block;
		width:100%;
		background:none;
		width:auto;
		padding:0;
		border:0;
	}
	.form_table th {
		margin-top:30px;
		padding:0 5px;
		box-sizing:border-box;
	}
	.form_table td {
		margin-top:5px;
	}
	.form_table .odd th,
	.form_table .odd td {
		background:none;
		border:0;
	}
	.form_table th,
	.form_table .odd th {
		color:#FFF;
		background:#28A7E1;
	}
	.login .box + .content .form_table th,
	.login .box + .content .form_table td {
		width: 100%;
	}
	.login .box + .content .form_table th {
		border-radius:3px;
		padding: 7px 15px;
	}
	.login .box + .content .form_table tbody {
		display: block;
		width: 100%;
	}

}	/* for SP max-width: 800px */

/*===============================================================
	
	フォーム要素
	
===============================================================*/
.form_section input[type="text"] ,
.form_section input[type="password"],
.form_section textarea ,
.form_section select {
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	border-radius:3px;
	border:solid 1px #ddd;
	outline: none;
}
.form_section input[type="text"] ,
.form_section input[type="password"] {
	width:100%;
	padding:10px;
}
.form_section textarea {
	max-width:467px;
	padding:10px;
	background:#FFF;
}
.form_section select {
	padding:10px 5px;
}
.form_section select#birth_year,
.form_section select#birth_day {
}
.login .form_section .box + .content input {
	background: #FAFFBD;
	padding: 15px 10px;
	font-size: 14px;
}
.form_section .ruletext {
	width:100%;
	height:200px;
	margin-top:10px;
	overflow:scroll;
	padding:10px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	border-radius:3px;
	border:solid 1px #ddd;
	background:#fff;
}
.form_section input[type="button"] {
	background:#eee;
	box-shadow:0px 2px 0 rgba(0,0,0,0.2);
	padding:7px 10px;
}

.form_section .inputfld {
	padding:13px 13px 13px 0;
}
.form_section .inputother {
	padding:20px 20px 20px 0;
}

/* capfld */
.form_section  .capfld {
	padding:0px 20px 20px 0px;
}
.form_section  .capfld p {
	margin-top:5px;
}
.form_section  .capbox .cap {
	padding-left: 1em;
	text-indent: -1em;
	margin-top:5px;
}

.form_section .cf input {
	/* width:auto; */
	margin-right:5px;
}
.form_section .cf li {
	float:left;
	margin-right:15px;
	margin-bottom:5px;
}
.form_section .cf li:last-child {
	margin-right:0;
}
.box > ul.cf li {
	float:none !important;
	margin-right:0;
}
.box > ul.cf li p {
	font-weight: 400;
}

.form_section .inputfld p{
	margin-top:5px;
}
.form_section .inputfld p.mt10 {
	margin-top:10px;
}

.form_section .mast {
	padding-left:5px;
	color:#f00;
}
.form_section .cap {
	font-size:smaller;
	line-height:1.7;
}
.login.remainder .form_section .cap {
	text-align:left;
}

.form_section .checkitem {
	margin-top:0px;
}
.form_section .checkitem label{
	padding-left:5px;
}

.form_section textarea {
	margin-top:10px;
	width:100%;
	height:150px;
	padding:10px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	border-radius:3px;
	border:solid 1px #ddd;
}
/* Apple Pay --------*/
.apple-pay-base {
	margin: 30px auto 0;
	text-align: center;
}
.apple-pay-button {
	display: inline-block;
	background-size: auto 40px;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	border-radius: 5px;
	padding: 0px;
	box-sizing: border-box;
	min-width: 300px;
	height: 44px;
}
.apple-pay-button-black {
	background-image: url(../img/charge/ApplePayBTN_61pt__black_textLogo_@2x.png);
	background-color: black;
}
.apple-pay-button-white {
	background-image: url(../img/charge/ApplePayBTN_61pt__white_textLogo_@2x.png);
	background-color: white;
}
/*
.apple-pay-button-white-with-line {
    background-image: url(../img/charge/ApplePayBTN_61pt__black_textLogo_@2x.png);
    background-color: white;
    border: .5px solid black;
}
*/
/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.form_section .inputfld {
		padding:0px;
	}
	.form_section .inputother {
		padding:0px;
	}
	.form_section .cf li {
		margin-right:2px;
	}
	.form_section .cf li:last-child {
		margin-right:0;
	}

	.form_section .applepay {
		width: 31px;
	}
	.form_section .applepay img {
		width: 100%;
	}

/* Apple Pay --------*/
	.apple-pay-base {
		margin: 30px auto 0;
		text-align: center;
	}
	.apple-pay-button {
		background-size: auto 40px;
		background-repeat: no-repeat;
		background-position: 50% 50%;
		border-radius: 5px;
		padding: 0px;
		box-sizing: border-box;
		min-width: 200px;
		height: 44px;
	}
}	/* for SP max-width: 800px */

/*===============================================================
	
	form_table_meailmagagine
	
===============================================================*/
.form_table_meailmagagine {
	padding:0px;
	margin-top:0;
}

.form_table_meailmagagine .btn a {
	display:block;
	width:300px;
	margin:20px auto;
	background:none;
	border:solid 1px #ddd;
	text-align:center;
	line-height:40px;
	text-decoration:none;
	color:#666;
	border-radius:5px;
}

.form_table_meailmagagine .cap {
	/*color:#f00;*/
	text-align:center;
}

.form_table_meailmagagine .cf li {
	width:22%;
	margin-top:20px;
}
.form_table_meailmagagine .cf li label {
	width:100%;
	overflow:hidden;
}
.form_table_meailmagagine .cf li label input {
	float:left;
	margin-top:22px;
}

.form_table_meailmagagine .cf li .icon {
	background:#fff;
	width:70px;
	display:block;
	margin-left:20px;
	border-radius:3px;
	box-shadow:2px 2px 0 rgba(0,0,0,0.1) inset;
	padding:5px;
	text-align:center;
}
.form_table_meailmagagine .cf li .icon img {
	width:60px;
	height:auto;
}

.form_table_meailmagagine .checkout {
	text-align:center;
	margin-top:20px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.form_table_meailmagagine {
		background:none;
		padding:0;
		margin-top:0;
	}

	.form_table_meailmagagine .btn a {
		display:block;
		width:100%;
		margin:20px auto;
		background:#fff;
		border:solid 1px #ddd;
		text-align:center;
		line-height:40px;
		text-decoration:none;
		color:#666;
		border-radius:5px;
	}
	.form_table_meailmagagine .cf li {
		width:25%;
		margin-top:10px;
	}
	.form_table_meailmagagine .cf li label input {
		float:left;
		margin-top:10px;
	}

	.form_table_meailmagagine .cf li .icon {
		width:45px;
		display:block;
		margin-left:30px;
		border-radius:3px;
		box-shadow:2px 2px 0 rgba(0,0,0,0.1) inset;
		padding:5px;
		text-align:center;
	}
	.form_table_meailmagagine .cf li .icon img {
		width:40px;
		height:auto;
	}
}	/* for SP max-width: 800px */

/*===============================================================
	
	form_table_message
	
===============================================================*/
.form_table_message {
	margin-top:30px;
}
.form_table_message textarea {
	margin-top:10px;
}
.form_table_message .cf {
	text-align:center;
}

.form_table_message .submit a {
	margin:0 auto;
	margin-top:30px;
}
/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.form_table_message {
	}
	.form_table_message .submit a {
		margin-top:20px;
	}
}	/* for SP max-width: 800px */



/*===============================================================
	
	point_to_value
	
===============================================================*/
.point_to_value {
	border:0px;
	border-radius:5px;
	padding:40px 0;
	background:url(../img/icon_arrow.png) no-repeat center center #fff;
}
.point_to_value .point,
.point_to_value .value {
	width:50%;
	font-size:24px;
	line-height:30px;
	font-weight:bold;
	text-align:center;
}

.point_to_value .point {
	color:#6cf;
}
.point_to_value .value {
	color:#039;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.point_to_value {
		border:solid 1px #ddd;
		border-radius:5px;
		padding:0;
		background:url(../img/sp_icon_arrow.png) no-repeat center center #fff;
		background-size:35px 45px;
		margin-top:10px;
	}

	.point_to_value .point,
	.point_to_value .value {
		width:100%;
		font-size:24px;
		line-height:30px;
		font-weight:bold;
		text-align:center;
		display:block;
		float:none;
		padding:30px 0;
	}

}	/* for SP max-width: 800px */

/*===============================================================
	
	modal
	
===============================================================*/
/* modal */
.modal {
	background:#000;
	display:none;
	z-index:99998;
	position:fixed;
	top:0;
	left:0;
	width:100%;
}
.modalbox {
	display:none;
	position:absolute;
	top:0;
	left:0;
	z-index:99999;
}
.modalbox .section {
	width:680px;
}
.modalcontent {
	width:820px;
	height:auto;
	min-height:300px;
	position:relative;
	background:#dff2fc;
	
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.modalcontent .content,
.modalcontent .subhead {
	color:#333;
}

.modalcontent .closebtn {
	position:absolute;
	width:40px;
	height:40px;
	top:20px;
	right:20px;
	text-indent:100%;
	overflow:hidden;
	white-space:nowrap;
	background:url(../img/icon_close.png) no-repeat 0 0;
	z-index:99999;
	cursor:pointer;
}

.modalbox .submit_2btns {
	width:680px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.modalbox {
		width:auto;
	}
	.modalcontent {
		width:auto;
		height:auto;
		min-height:300px;
		position:relative;
		border-radius:0px;
		padding:20px 0;
		background:#dff2fc;
	}
	.modalcontent .section{
		width:auto;
		margin:0;
	}
	.modalcontent .closebtn {
		width:20px;
		height:20px;
		top:20px;
		right:20px;
		background:url(../img/sp_icon_close.png) no-repeat 0 0;
		background-size:20px 20px;
		text-indent:100%;

	}
	.modalbox .submit_2btns {
		margin-left:0;
		margin-right:0;
		width:auto;
	}

}	/* for SP max-width: 800px */
/*===============================================================
	
	modal section
	
===============================================================*/
.modalcontent .section {
	padding:80px;
	margin:0;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.modalcontent .section {
		padding:10px 10px;
	}
}	/* for SP max-width: 800px */






/*
===============================================================
===============================================================
	
	ページ毎

===============================================================	
===============================================================
*/

/*===============================================================

　トップページ
	
===============================================================*/
.top {
}
.top .btns {
	margin:70px auto;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.top .submit_2btns {
		margin-top:0;
		padding-bottom:30px;
		transform:translate(-50%, -121px);
	}
}	/* for SP max-width: 800px */


/*===============================================================
	
	会員組織紹介
	
===============================================================*/
.introduce .first_section {
	width: 760px;
	border-radius: 0 0 10px 10px;
	-webkit-border-radius: 0 0 10px 10px;
	-moz-border-radius: 0 0 10px 10px;
}
.introduce .first_section .inner {
	position:relative;
	border-radius: 10px 10px 0 0;
	-webkit-border-radius: 10px 10px 0 0;
	-moz-border-radius: 10px 10px 0 0;
	background: #2eb0e5;
}
.introduce .first_section .inner::after {
	position: absolute;
	left: 0;
	bottom: -60px;
	content: '';
	width: 100%;
	height: 60px;
	background: url(../img/bg_beginner.png) no-repeat 0 100%;
	z-index: 1;
}
.introduce .first_section h3 {
	padding: 48px 10px 24px;
	font-size: 34px;
	font-weight: bold;
	text-align: center;
}
.introduce .txtLogo {
	padding-bottom: 19px;
	text-align: center;
}
.introduce .paymentImage {
	margin-top: 5px;
	padding-bottom: 32px;
}
.introduce .photoImage {
	position: absolute;
	right: 7px;
	bottom: -32px;
	z-index: 2;
}
.introduce .imageLogo {
	margin:45px auto 0;
	padding-bottom: 270px;
}
.introduce .first_section h4 {
	padding: 49px 10px 13px;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
}
.introduce .first_section h4 .spDisplay {
	display: none;
}
.introduce .first_section .align_right .txtlink {
	margin-top:20px;
}
.introduce .photoBlock .button {
	bottom: -3px;
}
.introduce .contents {
	padding-top:30px;
}

.introduce .grid_content {
	width:740px;
}
.introduce .grid_content .cf {
	width:780px;
}
.introduce .grid_content .grid {
	width:220px;
	float:left;
	margin-right:40px;
	margin-top:20px;
	border:1px solid #eee;
	box-sizing:border-box;
	padding:20px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	background:#fff;
}
.introduce .grid_content .grid .title {
	font-weight:bold;
}
.introduce .grid_content .grid .photo {
	margin-top:5px;
	width:100%;
	text-align:center;
	display:block;
}
.introduce .grid_content .grid .photo img {
}
.introduce .grid_content .grid .txt {
	margin-top:10px;
	font-size:12px;
	line-height:15px;
}


.introduce .matriculant {
	margin-top:60px;
}


.introduce .flowlist {
	margin:0 auto;
}


/* add start 20150811 */
.introduce .point_contents {
}
.introduce .point_contents.point2 ,
.introduce .point_contents.point3 {
	margin-top:30px;
}

.introduce .point_box {
	padding-top:15px;
	display:table;
	width:680px;
}
.introduce .point_box .photo {
	display:table-cell;
	margin-top:20px;
}
.introduce .point_box .arw {
	display:table-cell;
	background:url(../img/img_flow_arw.png) no-repeat center center;
}

.introduce .point1 .point_box {
	width:680px;
}
.introduce .point1 .photo {
	width:100%;
	text-align:center;
}
.introduce .point1 .photo img {
	width:325px;
}
.introduce .point1 .arw {
	width:30px;
	background:none;
}
.introduce .point1 .arw span {
	display:block;
	width:30px;
}

.introduce .point2 .point_box {
	display:table-cell;
	width:680px;
}
.introduce .point2 .photo {
	display:table-cell;
	width:210px;
}
.introduce .point2 .photo img {
	width:210px;
}
.introduce .point2 .arw {
	display:table-cell;
	width:25px;
}
.introduce .point2 .arw span {
	display:block;
	width:25px;
}

.introduce .point3 .point_box {
	display:table-cell;
	width:680px;
}
.introduce .point3 .photo {
	display:table-cell;
	width:210px;
}
.introduce .point3 .photo img {
	width:210px;
}
.introduce .point3 .arw {
	display:table-cell;
	width:24px;
}
.introduce .point3.arw span {
	display:block;
	width:24px;
}

.introduce .point_box img {
	width:100%;
}
/* add end 20150811 */
/* add start 20150812 */

.introduce .column2_section .whitebox2 ,
.introduce .matriculant .whitebox2 {
	margin-top:0;
	padding-top:0;
	
	border-top-left-radius: 0px;
	-webkit-top-bottom-left-radius: 0px;
	-moz-border-top-left-radius: 0px;
	border-top-right-radius: 0px;
	-webkit-border-top-right-radius: 0px;
	-moz-border-top-right-radius: 0px;
}
.introduce .column2 {
	padding-top:30px;
}
.introduce .column2 .flol ,
.introduce .column2 .flor {
	width:325px;
}
.introduce .column2 .txt {
	margin-top:10px;
}
.introduce .column2 .txt .photo {
	margin-top:10px;
	width:325px;
}
.introduce .column2 .txt .photo img {
	width:100%;
}
.introduce .cooca_put .chane_point_link {
	text-align:right;
}
.introduce .cooca_put .chane_point_link p:first-child {
	margin-top:5px;
}

.introduce .smallbtnbox {
	margin:20px auto 0;
}
.introduce .smallbtnbox .btn {
	margin:0px auto;
}

.introduce .column2 .txt .photo img {
	width:100%;
}

.introduce .column2 .txt .save_point {
	background:url(../img/introduce/pc_img_save_point.png) no-repeat center center;
	margin-top:30px;
	width:320px;
	height:75px;
}
.introduce .column2 .txt .save_point img {
	display:none;
}

.introduce .cooca_use_box {
	padding-top:15px;
	display:table;
	width:680px;
}
.introduce .cooca_use_box .photo {
	display:table-cell;
	margin-top:20px;
}

.introduce .campaign .cooca_use_box {
	width:680px;
}
.introduce .campaign .photo {
	width:100%;
	text-align:center;
}
.introduce .campaign .photo img {
	width:325px;
}
.cooca_put .whitebox2 p:first-child {
	margin-top:10px;
}

/* add end 20150812 */

.introduce .one_btn_section {
	margin-top:30px;
}

.introduce .matriculant .whitebox2 {
	padding-top:30px;
}

.introduce .vflowlist {
	padding-top:10px;
}
.introduce .vflowlist .vflowgrid_box {
	padding-top:0px;
	padding-bottom:20px;
}
.introduce .vflowlist .vflowgrid_box .grid {
	width:270px;
	float:left;
}
.introduce .vflowlist .vflowgrid_box .mail_grid {
	margin-left:65px;
}
.introduce .vflowlist .vflowgrid_box .mail_grid .smallbtnbox .btn {
	text-align:center;
	margin:0px auto 10px;
}
.introduce .vflowlist .vflowgrid_box .mail_grid .mailtxt {
	font-weight:bold;
	font-size:18px;
	margin-top:5px;
}
.introduce .vflowlist .vflowgrid_box .qr_grid {
	margin-left:40px;
	margin-top:15px;
}
.introduce .vflowlist .vflowgrid_box .qr_grid .qrcade {
	text-align:center;
}
.introduce .vflowlist .vflowgrid_box .qr_grid .qrcade img {
	border:1px solid #eee;
}
.introduce .vflowlist .vflowgrid_box .qr_grid p {
	margin-top:10px;
}

.introduce .mailtxt {
	display:block;
	background:url(../img/introduce/pc_mail_link.png) no-repeat 0 0;
	background-size:125px 20px;
	width:125px;
	height:20px;
}
.introduce .mailtxt a {
	display:block;
	width:125px;
	height:20px;
}
.introduce .mailtxt a:hover {
	background:rgba(255,255,255,0.2);
}
.introduce .mailtxt a img {
	display:none;
}
.introduce .point_bnr {
	margin: 16px auto 14px;
}
.introduce .point_bnr img {
	width:100%;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.introduce .contents {
		padding-top:15px;
	}

	/* add start 20150811 */
	.introduce .first_section {
		width: 100%;
		padding-bottom: 0;
		background: none;
	}
	.introduce .first_section .inner {
		padding-bottom: 10px;
		border-radius: 0;
	}
	.introduce .first_section .inner::after {
		position: absolute;
		left: 0;
		bottom: -2.8%;
		content: '';
		width: 100%;
		height: 60px;
		background: url(../img/bg_beginner.png) no-repeat 0 100%;
		background-size: 100% auto;
		z-index: 1;
	}
	.introduce .photoBlock .button {
		bottom: -40px;
	}
	.introduce .first_section h3 {
		max-width:450px;
		margin:0 auto;
		padding: 30px 10px 10px;
		font-size: 17px;
	}
	.introduce .first_section h3 img {
		max-width:96%;
	}
	.introduce .txtLogo {
		padding-bottom: 15px;
	}
	.introduce .photoImage {
		right: 0;
	}
	.introduce .imageLogo {
		margin-top: 25px;
		padding-bottom: 36%;
	}
	.introduce .txtLogo img {
		width: 240px;
		height: auto;
	}
	.introduce .first_section h4 {
		padding: 20px 10px;
		font-size: 22px;
	}
	.introduce .first_section h4 .spDisplay {
		display: block;
	}
	.introduce .blockInner {
		margin: 0;
		border-radius: 0;
	}
	.introduce .stepList {
		margin: 40px 10px 0;
	}
	.introduce .whitebox2 {
		padding:15px;
	}
	.introduce .column2_section .whitebox2 ,
	.introduce .matriculant .whitebox2 {
		margin-top:0px;
	}

	.introduce .point_contents.point2 ,
	.introduce .point_contents.point3 {
		margin-top:30px;
	}

	.introduce .point_box {
		display:block;
		margin-top:15px;
	}
	.introduce .point_box .photo {
		display:block;
		margin-top:20px;
	}
	.introduce .point_box .arw {
		display:block;
		text-indent:100%;
		background:url(../img/sp_img_flow_arw.png) no-repeat center center;
		background-size:30px 15px;
		overflow:hidden;
		width:100%;
		height:45px;
	}

	.introduce .point1 .point_box {
		margin:0;
		padding-top:0;
		width:100%;
	}
	.introduce .point1 .cf {
		width:100%;
	}
	.introduce .point1 .photo {
		width:100%;
	}
	.introduce .point1 .photo img {
		width:100%;
	}
	.introduce .point1 .arw {
		display:none;
	}

	.introduce .point2 .point_box {
		display:block;
		margin:0;
		width:100%;
	}
	.introduce .point2 .photo {
		margin:0;
		width:100%;
	}
	.introduce .point2 .photo img {
		width:100%;
	}
	.introduce .point2 .arw {
		width:100%;
	}
	.introduce .point2 .arw span {
		width:100%;
	}

	.introduce .point3 .point_box {
		display:block;
		margin:0;
		width:100%;
	}
	.introduce .point3 .photo {
		margin:0;
		width:100%;
	}
	.introduce .point3 .photo img {
		width:100%;
	}
	.introduce .point3 .arw {
		width:100%;
	}
	.introduce .point3 .arw span {
		width:100%;
	}

	.introduce .point_box img {
		width:100%;
	}

	/* add end 20150811 */
	/* add start 20150812 */

	.introduce .column2 {
		padding-top:0px;
	}
	.introduce .column2 .flol ,
	.introduce .column2 .flor {
		width:100%;
		float:none;
	}
	.introduce .column2 .subhead {
		margin-top:20px;
	}
	.introduce .column2 .txt {
		margin-top:10px;
	}
	.introduce .column2 .txt .photo {
		margin-top:10px;
		width:100%;
	}
	.introduce .column2 .txt .photo img {
		width:100%;
	}

	.introduce .column2 .txt .save_point {
		background:none;
		margin-top:15px;
		width:100%;
		height:auto;
	}
	.introduce .column2 .txt .save_point img {
		display:block;
	}
	.introduce .campaign .photo {
		width:100%;
	    padding-bottom:20px;
	}
	.introduce .campaign .photo img {
		width:100%;
	}
	/* add end 20150812 */

	.introduce .one_btn_section {
		margin-top:15px;
	}

	.introduce .grid_content {
		width:100%;
		margin-top:0;
	}
	.introduce .grid_content .cf {
		width:100%;
	}
	.introduce .grid_content .grid {
		width:100%;
		float:none;
		margin-left:0px;
	}

	.introduce .matriculant {
		margin-top:30px;
	}
	.introduce .vflowlist {
	}
	.introduce .vflowlist .vflowgrid_box .grid {
		width:auto;
		float:none;
		padding:0px 15px 10px 0px;
		margin-left:65px;
	}
	.introduce .vflowlist .vflowgrid_box .mail_grid .smallbtnbox .btn {
		width:100%;
	}

	.introduce .mailtxt {
		display:block;
		background:none;
		background-size:auto auto;
		width:123px;
		height:16px;
	}
	.introduce .mailtxt a {
		display:block;
		width:123px;
		height:16px;
	}
	.introduce .mailtxt a:hover {
		background:rgba(255,255,255,0);
	}
	.introduce .mailtxt a img {
		display:block;
	}

	.introduce .cooca_put .chane_point_link {
		text-align:left;
	}
	.introduce .cooca_put .chane_point_link p:first-child {
		margin-top:10px;
	}

	.introduce .cooca_put .smallbtnbox {
		margin-top:10px;
	}

	.introduce .campaign .cooca_use_box {
		width:100%;
	}
}	/* for SP max-width: 800px */

@media only screen and (max-width: 490px) {
	.introduce .first_section .inner::after {
		bottom: -2.5%;
	}
}
@media only screen and (max-width: 420px) {
	.introduce .first_section .inner::after {
		bottom: -2%;
	}
}

/*===============================================================
	
	よくあるご質問
	
===============================================================*/

.faq .subhead {
	margin-top:40px;
}

/* locallinkbox */
.faq .locallinkbox {
	padding-top:20px;
}
.faq .locallinkbox ul li {
	float:left;
	padding-top:10px;
	padding-right:3%;
	min-width:30%;
}


/* faqbox */
.faq .faqbox {
	margin-top:20px;
	padding:25px;
	background:url(../img/introduce/icon_faq_openclose_02.png) no-repeat right 20px top 20px #fff;
	background-size:25px 25px;
}
.faq .open {
	background:url(../img/introduce/icon_faq_openclose_01.png) no-repeat right 20px top 20px #fff;
	background-size:25px 25px;
}
.faq .faqbox .question {
	padding:0px 40px 0px 40px;
	background:url(../img/introduce/icon_faq_01.png) no-repeat 0 0;
	background-size:20px 20px;
	cursor:pointer;
}
.faq .faqbox .answer {
	margin-top:20px;
	display:none;
	padding:0px 40px 0px 40px;
	background:url(../img/introduce/icon_faq_02.png) no-repeat 0 0;
	background-size:20px 20px;
	margin-left:40px;
}
.faq .open .answer {
	display:block;
}

/* threebtn */
.faq .threebtn {
}
.faq .threebtn .threebtnbox {
	width:350px;
	height:60px;
	margin:30px auto 0;
	background:url(../img/pc_btn_star.png) no-repeat left center #6cf;
	background-size:50px 60px;
	color:#039;
	
	text-shadow: 0px 1px 1px rgba(0,0,0, 0.2);
	
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.faq .threebtn .threebtnbox .btn a {
	background-color:transparent;
	
	display:block;
	width:350px;
	padding:20px 0;
	text-decoration:none;
	color:#039;
	font-size:16px;
	line-height:20px;
	font-weight:bold;
	text-shadow: 0px 1px 1px rgba(0,0,0, 0.4);
	letter-spacing:0em;

	border:0;
	cursor:pointer;
	text-align:center;
	box-shadow:0 2px 0 rgba(0,0,0, 0.2);
	
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.faq .threebtn .btn a:hover {
	background-color:rgba(255,255,255,0.2);
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {

	.faq .section {
		margin-top:0px;
	}
	
	.faq .whitebox2 {
		padding-top:0px;
	}
	
	.faq .content {
		padding-top:30px;
		margin-top:0;
	}
	.faq .first_section .content:first-child {
		padding-top:5px;
	}

	.faq .subhead {
		margin:0px 15px 0;
	}

	/* locallinkbox */
	.faq .locallinkbox {
		padding-top:0px;
	}
	.faq .locallinkbox ul li {
		float:none;
		width:100%;
		margin:5px 0;
	}

	/* faqbox */
	.faq .faqbox {
		margin-top:10px;
		padding:20px;
		background-position: right 20px top 20px;
		background-size:25px 25px;
	}
	.faq .faqbox .answer {
		margin-left:0px;
	}
	.faq .faqbox .answer img {
		width:auto;
		height:auto;
		max-width:100%;
	}

	/* faq */
	.faq .threebtn {
		padding:10px 15px;
	}
	.faq .threebtn .threebtnbox {
		width:100%;
		height:50px;
		padding:0;
		margin:0 auto;

		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
	}
	.faq .threebtn .threebtnbox .btn a {
		width:100%;
		height:50px;
		line-height:50px;
		font-size:12px;
		padding:0;

		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
	}

}	/* for SP max-width: 800px */


/*===============================================================
	
　会員登録フォーム
	
===============================================================*/
.entry .txtlink {
	margin-top:0px;
}

.entry_confirm .form_table_meailmagagine .cf li:nth-child(-n+3) {
	margin-top:0px;
}

.entry_confirm .form_table_meailmagagine .cf li {
	width:auto;
}

/* 表示領域以下 */
@media screen and (max-width: 1050px) {
	.entry_confirm .form_table_meailmagagine .cf li:nth-child(-n+3) {
		margin-top:10px;
	}
}	/* for tablet max-width: 1050px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.entry p.txtlink {
		margin-top:10px;
	}
} /* for SP max-width: 800px */


/*===============================================================
	
　会員登録フォーム_完了画面
	
===============================================================*/
.pagetitle_mycooca {
	margin-top:60px;
}
.entry_finish .second_section {
	margin-top:20px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.entry_finish .first_section {
		margin-bottom:40px;
	}
	.entry_finish .align_center {
		text-align:left;
	}
}	/* for SP max-width: 800px */


/*===============================================================
	
　ログイン 
	
===============================================================*/
.login .pagetitle + .form_section .whitebox2:first-child {
	margin-top:35px;
}
.login .form_section {
	margin-top:0;
}
.login .logininfo {
	text-align:center;
}
.login .form_table p {
	text-align:center;
}
.login .submit {
	margin-top:20px;
    background: none;
}
.login .submit a {
	margin:0 auto;
	background: 
	url(../img/pc_btn_arw01.png) no-repeat right 10px center #0052A3;
    background-size: 6px 10px;
	width: 250px;
    border-radius: 25px;
	padding: 15px 0;
	box-shadow: 0 3px 0 #002F5D;
}
.login.remainder .submit {
	transform: translateY(0);
}
.login .still {
	margin-top:60px;
	display: none;
}
.login .still p {
	margin-top:20px;
}
.loginIndex .whitebox2 {
	padding-bottom:110px;
}
.loginIndex .submit.btnbox {
	margin:0 auto;
	transform: translateY(-100px);
}
/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.login .form_section {
		margin-top:15px;
	}
	.login .logininfo .txt {
		text-align:left;
	}
	.login .still p {
		padding:0 15px;
	}
	.loginIndex .submit.btnbox {
		transform: translateY(-90px);
	}

}	/* for SP max-width: 800px */


/*===============================================================

　パスワードリマインダー
	
===============================================================*/

.remainder .first_section {
	margin-top:95px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.remainder .first_section {
		margin-top:15px;
	}
	.remainder p {
		padding:0;
	}
	.remainder .wrapper {
		min-height:0px;
	}

}	/* for SP max-width: 800px */

/*===============================================================

　パスワードリマインダー_確認
	
===============================================================*/
.pass_confirm .submit {
	margin-top:0px;
}
.pass_confirm .modalbox .submit {
	margin-top:40px;
}
/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 800px) {

	.pass_confirm .section {
		margin-top:0px;
	}
	.pass_confirm .submit {
		margin-top:0px;
	}

}	/* for SP max-width: 736px */


/*===============================================================

　マイページ（マイページトップ）
	
===============================================================*/
.mypage_top .whitebox {
	margin-top:0;
}
.mypage_top .box {
	padding-top:9px;
	margin:20px 30px 0;
}
.mypage_top .box p {
	margin-top:5px;
}
.mypage_top .expiration {
	padding:0px 30px;
}
.mypage_top .section + .topics {
	margin-top:35px;
}
/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.mypage_top .whitebox {
		margin-top:0px;
	}
	.mypage_top .box {
		margin:20px 15px 0;
	}
	.mypage_top .balance {
		padding:10px 15px 0 5px;
	}
	.mypage_top .expiration {
		padding:20px 15px;
	}
}	/* for SP max-width: 800px */

/*===============================================================

　キャンペーン
	
===============================================================*/
.campaign .topics .list {
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.campaign .first_section {
		margin-top:15px;
	}
	
	.campaign .topics .list {
		border-radius: 0px;
		-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
	}
}	/* for SP max-width: 800px */

/*===============================================================

　お知らせ
	
===============================================================*/
.topics_list {
}
.topics_list .topics {
	margin-top:10px;
}
.topics_list .topics .list {
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
.topics_list .first_section {
	margin-top:10px;
}
.topics_list .topics .list {
	border-radius: 0px;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
}
}	/* for SP max-width: 800px */


/*===============================================================

　パスワード確認画面
	
===============================================================*/
/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
.pass .first_section {
	margin-top:15px;
}
}	/* for SP max-width: 800px */

/*===============================================================

　 会員情報変更
	
===============================================================*/
.pass_confirm .first_section {
	margin-top:55px;
}

.pass_confirm .submit {
	margin-top:0px;
}
.pass_confirm .modalbox .submit {
	margin-top:40px;
}
/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {

.pass_confirm .section {
	margin-top:0px;
}
.pass_confirm .submit {
	margin-top:0px;
}

}	/* for SP max-width: 800px */

/*===============================================================

　 会員情報変更
	
===============================================================*/
.pass_confirm .first_section {
	margin-top:55px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {

}	/* for SP max-width: 800px */



/*===============================================================
	
　会員情報変更
	
===============================================================*/
.pass_confirm .form_table_meailmagagine {
	background:none;
}

.pass_confirm .finish .form_table_meailmagagine .cf li:nth-child(-n+3) {
	margin-top:0px;
}
.pass_confirm .finish .form_table_meailmagagine .cf li {
	width:auto;
}


/* 表示領域以下 */
@media screen and (max-width: 1050px) {
	.pass_confirm .finish .form_table_meailmagagine .cf li:nth-child(-n+3) {
		margin-top:10px;
	}
}	/* for tablet max-width: 1050px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {

} /* for SP max-width: 800px */


/*===============================================================

 　ファミリー利用履歴
	
 ===============================================================*/
.family_history .expiration {
	margin-top:0px;
	padding-bottom:30px;
}

.family_history .get {
	font-weight:bold;
	color:#ff6666;
}

.family_history .store {
	font-weight:bold;
	color:#003399;
}


/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.family_history .first_section .whitebox {
		padding-top:30px;
	}
}	/* for SP max-width: 800px */



/*===============================================================
	
	利用履歴
	
===============================================================*/
.history .expiration {
	margin-top:0px;
	padding-bottom:25px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.history .whitebox {
		margin-top:15px;
		padding-top:5px;
	}
	.history .expiration {
		margin-top:0px;
		padding-bottom:5px;
	}
	.history p.txt {
		margin-left:15px;
		margin-right:15px;
	}
}	/* for SP max-width: 800px */


/*===============================================================

　ポイントを使う

===============================================================*/
.pointuse_first {

}
.pointuse_first .section {
	margin-top:0;	
	padding-top:0;
}

.pointuse_first .whitebox2 {
	padding:15px;
}

.pointuse_first .content {
	margin-top:15px;
}

.pointuse_first .getvalue_content {
	text-align:center;
	width:100%;
}

.pointuse_first .form_section .whitebox2 {
	padding:30px;
}
.pointuse_first .balance .expiration {
	padding-left:0;
	padding-right:0;
}
.pointuse_first .balance .expiration_box .value {
	background:none;
}
.pointuse_first .balance .expiration_box .point {
	background:none;
}

.pointuse_first .change_value .form_table {
	margin-top:10px;
}
.pointuse_first .change_value .inputfld {
	display:block;
}

.pointuse_first .change_value .inputfld input {
	width:100%;
}
.pointuse_first .change_value .inputfld span {
	line-height:35px;
	padding-left:10px;
}
/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.pointuse_first .content {
		margin-top:40px;
	}

	.pointuse_first .section {
		margin-top:15px;
	}

	.pointuse_first .change_value .form_table {
		margin-top:0px;
	}
	.pointuse_first .change_value tbody {
		width:100%;
		display:block;
	}
	.pointuse_first .change_value th {
		margin-top:10px;
	}
	.pointuse_first .change_value .inputfld {
		margin-top:0px;
	}

	.pointuse_first .form_section .whitebox2 {
		padding:30px 15px;
	}
	.pointuse_first .balance .expiration {
		padding-top:10px;
	}


	.pointuse_first .box_content {
		margin-top:15px;
	}

}	/* for SP max-width: 800px */


/*===============================================================

　ポイントを使う

===============================================================*/
.pointuse .whitebox2 {
	padding:20px;
}

.pointuse .content {
	margin-top:20px;
}

.pointuse .getvalue_content {
	text-align:center;
	width:100%;
}

.pointuse .form_section .whitebox2 {
	padding:30px;
}

.pointuse .img_point_to_value {
	text-align:center;
	padding:0px;
	width:auto;
	padding:20px 180px;
	margin-top:10px;
	background:#fff;
	
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
.pointuse .img_point_to_value img {
	margin-top:0px;
	width:100%;
}

.pointuse .havepoint_content {
	width:100%;
}

.pointuse .havepoint_content .balance {
	padding:0;
	margin-top:10px;
}

.pointuse .change_value .inputfld {
}
.pointuse .change_value .inputfld input {
	width:100%;
	float:none;
	margin:0;
}
.pointuse .change_value .inputfld span {
	line-height:35px;
	padding-left:10px;
}
/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.pointuse .section {
		margin-top:15px;
	}

	.pointuse .form_section .whitebox2 {
		padding:15px;
	}

	.pointuse .img_point_to_value {
		width:100%;
		padding:20px 0;
	}
	.pointuse .img_point_to_value img {
		width:100%;
	}

	.pointuse .havepoint_content .balance {
		margin-top:0;
	}


}	/* for SP max-width: 800px */




/*===============================================================

	退会

===============================================================*/
.exite_confirm .whitebox2 {
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.exite_confirm .whitebox2 {
		padding:30px 15px;
	}
}	/* for SP max-width: 800px */


/*===============================================================

	退会完了

===============================================================*/
.exite_finish .first_section {
	margin-top:95px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.exite_finish .first_section {
		margin-top:15px;
	}
}	/* for SP max-width: 800px */



/*===============================================================

　ファミリー作成

===============================================================*/

.family_create .input_fullbox {
	margin-top:20px;
}

.family_history .second_section {
	margin-top:30px;
}

.family_history .whitebox2 {
	background:none;
	padding:0;
}
.family_create strong {
	font-weight:bold;
}

.family_history .topics {
	margin-top:0px;
	width:auto;
}
.family_history .topics .list {
	border-radius:10px;
	-webkit-border-radius:10px;
	-moz-border-radius:10px;
}

@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.family_history .first_section .whitebox {
		margin-top:15px;
		padding-top:5px;
	}
	.secondbox {
		padding-top:20px;
		padding-bottom:0px;
	}
	.family_history .topics .list {
		border-radius:0px;
		-webkit-border-radius:0px;
		-moz-border-radius:0px;
	}
	.family_history .topics .list .item {
		padding:10px 15px;
	}
}	/* for SP max-width: 800px */


/*===============================================================

　ファミリーへ参加

===============================================================*/
.family_join .first_section {
}

.family_join .whitebox2 {
	padding-top:20px;
}

.family_join .box{
	margin-top:30px;
}

.family_join .second_section {
	width:auto;
}

.family_join .flow .box{
	margin-top:15px;
}
.family_join .number .note {
	padding-left:10px;
}

.family_join .number dt {
	float:left;
	display:block;
	text-align:center;
	font-size:14px;
	color:#103399;
	font-weight:bold;
	border-radius:3px;
	border:solid;
	border-color:#CCC;
	border-width:1px;
	width:20px;
	line-height:20px;
	background-color:#FFF;
	margin-right:10px;
}
.family_join .number dd {
	float:none;
	font-weight:bold;
}
.family_join .form_table {
	margin-top:20px;
}



/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	
.family_join .whitebox2 {
	padding-top:10px;
	padding-bottom:20px;
}

.family_join .second_section {
	margin-top:15px;
}

.family_join .whitebox2 .infolist dt ,
.family_join .whitebox2 .infolist dd {
	padding:5px 0;
}

.family_join dt{
	clear:both;
	float:none;
}
.family_join dd{
	float:none;
}
.family_join .number .note p {
}
.family_join .box{
	margin-top:0px;
}
.family_join  .form_table {
	margin-top:0px;
}
.family_join .form_table th {
	margin-top:15px;
}

}	/* for SP max-width: 800px */

/*===============================================================

　ファミリーへ参加 確認

===============================================================*/
.family_join_finish .infolist dl dt {
	width:200px;
}
.family_join_finish .infolist dl dd {
	margin-left:200px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.family_join_finish .infolist dl dt {
		float:none;
	}
	.family_join_finish .infolist dl dd {
		margin-left:0px;
	}
}	/* for SP max-width: 800px */

/*===============================================================

	メンバー一覧

===============================================================*/
.member_list h3 {
	line-height:40px;
	background:none;
	padding:0;
}

.member_list .membertitle {
	width:500px;
	float:left;
}
.member_list .membertitle h3 {
	font-size:18px;
}
.member_list .memberlistbox {
	margin-top:0px;
}


.member_list .smallbtnbox .btn a {
	color:#333;
	border:1px solid #35a9e0;
}
.member_list .smallbtnbox .btn a:hover {
	background:rgba(255,255,255,0.2);
}

.member_list .memberlist dl {
	padding:10px 10px;
	background:#fff;
}
.member_list .memberlist dl:nth-child(even) {
	background:#f5fbfe;
}
.member_list .memberlist dl dt ,
.member_list .memberlist dl dd {
	margin-top:10px;
}
.member_list .memberlist dl dd.smallbtnbox {
	float:right;
	margin:0;
}

.member_list .smallbtnbox .btn_dissolution {
	border:0;
}
.member_list .smallbtnbox .btn_dissolution a {
	background:#35a9e0;
	color:#fff;
	border:0;
	
	box-shadow: 0px 2px rgba(0,0,0,0.1) ;
}
.member_list .smallbtnbox .btn_dissolution a:hover {
	background:#0089ca;
	color:#fff;
}

.member_list .memberlist dl dd.smallbtnbox .btn {
	float:left;
	margin-left:5px;
	border:0;
	
	box-shadow: 0px 2px rgba(0,0,0,0.2) ;
}
.member_list .memberlist dl dd.smallbtnbox .btn a {
	border:0;
	color:#0051a3;
}
.member_list .memberlist dl dd.smallbtnbox .btn_withdrawal a {
	background:#a3defb;
}
.member_list .memberlist dl dd.smallbtnbox .btn_application a {
	background:#8bd5f9;
}
.member_list .memberlist dl dd.smallbtnbox .btn_towithdrawal a {
	background:#c4ebfd;
}
.member_list .memberlist dl dd .btn a:hover {
	background:#0c96d8;
	color:#fff;
}

.member_list .memberlist dl dt {
	float:left;
	/*width:60%;*/
	width:25%;
}
.member_list .memberlist dl dd {
	float:left;
	/*width:40%;*/
}
.member_list .memberbtn {
	margin-top:0px;
	width:160px;
	float:right;
}

.member_list .memberbtn .btntopbox {
	padding-bottom:0px;
}
.member_list .memberbtn .btnbottombox {
}

.member_list .second_section {
	margin-top:20px;
}


/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.member_list h3 {
		border-bottom:0;
	}
	.member_list .whitebox2 {
		padding-top:20px;
	}
	.member_list .memberlist ,
	.member_list .membertitle {
		width:100%;
		float:none;
		margin:0;
	}
	.member_list .memberlist dl dt ,
	.member_list .memberlist dl dd {
		width:100%;
		float:none;
	}
	.member_list .memberlist dl dd.smallbtnbox {
		float:none;
		text-align:center;
		margin:0;
	}
	.member_list .memberlist dl dd.smallbtnbox .btn {
		float:none;
		display:inline-block;
		width:150px;
		margin-left:5px;
		margin-right:5px;
	}
	.member_list .memberbtn {
		margin-top:10px;
		width:100%;
		float:none;
	}
}	/* for SP max-width: 800px */


/*===============================================================

　メンバー共通

===============================================================*/

.member_remove .whitebox2 ,
.member_remove_finish .whitebox2 ,
.request .whitebox2 ,
.dissolve  .whitebox2 {
	margin-top:20px;
}
.request .threebtn {
}
.request .threebtn .threebtnbox {
	width:350px;
	height:70px;
	margin:30px auto 0;
	background:#6cf;
	
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
.request .threebtn .threebtnbox .btn a {
	background-color:transparent;
	
	display:block;
	width:350px;
	padding:20px 0;
	text-decoration:none;
	color:#039;
	font-size:16px;
	line-height:30px;
	font-weight:bold;
	text-shadow: 0px 1px 1px rgba(0,0,0, 0.4);
	letter-spacing:0em;

	border:0;
	cursor:pointer;
	text-align:center;
	box-shadow:0 2px 0 rgba(0,0,0, 0.2);
	
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
.request .threebtn .btn a:hover {
	background-color: rgba(255,255,255,0.1);
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.member_remove .whitebox2 ,
	.member_remove_finish .whitebox2 ,
	.request .whitebox2 ,
	.dissolve  .whitebox2 {
		padding-top:20px;
	}
	
	.request .threebtn {
		padding:10px 15px;
	}
	.request .threebtn .threebtnbox {
		width:80%;
		height:50px;
		padding:0;
		margin:0 auto;
	}
	.request .threebtn .threebtnbox .btn a {
		width:100%;
		height:50px;
		line-height:50px;
		font-size:12px;
		padding:0;
	}
}	/* for SP max-width: 800px */


/*===============================================================

	プライバシーポリシー

===============================================================*/
.privacypolicy .annotationlist {
	overflow: hidden;
}
.privacypolicy .annotationlist * {
	font-size: 0.75rem;
	line-height: 1.8;
}
.privacypolicy .annotationlist dt {
	float: left;
}
.privacypolicy .annotationlist dd {
	overflow: auto;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.privacypolicy .first_section {
		margin-top:10px;
	}
	.privacypolicy .whitebox2 {
		padding:30px 15px;
	}
}	/* for SP max-width: 800px */


/*===============================================================

	会員利用規約

===============================================================*/
/* locallinkbox */
.agreement .locallinkbox {
	padding-top:20px;
}
.agreement .locallinkbox ul li {
	float:left;
	padding-top:10px;
	padding-right:30px;
}
.agreement .second_section .content {
	margin-top:25px;
	padding-top:10px;
}
.agreement .second_section .content:first-child {
	margin-top:0;
}
.agreement .whitebox2 p + h4 {
	margin-top:1em;
}
.agreement .whitebox2 h4 + p {
	margin-top:0;
	padding-left:1em;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {


	.agreement .whitebox2 {
		padding:30px 15px;
	}

	/* locallinkbox */
	.agreement .locallinkbox {
		padding-top:20px;
	}
	.agreement .locallinkbox ul li {
		float:none;
		padding-right:0px;
	}
}	/* for SP max-width: 800px */


/*===============================================================

	メンテナンス

===============================================================*/
.maintenance .section {
	margin-top:10px;
}
.maintenance .head {
	padding-left:90px;
}
.maintenance .emphasize {
	padding:5px 5px 5px 60px;
	text-align:left;
	background:url(../img/maintenance/icon_settings.png) no-repeat 0 center;
	background-size:44px 44px;
}

.maintenance dl {
	margin-top:10px;
}
.maintenance dl dt ,
.maintenance dl dd {
	text-align:left;
}
.maintenance dl dt {
	float:left;
	font-weight:bold;
}
.maintenance dl dd {
	margin-left:140px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.maintenance {
		text-align:left;
	}
	.maintenance .head {
		padding-left:0px;
		padding-top:20px;
	}
	.maintenance .emphasize {
		padding:5px 5px 5px 30px;
		text-align:left;
		margin-top:0;
		font-size:17px;
		line-height:25px;
		background:url(../img/maintenance/icon_settings.png) no-repeat 0 center;
		background-size:22px 22px;
	}
	.maintenance .align_center {
		text-align:left;
	}

	.maintenance dl dt ,
	.maintenance dl dd {
		text-align:left;
	}
	.maintenance dl dt {
		float:none;
		font-weight:bold;
	}
	.maintenance dl dd {
		margin-left:0px;
	}
}	/* for SP max-width: 800px */


/*===============================================================

	404

===============================================================*/
.notfound .first_section {
	margin-top:155px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.notfound .head {
		padding-left:0px;
		margin:30px 0 0;
	}
	.notfound .emphasize {
		text-align:left;
		font-size:17px;
		line-height:25px;
	}
	.notfound .align_center {
		text-align:left;
	}
}	/* for SP max-width: 800px */


/*===============================================================

	サイトポリシー

===============================================================*/
.sitepolicy {
}
.sitepolicy .subhead {
	margin-top:30px;
}
.sitepolicy .subhead:first-child {
	margin-top:0;
}


/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 800px) {
	.sitepolicy .subhead:first-child {
		margin-top:15px;
	}
}	/* for SP max-width: 736px */

/*===============================================================

	特定商取引法に基づく表記

===============================================================*/
.display {
}
.display h3 {
	font-weight:bold;
	margin-top:20px;
}
.display h3:first-child {
	margin-top:0;
}
.display p {
	line-height:25px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 800px) {
	.display p:first-child {
		margin-top:15px;
	}
}	/* for SP max-width: 736px */

/*===============================================================

	会社概要

===============================================================*/
.company {
}
.company h3 {
	font-weight:bold;
	margin-top:20px;
}
.company h3:first-child {
	margin-top:0;
}
.company p {
	line-height:25px;
}
.company .hansyakai .whitebox2 {
	border-radius:0 0 10px 10px;
	-webkit-border-radius:0 0 10px 10px;
	-moz-border-radius:0 0 10px 10px;
}
.company .hansyakai p {
	margin-top:10px;
	line-height:25px;
}
.company .hansyakai p:first-child {
	margin-top:0;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 800px) {
	.company .whitebox2 {
		padding-top:15px;
	}

	.company .hansyakai {
		padding-top:15px;
		margin-top:15px;
	}
	.company .hansyakai .whitebox2 {
		margin-top:0px;

		border-radius:0;
		-webkit-border-radius:0 ;
		-moz-border-radius:0;
	}
}	/* for SP max-width: 736px */

/*===============================================================

	資金決済法に基づく表示

===============================================================*/
.shikin {
}

.shikin h3 {
	font-weight:bold;
	margin-top:20px;
}
.shikin h3:first-child {
	margin-top:0;
}


/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 800px) {

	.shikin .whitebox2 {
		padding-top:15px;
	}

}	/* for SP max-width: 736px */

/*===============================================================

	contact

===============================================================*/
.contact {
}

.contact .mailformbox ,
.contact .telbox {
	background:#eaf6fc;
	padding:20px;
	text-align:center;
	
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
.contact .mailformbox {
	width:285px;
	display:block;
}
.contact .telbox {
	width:auto;
	margin-top:10px;
}

.contact .mailformbox h4 {
	font-weight:bold;
	font-size:18px;
	color:#28a7e1;
}
.contact .mailformbox p.cap {
	margin-top:0;
	font-size:12px;
}
.contact .mailformbox .smallbtnbox {
	margin-top:10px;
}
.contact .mailformbox .smallbtnbox .btn {
	width:200px;
}
.contact .mailformbox .smallbtnbox .btn a {
	color:#fff;
	font-size:16px;
	background:rgba(0,81,163,1);
}
.contact .mailformbox .smallbtnbox .btn a:hover {
	background:rgba(0,81,163,0.8);
}

.contact .tel_content {
	margin-top:30px;
}
.contact .telbox .tel {
	font-size:20px;
	font-weight:bold;
	margin-top:0px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.contact.index .content {
		padding-top:30px;
	}

	.contact .whitebox2 {
		padding-top:10px;
	}
	.contact .mt10 {
		margin-top:0;
	}
	.contact .mailformbox {
		width:auto;
		margin:0;
		margin-top:10px;
		float:none;
	}

	.contact .tel_content {
		margin-top:30px;
	}

	.contact .telbox .tel {
		margin-top:10px;
	}
	.contact .telbox .tel a {
		color:#333;
	}
	.contact .telbox .tel span {
		font-size:14px;
	}

	.contact .emphasize {
		text-align:left;
	}
	.contact .align_center {
		text-align:left;
	}
}	/* for SP max-width: 800px */


/*===============================================================

	contact_form

===============================================================*/
.step .section {
	margin-top:0;
}

.contact_form .txt_middle_content {
	margin-top:30px;
	padding-bottom:10px;
}

.contact .rule_txt {
	margin-top:30px;
}
.contact .rule_txt h4 {
	font-weight:bold;
}
.contact .rule_txt p {
	margin-top:5px;
}

.contact_form.confirm td {
	padding:20px;
}
.weakAlert,
.normalAlert,
.strongAlert {
	display:block;
	margin:0 0 10px !important;
	padding:4px 10px;
	border-radius:3px;
	font-size:13px;
	text-align:center;
}
.weakAlert {
	border:1px solid #FF0101;
	background:#FF9393;
}
.normalAlert {
	border:1px solid #FFCC00;
	background:#FFE270;
}
.strongAlert {
	border:1px solid #7AC9AA;
	background:#C1E1B8;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.contact_form .txt_middle_content {
		margin-top:50px;
		padding-bottom:0px;
	}
	.contact_form.confirm td {
		padding:0px;
	}
}	/*

/*===============================================================

　入力内容確認共通

===============================================================*/
.finish th,
.finish td {
	padding:20px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.finish th,
	.finish td {
		padding:0 5px;
	}
}	/* for SP max-width: 800px */


/*===============================================================

	フッタリンク

===============================================================*/
.footer_link_wrp {
	background:#0051a3;
	color:#333;
	margin:0 0 0 auto;
}
.footer_link_wrp .footer_link {
	/*margin:0 auto 0 200px;*/
	margin: 0 auto;
	padding:15px 0;
	width:1050px;
}
.footer_link_wrp .footer_link ul {
}
.footer_link_wrp .footer_link ul li {
	font-size:12px;
	float:left;
	padding:0 5px;
}
.footer_link_wrp .footer_link ul li.last {
	float:right;
}

.footer_link_wrp .footer_link a {
	color:#fff;
	text-decoration:none;
}
.footer_link_wrp .footer_link a:hover {
	text-decoration:underline;
}


/* 1200以下 */
@media screen and (max-width: 1250px) {
	.footer_link_wrp .footer_link {
		width:1050px;
		margin:0 0 0 auto;
	}
}	/* for tablet max-width: 1200px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
	.footer_link_wrp .footer_link {
		width:100%;
		padding:0;
	}
	.footer_link_wrp .footer_link ul {
	}
	.footer_link_wrp .footer_link ul li {
		font-size:12px;
		line-height:20px;
		float:left;
		padding:10px 0;
		width:50%;
		text-align:center;
		box-sizing:border-box;
		border-bottom:1px solid #4d86bf;
		border-right:1px solid #4d86bf;
	}
	.footer_link_wrp .footer_link ul li:nth-child(even) {
		border-right:0;
	}
	.footer_link_wrp .footer_link ul li.last {
		float:left;
	}
	.footer_link_wrp .footer_link a {
		text-decoration:none;
	}
	.footer_link_wrp .footer_link a:hover {
		text-decoration:none;
	}
	.footer_link_wrp .footer_link p {
		text-align:center;
		font-size:8px;
	}


}	/* for SP max-width: 800px */




/*===============================================================

	フッタ

===============================================================*/
.footer_wrp {
	text-align:center;
	background:#fff;
	color:#333;
	padding:27px 0 100px;
	margin:0 auto;
	width:100%;
}
.footer_wrp .footer {
	/*margin:0 auto 0 200px;*/
	margin: 0 auto;
	width:1050px;
}

.footer_wrp .footer .blandlist {
	width:980px;
	margin:0 auto;
	padding-bottom:30px;
	border-bottom:1px solid #ddd;
}
.footer_wrp .footer .blandlist li {
	width:57px;
	height:57px;
	display:block;
	float:left;
}
.footer_wrp .footer .blandlist li a {
	width:57px;
	height:57px;
	display:block;
}
.footer_wrp .footer .blandlist li img {
	padding:4px;
	width:49px;
}

.footer_wrp .logo {
	margin-top:30px;
}
.footer_wrp .txt {
	margin-top:20px;
}

/* 1200以下 */
@media screen and (max-width: 1250px) {
	.footer_wrp .footer {
		width:1050px;
		margin:0 0 0 auto;
	}
}	/* for tablet max-width: 1250px */

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 800px) {
	.footer_wrp {
		padding-top:0;
	}
	.footer_wrp .footer {
		width:100%;
		text-align:center;
		background:#fff;
		padding:15px 0 0;
	}
	.footer_wrp .footer .blandlist {
		width:auto;
		padding:0 ;
		margin:0 10px;
		padding-bottom:0px;
		border:0;
	}
	.footer_wrp .footer .blandlist ul {
	}
	.footer_wrp .footer .blandlist ul li {
		width:16.6%;
		text-align:center;
		height:auto;
		float:left;
	}
	.footer_wrp .footer .blandlist ul li a {
		display:block;
		width:100%;
		height:auto;
	}
	.footer_wrp .footer .blandlist ul li img {
		width:100%;
		padding:0px;
		display:block;
	}
	/* head ※この位置より上に移動させない */
	.footer_wrp .footer .blandlist .bland_head {
		padding-bottom:14px;
		border-bottom:1px solid #dfe5e9;
	}
	.footer_wrp .footer .blandlist .bland_head .representative {
		width:120px;
		float:left;
	}
	.footer_wrp .footer .blandlist .bland_head .representative ul {
	}
	.footer_wrp .footer .blandlist .bland_head .representative ul li {
		padding:0;
		border:0;
		width:40px;
		height:40px;
		display:block;
	}
	.footer_wrp .footer .blandlist .bland_head .representative ul li a {
		width:40px;
	}
	.footer_wrp .footer .blandlist .bland_head .representative ul li img {
		width:32px;
		padding:4px;
	}
	.footer_wrp .footer .blandlist .bland_head .bland_btn {
		width:135px;
		float:right;
		text-align:left;
	}
	.footer_wrp .footer .blandlist .bland_head .bland_btn a {
		display:block;
		line-height:40px;
		width:135px;
		text-decoration:none;
		background:url(../img/sp_footer_bland_btn_01.png) no-repeat center right;
		background-size:40px 40px;
	}
	.footer_wrp .footer .blandlist .bland_head .bland_btn.open a {
		background:url(../img/sp_footer_bland_btn_02.png) no-repeat center right;
		background-size:40px 40px;
	}
	
	.footer_wrp .footer .blandlist .list .cf {
		border-bottom:1px solid #dfe5e9;
		padding-bottom:10px;
	}
	
	.footer_wrp .footer .footer {
		margin:0 auto;
	}
	.footer_wrp .logo {
		float:none;
		padding:19px 0 0;
		margin:0 auto;
		width:69px;
		height:18px;
	}
	.footer_wrp .logo a {
		display:block;
		width:69px;
		height:18px;
		display:block;
	}
	.footer_wrp .logo a img {
		display:block;
		width:69px;
		height:18px;
	}
	
	.footer_wrp .txt {
		margin-top:15px;
	}
	.footer_wrp .txt p {
		margin-top:0px;
		line-height:18px;
	}
}	/* for SP max-width: 736px */


/*===============================================================
	
	チャージ
	
===============================================================*/
.charge .expiration {
	margin-top:0px;
	padding-bottom:25px;
}
.charge .btn_open,
.body.shdow_out > div.content > p.bold {
	color:#0051A3;
}
.charge .btn_open span {
	cursor:pointer;
	text-decoration:underline;
}
.charge .btn_open span.icon {
	cursor:none;
	text-decoration:none;
}
.charge .btn_open span:hover {
	text-decoration:none;
}
.charge .codeDescription {
	display:none;
	padding:10px 15px;
	border:1px solid #999;
}
.charge .codeDescription p {
	margin-top:0;
	font-size:12px;
	line-height:1.5;
}
.charge .codeDescription .line {
	margin-bottom:15px;
	padding-bottom:15px;
	border-bottom:1px solid #999;
}
.charge .codeDescription .di2_base {
	letter-spacing:0;
}
.charge .codeDescription .di2_base .di2 {
	display:inline-block;
	max-width:225px;
	vertical-align:middle;
	letter-spacing:normal;
	box-sizing:border-box;
}
.charge .codeDescription .di2_base .di2:nth-child(2n+1) {
	padding-right:15px;
}
.charge .codeDescription .di2_base .di2:nth-child(-n+2) {
	padding-bottom:15px;
}
.charge .codeDescription .notes {
	color:#F00;
	font-size:10px;
}

.charge .threestep {
	padding:0 30px 20px;
}
.charge.finish .threestep {
	padding-top:25px;
}
.charge .threestep li {
	margin-right:0;
}
.charge .threestep .flowchart {
	margin-top:0;
}
.charge .tab_content .threestep {
	padding-bottom:10px;
}
.charge .tab_content .threestep .step {
	height:15px;
	padding:11px 5px 13px;
	border:1px solid #28A7E1;
	white-space:nowrap;
	border-radius:4px;
}
.charge .tab_content .threestep .step:after {
	top: 6px;
	right: -13px;
	border: 1px solid #28A7E1;
	width: 27px;
	height: 27px;
	background: linear-gradient(to left bottom, #FFF 49%, transparent 50%);
	transform: rotate(45deg);
	border-left: none;
	border-bottom: none;
}
.charge .tab_content .threestep .step.on {
	border-color:#039; 
}
.charge .tab_content .threestep .step.on:after {
	border-color: #039;
	background: linear-gradient(to left bottom, #039 49%, transparent 50%);
}

.charge.finish .threestep + .section {
	margin-top:0;
}

.charge .txtPayment {
	margin-bottom:10px;
	padding-top:20px;
	border-bottom:1px solid #28A7E1;
}

.charge .listNotes {
	margin:20px 0 0;
	padding:10px 15px;
	border:1px solid #28A7E1;
	background:#FFF;
}
.charge .listNotes dt {
	color: #28A7E1;
	margin-bottom:10px;
	padding:5px 0;
	font-weight: bold;
	border-bottom: 1px solid #28A7E1;
}
.charge .listNotes dd {
	padding-left:1em;
	text-indent:-1em;
}
/*----*/
.charge .payformbox ,
.charge .about_content {
	background:#fff;
	padding:20px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
.charge .payformbox {
	width:285px;
	display:block;
	background:#EAF6FC;
	text-align:center;
}
.charge .about_content {
	width:auto;
	margin-top:30px;
}

.charge .payformbox h4 {
	font-weight:bold;
	font-size:18px;
	color:#28a7e1;
}
.charge .payformbox p.cap {
	margin-top:0;
	font-size:12px;
}
.charge .payformbox .smallbtnbox {
	margin-top:10px;
}
.charge .payformbox .smallbtnbox .btn {
	width:200px;
}
.charge .payformbox .smallbtnbox .btn a {
	color:#fff;
	font-size:16px;
	background:rgba(0,81,163,1);
}
.charge .payformbox .smallbtnbox .btn a:hover {
	background:rgba(0,81,163,0.8);
}

dl.listChargeFinish {
	color: #FFF;
	width: 276px;
	margin: 20px auto;
	letter-spacing: -1em;
}
dl.listChargeFinish dt,
dl.listChargeFinish dd {
	display: inline-block;
	min-width: 50%;
	margin-top: 5px;
	padding: 5px 0;
	letter-spacing: 0;
	text-align: right;
	background: #0051A3;
}
dl.listChargeFinish dd {
	min-width: calc(50% - 30px);
	padding-right: 30px;
}
dl.listChargeFinish dt:nth-of-type(2),
dl.listChargeFinish dd:nth-of-type(2) {
	font-size: 125%;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {

	.charge .section {
		margin-top:15px;
	}

	.charge .whitebox {
		margin-top:15px;
		padding-top:5px;
	}
	.charge .expiration {
		margin-top:0px;
		padding-bottom:5px;
	}
	.charge p.txt {
		margin-left:15px;
		margin-right:15px;
	}

	.charge .indent {
		padding-left: 10px;
	}

	.charge .payformbox {
		width:auto;
		margin:0;
		margin-top:10px;
		float:none;
	}

	.charge .threestep {
		margin-top:0;
		padding:15px 0 0 0;
	}
	.charge.finish .threestep {
		padding:0 15px 15px;
	}
	.charge .threestep .flowchart {
		width:auto;
		margin:0 auto;
		padding:0;
	}
	.charge .threestep .step,
	.charge .tab_content .threestep .step {
		height:40px;
		width:20%;
		box-sizing:border-box;
	}
	.charge .tab_content .threestep .step:after {
		top:5px;
	}
	.charge .threestep .step01,
	.charge .tab_content .threestep .step01 {
		width:36%;
	}
}	/* for SP max-width: 800px */

/* SP向けレイアウトの指定：～400px */
@media only screen and (max-width: 425px) {
	.charge .threestep ul {
		justify-content: space-between;
	}
	.charge .threestep .step01,
	.charge .tab_content .threestep .step01 {
		width:43%;
	}
}

/* SP向けレイアウトの指定：～360px */
@media only screen and (max-width: 360px) {
}

/*===============================================================
	
	hoge
	
===============================================================*/
.hoge {
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
}	/* for SP max-width: 800px */





.bannerBlock {
	position: relative;
	width: 100%;
	margin-top: 25px;
}
.bannerBlock picture {
	display: block;
	line-height: 0;
}
.bannerBlock img {
	width: 100%;
	height: auto;
}
.bannerBlock .appStore {
	position: absolute;
	bottom: 37px;
	right: 223px;
}
.bannerBlock .googleStore {
	position: absolute;
	bottom: 38px;
	right: 39px;
}
.bannerBlock a {
	display: block;
	transition: all .3s;
}
.bannerBlock a:hover {
	opacity: .7;
}
@media only screen and (max-width: 800px) {
	.bannerBlock {
		width: calc(100% - 30px);
		/* margin-top: 20px; */
		margin: 25px 15px 0;
	}
	.bannerBlock .appStore {
		position: absolute;
		width: calc(291/680*100%);
		bottom: 18px;
		right: calc(347/680*100%);
	}
	.bannerBlock .googleStore {
		position: absolute;
		width: calc(291/680*100%);
		bottom: 18px;
		right: calc(37/680*100%);
	}
}
/*.pagetitle + .section {
	margin-top: 35px;
}*/
.bannerBlock + .topics {
	margin-top: 50px;
}
/*.section + .section {
	margin-top:35px;
}*/