@charset "UTF-8";

#header #gNavi ul li a.top_active{
	color:#de775b;
}

/* main
-----------------------------------------------*/
#mainTop {
	position: relative;
	background-repeat: no-repeat;
	background-position: center center;
	background-image: url("/services/gp/images/index/mv.jpg");
	padding: 0;
	background-size: cover;
}
#mainTop .inner {
	max-width: 1360px;
	margin: 0 auto;
	padding: 110px 0 110px 0;
	display: flex;
	justify-content: flex-end;
}
#mainTop .copy {
	width: 60%;
}
#mainTop .copy img {
	width: 350px;
	margin-top: 30px;
	margin-left: 15px;
}
#mainTop h1 {
	position: relative;
	z-index: 3;
	font-size: 48px;
	font-weight: normal;
	line-height: 1.4;
	font-feature-settings: "palt";
	white-space: nowrap
}
#mainTop h2 span {
	font-size: 16px;
	border-bottom: 1px solid #666;
}
#mainTop h2 {
	margin-bottom: 25px;
	margin-left: 6px;
}
@media screen and (max-width: 1200px) {
	#mainTop h1 {
		font-size: 44px;
	}
	#mainTop .copy {
		width: 60%;
	}
}
@media screen and (max-width: 1040px) {
	#mainTop .inner {
		padding: 70px 0;
	}
	#mainTop h1 {
		font-size: 33px;
	}
	#mainTop .copy {
		width: 55%;
	}
	#mainTop .copy img {
		width: 250px;
		margin-top: 20px;
		margin-left: 5px;
	}
}
@media screen and (max-width: 940px) {
	#mainTop h1 {
		font-size: 34px;
	}
	#mainTop .copy {
		width: 60%;
	}
}
@media screen and (max-width: 767px) {
	#mainTop {
		padding: 0;
	}
	#mainTop h1 {
		font-size: 27px;
	}
	#mainTop .copy img {
		width: 200px;
	}
	#mainTop .img {
		position: relative;
		right: 0;
		top: 0;
		width: 70%;
		margin: 0 auto;
		padding-left: 25px;
	}
}
@media screen and (max-width: 600px) {
	#mainTop .inner {
		padding: 50px 0;
	}
	#mainTop {
		background-position: left 40% center;
	}
	#mainTop h1 {
		font-size: 20px;
	}
	#mainTop .copy {
		width: 65%;
	}
	#mainTop h2 span {
	font-size: 14px;
	}
}
@media screen and (max-width: 380px) {
	#mainTop {
		position: relative;
		background-repeat: no-repeat;
		background-position: center bottom;
		background-image: url("/services/gp/images/index/mv_sp.jpg");
		padding: 0;
		background-size: contain;
		background-color: #E7E6EA;
	}
	#mainTop .inner {
		padding: 70px 0 350px;
	}
	#mainTop h1 {
		font-size: 24px;
		text-align: center;
	}
	#mainTop .copy {
		width: 100%;
		text-align: center;
	}
}


