@charset "UTF-8";

/* ==========================================================================
 * Font face
 * ========================================================================== */
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 100;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 200;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 300;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 400;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Bold");
	font-weight: bold;
}

/* ==========================================================================
 * Root
 * ========================================================================== */
*,
::before,
::after {
	background-repeat: no-repeat;
	box-sizing: border-box;
}
html {
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	font-size: 62.5%;
}
body {
	margin: 0;
	font-family: "Hiragino Kaku Gothic Pro" , "Yu Gothic", YuGothic, Meiryo, Osaka, sans-serif;
	font-size: 1.8em;
	font-size: 1.8rem;
	line-height: 1.5;
	background-color: #fff;
}
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
        body {
        font-family: Meiryo, "Hiragino Kaku Gothic Pro" , "Yu Gothic", YuGothic, Osaka, sans-serif;
    }
}

/* ==========================================================================
 * HTML5 display definitions
 * ========================================================================== */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
	display: block;
}
audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}
audio:not([controls]) {
	display: none;
	height: 0;
}

/* ==========================================================================
 * Anchor
 * ========================================================================== */
a:link,
a:visited {
	background-color: transparent;
	color: #4f7aac;
	text-decoration: none;
}
a:active,
a:hover {
	outline: 0;
	text-decoration: underline;
}

/* ==========================================================================
 * Embedded
 * ========================================================================== */
img {
	max-width: 100%;
	height: auto;
	border: 0;
	vertical-align: bottom;
}
svg:not(:root) {
	overflow: hidden;
}

/* ==========================================================================
 * Grouping
 * ========================================================================== */
figure {
	margin: 0;
}
hr {
	box-sizing: content-box;
	height: 0;
	border: none;
	border-top: 1px solid #bbb;
}
dd {
	margin-left: 0;
}

/* ==========================================================================
 * Float
 * ========================================================================== */
.clear {
	clear: both;
}
.clearfix:before,
.clearfix:after {
	content: " ";
	display: table;
}
.clearfix:after {
	clear: both;
}

/* ==========================================================================
 * List
 * ========================================================================== */
ul,
ol {
	padding: 0;
}
ul {
	margin: 0;
	list-style: none;
}
ul.list-disc {
	margin-left: 1.55em;
	list-style: disc;
}
ul.list-annotation {
	margin-left: 1.3em;
}
ul.list-annotation li::before {
	margin-left: -1.3em;
	content: "※\0020";
}
ol {
	margin-left: 1.3em;
}
ol.list-annotation {
	margin-left: 2em;
	padding: 0;
	counter-reset: number;
	list-style: none;
}
ol.list-annotation li::before {
	margin-left: -2em;
	counter-increment: number;
	content: "※"counter(number)"\0020";
}
ul.list-disc li,
ul.list-annotation li,
ol li {
	margin-bottom: 8px;
}

/* ==========================================================================
 * Text
 * ========================================================================== */
b,
strong {
	font-weight: bold;
}
mark {
	background: #ff0;
	color: #000;
}
small,
.txt-small{
	font-size: 80%;
}
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sub {
	bottom: -0.25em;
}
sup {
	top: -0.5em;
}
address {
	font-style: normal;
}
h1,
.h1 {
	font-size: 3.2rem;
	line-height: 1.2;
	margin: 0;
}
h2,
.h2 {
	font-size: 2.4rem;
	line-height: 1.2;
	margin: 0;
}
h3,
.h3 {
	font-size: 1.8rem;
	line-height: 1.2;
	margin: 0;
}
h4,
.h4 {
	/*font-size: 1.6rem;
	line-height: 1.2;
	margin: 0;*/
	padding: 5px;
    margin-bottom: 10px;
    color: #181818;
    font-size: 2.2rem;
    line-height: 1.2;
    background-color: #fff;
    border-radius: 3px;
}}
p {
	margin: 0;
}
p + p {
	margin-top: .5em;
	margin-bottom: 0;
}
.txt-left {
	text-align: left;
}
.txt-center {
	text-align: center;
}
.txt-right {
	text-align: right;
}
.txt-unbold {
	font-weight: normal;
}
.txt-bold {
	font-weight: bold;
}
.txt-emphasis {
	color: #e74c3c;
}
.txt-notes {
	color: #7f8c8d;
}

/* ==========================================================================
 * Table
 * ========================================================================== */
