html {
	font-size: 62.5%;
	margin: 0;
	padding: 0;
	visibility: hidden;
}

html.wf-active, html.loading-delay {
	visibility: visible;
}

body {
	font-size: 14px;
	font-size: 1.4rem;
	background: #fff;
	margin: 0;
	padding: 0;
}

body {
	font-family: YakuHanJP, 'Noto Sans CJK JP', 'Noto Sans JP', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	color: #333;
}



.oh {
	overflow: hidden;
}

.cf:before,
.cf:after {
  content: "";
  display: table;
}

.cf:after {
  clear: both;
}

.cf {
  *zoom: 1;
}

.imgopa {
  -webkit-transition: 0.2s ease-in-out;
  -moz-transition: 0.2s ease-in-out;
  -o-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
}

.imgopa:hover {
	opacity: 0.7;
}

.mt0 {
	margin-top: 0px !important;
}

.mt10 {
	margin-top: 10px !important;
}

.mt20 {
	margin-top: 20px !important;
}

.mt30 {
	margin-top: 30px !important;
}

.mt40 {
	margin-top: 40px !important;
}

.mt50 {
	margin-top: 50px !important;
}

.mt80 {
	margin-top: 80px !important;
}

.mt70 {
	margin-top: 70px !important;
}

.mt80 {
	margin-top: 80px !important;
}

.mt90 {
	margin-top: 90px !important;
}

.mt100 {
	margin-top: 100px !important;
}

.mr20 {
	margin-right: 20px;
}

.mt1em {
	margin-top: 1em !important;
}

.mt15em {
	margin-top: 1.5em !important;
}

.mt2em {
	margin-top: 2em !important;
}

.tar {
	text-align: right;
}

.tac {
	text-align: center;
}

.f16 {
	font-size: 1.6rem;
}

a {
	color: #006fcd;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

.pcw {
	width: 944px;
	margin: 0 auto;
	position: relative;
}

.nopc,
.nopc-inline {
	display: none;
}

.tidt1 {
	text-indent: -1em;
	padding-left: 1em;
}

img {
	vertical-align: top;
}

:focus{
  outline: none;
}

.color-base {
	color: #0088e8;
}

.color-red {
	color: #ff0000;
}


html, body { display: flex; }
body {
  flex-direction: column;
  min-height: 100vh;
  width: 100%;
}
header, footer { flex-shrink: 0; }
#main {
  flex: 1 0 auto;
  min-height: 1px;/*IE11 img resizing bug*/
}


/* header */

header {
	width: 100%;
}

#header {
	width: 1000px;
	padding: 0 20px;
	box-sizing: border-box;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	position: relative;
}


#header h1 a {
	display: inline-block;
	font-size: 3.0rem;
	font-weight: bold;
	font-family: "Maru Folk Medium";
	position: relative;
	margin-top: 20px;
	padding-left: 58px;
}

#header h1 a:before {
	display: block;
	content: "";
	background: url(/img/logo.svg) no-repeat;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 50px;
	height: 50px;
	background-size: contain;
}

#header h1 a {
	color: #333;
}

#header h1 a:hover {
	text-decoration: none;
}


header nav {
	width: 100%;
	min-width: 1000px;
	background: #0083CE;
	background: -moz-linear-gradient(left, #0083CE, #A0CFF0);
	background: -webkit-linear-gradient(left, #0083CE, #A0CFF0);
	background: linear-gradient(to right, #0083CE, #A0CFF0);
	padding: 0.5em 0;
	margin-top: 10px;
}


header nav ul {
	width: 1000px;
	padding: 0 20px;
	box-sizing: border-box;
	margin: 0 auto;
	display: flex;
	position: relative;
}

header nav ul:before {
	display: block;
	content: "";
	background: url(/img/yamoichi.svg) no-repeat;
	width: 70px;
	height: 84px;
	background-size: contain;
	position: absolute;
	bottom: 0.2em;
	right: 0;
}

header nav ul li {
	border-left: 1px solid #fff;
	line-height: 1;
}

header nav ul li:first-child {
	border: none;
}

header nav ul li a {
	display: block;
	box-sizing: border-box;
	color: #fff;
	font-size: 1.4rem;
	padding: 1px 0.9em 2px;
}

header nav ul li:first-child a {
	padding-left: 0;
}

header nav ul li a:hover {
	text-decoration: none;
}


#tel-time {
	text-align: right;
	padding-right: 60px;
}

#tel-time i {
	font-size: 2.0rem;
	color: #0088e8;
}

#tel-time span {
	color: #333;
	font-size: 2.0rem;
}