/* section
-----------------------------------------------*/
#sec02,
#sec04{
	background:#fdf7f5;
}
.section .inner{
	position:relative;
	max-width:980px;
	padding:70px 40px;
	margin:0 auto;
}
.section h2{
	display:block;
	position:relative;
	z-index:2;
	font-size:38px;
	font-weight:normal;
	padding-bottom:20px;
	width:450px;
	text-align:left;
}
.section h2::before{
	position:absolute;
	left:0;
	bottom:0;
	content:"";
	width:46px;
	height:4px;
	background:#de775b;
}
.section .txt{
	display:inline-block;
	width:450px;
	text-align:left;
}
.section .txt p{
	position:relative;
	z-index:2;
	font-size:18px;
	margin-top:30px;
	line-height:2;
}
.section .txt p strong{
	border-bottom:1px solid #de775b;
	padding-bottom:2px;
	font-weight:normal;
}
.section .txt .btn{
	position:relative;
	z-index:1;
	margin-top:30px;
}
.section .txt .btn a{
	position:relative;
	display:inline-block;
	width:270px;
	background:#de775b;
	color:#fff;
	text-align:center;
	font-size:138.5%;
	padding:18px 0 14px 0;
	border-radius:40px;
	-webkit-border-radius:40px;
	-moz-border-radius:40px;
}
.section .txt .btn a::before{
	content:"";
	position:absolute;
	top:50%;
	right:20px;
	width:10px;
	height:10px;
	border-top:2px solid #fff;
	border-right:2px solid #fff;
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	margin-top:-6px;
}
.section .txt .btn a:hover{
	opacity:0.8;
}
.section .txt .btn.blank a{
	background-image: url(../common/images/ico_win_white.svg);
	background-repeat: no-repeat;
	background-position: right 20px center;
}
.section .txt .btn.blank a::before{
	border: none;
}
.section .txt .modalLink{
	margin-top:15px;
}
.section .txt .pointLink{
	margin-top:35px;
}
.section .img{
	position:absolute;
	z-index:1;
	opacity:0;
	-webkit-transition:opacity 0.6s;
	-moz-transition:opacity 0.6s;
	-ms-transition:opacity 0.6s;
	-o-transition:opacity 0.6s;
	transition:opacity 0.6s;
}
.section .img.fade{
	opacity:1;
}
.section .img img{
	width:100%;
	height:auto;
}
@media screen and (max-width: 1040px) {
.section .inner{
	padding:70px 0;
	margin:0 40px;
}
.section h2{
	width:auto;
	display:block;
}
.section h2 br{
	display:none;
}
.section .txt p{
	font-size:16px;
}
.section .txt .pointLink{
	text-align:left;
}
.section .img img{
	width:100%;
	height:auto;
}

.section h2{
	text-align:center;
}
.section h2::before{
	left:50%;
	margin-left:-23px;
}
}
@media screen and (max-width: 767px) {
.section .inner{
	padding:40px 0;
	margin:0;
}
.section .txt{
	display:block;
	width:100%;
	text-align:center;
}
.section h2{
	font-size:27px;
	padding-bottom:8px;
}
.section h2::before{
	left:50%;
	width:29px;
	height:3px;
	margin-left:-15px;
}
.section .txt p{
	font-size:17px;
	margin-top:20px;
	line-height:1.5;
}
.section .txt .btn a{
	font-size:15px;
	width:250px;
	padding:18px 0 18px 0;
}
.section .txt .pointLink{
	margin-top:20px;
	text-align:center;
}
.section .img{
	position:relative;
	margin:15px auto 0 auto;
}
.section .img img{
	width:100%;
	height:auto;
}

.section .txt h2,
.section .txt p,
.section .txt .btn,
.section .txt .link{
	padding-left:20px;
	padding-right:20px;
}
}


/* sec01
-----------------------------------------------*/
#sec01 {
	text-align: left;
}
#sec01 .img {
	max-width: 480px;
	right: 10px;
	bottom: 0;
}
#sec01 .img .lgo {
	position: absolute;
	top: 28%;
	left: 10%;
	width: 33%;
}
@media screen and (max-width: 1040px) {
	#sec01 .txt {
		max-width: 48%;
	}
	#sec01 .img {
		max-width: 52%;
		right: 0;
	}
}
@media screen and (max-width: 900px) {
	#sec01 .img {
		max-width: 50%;
	}
}
@media screen and (max-width: 767px) {
	#sec01 .txt {
		max-width: 100%;
		margin-right: 0;
	}
	#sec01 .img {
		right: 0;
	}
	#sec01 .img {
		max-width: 350px;
		padding: 0 20px;
	}
}
@media screen and (max-width: 380px) {
	#sec01 .txt br.pc {
		display: block !important;
	}
}