table {
	border-collapse: collapse;
	border-spacing: 0;
}
td,
th {
	padding: 0;
}

/* ==========================================================================
 * Form
 * ========================================================================== */
button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}
button {
	overflow: visible;
}
button,
select {
	text-transform: none;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}
button[disabled],
html input[disabled] {
	cursor: default;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}
input {
	line-height: normal;
}
input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}
input[type="search"] {
	-webkit-appearance: textfield;
	box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}
textarea {
	overflow: auto;
}

/* ==========================================================================
 * Common
 * ========================================================================== */
#page-container {
	max-width: 2000px;
	margin: 0 auto;
	overflow: hidden;
}
.inner-width {
	width: 880px;
    padding: 0 20px;
	margin-right: auto;
	margin-left:  auto;
}
@media screen and (max-width:640px) { 
	.inner-width {
		padding: 0 5%;
		width: 100%;
	}
}
/*-------------------- Responsive --------------------*/
.sp{
    display: none !important;
}
@media screen and (max-width:640px) { 
    .pc{
        display: none !important;
    }
    .sp{
        display: block !important;
    }
}
/*-------------------- Back to Top --------------------*/
a.backtotop {
	position: fixed;
	bottom: 30px;
	right: 5%;
	width: 40px;
	height: 40px;
	padding: 38px 0 0;
	background-color: #ccc;
	color: #fff;
	text-align: center;
	font-size: 14px;
	cursor: pointer;
	opacity: .5;
	border-radius: 50%;
}
a.backtotop::before {
	content: "";
	position: absolute;
	top: 10px;
	left: 10px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 10px 17.3px 10px;
	border-color: transparent transparent #ffffff transparent;
}

/* ==========================================================================
 * CTA
 * ========================================================================== */
.cta-btn-wrap {
	display: flex;
	flex-direction: row-reverse;
}
.cta-btn-wrap li {
	width: 100%;
	flex-grow: 1;
}
.cta-btn-wrap li a {
	position: relative;
	padding: 10px 5%;
	text-align: center;
	border-radius: 5px;
	display: block;
	transition: all .15s;
	z-index: 2;
}
.cta-btn-wrap li a:hover {
	box-shadow: none;
	filter: brightness(1.2);
	transform: translateY(3px);
}
.cta-btn-wrap li a::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: calc(100% - 5px);
	height: calc(100% - 5px);
	border-radius: 5px;
	transform: translate(-50%,-50%);
	z-index: 1;
}
.cta-btn-wrap img {
	vertical-align: middle;
}
.cta-btn-wrap li a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
}
.cta-btn-monthly a {
	background: url("../images/cta_bg_blue.png");
	box-shadow: 2px 5px 0 0 #063e66;
}
.cta-btn-monthly a::before {
	border: 1px solid #074e80;
}
.cta-btn-monthly a::after {
	width: 49px;
	height: 26px;
	background: url("../images/cta-arrowRight_triple.png") no-repeat center center/cover;
}
.cta-btn-oneshot {
	margin-left: 5%;
}
.cta-btn-oneshot a {
	background: url("../images/cta_bg_red.png");
	box-shadow: 2px 5px 0 0 #88000b;
}
.cta-btn-oneshot a::before {
	border: 1px solid #88000b;
}
.cta-btn-oneshot a::after {
	width: 17px;
	height: 26px;
	background: url("../images/cta-arrowRight.png") no-repeat center center/cover;
}
.cta-tel {
	pointer-events: none;
}
@media screen and (max-width:640px) {
	.cta-btn-wrap {
		flex-direction: column-reverse;
	}
	.cta-btn-oneshot {
		margin-top: 20px;
        margin-left: 0;
	}
	.cta-btn-monthly {
		margin-top: 0;
	}
	.cta-btn-wrap li a {
		padding: 15px 5%;
	}
	.cta-tel {
		margin-top: 30px;
		text-align: center;
		pointer-events: auto;
	}
}
@media screen and (max-width:400px) {
	.cta-btn-wrap li a::after {
		content: none;
	}
}

/* ==========================================================================
 * Header
 * ========================================================================== */
header .inner-width{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 0;
}
@media screen and (max-width:640px) { 
    .header-tel{
        display: none;
    }
    .header_logo{
        margin: 0 auto;
        text-align: center;
    }
    .header_logo img{
        width: 60%;
    }
    header .inner-width{
        padding: 10px 0;
    }
}
/* ==========================================================================
 * KeyVisual
 * ========================================================================== */
