@charset "utf-8";

/* ---------------------------------------------------------
0:RESET
----------------------------------------------------------*/
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 {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
	list-style:none;
}
body {
    line-height:1;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
    display:block;
}
nav ul {
    list-style:none;
}
blockquote, q {
    quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}
a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
	text-decoration:none;
	/*color:#0078A7;*/
}
a:hover,
a img:hover {
	opacity:0.8;
	filter: alpha(opacity=80);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=80)";  /* ie 8 */
	-moz-opacity:0.8;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.8;              /* Safari 1.x */
	zoom:1;
}
img {
	max-width: 100%;
	vertical-align: bottom;
}
/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}
/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000;
    font-style:italic;
    font-weight:bold;
}
del {
    text-decoration: line-through;
}
abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}
table {
    border-collapse:collapse;
    border-spacing:0;
}
/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}
input, select {
    vertical-align:middle;
}

.clearfix:after {
  visibility: hidden;
  height: 0;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
}



/* common */

body {
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	/*font-size: 13px;*/
	line-height: 1.5;
	color: #000;
	/*font-weight: bold;*/
}

p{
  line-height:1.7;
}

.container {
  width:90%;
  margin:0 auto;
}

section{
  padding:20px 0;
}

section h2{
  text-align:center;
  margin:0 10px 15px;
  color:#ffffff;
  background-color:#57b53c;
  border:none;
  /*font-size:200%;*/
  font-size: 6vw;
  letter-spacing: 0.1em;
  padding:4px;
}

section h3{/*角丸*/
  text-align:center;
  margin:10px 10px 25px;
  color:#ffffff;
  background-color:#57b53c;
  font-size: 4vw;
  letter-spacing: 0.1em;
  padding:3px;
  border-radius:30px;
}
section h2 span{/*タイトル中のちーさい文字*/
font-size: 30%;
font-weight:400;
color: #333333;
background-color: #ffffff;
vertical-align: middle;
padding: 6px;
}

section h2 img,section h3 img{
vertical-align: middle;
}

section h4{/*枠なしタイトル*/
color: #57b53c;
font-size: 4vw;
text-align: left;
letter-spacing: 0.1em;
margin: 15px;
font-weight: bold;
}

.features h3{
  color:#cc131d;
  text-align: left;
  background:#FEFFCA;
  border-bottom: 2px solid #57b53c;
  padding: 5px;
  margin-bottom: 15px;
}
section p b{
  font-weight: bold;
}

/*赤文字*/
.akamoji{
color:red;
}

/* header */

header {
	background: #fff;
	position: fixed;
	top: 0px;
	width: 100%;
	z-index: 9999;
}
.h-inner {
	max-width: 1024px;
	margin: 0 auto;
	padding: 7px 0 11px;
}
.h-inner:after {
	visibility: hidden;
	height: 0;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
}
header h1 {
	float: left;
	/*---------------------- width: 25%; -------- スマホでもロゴ表示 --------------------*/
    width: 35%;
}
header .r-contents {
	float: right;
	width: 40%;
}
header .r-contents:after {
	visibility: hidden;
	height: 0;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
}
header .tel {
	float: left;
	width: 47%;
}
header .request {
	float: right;
	width: 47%;
}

/* m-image */
.m-image {
  width:100%;
  height:100%;
 text-align: center;
}

/* features */
.features .item{
margin-bottom:20px;
}

/* footer */
.f-inbox1,.f-inbox2{
color:#ffffff;
}

.f-inbox1 {
background: #c40019;
}
.f-inbox2 {
background: #950019;
}



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

	.h-inner {
		padding: 7px 2% 11px;
	}
	header h1 {
    /*--------------- スマホでもロゴ表----------------- 
		width: 0%;
	---------------------------------------*/
    }
	header .r-contents {
		width: 99%;
	}
    header .tel {
	width: 49%;
    /*float: none;*/
    /*margin-bottom:5px;*/
	}
    header .request {
	width: 49%;
    /*float: none;*/
	}


/* features */
.features img{
  width:70%;
}

.features .item{
  /*margin-bottom:60px;*/
  text-align: center;
}
.features .item:last-child{
  /*margin-bottom:0;*/
}
.features .item a{
/*color:#006393;*/
}


/* news */
.news .item{
  text-align:center;
}
.news p{
  text-align:left;
}
.news .item{
  margin-bottom:60px;
}
.news .item:last-child{
  margin-bottom:0;
}


/* footer */
.f-inbox1 {
	/*background: #c40019;*/
	padding: 23px 0 16px;
}
.f-logo {
	text-align: center;
	padding-bottom: 10px;
}
.copyright {
	text-align: center;
	color: #fff;
	font-weight: normal;
}
.f-inbox2 {
	/*background: #950019;*/
	padding: 12px 0;
}
.f-inbox2 p {
	max-width: 950px;
	margin: 0 auto;
	color: #fff;
	line-height: 2em;
	font-weight: normal;
}
}
/* small */

@media screen and (min-width: 640px) {/*570*/
	.h-inner {
		padding: 7px 2% 11px;
	}
	header h1 {
		width: 40%;
	}
	header .r-contents {
		width: 55%;
	}    
  .f-inbox1,
	.f-inbox2 {
		padding: 10px 4%;
	}
	.copyright {
		font-size: 10px;
	}
	.f-inbox2 p {
		font-size: 11px;
	}
	.f-inbox2 p span {
		display: block;
	}
/*.m-image{margin-top:200px;
}*/

/*****************/


.features p{
 /* width:45%;*/
 width:65%;
}

.features img{
 /* width:50%;*/
 width:30%;
}

.right-side{
  float:right;
  padding-left:5%;
  font-size:130%;
}
.left-side{
  float:left;
  padding-right:5%;
}

.features .item{
 overflow:hidden;
}

.news .container{
  display:flex;
  justify-content:space-between;
}

.news .item{
  width:30%;
}

.news .item img{
  width:100%;
}

}



/* large */

@media(min-width:820px){

  .container{
    width:820px;
  }
  
.header-mobile-menu{
    display:none;
}

  .header-pc-menu{
    display:block;
    list-style:none;
    padding:0;
    margin:0;
    float:right;
  }

  .header-pc-menu > li{
    display:inline-block;
    width:60px;
    text-align: center;
    cursor:pointer;
  }
.f-inbox1 {
	background: #c40019;
}

} 