/* sec02
-----------------------------------------------*/
#sec02{
	text-align:right;
}
#sec02 h2{
	margin:0 0 0 auto;
}
#sec02 .img{
	left:40px;
	top:80px;
}
#sec02 .img ul{
	display:inline-block;
	font-size:0;
	width:425px;
	text-align:left;
}
#sec02 .img ul li{
	display:inline-block;
	width:170px;
	-webkit-transition:opacity 0.6s;
	-moz-transition:opacity 0.6s;
	-ms-transition:opacity 0.6s;
	-o-transition:opacity 0.6s;
	transition:opacity 0.6s;
	opacity:0;
}
#sec02 .img ul li:nth-child(1){
	margin-right:4px;
}
#sec02 .img ul li:nth-child(3){
	margin-left:60px;
	margin-right:4px;
}
#sec02 .img ul li:nth-child(3),
#sec02 .img ul li:nth-child(4){
	margin-top:4px;
}
#sec02 .img ul li.fade{
	opacity:1;
}
#sec02 .img ul li img{
	width:100%;
	height:auto;
}
@media screen and (max-width: 1040px) {
#sec02 .inner{
	min-height:435px;
}
#sec02 .txt{
	max-width:48%;
}
#sec02 .img{
	top:170px;
	left:0;
	max-width:450px;
}
#sec02 .img ul{
	max-width:100%;
}
#sec02 .img ul li{
	width:39%;
}
#sec02 .img ul li:nth-child(1){
	margin-right:1%;
}
#sec02 .img ul li:nth-child(3){
	margin-left:15%;
	margin-right:1%;
}
#sec02 .img ul li:nth-child(3),
#sec02 .img ul li:nth-child(4){
	margin-top:1%;
}
}
@media screen and (max-width: 1040px) {
#sec02 .inner{
	min-height:375px;
}
#sec02 .img{
	max-width:350px;
}
}
@media screen and (max-width: 767px) {
#sec02{
	text-align:left;
}
#sec02 .inner{
	min-height:0;
}
#sec02 .txt{
	max-width:100%;
	margin-left:0;
}
#sec02 .img{
	max-width:100%;
	left:0;
	top:0;
}
#sec02 .img ul{
	max-width:400px;
	width:100%;
}
#sec02 .img ul li{
	opacity:1;
	width:24.25%;
}
#sec02 .img ul li:nth-child(1),
#sec02 .img ul li:nth-child(2),
#sec02 .img ul li:nth-child(3){
	margin:0 1% 0 0;
}
#sec02 .img ul li:nth-child(3),
#sec02 .img ul li:nth-child(4){
	margin-top:0;
}
#sec02 .img ul li:nth-child(2),
#sec02 .img ul li:nth-child(4){
	display:none;
}
#sec02 .img ul li:nth-child(1),
#sec02 .img ul li:nth-child(3){
	margin:0;
	width:50%;
}
}