.kv-title{
    position: absolute;
    font-weight: normal;
    margin-top: -165px;
    margin-left: 37px;
}
.kv-title-sub,
.kv-title-main{
    background: #ed0013;
    padding: 4px 17px;
    margin-top: 10px;
    display: inline-block;
}
.kv-title-main strong,
.kv-white-text{
    font-size: 4.5rem;
    font-weight: bold;
}
.kv-white-text{
    color: #fff;
}
.kv-cta{
    background: #181818;
}
.kv-cta .cta-btn-wrap {
	padding: 30px 20px;
}
@media screen and (max-width:640px) {
	.kv-title{
		bottom: 0;
		font-size: 1.8rem;
		width: 100%;
		text-align: center;
		font-weight: bold;
        position: static;
        margin-top: 0; 
        margin-left: 0;
	}
	.kv-title-sub,
	.kv-title-main{
		margin-top: 0;
		display: block;
		letter-spacing: -0.02em;
	}
	.kv-title-main strong,
	.kv-white-text{
		font-size: 2.4rem;
	}
	.kv-title br{
		display: none;
	}
	.kv-cta{
		padding: 0 0 30px;
		width: 100%;
	}
	.kv-cta .cta-btn-wrap {
		padding: 30px 0 0;
	}
}
/* ==========================================================================
 * fv
 * ========================================================================== */
.kv{
    background: #333;
}

.kv-bg img{
    width: 100%;
    /* height: 525px; */
    object-fit: cover;
}

.kv-inner-width{
    position: relative;
    width: 880px;
    margin: 0 auto;
}
.kv-bg{
    position: relative;
}
/* 
.kv-bg::before{
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    left: -15%;
    width: 20%;
    z-index: 0;
    background: -webkit-linear-gradient(left, rgba(51,51,51,1) 0%, rgba(51,51,51,1) 80%, rgba(0,0,0,0) 100%);
    background: -o-linear-gradient(left, rgba(51,51,51,1) 0%, rgba(51,51,51,1) 80%, rgba(0,0,0,0) 100%);
    background: linear-gradient(to right, rgba(51,51,51,1) 0%, rgba(51,51,51,1) 80%, rgba(0,0,0,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#333333', endColorstr='#00000000',GradientType=1 );
}
.kv-bg::after{
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    top: 0;
    right: calc((50vw - 920px)/2);
    right: 0;
    width: 20%;
    z-index: 0;
    background: -moz-linear-gradient(left, rgba(51,51,51,0) 0%, rgba(51,51,51,0.98) 20%, rgba(51,51,51,1) 20%, rgba(51,51,51,1) 98%, rgba(51,51,51,1) 100%);
    background: -webkit-linear-gradient(left, rgba(51,51,51,0) 0%,rgba(51,51,51,0.98) 20%,rgba(51,51,51,1) 20%,rgba(51,51,51,1) 98%,rgba(51,51,51,1) 100%);
    background: linear-gradient(to right, rgba(51,51,51,0) 8%,rgba(51,51,51,0.999) 100%,rgba(51,51,51,1) 20%,rgba(51,51,51,1) 98%,rgba(51,51,51,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00333333', endColorstr='#333333',GradientType=1 );
}
*/
.alert{
    background: url("../images/alert.jpg")repeat-x left top/contain;
    height: 33px;
    width: 100%;
}
@media screen and (max-width:640px) { 
	.alert{
		background: url("../images/alert-sp.jpg")repeat-x left top/contain;
        height: 27px;
	}
    .kv-bg{
        text-align: center;
    }
    
    .kv-inner-width{
        width: 100%;
    }
    .kv-bg::before,        
    .kv-bg::after{
        content: none;
    }
    .kv-bg img{
        width: 100%;
        height: 260px;
    }
}

/* ==========================================================================
 * WFPとは
 * ========================================================================== */