#tel-time p.head-time {
	font-size: 1.4rem;
}

#sp-phone {
	display: none;
}


footer {
	width: 100%;
	min-width: 1000px;
	margin: 60px auto 0;
	box-sizing: border-box;
	background: #0083CE;
	color: #fff;
	text-align: center;
	padding: 10px 0 10px;
}

#footer {
	width: 1000px;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: border-box;
}

#footer-name {
	font-size: 2.8rem;
	font-family: "Maru Folk Medium";
}

#footer-address {
	font-size: 1.6rem;
	margin-top: 0.5em;
}

#footer-telfax {
	font-size: 1.6rem;
}

#footer-telfax span {
	display: inline-block;
	padding: 0 0.5em;
}

#copyright {
	font-size: 1.4rem;
	margin-top: 1em;
}





/* top mainimage */

#mainimage-pc {
	width: 100%;
	min-width: 1000px;
	box-sizing: border-box;
	margin-top: 10px;
}

.swiper-slide {
	width: 960px !important;
}

.swiper-slide img {
	width: 100%;
	height: auto;
}


#mainimage-sp {
	display: none;
}




/* contents */

section.contents {
	margin: 80px auto 0;
	width: 1000px;
	padding: 0 20px;
	box-sizing: border-box;
}

section.contents-top {
	margin: 40px auto 0;
}

section > h1 {
	width: 100%;
	margin: 0 auto;
	border-bottom: solid 1px #aaa;
	padding-bottom: 4px;
	box-sizing: border-box;
	font-size: 1.8rem;
	font-weight: bold;
	color: #444;
}



/* information */

ul.infolist {
	width: 100%;
	margin: 0 auto;
	font-size: 1.6rem;
}

ul.infolist > li {
	display: flex;
	width: 100%;
	margin-top: 10px;
}

.infoymd {
	margin-right: 1.5em;
}

.infotitle a {
	color: #333;
}

.infotitle a:hover {
	text-decoration: none;
}

#top-infolist-btn {
	width: 100%;
	text-align: center;
	margin-top: 30px;
}

#info-detail #top-infolist-btn {
	margin-top: 60px;
}

#top-infolist-btn a {
	display: inline-block;
	background: #fff;
	border: solid 1px #ccc;
	color: #333;
	padding: 6px 15px 7px;
	margin: 0 4px;
}

#top-infolist-btn a:hover {
	text-decoration: none;
	background: #00a0df;
	color: #fff;
	opacity: 1;
}

.wp-pagenavi {
	width: 1000px;
	padding: 0 20px;
	box-sizing: border-box;
	margin: 50px auto 0;
	font-size: 1.6rem;;
	line-height: 1;
	display: flex;
	justify-content: center;
	align-items: center;
}

.wp-pagenavi a,
.wp-pagenavi span {
	padding: 4px 10px 6px;
	margin: 0 3px;
}

.wp-pagenavi span.current {
	color: #fff;
	background: #000;
}

.wp-pagenavi a {
	background: #ddd;
	color: #000;
  -webkit-transition: 0.2s ease-in-out;
  -moz-transition: 0.2s ease-in-out;
  -o-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
}

.wp-pagenavi a:hover {
	background: #bbb;
	text-decoration: none;
}

.info-detail-title {
	margin-top: 1.0em;
	font-size: 2.8rem;
	line-height: 1.4;
}

.info-detail-ymd {
	font-size: 1.4rem;
	border-bottom: dotted 1px #ccc;
	padding-bottom: 12px;
	margin-top: 0.3em;
}

#info-detail {
	font-size: 1.6rem;
	line-height: 1.7;
}





/* top banner */

.topbanner {
	width: 1000px;
	margin: 60px auto 0;
	padding: 0 20px;
	box-sizing: border-box;
}

.topbanner > li {
	width: 100%;
	text-align: center;
	margin-top: 20px;
}

.topbanner > li img {
	max-width: 960px;
	height: auto;
}





/* service */

.service-block {
	margin-top: 30px;
}

section#service .service-block:nth-of-type(1) {
	margin-top: 15px;
}

