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

header{
    margin:0;
    padding:0;
}
main{

}

img{
    width:auto;
    max-width:100%;
    height:auto;
}

.inner{
	width:96%;
	margin:0 auto 10px;
    }
    
.inner2{
	width:96%;
	margin:0 auto 10px;
    }

section{
	padding:30px 0 20px;
    margin:0;
}


#sec01{
    width:100%;
	background:#f2f2f2;
}

#sec01 h2{
	text-align:center;
	font-size:26px;
	padding-bottom:1em;
	border-bottom:1px solid #333;
	font-weight:600;
	line-height:1.4;
	margin-bottom:1em;
}

figcaption{
	font-size:14px;
	font-weight:bold;
	text-align:center;
}

figure{
	margin-bottom:1.6em;
}

figure img{
	margin-bottom:.5em;
}

#sec01 li{
	font-weight:bold;
	line-height:2;
}

.cta .cta_box{
	width: 100%;
	display: table;
	table-layout: fixed;
	border-width: 5px;
	border-style: solid;
	border-color: rgb(200, 242, 237);
	padding:1em.5em;
	text-align:center;
}

.cta .cta_box h2{
	font-family: Noto Sans JP, Hiragino Sans, ヒラギノ角ゴシック, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, Meiryo, メイリオ, Verdana, ＭＳ Ｐゴシック, sans-serif;
    font-weight:bold;
	font-size:1.4em;
	line-height:1.2;
	margin-bottom:.5em;
}

.cta .cta_box h3{
	font-weight:600;
	font-size:1em;
	margin-bottom:.2em;
}

.cta .cta_box p.text{
	font-size:.8em;
	line-height:1.4;
}

.comment{
	font-size:0.5em;
	text-align:left;
	line-height:1.4;
	color:#333;
	margin-bottom:0;
}

h2.big{
	color:#04a8c0;
	font-family: Noto Sans JP, Hiragino Sans, ヒラギノ角ゴシック, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, Meiryo, メイリオ, Verdana, ＭＳ Ｐゴシック, sans-serif;
	font-weight:900;
	font-size:1.8em;
	line-height:1.2;
	text-align:center;
	margin-bottom:1em;
}

h2.big span.black{
	color:#000;
	font-size:0.7em;
}

.smaller{
	font-size:.8em;
}

#sec03 ul , #sec04 ul , #sec06 li, #sec08 ul, #sec09 ul{
	margin-bottom:1em;
	font-weight:bold;
}

#sec03 li , #sec04 li , #sec08 li{
	font-weight:bold;
	line-height:1.4;
	font-size:1em;
	margin-bottom:.5em;
}

.img_bx{
	text-align:center;
	margin-bottom:1em;
}

.voice {
    padding: 30px 15px 30px!important;
	color: #000000;
	background: #bfefeb;
}

.voice ul{
	margin-bottom:1em;
}

.voice li {
    background: #fff;
    width: 100%;
    position: relative;
    padding: 20px 5% 60px;
}
.voice li h3 {
    font-weight: 700;
    font-size: 1.2rem;
  line-height: 1.4;
	padding: 0;
	text-align:center;
}
.voice li .inner_wrap {
    width: 100%;
}
.lst_inner{
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: 830px;/*977*/
}

.lst_inner {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: 830px;
}

.voice li .toggle_txt {
    width: 100%;
    text-align: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 10px;
}
.voice li .txt {
    display: none;
    margin: 1rem 0;
}
.voice li .name {
    text-align: center;
    font-weight: 700;
    margin: 20px 5px 0 !important;
}
.voice li .toggle_txt .open{
    display:block;
}

.voice li .toggle_txt span {
    font-weight: 700;
    color: #0baac1;
    cursor: pointer;
}

.voice li img {
    height: auto;
    width: 150px;
    margin: 0 auto 10px !important;
}

.voice li .toggle_txt img {
    display: block;
    width: 12px;
    margin: 5px auto 0;
    height: 10px;
}
.voice li .toggle_txt span {
    font-weight: 700;
    color: #0baac1;
    cursor: pointer;
}
.voice li .toggle_txt .close,.voice li .toggle_txt.active .open{display:none}
.voice li .toggle_txt {
    bottom: 20px;
}
.voice li .toggle_txt.active .close {
    display: block;
}
.voice li .toggle_txt span {
    font-weight: 700;
    color: #0baac1;
    cursor: pointer;
}
.voice li+li {
    margin-top: 30px;
}
.voice .voice_float {
    margin-top: 40px;
}
.inner_wrap .txt{text-align: left!important;}


.aic {
    align-items: center;
}
.borders {
    border-radius: 15px;
    border: 2px solid #164472;
}
	