.about-wrap{
    text-align: center;
}
.about-text{
    font-size: 3.0rem;
    color: #fff;
    text-align: left;
    padding: 31px 5%;
    width: 80%;
    margin: 0 auto;
    border-bottom: #fff solid 2px;
    border-left: #fff solid 2px;
    border-right: #fff solid 2px;
    border-top: #fff solid 2px;
    margin-top: 30px;
}
.about-title-pc{
    padding: 50px 0 30px 0;
}
.about-title-sp{
    display: none;
}
.blue-color,
.red-color{
    font-size: 4.5rem;
    font-weight: bold;
}
.about small{
    text-align: right;
    display: block;
    color: #fff;
    padding-right: 13%;
}
@media screen and (max-width:640px) { 
	.about-title-pc{
		display: none;
	}
	.about-title-sp{
		display: block;
		margin: 0 auto;
	}
	small{
		font-size: .8rem;
	}
	.about small{
		text-align: center;
		padding-right: 0;
		color: #5a5a5a;
	}
}

/* ==========================================================================
 * method
 * ========================================================================== */
.method{
    background: url("../images/method-bg.jpg")repeat;
    padding-bottom: 30px;
}
.method-pay-small{
    font-size: 1.8rem;
    padding-left: 4%;
}
.method-title{
    text-align: center;
    padding: 40px 0;
}
.method-step-wrap{
    text-align: center;
    padding-bottom: 10px;
}
.method-step-title{
    width: 100%;
    border-bottom: #D90003 solid 2px;
    border-top: #D70003 solid 2px;
}
.method-step-title h3{
    padding: 1% 0;
    text-align: left;
    font-size: 2.4rem;
}
.step{
    font-size: 3.4rem;
    padding-right: 1%;
}
.method-step-title strong{
    font-size: 3rem;
}
.method-wrap{
    border: solid 1px #D10003;
    width: 48%;
    background: url("../images/method-text.jpg");
}
.method-wrap:nth-child(even){
    border: solid 1px #0a6eb4;
}
.method-content{
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    margin-top: 30px;
}
.method-content-title{
    background: url("../images/method-content-title-red-bg.jpg");
    font-size: 2.4rem;
    margin-bottom: 10px;
    color: #fff;
    padding: 20px 0;
}
.method-wrap:nth-child(even) .method-content-title{
    background: url("../images/method-content-title-blue-bg.jpg");
}
.method-content-title strong{
    font-size: 3.3rem;
}
.method-text{
    padding: 15px 0;
    text-align: center;
    font-size: 1.8rem;
}
.method-text strong{
    font-size: 2.4rem;
}
.method-img img{
    width: 100%;
}
.method small{
    text-align: right;
    display: block;
    padding-bottom: 30px;
}
.triangle{
    width: 0;
    height: 0;
    margin: 0 auto;
    margin-top: -10px;
    border-style: solid;
    border-width: 2rem 3rem 0 3rem;
    border-color: #ed0013 transparent transparent transparent;;
}
.method-wrap:nth-child(even) .triangle{
    border-color: #0a6eb4 transparent transparent transparent;
}
.method-pay .cta-btn-oneshot {
	margin-left: 0;
}
@media screen and (max-width:640px) { 
	.method-title{
		width: 90%;
		margin: 0 auto;
	}
	.method-content{
		flex-direction: column-reverse;
        margin-top: 0;
	}
	.method-wrap{
		width: 100%;
		margin-top: 15px;
	}
	.method-content-title{
		letter-spacing: 0;
	}
	.step{
		font-size: 2.4rem;
	}
	.method-pay-small {
		padding: 0;
	}
}
/*step2*/
.method-pay{
    width: 48%;
}
.method-cta-shot{
    margin-bottom: 15px;
}
.method-payment-one , .method-payment-regular{
	margin-top: 20px;
    border: #dc0003 solid 1px;
    background: #f8f4f4;
    padding: 35px 8%;
    height: 600px;
}
.pay-monthry{
    display: flex;
    flex-direction: column;
    align-items: center;
}
.card-text-one{
    text-align: left;
}
.method-payment-regular{
    border: #0a6eb4 solid 1px;
    background: #fff;
}
.store-title,
.card-title{
    font-size: 2.2rem;
    font-weight: bold;
}
.store-title img,
.card-title img{
    vertical-align: sub;
    margin-right: .5rem;
    display: inline-block;
}
.store-title{/*毎月のコンビニタイトル上調節*/
    padding-top: 45px; 
}
.method-payment-regular .store-title{
    padding-top: 40px;
}
.store-text-regular,
.card-text-one,
.store-text-one{
	width: 100%;
    padding-top: 15px;
    text-align: left;
}
.store-text-regular img,
.card-text-one img,
.store-text-one img{
    padding-top: 15px;
}
@media screen and (max-width:640px) { 
    .method{
        font-size: 1.6rem;
    }
    .method-content-title{
        font-size: 1.8rem;
        letter-spacing: 0.2rem;
    }
    .method-content-title strong{
        font-size: 1.8rem;
    }
    .method-step-title strong{
        font-size: 2.2rem;
    }
    .method-step-title .sp{
        text-align: center;
    }
    .step2{
        font-size: 1.6rem;
    }
    .method-step-title h3{
        font-size: 1.6rem;
    }
    .method-text{
        font-size: 1.6rem;
    }
    .method-text strong{
        font-size: 1.6rem;
        letter-spacing: .1rem;
    }
    .method-pay{
        width: 100%;
        margin-top: 40px;
    }
    .store-title , .card-title{
		font-size: 1.8rem;
		text-align: center;
	}
    .method-payment-one , .method-payment-regular{
    	height: auto;
	}
    .method-pay-small{
        font-size: 1rem;
    }
    .method-pay .cta-btn-monthly{
        margin-top: 0;
    }
}
/* ==========================================================================
 * power
 * ========================================================================== */
