* {
    margin: 0;
    padding: 0;
	list-style:none;
	text-decoration:none;
	font-size:15px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 100;
}
a {
	color:#000000
}
.font_s {
	font-size:13px;
}
.font_l {
	font-size:20px;
}


header {
	justify-content: center;
	background-image:url(../images/top_image.jpg);/* faq.htmの背景はfaq.htmにて指定 */
	background-size:100% auto;/
	background-repeat:no-repeat;
	margin:auto;
	padding-top:1%
}

h2 {
	font-size:20px;
}
.half {
	width:48%;
	max-width:500px	
}
.no_half {
	width:98%;
}
#title_area {
	color:#FFFFFF;
	font-size:20px;
	margin-top:20%
}
h1 {
	font-size:37px;
	color:#FFFFFF
}
h1 span{
	font-size:20px;
	
}




article{
	padding:1%;
	width:100%;
	box-sizing: border-box;
	max-width:1000px;
	margin:auto}
	
.flexbox {
    display: -webkit-flex;
    display: flex;
	flex-wrap :wrap;
	justify-content: center;
	max-width:1000px;
	margin:auto
}
h3 {
    color:#22B783;
	font-size:26px;
	margin:5% 0 1% 0;
	font-weight:bold
}

#navi {
	list-style: none;
	display: flex;
	max-width:450px
}
 
#navi li {
	text-align: center;
	background-color: #22B783;
	margin:1%;
	width:25%
}
 
#navi li a {
	text-decoration: none;
	color:#FFFFFF;
	padding:1% 2%;
	display:block
}
section {
	padding:1%;
}
section p{
	margin:3% 0;	
}

h4 {
	font-size:25px;
	margin-top:5%
}
.order{
	
	display:block;
	padding:2% 3%;
	background-color:#6CE3BA;
	width:40%;
	text-align:center	
	}
.order:hover{
	background-color:#8DE9C9;
	}
	
table{
	width: 100%;
	border-collapse: collapse;
	border: solid #CCC;
	border-width: 1px;
}
table tr th,
table tr td{
	padding: 0.5em;
	border:1px solid #CCC;

}
table tr th{
	background: #eee;
}

.ryokin_table{
	width:65%;
	border:10px solid #CCC;
}

.responsive_table{
	background-color:#FFFFFF
}

.function_wrap{
	display:flex; 
	align-items:first baseline;
	flex-wrap:wrap
}
.function_wrap .responsive_table{
	border:none; 
	width:45%; 
	margin:8px
}
.function_wrap table.responsive_table tr td,.function_wrap table.responsive_table tr th{
	border:none;
	display:block
}
.function_wrap table.responsive_table tr td{
	padding-bottom:24px
}
.btn {
	display: flex;
	justify-content: center;
}
.btn li{
	display: flex;
	justify-content: center;
	margin:3% 1% 1%
}

.btn a {
	background: #Ffffff;
	border: 1px solid #22B783;
	box-sizing: border-box;
	color: #22B783;
	position: relative;
	transition-duration: 0.2s;
	padding:10px; padding-left:20px
}
.btn a:hover {
	background: #22B783;
	color: #fff;
	text-align:center
}
.btn a:before {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 7px 0 7px 8px;
	border-color: transparent transparent transparent #22B783;
	position: absolute;
	top: 50%;
	left: 6%;
	margin-top: -7px;
}
.btn a:hover:before {
	border-color: transparent transparent transparent #fff;
}
footer {
	background-color:#C7E0D6
}
footer article ul{
    width:95%;
	max-width:700px;
	margin:2% auto;
	display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;  
}
footer article ul li{
	padding:1%
}



.crunchify-top:hover {
	color: #fff !important;
	background-color: #ed702b;
	text-decoration: none;
} 
.crunchify-top {
	display: none;
	position: fixed;
	bottom: 1rem;
	right: 1rem;
	width: 3.2rem;
	height: 3.2rem;
	line-height: 3.2rem;
	font-size: 1.4rem;
	color: #fff;
	background-color: rgba(0,0,0,0.3);
	text-decoration: none;
	border-radius: 3.2rem;
	text-align: center;
	cursor: pointer;
}


/* 以下よくあるご質問ページ */
.faq dl {
    position: relative;
    margin: 0;
    padding: 28px 80px 28px 30px;
    cursor: pointer;
    border-bottom: 1px solid #000;
}
.faq dl:first-child {
    border-top: 1px solid #000;
}
.faq dl::before {
    position: absolute;
    top: 35px;
    right: 35px;
    display: block;
    width: 7px;
    height: 7px;
    margin: auto;
    content: '';
    transform: rotate(135deg);
    border-top: 2px solid #000;
    border-right: 2px solid #000;
}
.faq .open::before {
    transform: rotate(-45deg);
}
.faq dl dt {
    position: relative;
    margin: 0;
    padding: 0 0 0 50px;
    font-weight: bold;
    font-size: 20px;
}
.faq dl dt::before {
    font-size: 22px;
    line-height: 1;
    position: absolute;
    top: 3px;
    left: 0;
    display: block;
    content: 'Q.';
    color: #22B783;
}
.faq dl dd::before {
    font-size: 22px;
    line-height: 1;
    position: absolute;
    top: 3px;
    left: 2px;
    display: block;
    content: 'A.';
    font-weight: bold;
    color: #F97C00;
}
.faq dl dd {
    position: relative;
    display: none;
    height: auto;
    margin: 20px 0 0;
    padding: 0 0 0 50px;
}
.faq dl dd p {
    margin: 30px 0 0;
}
.faq dl dd p:first-child{
    margin-top: 0;
}






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

h2 {
	font-size:18px
}
header .half {
	width:70%;	
}

header .hontai_image{
	width:30%;
	padding-top:5%;
}
#title_area {
	margin-top:5%;
}
.ryokin_table{
	width:100%;
	border:10px solid #CCC;
}
/* 以下よくあるご質問ページ */
.faq dl {
    position: relative;
    padding: 15px 40px 15px 10px;
}
.faq dl::before {
    top: 20px;
    right: 20px;
    width: 7px;
    height: 7px;
}
.faq dl dt {
    padding: 0 0 0 30px;
    font-size: 14px;
}
.faq dl dt::before {
    font-size: 14px;
    top: 3px;
    left: 5px;
    content: 'Q.';
}
.faq dl dd::before {
    font-size: 14px;
    top: 5px;
    left: 5px;
    content: 'A.';
}
.faq dl dd {
    margin: 10px 0 0;
    padding: 0 0 0 30px;
    font-size: 14px;
}
.faq dl dd p {
    margin: 30px 0 0;
}
.faq dl dd p:first-child{
    margin-top: 0;
}
}
@media screen and (max-width:700px){
.half {
	width:98%;	
}
h1 {
	font-size:35px
}
h3 {
	text-align:center
}
footer article{
	padding-top:5%

}
footer article ul{
	display:block;
	text-align:left
}

.responsive_table tr{
	width:100%
}
.responsive_table th,.responsive_table td{
	display:block;
	text-align:left
}
.function_wrap .responsive_table{
	width:100%
}
}
@media screen and (max-width:450px){
h1 {
	font-size:20px
}

}