.spb {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.dflex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
flex-wrap: wrap;
}

#sec11 h2{
		color: #fff;
		padding: 2.5rem 1%;
		background: url(../img/bg11.jpg) repeat;
		background-size: cover;
		position: relative;
		text-align:center;
		font-size: 2em;
		line-height: 1.6;
		font-weight:900;
}

h2 .colr_yellow {
        font-size: 1.5em;
line-height: 1.2;
color: #efdf04 !important;
	}

#sec12,#sec13{
		background:url(../img/bg12.png);
	}
	
.balloon-002 {
    display: flex;
    justify-content: center;
    position: relative;
    max-width: 95%;
    margin: 0 auto 15px;
    padding: .8em 2% .8em;
    background-color: #000000;
    color: #fff;
    text-align: center;
    font-weight: bold;
    line-height: 1.2 !important;
	}
	
	.balloon-002::before {
    position: absolute;
    bottom: -20px;
    width: 60px;
    height: 30px;
    background-color: #000000;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: '';
}
	
	.fnt_plt {
    font-feature-settings: "palt";
    letter-spacing: 0.08em;
	}
	
	.colr_red {
    color: #fa4f48;
	}
	
	.colr_blue2 {
		color: #0a63ac;
		font-size:1.4em;
	}
	
	#sec12 h2{
		font-weight:900;
		text-align:center;
		margin-bottom:1em;
	}
	
	#sec13{
			padding:0;
	}
	section.sec14{
			padding:20px 0 0;
	}
	#sec13 .inner ,.sec14 .inner, .sec15 .inner{
	width:93%;
    max-width:860px;
    margin:0 auto;
}
	
	    .fnt01 {
        font-size: 1.4em !important;
        line-height: 1.4 !important;
		display: inline-block;
		font-weight:900;
	}
	
.bg_txc02 {
    color: #ffffff;
    padding: 4em auto 3em !important;
    background: linear-gradient(to bottom, #cad9ec, #a1c3f3);
    background-image: url(../img/txc02.jpg);
    background-size: cover;
    position: relative;
	}
	
	.bg_txc01 .txt_wr, .bg_txc02 .txt_wr {
    padding: 30px 5%;
}
	
	.balloon-001 {
    display: flex;
    justify-content: center;
    position: relative;
    max-width: 95%;
    margin: 0 auto 15px;
    padding: .6em 1.2em;
    border-radius: 5px;
    background-color: #fff;
    color: #333;
	}
	
.balloon-001::before {
    position: absolute;
    bottom: -15px;
    width: 60px;
    height: 30px;
    background-color: #fff;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: '';
}
	
	    h3.ttl_03 {
        font-size: 1.2em;
		line-height: 1.3;
		text-align:center;
		font-weight:900;
	}
	
	.colr_yellow {
    color: #efdf04;
	}
	
	h3.ttl_03{
		margin-bottom:1em;
	}
    
#sec16 , #sec19{
background: #f2f7d2;

}

h2.heading-021{
    text-align:center;
    font-weight:900;
    font-size: 2.4em;
    line-height: 1.3;
    margin-bottom: 0.1em;
    position:relative;
}


.line_h01 {
    display: block;
    line-height: 1.2 !important;
}

.bxzrs01 {
    font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    margin: 2em auto;
    padding: 2em 1em;
    background-image: repeating-linear-gradient(-45deg, #f0e883 0, #f0e883 3px, transparent 3px, transparent 6px);
    border: 3px solid #01b403;
}

.bxzrs01 ul {
        margin: 10px 10px 0px;
    }
.bxzrs01 li {
        font-size: 1.2em;
        line-height:1.4;
		font-weight:700;
		margin-bottom:.5em;
    }
    .bxzrs01 h3 {
        font-size: 1.4em ;
        text-align:center;
        font-weight:700;
        margin-bottom:.5em;
    }
    
#sec17{
    background:url(../img/bg17.jpg);
    padding:30px 0;
}

#sec17 .inner{
    background:#fff;
    padding:30px;
    max-width:860px;
}

#sec17 img{
    width:100%;
}

	#sec20 .inner{
	width:93%;
    margin:0 auto;
	}
	#sec19{
		padding-bottom:30px;
	}
#sec20 h2{
    background-color: rgb(4, 168, 192);
    color:#fff;
    text-align:center;
    font-weight:700;
    font-size:1.2em;
    padding:.8em;
    margin-bottom:1em;
}

.ichi_tbl{
    width:100%;
    position:relative;
}

.ichi_tbl th{
    background-color: rgb(255, 247, 210);
    font-weight:bold;
    text-align:center;
    padding:.5em;
    border:1px solid #000;
    font-size:.9em;
}

