
html {
	min-width: 250px;
	overflow-y: scroll;
}

body {
	font-size: 100%;
	max-width: 480px;
	min-width: 380px;
	-webkit-text-size-adjust: 90%;
}

div.df,
span.df {
	display: none;
}

span.sp,
div.sp {
	display: inline;
}

h2.img {
	font-size: 26px;
	padding: 0px 0px 10px 0px;
}

p {
	line-height: 1.8em;
}

p.spjustify {
	text-align: justify;
}

p.work-text {
	text-align: justify;
}

div.body a.link-btn,
a.link-btn,
span.link-btn a {
	background-position: right 12px center;
	background-size: 9px;
	border-radius: 25px;
	box-sizing: border-box;
	display: block;
	margin: 5px auto;
	padding: 15px 30px 15px 20px;
	width: 96%;
}

span.link-btn-prev a {
	border-radius: 25px;
	padding: 15px 25px 15px 40px;
}

ul.list li {
	background-position: 5px 13px;
	line-height: 1.6em;
	text-align: left;
}

.spwideimg {
	height: auto;
	width: 100%;
}

div.photos {
	display: inline-block;
}

div.photos a {
	display: inline-block;
	width: 32%;
}

/***********************************************************************/
div.contents {
	padding: 20px;
}

div.contents h2 img {
	height: auto;
	width: 100%;
}

/***********************************************************************/
div.goconsult {
	padding: 30px 25px;
}

div.goconsult h4 img {
	height: auto;
	width: 100%;
}

div.goconsult h5 {
	font-size: 18px;
	padding: 10px;
	width: auto;
}

div.goconsult ul.list {
	width: auto;
}

div.goconsult ul.list li {
	background-position: 5px 13px;
	background-size: 16px;
	font-size: 16px;
	padding: 10px 5px 10px 30px;
}

div.goconsult table {
	width: 80%;
}

div.goconsult table th {
	display: block;
	padding: 10px;
}

div.goconsult table td {
	display: block;
	padding: 10px;
}

div.goconsult table td p {
	font-size: 16px;
	line-height: 1.4em;
}

div.goconsult table td ul li {
	font-size: 15px;
	margin: 3px 0px;
	padding: 0px 3px;
}

div.goconsult div.img {
	right: -15px;
}

div.goconsult div.img img {
	height: auto;
	width: 100px;
}

/***********************************************************************/
table.list-table {
	width: 100%;
}

table.list-table th {
	display: block;
	padding: 15px 20px;
	width: auto;
}

table.list-table td {
	display: block;
	padding: 15px 20px;
	text-align: justify;
	width: auto;
}

table.list-table td ul {
	text-align: justify;
}

table.list-table td a {
	color: black;
	font-weight: 500;
}

/***********************************************************************/
table.form-table {
	border-top: 0px;
}

table.form-table tr {
	display: block;
	position: relative;
}

table.form-table.order table tr {
	display: inherit;
}

table.form-table th {
	border: none;
	display: block;
	font-size: 110%;
	font-weight: bold;
	padding: 10px 0px 5px 0px;
	text-align: left;
	width: 100%;
}

table.form-table td {
	border: none;
	clear: both;
	display: block;
	line-height: 1.5em;
	padding: 5px 0px 30px 0px;
}

table.form-table td.m {
	border: none;
	display: block;
	float: right;
	height: 30px;
	padding: 0px;
	position: absolute;
	right: 10px;
	top: 5px;
	width: 30px;
}

table.form-table td.m span {
	display: table-cell;
	font-size: 12px;
	line-height: 1em;
	vertical-align: middle;
}

table.form-table td input {
	box-sizing: border-box;
	margin-right: 0px;
	width: 100%;
}

table.form-table td.t select {
	margin-bottom: 10px;
}

table.form-table td.s input {
	width: auto;
}

table.form-table td input.size500,
table.form-table td input.size300,
table.form-table td textarea.size500 {
	box-sizing: border-box;
	width: 100%;
}

table.form-table td table th {
	background-color: white;
	color: #88724f;
	display: inline-block;
	padding: 5px 20px;
	text-align: right;
	white-space: nowrap;
	width: 30%;
}

table.form-table td table td {
	display: inline-block;
	padding: 5px 0px;
}

input.submit {
	display: block;
	font-size: 24px;
	padding: 18px 5%;
	width: 90%;
}

div.btn {
	margin: 0px;
}

body#form p.error {
	padding: 30px 20px;
}

body#form table.form-table th,
body#form table.form-table td {
	padding-bottom: 10px;
	padding-top: 10px;
}

body#form table.form-table td {
	padding-bottom: 30px;
	padding-left: 20px;
}

body#form table.form-table td table tr {
	display: table-row;
}

body#form table.form-table td table th {
	background-color: white;
	color: #88724f;
	display: table-cell;
	padding: 5px 10px;
	text-align: right;
	white-space: nowrap;
	width: 30%;
}

body#form table.form-table td table td {
	display: table-cell;
	padding: 5px 10px;
	width: 70%;
}

/***************************************************************/
div.qa div.img {
	bottom: -100px;
	right: -40px;
}

div.qa div.img img {
	height: auto;
	width: 140px;
}

ul.qa-list li a em {
	margin-right: 8px;
}

ul.qa-list li a span.mark {
	display: table-cell;
}

ul.qa-list li a span.text {
	display: table-cell;
}

ul.qa-list li a {
	background-position: right 5px center;
	font-size: 16px;
	padding: 10px 30px 10px 10px;
}

ul.case-list {
	padding: 0px 10px;
	width: auto;
}

ul.case-list li {
	padding: 10px 10px 30px 10px;
	width: 44%;
}