/*
.cta{
    padding: 30px 0;
    display: flex;
    justify-content: space-around;
}
*/
.power-bg{
    background: url("../images/power-bg.png")repeat , url("../images/map_bg.png")no-repeat center center /cover , #181818;
    background-attachment: fixed;
    color: #fff;
}
.power-title{
    background: #131313;
    font-size: 3rem;
    color: #fff;
    padding: 40px 0;
    text-align: center;
}
.power-side{
    display: flex;
    justify-content: space-between;
}
/*サイドメニュー*/
.power-sm{
    background: #2a2a2a;
    width: 23%;
    padding: 1%;
}
.power-sm a:visited{
    color: #fff;
}
/*コンテンツ部分*/
.power-content-body {
    /* width: 75%; */
}
.power-content-wrap{
    text-align: right;
    background: #333333;
	display: none;
}
.power-content-wrap:first-child {
	display: block;
}
.power-content{
    padding: 2%;
}
.power-content-title{
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.power-content-title h3{
    font-size: 4.5rem;
    color: #d10011;
    width: 50%;
    text-align: left;
    padding: 15px 0;
    padding-left: 1%;
    border-left: #d10011 solid 3px;
}
.power-content-number{
    display: flex;
    justify-content: space-between;
    /*border-bottom: #808080 solid 1px;*/
    border-left: #fff solid 2px;
    align-items: center;
    /*margin-top: 15px;*/
}
.power-content-number h4{
    padding-left: 1%;
    font-size: 1.8rem;
    display: block;
    width: 50%;
    text-align: left;
}
.power-content-number p{
    color: #d10011;
    font-size: 2.4rem;
    font-weight: bold;
    width: 50%;
}
.power-content ol{
    font-size: 1.2rem;
    text-align: left
}
.power-content li{
    margin-bottom: 0px;
}
.power-content-text{
    text-align:left;
    font-size: 1.8rem;
    border-top: #fff solid 1px;
    padding: 3%;
    margin-top: 45px;
}
.power-sm-btn{
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin-top: 15px;
}
.power-sm-btn::before {
	content: "●";
}
.power-sm-btn.active,
.power-sm-btn:hover {
    color: #d10011;
	cursor: pointer;
}
.power-sm-btn p{
    margin: 0;
}
.btn-text{
    width: 85%;
}
.power-sm-btn-small{
    font-size: 1.2rem;
}
/*CTA*/
.power .cta-wrap {
	padding: 30px 0;
}
@media screen and (max-width:640px) { 
	.power-bg{
		background: url("../images/power-bg.png")repeat , url("../images/map_bg-sp.png")no-repeat center center /cover , #181818;
    }
    .power-side{
        display: block;
    }
    .power-sm{
        width: 100%;
        background: none;
    }    
    .power-sm-btn{
        text-align: center;
        background: #FFFFFF;
        border-radius: 5px;
        color: #333333;
        padding: 5px 0;
        box-shadow: -1px -1px 4px 1px rgba(0,0,0,0.4) inset;
    }
	.power-sm-btn.active,
	.power-sm-btn:hover {
		cursor: pointer;
		color: #fff;
		background: #d10011;
		box-shadow: 1px 1px 4px 1px rgba(0,0,0,0.4) inset;
	}
    .power-sm-btn-normal{
        border-top: #fff solid 1px;
    }
    .power-sm-btn-normal2{
		padding: 10px 0 !important;
    }
    .power-sm-btn::before {
        display: none;
    }
    .power-content-body{
        width: 100%;
        padding-top: 30px;
    }
    .power-content-title{
        display: block;
    }
    .power-content-title h3{
        font-size: 3rem;
        width: 100%;
        text-align: center;
        border-left: #d10011 solid 0px;
        border-bottom:  #d10011 solid 3px;
        padding: 15px 0 5px 0;
    }
    .power-content-title figure{
        margin-top: 15px;
    }
    .power-content-number{
        display: block;
        text-align: center;
        border-bottom: #808080 solid 0px;
        border-left: #fff solid 0px;
        align-items: center;
        margin-top: 15px;
    }
    .power-content-title img{
        width: 100%
    }
    .power-content-number h4{
        display: block;
        width: 100%;
        text-align: center;
    }
    .power-content-number p{
        width: 100%;
    }
    .power-content-wrap{
        background: none;
    }
    .power-content-text{
        color: #eaeaea;
        border-top: #eaeaea solid 1px;
        font-size: 1.6rem;
        letter-spacing: -0.1rem;
        margin-top: 45px;
    }
    .power-content ol{
    font-size: 1.0rem;
	}
}

/* ==========================================================================
 * 緊急支援とは
 * ========================================================================== */
.about-releaf{
	position: relative;
	padding: 40px 0;
    background: url("../images/about-releaf-bg.jpg");
}
.about-releaf::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 35%;
	height: 600px;
	max-height: 100%;
	background: url(../images/releaf-photo-bg.png)no-repeat center center /cover;
	display: block;
}
.about-releaf-wrap{
    width: 70%;
}
.about-releaf-title{
    padding: 10px;
    border-bottom: #fff solid 2px;
    border-top: #fff solid 2px;
    display: inline-block;
}
.about-releaf-title h2{
    font-size: 4.5rem;
    color: #fff;
}
.about-releaf-title span{
    font-size: 3.8rem;
}
.about-releaf-text{
	padding-top: 20px;
    color: #fff;
    font-size: 1.8rem;
}
.about-releaf-text span{
    font-weight: bold;
} 
/*カルーセル*/
.about-releaf-carousel-wrap{
	position: relative;
    padding-top: 30px;
}
.about-releaf-carousel-wrap::before,
.about-releaf-carousel-wrap::after {
	content: "";
	position: absolute;
	width: 30%;
	height: 100%;
	top: 0;
	display: block;
	z-index: 1;
}
.about-releaf-carousel-wrap::before {
	left: 0;
	background: -webkit-linear-gradient(left,  rgba(255,255,255,1) 45%,rgba(255,255,255,0) 100%);
	background: linear-gradient(to right,  rgba(255,255,255,1) 45%,rgba(255,255,255,0) 100%);
}
.about-releaf-carousel-wrap::after {
	right: 0;
	background: -webkit-linear-gradient(right,  rgba(255,255,255,1) 45%,rgba(255,255,255,0) 100%);
	background: linear-gradient(to left,  rgba(255,255,255,1) 45%,rgba(255,255,255,0) 100%);
}
.about-releaf-carousel {
	width: 80%;
	margin: 0 auto;
}
.about-releaf-real-body {
	position: relative;
	height: 100%;
}
.about-releaf-carousel li {
    margin-left: 30px;
}
.about-releaf-real{
    background: url("../images/about-releaf-real.jpg")repeat;
    border: #054aa7 solid 1px;
}
.about-releaf-real-title{
    display: flex;
    justify-content: space-between;
    background: url("../images/about-releaf-real-title-bg.jpg")repeat;
    padding: 5px 4%;
    color: #fff;
    font-size: 2.8rem;
    align-items: center;
}
.about-releaf-real-text{
    padding: 20px 5%;
    font-size: 1.8rem;
}
.about-releaf-real-title span{
    font-size: 1rem;
}
.about-releaf-real-body figure {
	width: 100%;
	text-align: center;
}
.about-releaf-real-body figure img {
	display: inline;
    width: 100%;
}
@media screen and (max-width: 1099px) {
	.about-releaf-carousel-wrap::before,
	.about-releaf-carousel-wrap::after {
		content: none;
	}
}
@media screen and (max-width: 959px) {
	.about-releaf-carousel li {
		margin-left: 0;
	}
}
@media screen and (max-width:640px) { 
    .about-releaf-wrap{
        width: 100%;
        text-align: center;
    }
    .about-releaf-wrap small{
        color: #5bb0ea;
        text-align: right;
    }
    .about-releaf{
		padding-top: 30px;
    }
	.about-releaf::before {
		width: 100%;
		opacity: .3;
	}
    .about-releaf-text{
        text-align: left;
    }
    .about-releaf-real-title h3{
        font-size: 1.8rem;
    }
}