/* sec03
-----------------------------------------------*/
#sec03{
	text-align:center;
}
#sec03 h3 {
 display: block;
 font-size: 24px;
 font-weight: normal;
 padding-bottom: 10px;
 text-align: center;
 color: #de775b;
 border-bottom: 2px solid #eeeeee;
 margin-bottom: 30px;
}
#sec03 .txt{
 text-align: center;
 width: 100%;
}
#sec03.section .txt .btn a{
	width:auto;
	padding:14px 40px 14px 40px;
	line-height:1;
}
#sec03 .dlBlock{
 border-radius: 20px;
 background-color: #fdf7f5;
 margin-top: 50px;
}
#sec03 .dlBlock .inc{
 background-repeat: no-repeat;
 background-size: cover;
 background-position: center top;
 margin: auto;
 width: 755px;
 display: flex;
 justify-content: space-between;
 padding-top: 35px;
}
#sec03 .dlBlock .inc div:first-child{
 width: 420px;
}
#sec03 .dlBlock .inc div:last-child{
 width: 280px;
}
#sec03 .dlBlock .copy{
 width: 275px;
 margin-bottom: 45px;
}
#sec03 .dlBlock .logo{
 width: 348px;
 margin-bottom: 45px;
}
#sec03 .dlBlock .portal_app{
width: 100%;
}
#sec03 .dlBlock ul.btnBlock{
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
}
#sec03 .dlBlock ul.btnBlock li{
 width: 49%;
}
#sec03 .dlBlock ul.btnBlock li:last-child{
 width: 100%;
 margin-top: 10px;
}
#sec03 .dlBlock ul.btnBlock li img{
 width: 100%;
 cursor: pointer;
}
#sec03 .dlBlock ul.btnBlock li a.btn_sent {
 color: #0491e8;
 display: block;
 border-radius: 5px;
 text-align: center;
 padding: .2em;
}
#sec03 .dlBlock ul.btnBlock li a.btn_sent span {
 display: inline-block;
 background-image: url("/services/gp/images/index/icn_paper-plane.png");
 background-repeat: no-repeat;
 background-position: left center;
 background-size: 15px auto;
 padding-left: 21px;
 text-decoration: underline;
 font-weight: bold;
 cursor: pointer;
}
@media screen and (max-width: 1040px) {
 #sec03 .dlBlock .inc{
  width: 90%;
 }
}
@media screen and (max-width: 767px) {
 #sec03 .inner {
  padding: 40px 20px;
 }
 #sec03 .txt {
  margin-right: 0;
  max-width: 100%;
 }
 #sec03 .dlBlock .inc {
  flex-wrap: wrap;
 }
 #sec03 .dlBlock .inc, #sec03 .dlBlock .inc div {
  width: 100% !important;
 }
 #sec03 .dlBlock .copy, #sec03 .dlBlock .logo {
  width: 80%;
 }
 #sec03 .dlBlock .inc {
  padding-top: 30px;
  padding-right: 30px;
  padding-left: 30px;
  padding-bottom: 0px;
  box-sizing: border-box;
 }
 #sec03 .dlBlock .inc div:last-child {
  margin-top: 30px;
 }
 #sec03 .dlBlock .copy {
  margin-bottom: 20px;
 }
 #sec03 .dlBlock .logo {
  margin-bottom: 30px;
 }
 #sec03 .dlBlock .portal_app {
  width: 100%;
  margin: auto;
 }
}


/* sec04
-----------------------------------------------*/
#sec04{
	text-align:right;
}
#sec04 h2{
	margin:0 0 0 auto;
}
#sec04 .img{
	left:40px;
	top:80px;
}
@media screen and (max-width: 1040px) {
#sec04 .inner{
	min-height:325px;
}
#sec04 .txt{
	max-width:48%;
}
#sec04 .img{
	top:170px;
	max-width:400px;
	left:0;
}
}
@media screen and (max-width: 940px) {
#sec04 .inner{
	min-height:280px;
}
#sec04 .img{
	max-width:320px;
}
}
@media screen and (max-width: 767px) {
#sec04 .inner{
	min-height:0;
}
#sec04 .txt{
	margin-left:0;
	max-width:100%;
}
#sec04{
	text-align:left;
}
#sec04 .img{
	left:0;
	top:0;
	max-width:225px;
	padding:0 20px;
	margin-top:20px;
}
}


/* card
-----------------------------------------------*/
#card{
	background-color:#83cee7;
	border-bottom:10px solid #fff;
}
#card .inner{
	max-width:980px;
	padding:55px 40px 65px;
	margin:0 auto;
}

#card .sp{
    display: none!important;
}
#card h3{
	color:#fff;
	text-align:center;
	font-size:24px;
	font-weight:normal;
    margin-bottom: 25px;
}

#card h3 span{
    font-size: 18px;
    line-height: 32px;
}

#card .cardbtn{
    width: 490px;
    height: 60px;
    border-radius: 30px;
    background-color: #de775b;
    color: #fff;
    font-size: 18px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    margin: 0 auto;    
}

#card .cardbtn::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 20px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    margin-top: -6px;
}

#card .pct{
    text-align: center;
    margin-bottom: 35px;
}

#card .pct img{
    display: block;
    margin: 0 auto;
}

#card .app{
    margin: 45px  auto 30px;
    text-align: center;
}