.service-block > h2 {
	background: #0083CE;
	background: -moz-linear-gradient(left, #0083CE, #fff);
	background: -webkit-linear-gradient(left, #0083CE, #fff);
	background: linear-gradient(to right, #0083CE, #fff);
	padding: 0.2em 0.8em;
	color: #fff;
	font-size: 2.0rem;
}

.service-gaiyou {
	margin-top: 10px;
	display: flex;
	justify-content: space-between;
}

.service-gaiyou figure {
	width: 300px;
	margin-top: 4px;
}

.service-gaiyou img {
	width: 100%;
	height: auto;
}

.service-gaiyou p {
	font-size: 1.6rem;
	line-height: 1.8;
}

.service-gaiyou figure + div {
	width: 640px;
}

.service-detail {
	margin-top: 10px;
	background: #e9eef0;
	padding: 10px 10px 10px;
	font-size: 1.6rem;
	line-height: 1.7;
}

.wdh300 { width: 300px; }
.wdh320 { width: 320px; }
.wdh340 { width: 340px; }
.wdh360 { width: 360px; }
.wdh380 { width: 380px; }
.wdh400 { width: 400px; }
.wdh420 { width: 420px; }
.wdh440 { width: 440px; }
.wdh460 { width: 460px; }
.wdh480 { width: 480px; }
.wdh500 { width: 500px; }
.wdh520 { width: 520px; }
.wdh540 { width: 540px; }
.wdh560 { width: 560px; }
.wdh580 { width: 580px; }
.wdh600 { width: 600px; }
.wdh620 { width: 620px; }
.wdh640 { width: 640px; }
.wdh660 { width: 660px; }
.wdh680 { width: 680px; }
.wdh700 { width: 700px; }

.column1block-text,
.column1block-image,
.column1block-youtube {
	margin-top: 20px;
}

#info-detail .column1block-text,
#info-detail .column1block-image,
#info-detail .column1block-youtube {
	margin-top: 30px;
}

.column1block-image {
	text-align: center;
}

.column2block {
	display: flex;
	justify-content: space-between;
	margin-top: 20px;
}

#info-detail .column2block {
	margin-top: 30px;
}

.service-detail div:nth-of-type(1) {
	margin-top: 0;
}

.column1block-text p,
.column2block p {
	margin-top: 1.0em;
}

.column1block-text :nth-child(1),
.column2block :nth-child(1) {
	margin-top: 0;
}

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

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

.column1block-image figure {
	display: inline-block;
}

.column1block-image figcaption,
.column2block figcaption {
	padding: 0 8px;
	font-size: 1.5rem;
	line-height: 1.4;
	margin-top: 4px;
	text-align: left;
}

.column1block-text ul,
.column2block ul {
	list-style-type: disc;
	padding-left: 1.5em;
	margin-top: 1.0em;
}

.column1block-text ol,
.column2block ol {
	list-style-type: decimal;
	padding-left: 1.5em;
	margin-top: 1.0em;
}

.column1block-youtube iframe {
	width: 940px;
	height: 528.75px;
}

#info-detail .column1block-youtube iframe {
	width: 960px;
	height: 540px;
}

.service-detail {
	display: none;
}

.service-btn {
	text-align: right;
}

.service-btn span {
	display: inline-block;
	background: #728088;
	color: #fff;
	cursor: pointer;
	padding: 0 1em 0.2em;
	font-size: 1.4rem;
}






/* message */

#message > div {
	display: flex;
	justify-content: space-between;
	margin-top: 15px;
}

#message p {
	font-size: 1.6rem;
	line-height: 1.8;
}

#message figure + p {
	width: 640px;
}

#message figure {
	width: 300px;
	margin-top: 4px;
}

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




/* company */

dl#company {
	width: 100%;
	font-size: 1.6rem;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

dl#company > dt {
	display: block;
	width: 180px;
	margin-top: 16px;
	border-top: solid 1px #ccc;
	padding: 16px 10px 0;
	box-sizing: border-box;
}

dl#company > dd {
	display: block;
	width: 780px;
	margin-top: 16px;
	border-top: solid 1px #ccc;
	padding: 16px 10px 0;
	box-sizing: border-box;
}

dl#company > dt:first-child,
dl#company > dt:first-child + dd {
	border-top: none;
	padding-top: 10px;
}




/* access */

p#access {
	width: 100%;
	margin: 15px auto 0;
	box-sizing: border-box;
	font-size: 1.6rem;
}

#map {
	overflow: hidden;
	width: 100%;
	box-sizing: border-box;
	margin: 15px auto 0;
}

#map iframe {
	height: 385px;
}



#contactbtn {
	width: 1000px;
	margin: 40px auto 0;
	text-align: center;
}

#contactbtn a {
	display: block;
	width: 500px;
	background: #ffae00;
	color: #fff;
	font-size: 2.8rem;
	margin: 0 auto;
	border-radius: 30px;
	padding: 8px 0;
}

