html,
body {
    width: 100%;
}

body {
    font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    font-size: 16px;
    line-height: 2.3em;
    color: #333;
    margin: 0;
    -webkit-text-size-adjust: none;
}

h1 {
	line-height: 1;
	margin: 0;
	padding: 0;
}

.lines{
	background:linear-gradient(transparent 60%, #3aee3a 60%);
}


#tit {
	font-size: 50px;
	font-weight: bold;
	text-align: center;
	padding-top: 1em;
	padding-bottom: .5em;
	border-bottom: solid 2px #c5c5c5;
	color: #559309;
	display: block;
	margin: auto;
}

#ext {
	font-size: 30px;
	font-weight: bold;
	line-height: 1.4;
	padding: 1em 0;
}

#case {
	border: solid 1px #c3c3c3;
	display: block;
	padding: 3em;
	margin: 0 0 4em 0;
}

a {
	color: #0055b3;
}

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

.clearfix {
    display: inline-block;
}

.clearfix {
    display: block;
}

div.clear {
    clear: both;
}

div.clear hr {
    display: none;
}

#wrap {
	display: block;
	max-width: 100%;
	margin: auto;
}

#main {
	max-width: 1200px;
	width: 100%;
	display: block;
	margin: auto;
}

header {
	max-width: 1200px;
	margin: auto;
	display: flex;
	padding: 2em 0;
	align-items: center;
}

header section {
	flex-basis: 100%;
}

#liprice {
	width: 80%;
	display: block;
	margin: auto;
}

#liprice img {
	width: 100%;
	height: auto;
}

#tel {
	width: 100%;
	display: flex;
	justify-content:flex-end;
	position: relative;
	right: 0;
	line-height: 1.2;
	text-align: right;
}

#tel section {
	flex-basis: auto;
}

#tel span {
	text-align: left;
	font-size: 12px;
	display: block;
}
#tt {
	text-align: left;
}
#phone {
	font-size: 30px;
}

#phone::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f87b";
  color: #76c638;
  padding-right: .2em;
}
#vi2 {
	width: 100%;
	display: block;
	margin-bottom: 4em;
}
#vi2 img {
	width: 100%;
	height: auto;
}

.large {
	font-size: 18px;
	font-weight: bold;
}

.red { color: #e63300;}

#waku {
	display: block;
	padding: 2em;
	border: solid 3px #75c210;
	margin: 2em 0;
}

#zu {
	max-width: 800px;
	display: block;
	margin: 2em auto;
}

#zu img {
	width: 100%;
	height: auto;
}

.lgimg img {
	width: 100%;
	height: auto;
}

h2 {
	background: #75c210;
	display: block;
	font-size: 30px;
	color: #fff;
	padding: .6em 0;
	text-align: center;
	margin-bottom: 1em;
}

table {
    border: 4px #40a440 solid;
    border-collapse: collapse;
    border-spacing: 0;
    margin: 10px 0 2em 0;
    width: 100%;
}

table th {
    padding: 1em;
    border: 1px #40a440 solid;
    border-bottom: 1px #fff solid;
    border-width: 0 0 1px 1px;
    font-weight: normal;
    background: #40a440 ;
    vertical-align: middle;
    color: #fff;
    font-weight: bold;
    font-size: 18px;
}

table th:first-child {
	width: 30%;
}

table td {
    padding: 1em;
    border: 1px #40a440 solid;
    border-width: 0 0 1px 1px;
    background: #fff;
    vertical-align: middle;
}
#zoom {
	display: block;
	padding: 3em;
	border: solid 5px #40a440;
	margin-bottom: 3em;
	text-align: center;
}

#zoom h4 {
	border: none;
	padding: 0;
	margin: 0 0 .5em;
	font-size: 24px;
	font-weight: bold;
}

.button {
	border-radius: 3em;
    background-color: #ff4500;
    color: #fff;
    line-height: 63px;
    font-size: 26px;
    margin: 0 auto .5em auto;
}

_:-ms-input-placeholder .button, :root .button {
  padding: 4px 10px 0;
}


.button:hover {
    background-color: #ff8d00;
    border-color: #000;
    color: #fff;
    -webkit-transition: all .8s;
    transition: all .8s;
}

.button {
    width: 450px;
	display: block;
    height: 63px;
    text-align: center;
    text-decoration: none;
    line-height: 63px;
    outline: none;
}

.button::before,
.button::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: '';
}

.button,
.button::before,
.button::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .8s;
    transition: all .8s;
}

#telf {
	width:100%;
	display: block;
	margin: 3em  auto;
	border: solid 1px #e5e5e5;
}

#telf #inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 3em;
}

#ctcp {
	font-size: 26px;
	margin: 0 0 .3em 0;
}

#phone-no {
	font-size: 40px;
}

#phone-no::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f87b";
  color: #76c638;
  padding-right: .2em;
}

#soudan {
	text-align: center;
}

#fs {
	width: 100%;
	display: block;
	text-align: center;
	padding: 3em 0;
}

#footer {
	display: block;
	background: #eef6f1;
	margin: 5em 0 0 0;
	padding: 3em;
	text-align: center;
}

#footer p {
	font-size: 12px;
	line-height: 1.3;
}

@media only screen and (max-width:1200px) {
	header {
		display: block;
		width: 95%;
		margin: auto;
		}
header section {
	flex-basis: 100%;
	text-align: center;
}
#tel {
	width: 100%;
	display: flex;
	justify-content: center;
	position: relative;
	right: 0;
	top:1em;
	line-height: 1.2;
	text-align: right;
}
#main {
	width: 95%;
	display: block;
	margin: auto;
}

#soudan {
	text-align: left;
}
#zoom {
	text-align: left;
}
.button {
    width: 100%;
	display: block;
    height: 63px;
    text-align: center;
    text-decoration: none;
    line-height: 63px;
    outline: none;
    font-size: 18px;
}
#telf #inner {
	display: block;
	text-align: center;
	padding: 3em .5em;
}
#casesf img {
		width: 100%;
	height: auto;
	max-width: 900px;
}
#cases img {
	width: 100%;
	height: auto;
	max-width: 1000px;
	}
}

@media only screen and (max-width: 644px) {
	
body {

    line-height: 1.7;

}

#liprice {
	width: 100%;
	display: block;
	margin: auto;
}

#tit {
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	padding-top: 1em;
	padding-bottom: .5em;
	border-bottom: solid 2px #c5c5c5;
	color: #559309;
	display: block;
	margin: auto;
}

#ext {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
	color: #de4f00;
	padding: 1em 0;
	text-align: center;
}

#wrap {
	
}
	#tel {
	width: 100%;
	display: block;
	justify-content: center;
	position: relative;
	right: auto;
	top:1em;
	line-height: 1.6;
	text-align: center;
}
#tel span {
	text-align: center;
}
#tt {
    text-align: center;
}
#phone {
	margin-top: .1em;
	font-size: 26px;
}

#fs img {
	width: 100%;
	height: auto;
}


}