/* ==========================================================================
 * 皆様の寄付の用途
 * ========================================================================== */
.use-title{
    text-align: center;
    padding: 90px 0 30px;
}
.use-title h2{
    font-size: 4.5rem;
    font-weight: bold;
    color: #1172b6;
}
.use-title h2 span{
    font-size: 3.8rem;
}

.use-title h2 span:last-child{
    color: #d10011;
    font-size: 4.5rem;
}

.use-title p{
    font-size: 2.4rem;
    letter-spacing: -.1rem;
}
.use-content-wrap{
    background: url("../images/use-bg-white.jpg");
}
.use-content-wrap:nth-child(even){
    background: url("../images/use-bg-blue.jpg");
}
.use-content{
    display: flex;
    justify-content: space-between;
    color: #fff;
}
.use-content-wrap:nth-child(odd) .use-content{
    flex-direction: row-reverse;
    color: #1172b6;
}

.use-content-text{
    display: flex;
    align-items: center;
    background: url("../images/use_wfp_blue.png")no-repeat right 7% bottom 29%/40% 57%;
    width: 48%;
    font-size: 1.8rem;
}
.use-content-wrap:nth-child(even) .use-content-text{
    background: url("../images/use_wfp_white.png")no-repeat right 7% bottom 29%/40% 57%;
}
.use-content-text h3{
    font-size: 3.4rem;
    padding: 10px 0;
    border-bottom: #fff solid 2px;
    border-top: #fff solid 2px;
    display: inline-block;
}
.use-content-wrap:nth-child(odd) .use-content-text h3{
    border-bottom: #1172b6 solid 2px;
    border-top: #1172b6 solid 2px;
}
.use-content-text p{
    margin-top: 15px;
    line-break: strict;
}
.use-content-img{
    padding: 10px 0;
    width: 48%;
}
.use-content-img img{
    width: 100%;
}
.use-content-wrap span{
    font-weight: bold;
}
@media screen and (max-width:640px) { 
    .use-title h2{
        font-size: 3rem;
        letter-spacing: -.1rem;
    }
    .use-title h2 span{
        font-size: 2.6rem;
    }
    .use-title h2 span:last-child{
        font-size: 3rem;
    }
    .use-title p{
        font-size: 1.6rem;
        text-align: left;
    }
    .use-content{
        display: block;
        padding-top: 30px;
    }
    .use-content-text{
        text-align: center;
        width: 100%;
        background: url("../images/use_wfp_blue.png")no-repeat right 7% bottom 29%/0% 0%;
    }
    .use-content-wrap span{
        font-weight: bold;
    }
    .use-content-wrap:nth-child(even) .use-content-text{
        background: url("../images/use_wfp_white.png")no-repeat right 7% bottom 29%/0% 0%;
    }
    .use-content-img{
        width: 100%;
    }
    .use-content-text p{
        text-align: left;
    }
}

