/* CSS Document */
/*design*/

@charset "UTF-8";
@import "https://use.fontawesome.com/releases/v5.8.2/css/all.css";

*{
	box-sizing:border-box;
	font-size:16px;
	margin:0;
	padding:0;
	line-height:1.0;
	word-break:break-all;
}
*:focus{
	outline:none;
}
@media screen and (min-width:750px){
*{font-size:18px;}
}
@media screen and (max-width:375px){
*{font-size:14px;}
}


/*PC・SP表示非表示*/
.pc{display:none;}
@media screen and (min-width:750px){
.pc{display:inline-block;}
.sp{display:none;}
}


html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video{
	background:transparent;
	border:0;
	font-size:100%;
	font-style:normal;
	font-weight:500;
	line-height:100%;
	list-style:none;
	margin:0;
	padding:0;
	outline:0;
	text-align:left;
	vertical-align:baseline;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section{
	display:block;
}


/*全体*/
html{
	/*font-size:62.5%;*/
}
body{
	background:#ebebeb;
	color:#111;
	font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",YuGothic,"ヒラギノ角ゴ ProN W3",Hiragino Kaku Gothic ProN,Arial, "メイリオ",Meiryo,sans-serif;
	/*font-size:1.6rem;*/
	font-weight:500;
	margin:0;
	padding:0;
	-webkit-text-size-adjust:100%;
}


/*共通*/
a{
	color:#0064f5;
	font-size:15px;
    font-weight:bold;
	text-decoration:none;
}
@media screen and (min-width:750px){
a{font-size:18px;}
}
@media screen and (max-width:375px){
a{font-size:13px;}
}
img{
	display:block;
	max-width:100%;
	height:auto;
}


/*p.tx 基本*/
p.tx{
	font-size:16px;
	line-height:1.8;
	margin:15px 12px 0;
	padding:0;
}
p.tx span{
	font-size:16px;
}
@media screen and (min-width:750px) {
p.tx,
p.tx span{
font-size:18px;
}
}
@media screen and (max-width:375px) {
p.tx,
p.tx span{
font-size:14px;
}
}

/*p.tx 大きめ*/
p.tx.big,
p.tx span.big{
	font-size:22px;
}
@media screen and (min-width:750px) {
p.tx.big,
p.tx span.big{
font-size:30px;
}
}
@media screen and (max-width:375px) {
p.tx.big,
p.tx span.big{
font-size:20px;
}
}


/*テキスト　装飾*/
p.mt0{margin-top:0;}
p.mt10{margin-top:10px;}
p.mt15{margin-top:15px;}
p.mt20{margin-top:20px;}
p.mt30{margin-top:30px;}
p.mt50{margin-top:50px;}

.bold{font-weight:bold;}
.center{text-align:center;}
.bgy{background:#ffff00; padding:2px 3px;}
.red{color:#f00000; font-weight:bold;}
.marker_y{
	background:linear-gradient(transparent 60%, #ffff00 60% 97%, transparent 97%);
	font-weight:bold;
	padding:0 3px 3px;
}


/*figure.figure*/
.figure{
	margin:15px 12px 0;
}
.figure.full{
	margin-left:0;	
	margin-right:0;	
}
.figure.mt0{
	margin-top:0;
}


/*レイアウト*/
.header,
.article,
.footer{
	margin:0 auto;
	width:100%;
	max-width:750px;
}
.article{
	background:#fff;
	padding:15px 0 10px;
}
.section{
	margin:50px 0 0;
	padding:0;
}
.section.mt0{
	margin-top:0;
}
.section.mtmini{
	margin:20px 0 0;
	padding:0;
}
@media screen and (min-width:750px) {
.article{
background:#fff;
padding:20px 0 10px;
}
.section{
margin:70px 0 0;
}
.section.mtmini{
margin:30px 0 0;
}
}


/*header.header*/
.header{
	background:#fff;
}

p.pr{
	color:#aaa;
	font-size:12px;
	line-height:1;
	margin:10px 12px 0;
	padding:0;
    text-align:right;
}
@media screen and (min-width:750px) {
p.pr{
font-size:14px;
}
}
@media screen and (max-width:375px) {
p.pr{
font-size:11px;
}
}


/*div.pyoko*/
div.pyoko{
    margin:20px auto 0;
    width:40%;
    padding:0;
}
div.pyoko p{
    margin:0 auto;
    width:100%;
    padding:0;
    animation: pyoko 2s ease-in-out infinite;
}
@keyframes pyoko {
0%{transform: translateY(0);}
70%{transform: translateY(0);}
75%{transform: translateY(-10px);}
80%{transform: translateY(0);}
85%{transform: translateY(-10px);}
90%{transform: translateY(0);}
}
@media screen and (min-width:750px) {
div.pyoko{
margin:30px auto 0;
width:30%;
}	
}


/*section.japan*/
h2.japan_ttl{
	margin:0 12px;
}
figure.japan_fig{
	margin:0 12px;
}
p.japan_tx{
	color:#111;
	font-size:24px;
	font-weight:bold;
	line-height:1.4;
	margin:10px 12px 0;
	padding:0;
	text-align:center;
}
p.japan_tx span.strg{
	background:linear-gradient(transparent 60%, #ffff00 60% 97%, transparent 97%);
	color:#ff4b00;
	font-size:24px;
	font-weight:bold;
	padding:0 3px 3px;
}
p.japan_tx span.small{
	color:#aaa;
	font-size:14px;
}
@media screen and (min-width:750px) {
p.japan_tx,
p.japan_tx span.strg{
font-size:30px;
}
p.japan_tx span.small{
font-size:16px;
}
}
@media screen and (max-width:375px) {
p.japan_tx,
p.japan_tx span.strg{
font-size:22px;
}
p.japan_tx span.small{
font-size:12px;
}
}


/*section.cta　※ボタン設定↓↓↓↓一番下↓↓↓↓*/
section.cta{
	overflow:hidden;
}
div.cta_tx{
	background:#14a00f;/*1eb90f*/
	padding:20px 0 15px;
}
p.cta_tx_p{
	color:#fff;
	font-size:22px;
	font-weight:bold;
	line-height:1.6;
	margin:10px 12px 0;
	text-align:center;
}
p.cta_tx_p span{
	background:#ffff00;
	color:#ff4b00;
	font-size:22px;
	font-weight:bold;
	padding:2px 3px 1px 5px;
}
@media screen and (min-width:750px) {
div.cta_tx{
padding:25px 0 20px;
}
p.cta_tx_p{
font-size:30px;
margin:0 12px;
}
p.cta_tx_p span{
font-size:30px;
}
}
@media screen and (max-width:375px) {
p.cta_tx_p,
p.cta_tx_p span{
font-size:20px;
}
}


/*section.cta　div.safe*/
div.safe{
	margin:20px 12px 0;
}
div.safe ul{
	background:#fff;
	border:2px solid #1eb90f;
	border-radius:5px;
	padding:2px 10px 10px;
	width:100%;
}
div.safe li{
	border-bottom:1px dashed #aaa;
	color:#111;
	font-size:18px;
	font-weight:bold;
	padding:20px 5px 15px 30px;
	position:relative;
}
div.safe li:before{
	content:"●";
	color:#ffc864;
	font-size:18px;
	margin-top:-9px;
	position:absolute;
	top:50%;
	left:5px;
}
div.safe li span{
	font-size:18px;
	font-weight:bold;
}
div.safe li span.red{
	color:#f00000;
	font-weight:bold;
}
div.safe li span.bgy{
	background:#ffff00;
	padding:4px 3px 1px;
}
@media screen and (min-width:750px) {
div.safe{
margin:30px 12px 0;
text-align:center;
}
div.safe ul{
display:inline-block;
padding:2px 15px 15px;
width:auto;
}
div.safe li,
div.safe li span{
font-size:20px;
}
div.safe li:before{
content:"●";
font-size:20px;
margin-top:-10px;
position:absolute;
top:50%;
left:5px;
}
}
@media screen and (max-width:375px) {
div.safe li,
div.safe li span{
font-size:16px;
}
div.safe li:before{
content:"●";
font-size:16px;
margin-top:-7px;
position:absolute;
top:50%;
left:5px;
}
}


/*section.about*/
section.about h2{
	background:#00730f url("../img/about_h2bg.png") no-repeat;
	background-position:center center;
	background-size:90% auto;
	color:#fff;
	font-size:25px;
	font-weight:bold;
	margin:0;
	padding:35px 12px;
	text-align:center;
}
.about p{
	line-height:1.6;
	text-align:left;
}
.about__inner{
	margin:20px 12px 0;
}
.about__title--h3{
	background:#14a00f;
	color:#fff;
	font-size:4.5vw;/*4.5vw*/
	font-weight:bold;
	margin:20px 0 0;
	padding:20px 5px;
	text-align:center;
}
.about__title--h3.first{
	margin:15px 0 0;
}
@media screen and (min-width:750px){
section.about h2{
font-size:30px;
padding:55px 12px;
}
.about__inner{
margin:30px 12px 0;
}
.about__title--h3{
font-size:25px;
margin:30px 0 0;
padding:30px 5px;
}
.about__title--h3.first{
margin:20px 0 0;
}
}


/*section.about　アコーディオンaccordion_about.js*/
div.about_acc{
    overflow:hidden;
	margin:0;
    min-height:85px;/*div.about_acc_tのheightと揃える*/

}
div.about_acc_t{
	background:#fff;
	border:2px solid #14a00f;
	border-top:none;
    cursor:pointer;
    height:85px;/*div.about_accのmin-heightと揃える*/
	margin:0;
	padding:25px 0 0;
	position:relative;
	display:flex;
	/*align-items:center;*/
	justify-content:center;
	transition:all 0.5s;
    z-index:3;
}
div.about_acc_t.twoline{
	padding:15px 0 0;
}
div.about_acc_t.close{
	border-bottom:none;
	transition:all 0.5s;
}
div.about_acc_t:after{
	background:url("../img/ver2/about_arrow.png") no-repeat;
	background-size:20px 10px;
	content:"";
	opacity:1;
	width:20px;
	height:10px;
	position:absolute;
	left:50%;
	margin-left:-10px;
	bottom:5px;
	transform:rotate(0deg);
	transition:all 0.5s;
}
div.about_acc_t.close:after{
	background:url("../img/ver2/about_arrow.png") no-repeat;
	background-size:20px 10px;
	content:"";
	opacity:0.4;
	width:20px;
	height:10px;
	position:absolute;
	left:50%;
	margin-left:-10px;
	bottom:5px;
	transform:rotate(180deg);
	transition:all 0.5s;
}

.about_acc_t_h{
	font-size:18px;
	font-weight:bold;
	margin:0;
	padding:0;
    text-align:center;
}
.about_acc_t_h .small{
	display:block;
    font-size:11px;
    margin-top:5px;
}
@media screen and (min-width:750px){
.about_acc_t_h{
font-size:25px;
}
.about_acc_t_h .small{
font-size:13px;
}
}


/*section.about　アコーディオン出現部分*/
div.about_data{
	background:#fff;
	border:2px solid #14a00f;
	border-top:none;
	/*height:0;*/
    margin:-1000px 0 0;
    padding:10px;
    transition:all 0.5s;
    z-index:2;
}
div.about_data.see{
	/*height:auto;*/
    margin:0;
    transition:all 0.5s;
}

.about .block__table table{
	/*margin-top:10px;*/
	width:100%;
}
.about .block__table tr{
	border-bottom:1px dotted #c4c4c4;
}
.about .block__table tr:last-child{
	border-bottom:0;
}
.about .block__table th{
	width:25%;
	vertical-align:middle;
}
.about .block__table td{
	width:75%;
	padding:10px 0 10px 5px;
}
.about .block__table th p{
	width:100%;
	text-align:center;
}
.about .block__table th p,
.about .block__table td p{
	font-size:15px;
	line-height:1.5;
}
.about__map{
	margin-top:15px;
	width:100%;
	height:60vw;
}
.about__inner .block__text{
	background:#dcf5d7;
	margin-top:15px;
	padding:20px 15px;
}
@media screen and (min-width:750px){
.about .block__table th{
width:20%;
}
.about .block__table td{
width:80%;
padding:20px 0 20px 10px;
}
.about .block__table th p,
.about .block__table td p{
font-size:16px;
}
.about__map{
margin-top:20px;
width:100%;
height:500px;
}
.about__inner .block__text{
margin-top:20px;
padding:25px 15px;
}
.about__inner .block__text p{
text-align:center;
}
}
@media screen and (max-width:375px){
.about .block__table th p,
.about .block__table td p{
font-size:13px;
}
}


/*section.faq*/
section.faq h2{
	background:#00730f url("../img/faq_ttlbg.png") no-repeat !important;
	background-position:center center !important;
	background-size:90% auto !important;
	color:#fff;
	font-size:25px !important;
	font-weight:bold !important;
	margin:0 !important;
	padding:35px 12px !important;
	text-align:center !important;
	position:relative;
	transition:.3s;
}
@media screen and (min-width:750px){
section.faq h2{
font-size:30px;
padding:55px 12px !important;
}
section.faq h2+.accordion__detail {
      padding: 30px 10px;
}
}

section.faq h2+.accordion__detail {
      padding: 20px 0;
}

.faq__accordion .accordion{
	margin:30px 12px 0;
}
.faq__accordion .accordion__title{
	background:#1260bc url("../img/ic_11.png") no-repeat;
	background:linear-gradient(0deg, #14a00f, #14c80f);
	background-position:left top;
	border-radius:10px;
	color:#fff;
	font-size:27px;
	font-weight:bold;
	line-height:1.5;
	position:relative;
	padding:40px 64px 40px 30px;
	transition:.3s;
}
.faq__accordion .open.accordion__title{
	border-radius:10px 10px 0 0;
	transition:.3s;
}
.faq__accordion .accordion__title::after{
	background:url("../img/ic_arrow.png") no-repeat;
	background-size:30px 17px;
	content:"";
	margin-top:-9px;
	width:30px;
	height:17px;
	position:absolute;
	right:28px;
	top:50%;
	transform:rotate(0deg);
	transition:.3s;
}
.faq__accordion .open.accordion__title::after{
	background:url("../img/ic_arrow.png") no-repeat;
	background-size:30px 17px;
	content:"";
	margin-top:-9px;
	width:30px;
	height:17px;
	position:absolute;
	right:28px;
	top:50%;
	transform:rotate(180deg);
	transition:.3s;
}
.faq__accordion .accordion__detail{
	background:#fff;
	border:1px solid #d2d2d2;
	border-top:none;
	border-radius:0 0 10px 10px;
	padding:30px;
}
.faq__accordion .accordion__detail p{
	color:#111;
	font-size:18px;
	line-height:1.6;
	margin:0;
	padding:0;
}
@media screen and (max-width:750px){
.faq__accordion .accordion{
margin:15px 12px 0;/*5vw 0*/
}
.faq__accordion .accordion__title{
font-size:3.3vw;
padding:5vw 8vw 5vw 3vw;
text-align:left;
}
.faq__accordion .accordion__title::after{
background-size:4.2vw 2.5vw;
content:"";
margin-top:-1vw;
width:4.2vw;
height:2.5vw;
right:2.5vw;
transform:rotate(0deg);
}
.faq__accordion .open.accordion__title::after{
background-size:4.2vw 2.5vw;
content:"";
margin-top:-1vw;
width:4.2vw;
height:2.5vw;
right:3.8vw;
transform:rotate(180deg);
}
.faq__accordion .accordion__detail{
padding:20px 15px;
}
.faq__accordion .accordion__detail p{
font-size:16px;
}
}
@media screen and (max-width:375px) {
.faq__accordion .accordion__detail p{
	font-size:14px;
}
}

/*p.free*/
p.free{
	color:#aaa;
	font-size:12px;
	line-height:1;
	margin:40px 12px 0;
	padding:0;
    text-align:right;
}
@media screen and (min-width:750px) {
p.free{
font-size:14px;
margin:70px 12px 0;
}
}
@media screen and (max-width:375px) {
p.free{
font-size:11px;
}
}


/*footer.footer*/
.footer__inner{
	background:#00730f;
	padding:45px 12px;
	text-align:center;
}
.footer__logo img{
	width:130px;
	height:auto;
	margin:0 auto;
}
.footer__link{
	display:flex;
    justify-content:center;
	margin-top:30px;
}
.footer__link p{
    display:inline-block;
    margin:0;
	padding:0 10px;
}
.footer__link p a{
	color:#fff;
	font-size:13px;
    font-weight:normal;
	line-height:1;
	text-decoration:underline;
}
.footer__copy{
	background:#004b0f;
	padding:30px 12px;
}
.footer__copy p{
	color:#fff;
	font-size:13px;
	text-align:center;
}
@media screen and (min-width:750px) {
.footer__inner{
padding:50px 12px;
}
.footer__link{
margin-top:50px;
}
.footer__link p a{
font-size:15px;
}
.footer__copy{
padding:50px 12px;
}
.footer__copy p{
font-size:15px;
}
}
@media screen and (max-width:375px) {
.footer__link p a,
.footer__copy p{
font-size:12px;
}
}


/*ボタンの設定*/
#sb-part-1060.sb-custom-part-l9qsmmapehq25ni6ll
.auraBtn {
  height: 220px;
  position: relative;
  /*横幅*/
  width: 85%;
  /*外側の余白｜上下余白｜左右余白（auto=センタリング）｜*/
  margin: 60px auto;
  /*-webkit-transition: .2s;
  transition: .2s;*/
}


#sb-part-1060.sb-custom-part-l9qsmmapehq25ni6ll
/*ボタンが広がるアニメーション（1番目）*/
.auraBtn:before {
  /*アニメーションの設定 変更する場合は該当場所を修正してください。
   アニメーション名、動きの速さ.2s（=0.2秒）、動き具合、動く回数*/
  -webkit-animation: auraBtn 2s ease-out infinite;
  animation: auraBtn 2s ease-out infinite
}

#sb-part-1060.sb-custom-part-l9qsmmapehq25ni6ll
/*ボタンが広がるアニメーション（2番目）*/
.auraBtn:after {
  /*アニメーションの設定 変更する場合は該当場所を修正してください。
   アニメーション名、動きの速さ.2s（=0.2秒）、動き具合、動く回数*/
  -webkit-animation: auraBtn 2s ease-out 1s infinite;
  animation: auraBtn 2s ease-out 1s infinite
}

#sb-part-1060.sb-custom-part-l9qsmmapehq25ni6ll
/*ボタンが広がるアニメーション（共通設定）*/
.auraBtn:before,
#sb-part-1060.sb-custom-part-l9qsmmapehq25ni6ll .auraBtn:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  /*ボタンの角丸*/
  border-radius: 20px;
  /*広がるボタンの色(green, red, blue以外の場合はここを修正してください）*/
  background: #FFB79B;
  /*広がるボタンの初期位置*/
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

#sb-part-1060.sb-custom-part-l9qsmmapehq25ni6ll
/*ボタン自体の設定*/
.auraBtn a{
  height: 220px;
  display: block;
  /*内側の余白｜上下余白｜左右余白｜*/
  padding: 8px 0;
  /*ボタンの角丸*/
  border-radius: 20px;
  /*ボタン内テキストの水平方向の位置*/
  text-align: center;
  /*リンクの装飾*/
  text-decoration: none;
  /*ボタンの色(green, red, blue以外の場合はここを修正してください）*/
  background: rgb()0,0,0,0;
  position: relative;
  z-index: 1;
}
@media screen and (max-width:750px) {
#sb-part-1060.sb-custom-part-l9qsmmapehq25ni6ll
/*ボタン自体の設定*/
.auraBtn a{

height: 31vw;
}
#sb-part-1060.sb-custom-part-l9qsmmapehq25ni6ll
.auraBtn {
  height: 31vw;
  margin: 14vw auto;
}
}

/*広がるボタンのアニメーション（変更する場合は該当する箇所を修正してください）*/
@keyframes auraBtn {
  /*アニメーション初期（0秒の時）*/
  0% {
    /*拡大率　（1=100％）*/
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    /*透明度（0=透明、1=不透明）*/
    opacity: 1
  }

  /*1.8秒時*/
  90% {
    /*透明度*/
    opacity: .1
  }

  /*アニメーション最後（2秒時）*/
  to {
    /*拡大率　1番目の値はX軸、2番目の値はY軸*/
    -webkit-transform: scale(1.2, 1.5);
    transform: scale(1.2, 1.5);
    /*透明度*/
    opacity: 0
  }
}