#card ul{
	position:relative;
	overflow:hidden;
	margin:50px -20px 0 0;
}
#card ul li{
	float:left;
	width:25%;
}
#card ul li a{
	display:block;
	opacity:1;
}
#card ul li .box{
	background:#fff;
	text-align:center;
	padding:20px 15px 18px 15px;
	margin-right:20px;
	border-radius:6px;
	-webkit-border-radius:6px;
	-moz-border-radius:6px;
}
#card ul li .box p{
	font-size:108%;
	margin-top:10px;
}
#card ul li .box p:first-child{
	margin-top:0;
}
#card ul li .box p span{
	display:block;
	font-size:12px;
	color:#999;
}
#card ul li .box img{
	max-width:136px;
	width:100%;
	height:auto;
	margin-top:16px;
}
#card ul li .box h4{
	font-size:108%;
	margin-top:16px;
}
#card ul li .box span.link{
	position:relative;
	display:inline-block;
	color:#de775b;
	font-size:108%;
	font-weight:bold;
	padding-right:16px;
	margin-top:10px;
	-webkit-transition:opacity 0.3s;
	-moz-transition:opacity 0.3s;
	-ms-transition:opacity 0.3s;
	-o-transition:opacity 0.3s;
	transition:opacity 0.3s;
}
#card ul li .box span.link::before{
	content:"";
	position:absolute;
	top:50%;
	right:0;
	width:8px;
	height:8px;
	border-top:2px solid #de775b;
	border-right:2px solid #de775b;
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	margin-top:-6px;
}
#card ul li a:hover .box span.link{
	opacity:0.7;
}
@media screen and (max-width: 767px) {
    #mainTop h1{
        margin-top: 0;
    }
#card .inner{
	padding:45px 0 30px;
}
#card h3{
	color:#fff;
	text-align:center;
	font-size:23px;
	font-weight:normal;
    margin-bottom: 15px;
}
    
    #card h3 span{
        font-size: 12px;
        line-height: 2;
        display: block;
        margin-top: 15px;
    }

    #card .sp{
        display: block!important;
    }
    #card .pc{
        display: none!important;
    }
    #card .pct img{
        width: 100%;
        max-width: 350px;
        margin: 0 auto;
    }
    #card .cardbtn {
        max-width: 370px;
    width: 95%;
    height: 50px;
    border-radius: 25px;
    font-size: 16px;
        line-height: 18px;
        text-align: center;
}
    #card .app{
        margin: 35px auto 25px;
    }
    
    #card .app img{
        margin: 0 auto;
    }
    #card .pct{
        margin-bottom: 10px;
    }
    
}

/* IE */
.ie9 #mainTop h1,
.ie9 #mainTop .thumb ul li,
.ie9 #mainTop .bnr,
.ie9 .section .img,
.ie9 #sec02 .img ul li{
	opacity:1;
}

.cashlessBnr{
	max-width: 560px;
	margin: 2em 1.5em;
	text-align: left;
/*	margin-bottom: -90px;*/
}
.cashlessBnr img{
	width: 100%;
	height: auto;
}
.cashlessBnr p{
	margin-top: 0.5em;
	font-size: 0.9rem;
}
.cashlessBnr p span{
	font-size: 0.8rem;
}

.newsarea {
	max-width: 570px;
	margin: 2em 1.5em;
	text-align: left;
}
.newsarea p {
  color: #e60012;
}
.newsarea p .border {
  display: inline-block;
  border-bottom: 3px double #e60012;
  margin-bottom: 5px;
}
.newsarea a {
  padding-left: 15px;
  position: relative;
}
.newsarea a:before {
  content: "";
  display: inline-block;
	border: 5px solid transparent;
	border-left: 7px solid #de775b;
	position: absolute;
	top: 5px;
	left: 3px;
	box-sizing: border-box;
}

@media screen and (max-width: 768px) {
	.cashlessBnr {
		width: 100%;
		background: #FFF;
		margin: auto;
	}
	#mainTop .cashlessBnr a {
		padding: 0.5em;
	}
	.cashlessBnr a img {
		display: inline !important;
	}
	.cashlessBnr p {
		display: none;
	}
}


/* 利用手数料無料
-----------------------------------------------*/
.freeLabel{
	padding:3px; 
	border:solid 1px #F6C;
	color: #F6C;
	float:right;
	position:absolute; 
	right:5%; 
	top: 20px;
	background-color: #fff;
}
@media screen and (max-width: 767px) {
	.freeLabel{
		font-size: 11px;
	}
}