.ichi_tbl td{
    padding:.4em .4em;
    text-align:center;
    border:1px solid #000;
		font-size:.8em;
		line-height:1.2;
		vertical-align:middle;
		
}



.waku {
    position: relative;
    width: 100%;
    border: 4px solid #c00;
    height: 3.8em;
    bottom: 58px;
	}
	
	footer{
		background-color: rgb(40, 107, 169);
		text-align:center;
		color:#fff;
		padding:1em;
		font-size:.8em;
	}
	
	footer a:link{
		color:#fff;
		text-decoration:none;
	}
    
    .form-control{
        width:100%;
        padding:.5em;
        border:1px solid #ccc;
        border-radius:5px;
		margin:0 auto 1em;
		font-size:18px;
    }
    

    
    button.btn-success{
    background: #9eb747;
    color: #fff;
    width: 98%;
    text-align: center;
    font-size: 1.2em;
    line-height: 1.45;
    padding-top: 13px;
    padding-bottom: 13px;
    cursor: pointer;
    text-shadow: rgba(0, 0, 0, .2) 1px 1px 0;
    font-weight: 700;
    font-family: Noto Sans JP, Hiragino Sans, ヒラギノ角ゴシック, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, Meiryo, メイリオ, Verdana, ＭＳ Ｐゴシック, sans-serif;
    border: solid rgba(0, 0, 0, .2);
    border-width: 1px 1px 4px;
    border-radius:5px;
    margin:0 auto 1em;
    position:relative;
	}
	
	button.btn-red{
	display:block;
	width:92%;
    background: #cc0000;
    font-size: 1.6em;
    line-height: 1.45;
    padding-top: .5em;
		padding-bottom: .5em;
		margin:0 auto 1em;
    }
    
.fuwafuwa {
animation: poyopoyo 2s ease-out infinite;
  opacity: 1;
}
 
@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
		}
}
 
.line-img{
			width:100%;
		}

/* ----------------------------------------------------------------------
 PC setting
---------------------------------------------------------------------- */

@media only screen and (min-width: 768px) {

.inner2{
    width:750px;
}
		
#sec01 h2{
font-size:30px;
		}
		
		#sec01 ul{
		width:96%;
		margin-bottom:1em;
		
		}
#sec01 li{
			margin-bottom:1em;
		}
.balloon-002 {
	max-width: 800px;
}
    .fnt02 {
        font-size: 3rem !important;
        line-height: 1 !important;
        display: inline-block;
		}
		
h2.ttl_02 {
        font-size: 2em;
			line-height: 1.3;
			margin-top:1em;
		}
		
.cta .cta_box{
			padding:1em;
			border-width: 10px;
}

.cta .cta_box h2{
		font-size:40px;
		margin-bottom:.4em;
		}
		

.cta .cta_box h3{
	font-size:1.2em;
			margin-bottom:1em;
			line-height:1.4;
}

.cta .cta_box p.text{
	font-size:1em;
	line-height:1.4;
}

.cta .cta_box{
	padding:2em;

		}
h2.big{
	font-size:66px;
	margin-bottom:.8em;
}

h2.big span.black{
	font-size:0.8em;
		}
		
#sec03 li , #sec04 li , #sec06 li, #sec08 li{
	font-size:1.2em;
		}
		
		#sec09 li{
			font-size:1em;
			margin-bottom:1em;
		}
		
#sec11 h2{
		font-size: 4em;
		}
		
h3.ttl_03 {
        font-size: 2.4em;
	}
h2.heading-021{
    font-size: 5em;
		}
.bxzrs01 {
    font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    margin: 2em auto;
    padding: 2em;
    background-image: repeating-linear-gradient(-45deg, #f0e883 0, #f0e883 3px, transparent 3px, transparent 6px);
    border: 3px solid #01b403;
		}

    .bxzrs01 h3 {
        font-size: 1.8em ;

		}

	#sec20 .inner{
	width:80%;
    max-width:900px;
    margin:0 auto;
		}
		
#sec20 h2{
	font-size:1.8em;
	padding: .4em;
}
	
.ichi_tbl{
width:100%;
		max-width:900px;
		margin:0 auto;
}
.ichi_tbl td {
    padding: .5em .8em;
    text-align: center;
    border: 1px solid #000;
    font-size: .9em;
}
		.card-body{
			text-align:center;
		}
		.form-control{
			display:inline-block;
			width:650px;
			margin:0 auto 2em;
    }

.waku {
    height: 3.4em;
    bottom: 58px;
	}
	
button.btn-success{
    font-size: 1.6em;
		}
.bxzrs01 li {
        font-size: 1.4em;

		}
	#sec17 img{
    width:80%;
		}
		
		.line-img{
			width:70%;
	}
	

}