/* ==========================================================================
 *還付金
 * ========================================================================== */
.back{
    text-align: center;
}
.back-title{
    padding: 90px 0 30px;
}
.back-title h2{
    font-size: 3.7rem;
    color: #1172b6;
}
.back-title h2 span{
    font-size: 4.5rem;
}
.back-title h2 span:last-child{
    color: #d10011;
}
.back p{
    font-size: 2.4rem;
    text-align: left;
}
.back p span{
    font-weight: bold;
}
.back a p{
    padding-top: 20px;
}
.about-wfp-text h2{
    text-align: center;
    font-size: 3.7rem;
    color: #1172b6;
}
.about-wfp-text h2 span{
    font-size: 4.5rem;
}
.receipt dl{
    border: 1px solid #333;
}
.receipt dt{
    background-color: #ccc;
    cursor: pointer;
}
.receipt dd{
    margin-top: 15px;
}
.receipt dd p{
    font-size: 1.6rem;
}
@media screen and (max-width:640px) { 
    .back-title h2{
        font-size: 2.6rem;
    }
    .back-title h2 span{
		font-size: 3rem;
	}
    .back p{
        font-size: 1.6rem;
        letter-spacing: 0rem;
    }
    .receipt dd p{
		font-size: 1.2rem;
	}
}
/* ==========================================================================
 *国際WFPとは
 * ========================================================================== */