#contactbtn a:hover {
	text-decoration: none;
}







.pcspl {
	width: 1000px;
	padding: 0 20px;
	box-sizing: border-box;
	margin: 30px auto 0;
	font-size: 1.6rem;
	line-height: 1.8;
	overflow: hidden;
}

div.pcspl p {
	margin-bottom: 1em;
}

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

div.pcspl .aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

div.pcspl .alignright {
	float: right;
	margin-left: 1em;
}

div.pcspl .alignleft {
	float: left;
	margin-right: 1em;
}

div.pcspl ul {
	margin-left: 24px;
	list-style-type: disc;
}

div.pcspl ol {
	margin-left: 24px;
	list-style-type: decimal;
}



div.pcspl table {
	max-width: 100% !important;
	box-sizing: border-box;
}



#info-article {
	margin-bottom: 60px;
}



/* form */

#contact p {
	font-size: 1.6rem;
	line-height: 1.7;
	margin-top: 1em;
}

.contact-text {
	font-size: 1.6rem;
	line-height: 1.7;
	margin-top: 20px;
}


dl.list-graph {
	width: 100%;
	box-sizing: border-box;
	margin: 40px auto 0;
	overflow: hidden;
	line-height: 2;
}

dl.list-graph dt {
	display: block;
	width: 200px;
	float: left;
	clear: left;
	font-weight: bold;
	font-size: 1.6rem;
	margin-top: 20px;
	border-top: solid 1px #333;
	padding: 20px 10px 0;
	box-sizing: border-box;
}


dl.list-graph dd {
	display: block;
	width: 760px;
	float: left;
	font-size: 1.6rem;
	margin-top: 20px;
	border-top: solid 1px #333;
	padding: 20px 10px 0;
	box-sizing: border-box;
}

dl.list-graph dt:first-child,
dl.list-graph dt:first-child + dd {
	border-top: none;
	margin-top: 0;
	padding-top: 0;
}

dl.list-graph-form dt {
	width: 280px;
}

dl.list-graph-form dd {
	width: 680px;
}

dl.list-graph-form dt span.req {
	color: #fff;
	background: #ff0000;
	font-weight: normal;
	font-size: 1.3rem;
	padding: 1px 4px 2px;
	margin-left: 5px;
}

dl.list-graph-form dd span.error,
p span.error {
	font-size: 1.3rem !important;
	color: #ff0000 !important;
}

dl.list-graph-form input[type=text],
dl.list-graph-form input[type=email] {
	font-size: 1.6rem;
	padding: 4px;
	box-sizing: border-box;
	width: 100%;
}

dl.list-graph-form .form-tel input[type=text] {
	width: 5em;
}

dl.list-graph-form .form-zip input[type=text]:nth-child(1) {
	width: 3em;
}

dl.list-graph-form .form-zip input[type=text]:nth-child(2) {
	width: 4em;
}

dl.list-graph-form dd textarea {
	font-size: 1.6rem !important;
	padding: 4px;
	box-sizing: border-box;
	width: 100%;
	height: 10em;
}

#form-btn {
	width: 1000px;
	padding: 0 20px;
	box-sizing: border-box;
	margin: 50px auto 0;
	text-align: center;
	display: flex;
	justify-content: center;
}

#form-btn .submit {
	background: #cf311c !important;
	color: #fff;
	border: none;
	font-size: 1.6rem;
	font-weight: bold;
	padding: 10px 30px;
	cursor: pointer;
	margin: 0 10px;
}

#form-btn .backbtn {
	background: #c0c0c0 !important;
	color: #333;
	border: none;
	font-size: 1.6rem;
	font-weight: bold;
	padding: 10px 30px;
	cursor: pointer;
	margin: 0 10px;
}

p.kiyaku-text {
	font-size: 1.4rem;
	margin-top: 1em;
}

.mw_wp_form_input .confirmonly {
	display: none;
}

.mw_wp_form_confirm .inputonly {
	display: none;
}


button, input, select, textarea {
	font-family : inherit;
	font-size : 100%;
}

.doui {
	font-size: 120% !important;
}

.doui .mwform-checkbox-field-text {
	display: none;
}

@media screen and (max-width: 599px) {
.doui {
	font-size: 110% !important;
}
.horizontal-item {
	display: inline-block !important;
}
}


p.kiyaku-text {
	font-size: 1.4rem !important;
	margin-top: 1em;
	line-height: 1.8 !important;
}