ul.case-list li a img {
	height: auto;
	width: 100%;
}

div.page {
	padding: 20px 0px;
	text-align: center;
}

/***********************************************************************/
body#single div.main-s {
	margin: -15px 20px;
	padding: 20px;
	width: auto;
}

body#single h1{
	font-size: 20px;
	padding: 0px 20px 10px 20px;
}

body#single div.img {
	height: auto;
	margin: auto;
	margin-bottom: 30px;
	width: auto;
}

body#single div.body {
	margin-top: 30px;
	width: auto;
}

body#single div.body h2 {
	font-size: 18px;
}

body#single div.body p {
	text-align: justify;
}

body#single div.body a.link-btn {
	background-position: right 15px center;
	background-size: 6px;
	letter-spacing: normal;
	padding: 10px 35px;
	width: auto;
}

body#single div.body figure.size-medium img {
	height: auto;
	width: 80%;
}

body#single div.body figure.size-large img {
	height: auto;
	width: 100%;
}

/***********************************************************************/
#header {
	position: relative;
}

#header #header-logo {
	background-position: 5px 18px;
	background-size: 55px;
	border-bottom: 2px solid #f8bb00;
	padding: 10px 10px 10px 70px;
	position: static;
}

#header #header-logo #headerlogo-text {
	font-size: 12px;
}

#header #header-logo p#headerlogo-title {
	width: 70%;
}

#header #header-logo p#headerlogo-title img {
	height: auto;
	width: 100%;
}

#header #header-logo p#headerlogo-subtitle {
	font-size: 10px;
}

#header p#header-tel,
#header a#header-contact {
	display: none;
}

#title {
	padding: 40px 15px;
}

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

#title-s {
	padding: 20px 0px;
}

#title-s div img {
	height: auto;
	width: 320px;
}

#sp-icon {
	display: inline;
}

#globalnav {
	display: none;
	padding: 0px;
	position: static;
}

#globalnav  ul li {
	background-color: white;
	border-bottom: 1px solid #f8bb00;
	display: block;
}

#globalnav  ul li.sptel {
	display: block;
	font-size: 20px;
}

#globalnav  ul li.spcontact {
	background-color: #f8bb00;
	display: block;
}

#globalnav ul li a {
	display: block;
	font-size: 15px;
	padding: 20px 0px;
}

#globalnav  ul li.sptel a {
	padding: 12px 0px 0px 0px;
}

#globalnav  ul li.sptel a strong {
	background: url(images/header_tel.png) no-repeat left center;
	background-size: 26px;
	font-size: 20px;
	padding: 5px 0px 5px 35px;
}

#globalnav  ul li.sptel em {
	display: block;
	font-size: 12px;
	padding: 0px 0px 10px 0px;
}

#globalnav  ul li.spcontact a {
	padding: 12px 0px;
}

#globalnav  ul li.spcontact a img {
	height: auto;
	width: 180px;
}

#maintitle {
	height: auto;
	padding-top: 70px;
}

#maintitle #title {
	display: block;
	font-size: 25px;
	padding: 30px 0px 32px 0px;
	width: auto;
}

#maintitle #title img {
	margin: auto;
	width: 60%;
}

#maintitle #title em {
	font-size: 50%;
	padding-top: 2px;
}

div.main,
div.main-s,
div.main-c {
	padding: 0px 20px;
	width: auto;
}

#contactfree #contactfree-text p a {
	display: inline-block;
	font-size: 18px;
	padding: 15px 50px 15px 35px;
}

#contactfree h3 img {
	height: auto;
	width: 100%;
}

#contactfree #contactfree-img {
	display: block;
	margin: 0px auto;
	padding-top: 20px;
	text-align: center;
	width: 70%;
}

#contactfree #contactfree-img img {
	height: auto;
	width: 100%;
}

#contactfree #contactfree-text {
	display: block;
	padding: 0px;
	width: auto;
}

#footer {
	padding: 0px;
	width: auto;
}

#footer #footernav {
	float: none;
	width: auto;
}

#footer #footernav ul {
	display: block;
	padding: 0px;
}

#footer #footernav ul li {
	border-bottom: 1px solid white;
	display: block;
}

#footer #footernav ul li a {
	background: #0093bd url(images/link_btn.svg) no-repeat  right 15px center;
	background-size: 6px;
	color: white;
	font-size: 15px;
	font-weight: 600;
	padding: 15px 0px;
	text-align: center;
}

#footer #footer-address {
	padding: 40px 20px;
	text-align: center;
}

#footer #footer-address h4 {
	display: block;
	padding: 0px;
	text-align: center;
}

#footer #footer-address p#footer-address-tel {
	text-align: center;
}

#footer #footer-address p#footer-address-tel strong {
	background-position: left top 30px;
	background-size: 28px;
	display: inline-block;
	padding: 25px 0px 0px 40px;
}

#footer #footer-address p#footer-address-tel a {
	font-size: 32px;
	font-weight: 600;
	text-decoration: none;
}

#footer #footer-address #footer-time {
	text-align: center;
}

#footer ul li {
	font-size: 13px;
}

#footer #footer-address address {
	font-size: 12px;
	line-height: 1.6em;
	padding: 10px 0px 5px 0px;
}

p#copyright {
	font-size: 10px;
	line-height: 1.4em;
	margin: 0px;
	padding: 5px;
}

#pagetop {
	display: block;
	position: static;
}

#pagetop a {
	background: #f8bb00 url(images/pagetop.svg) no-repeat center top 10px;
	background-size: 15px;
	border-radius: initial;
	height: auto;
	padding: 10px 0px;
	width: 100%;
}

#pagetop a em {
	padding-top: 12px;
}