.about-wfp{
    padding: 72px 0 20px;
}
.about-wfp-wrap{
    border: #1172b6 solid 1px;
    background: url("../images/about-wfp-bg.jpg");
    padding: 40px 6%;
}
.about-wfp-sub{
    font-size: 4.5rem;
    color: #1172b6;
    text-align: center;
}
.about-wfp-content{
    display: flex;
    justify-content: space-between;
    padding-top: 30px;
}
.about-wfp-content figure{
    align-items: center;
    display: flex;
}
.about-wfp-content p{
    width: 65%;
}
.about-wfp-text small{
    font-size: 1.2rem;
    letter-spacing: -.07rem;
}
.about-wfp-out{
    margin-top: 25px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.about-wfp-out-text{
    width: 60%;
}
.about-wfp-out-text h3{
    font-size: 2.4rem;
    color: #1172b6;
}
.about-wfp-out-text p{
    font-size: 1.8rem;
    padding-top: 15px;
}
.about-wfp small{
    display: block;
    margin-top: 10px;
}
@media screen and (max-width:640px) { 
    .about-wfp-content{
        display: block;
        text-align: center;
        padding-top: 15px;
    }
    .about-wfp-sub{
        font-size: 3rem;
    }
    .about-wfp-content p{
        text-align: left;
        width: 100%;
        margin-top: 15px;
    }
    .about-wfp-out{
        display: block;
    }
    .about-wfp-out-text h3{
        text-align: center;
    }
    .about-wfp-out-text{
        width: 100%;
        padding-top: 15px;
    }
	.wfp-sing {
		margin-top: 10px;
		text-align: center;
	}
    .about-wfp-content figure{
        display: block;
        margin: 0 auto;
        width: 60%;
    }    
}
/* ==========================================================================
 * Float CTA
 * ========================================================================== */
.float-cta{
	position: fixed;
	bottom: 0;
	width: 100%;
	padding: 10px 0;
    background-color: rgba(255, 255, 255, .6);
	box-shadow: 1px 1px 1px rgba(0, 0, 0, .3);
	backdrop-filter: blur(3px);
	z-index: 10;
}
.float-cta .inner-width {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.float-cta .cta-btn-wrap {
	width: 64%;
}
.float-cta .cta-btn-oneshot {
	margin-left: 2%;
    margin-top: 0;
}
.float-cta .cta-btn-wrap li a::after {
	content: none;
}
@media screen and (max-width:640px) {
	.float-cta .cta-btn-wrap {
		width: 100%;
		display: flex;
		flex-direction: row-reverse;
	}
	.float-cta .cta-btn-monthly {
		margin-top: 0;
	}
}
/* ==========================================================================
 *footer
 * ========================================================================== */
footer{
    background: #1172b6;
    text-align: center;
    padding: 30px 0 95px;
}
footer p {
    font-size: 1.4rem;
    color: #fff;
    margin-top: 0;
}
.footer-address{
    display: flex;
    justify-content: center;
}
.copyRight{
    color: #fff;
}
@media screen and (max-width:640px) { 
    .footer-address{
        padding-top: 15px;
        display: block;
    }
}
/* ==========================================================================
 *slick
 * ========================================================================== */
.slick-prev, .slick-next {
    z-index: 2;
}
.slick-prev:before, .slick-next:before {
    color: #999;
}
/* ==========================================================================
 *2021修正　.kv-bg::before.kv-bg::afterを無効化
 * ========================================================================== */
 .about {
 max-width: 880px;
 margin: auto;}

.youtube__aspect-ratio {
    width: 100%;
    aspect-ratio: 16 / 9;
}
.youtube__aspect-ratio iframe {
    width: 100%;
    height: 100%;
}
	