@charset "utf-8";


/* Sanitize
-------------------------------------------------------*/
/*! sanitize.css v3.3.0 | CC0 1.0 Public Domain | github.com/10up/sanitize.css */
/* Latest tested: Android 6, Chrome 48, Edge 13, Firefox 44, Internet Explorer 11, iOS 9, Opera 35, Safari 9, Windows Phone 8.1 */
/*
* Normalization
*/
abbr[title] {
text-decoration: underline; /* Chrome 48+, Edge 12+, Internet Explorer 11-, Safari 9+ */
text-decoration: underline dotted; /* Firefox 40+ */
}
ul, ol, li {
list-style: none;
}
audio:not([controls]) {
display: none; /* Chrome 44-, iOS 8+, Safari 9+ */
}
b,
strong {
font-weight: bolder; /* Edge 12+, Safari 6.2+, and Chrome 18+ */
}
button {
-webkit-appearance: button; /* iOS 8+ */
overflow: visible; /* Internet Explorer 11- */
}
button,
input {
}
button::-moz-focus-inner, input::-moz-focus-inner {
border: 0;/* Firefox 4+ */
padding: 0;/* Firefox 4+ */
}
button:-moz-focusring, input:-moz-focusring {
outline: 1px dotted ButtonText;/* Firefox 4+ */
}
button,
select {
text-transform: none; /* Firefox 40+, Internet Explorer 11- */
}
details {
display: block; /* Edge 12+, Firefox 40+, Internet Explorer 11-, Windows Phone 8.1+ */
}
html {
-ms-overflow-style: -ms-autohiding-scrollbar; /* Edge 12+, Internet Explorer 11- */
overflow-y: scroll; /* All browsers without overlaying scrollbars */
-webkit-text-size-adjust: 100%; /* iOS 8+, Windows Phone 8.1+ */
}
hr {
overflow: visible; /* Internet Explorer 11-, Edge 12+ */
}
input {
border-radius: 0 /* iOS 8+ */
}
input[type="button"],
input[type="reset"],
input[type="submit"] {
-webkit-appearance: button;/* iOS 8+ */
}
input[type="number"] {
width: auto;/* Firefox 36+ */
}
input[type="search"] {
-webkit-appearance: textfield;/* Chrome 45+, Safari 9+ */
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;/* Chrome 45+, Safari 9+ */
}
main {
display: block; /* Android 4.3-, Internet Explorer 11-, Windows Phone 8.1+ */
}
pre {
overflow: auto; /* Internet Explorer 11- */
}
progress {
display: inline-block; /* Internet Explorer 11-, Windows Phone 8.1+ */
}
summary {
display: block; /* Firefox 40+, Internet Explorer 11-, Windows Phone 8.1+ */
}
svg:not(:root) {
overflow: hidden; /* Internet Explorer 11- */
}
template {
display: none; /* Android 4.3-, Internet Explorer 11-, iOS 7-, Safari 7-, Windows Phone 8.1+ */
}
textarea {
overflow: auto; /* Edge 12+, Internet Explorer 11- */
}
[hidden] {
display: none; /* Internet Explorer 10- */
}
/*
* Universal inheritance
*/
*,
:before,
:after {
box-sizing: inherit;
}
* {
font-size: inherit;
line-height: inherit;
}
:before,
:after {
text-decoration: inherit;
vertical-align: inherit;
}
button,
input,
select,
textarea {
font-family: inherit;
font-style: inherit;
font-weight: inherit;
}
/*
* Opinionated defaults
*/
/* specify the margin and padding of all elements */
* {
margin: 0;
padding: 0;
}
/* specify the border style and width of all elements */
*,
:before,
:after {
border-style: solid;
border-width: 0;
}
/* remove the tapping delay from clickable elements */
a,
area,
button,
input,
label,
select,
textarea,
[tabindex] {
-ms-touch-action: manipulation;
touch-action: manipulation;
}
/* specify the standard appearance of selects */
select {
-moz-appearance: none;    /* Firefox 40+ */
-webkit-appearance: none /* Chrome 45+ */
}
select::-ms-expand {
display: none;/* Edge 12+, Internet Explorer 11- */
}
select::-ms-value {
color: currentColor;/* Edge 12+, Internet Explorer 11- */
}
/* use current current as the default fill of svg elements */
svg {
fill: currentColor;
}
/* specify the progress cursor of updating elements */
[aria-busy="true"] {
cursor: progress;
}
/* specify the pointer cursor of trigger elements */
[aria-controls] {
cursor: pointer;
}
/* specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] {
cursor: default;
}
/* specify the style of visually hidden yet accessible elements */
[hidden][aria-hidden="false"] {
clip: rect(0 0 0 0);
display: inherit;
position: absolute
}
[hidden][aria-hidden="false"]:focus {
clip: auto;
}
/*
* Configurable defaults
*/
/* specify the background repeat of all elements */
* {
background-repeat: no-repeat;
}
/* specify the root styles of the document */
:root {
background-color: #ffffff;
box-sizing: border-box;
color: #000000;
cursor: default;
font: 100%/1.5 sans-serif;
}
/* specify the text decoration of anchors */
a {
text-decoration: none;
}
/* specify the alignment of media elements */
audio,
canvas,
iframe,
img,
svg,
video {
vertical-align: middle;
}
/* specify the coloring of form elements */
button,
input,
select,
textarea {
background-color: transparent;
color: inherit;
}
/* specify the minimum height of form elements */
button,
[type="button"],
[type="date"],
[type="datetime"],
[type="datetime-local"],
[type="email"],
[type="month"],
[type="number"],
[type="password"],
[type="reset"],
[type="search"],
[type="submit"],
[type="tel"],
[type="text"],
[type="time"],
[type="url"],
[type="week"],
select,
textarea {
min-height: 1.5em;
}
/* specify the font family of code elements */
code,
kbd,
pre,
samp {
font-family: monospace, monospace;
}
/* specify the list style of nav lists */
nav ol,
nav ul {
list-style: none;
}
/* specify the font size of small elements */
small {
font-size: 75%;
}
/* specify the border styling of tables */
table {
border-collapse: collapse;
border-spacing: 0;
}
/* specify the resizability of textareas */
textarea {
resize: vertical;
}
/* specify the background color, font color, and drop shadow of text selections */
::-moz-selection {
background-color: #b3d4fc; /* required when declaring ::selection */
color: #ffffff;
text-shadow: none;
}
::selection {
background-color: #b3d4fc; /* required when declaring ::selection */
color: #ffffff;
text-shadow: none;
}
.clearfix:after {
content: "";
clear: both;
display: block;
}


/* common
-------------------------------------------------------*/
html {
overflow: auto;
}
body {
overflow: hidden;
position: relative;
font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
min-width: 1080px;
}
.sp {
display: none!important;
}
@media screen and (max-width:768px) {
body {
min-width: auto;
}
.pc {
display: none!important;
}
.sp {
display: block!important;
}
}


/* header
-------------------------------------------------------*/
#header {
position: relative;
}
#header.fixed {
position: fixed;
top: 0px;
z-index: 10;
background: #fff;
width: 100%;
}
#header img {
width: 100%;
}
#header a {
transition: .4s;
}
#header a:hover {
opacity: .6;
}
#header .head {
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: space-between;
padding: 20px;
position: relative;
}
#header .head .logo img {
max-width: 200px;
}
#header .head ul {
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: flex-end;
}
#header .head ul li {
padding: 0 0 0 10px;
}
#header .head ul li img {
max-width: 190px;
}
#header .head ul .logo img {
max-width: 200px;
}
#header .head ul .tel img {
max-width: 260px;
}
@media screen and (max-width:768px) {
#header.fixed {
position: relative;
}
#header .head .logo img {
max-width: 93px;
min-width: 93px;
}
}


/* nav
-------------------------------------------------------*/
#nav ul {
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: center;
background-color: #158F48;
}
#nav li {
background: #3FB14F;
border: 1px solid #9FCAA4;
}
#nav li a {
display: block;
}
#nav li a img {
max-width: 200px;
}
@media screen and (max-width:768px) {
#nav {
display: none;
}
}

/* nav_sp
-------------------------------------------------------*/
@media screen and (max-width:768px) {
#dl-menu {
display: block;
float: none;
z-index: 10;
position: absolute;
top: 50%!important;
right: 0;
transform: translate(0,-50%);
width: 100%;
height: 30px;
}
#dl-menu button {
width: 30px;
height: 30px;
position: absolute;
right: 20px;
float: none;
border: none;
margin: 0;
background: linear-gradient(to bottom,#1d9a40 0,#1d9a40 20%,transparent 20%,transparent 40%,#1d9a40 40%,#1d9a40 60%,transparent 60% ,transparent 80%,#1d9a40 80%,#1d9a40 100%);
}
#dl-menu .dl-menu {
margin: 50px 0 0;
}
.dl-menuwrapper button:after {
display: none;
}
.dl-menuwrapper li a {
padding: 15px!important;
line-height: 1.3!important;
}
}


/* breadcrumb
-------------------------------------------------------*/
#breadcrumbs {
display: none;
}
@media screen and (min-width:769px) {
#breadcrumbs {
display: block;
font-size: 1rem;
width: 840px;
margin: 1rem auto 3rem auto;
color: #000000;
letter-spacing: 5px;
}
#breadcrumbs a {
color: #000000;
}
#breadcrumbs ol li {
display: inline;
list-style-type: none;
}
#breadcrumbs ol li:before {
content: " > ";
}
#breadcrumbs ol li:first-child:before {
content:"";
}
}


/* main
-------------------------------------------------------*/
#main {
margin: 0;
}


/* footer
-------------------------------------------------------*/
#footer {
padding: 70px 20px 30px;
box-sizing: border-box;
background: #4D4D4D;
position: relative;
text-align: center;
color: #fff;
}
#footer a {
transition: .4s;
color: #fff;
}
#footer a:hover {
opacity: .6;
}
#footer .wrap {
position: relative;
}
#footer .logo {
position: absolute;
top: 50%;
left: 100px;
transform: translate(0,-50%);
max-width: 150px;
}
#footer .ul01 {
display: flex;
flex-flow: row wrap;
align-items: center;
justify-content: center;
max-width: 470px;
margin: 0 auto;
}
#footer .ul01 li {
margin: 0 0 7px;
font-size: 80%;
}
#footer .ul01 li::after {
content: "｜";
display: inline-block;
margin: 0 5px;
}
#footer .ul02 {
display: flex;
flex-flow: row nowrap;
align-items: flex-start;
justify-content: center;
margin: 10px 0;
}
#footer .ul02 li img {
max-width: 30px;
}
#footer img {
width: 100%;
}
@media screen and (max-width:768px) {
#footer {
padding: 30px 20px;
}
#footer .ul01 {
align-items: stretch;
max-width: 100%;
}
#footer .ul01 li {
margin: 0 0.5% 1% 0;
width: 49.5%;
text-align: left;
background: #666666;
padding: 15px 1.5%;
box-sizing: border-box;
display: flex;
align-items: center;
font-size: 3vw;
}
#footer .ul01 li:nth-child(even) {
margin: 0 0 1% 0.5%;
}
#footer .ul01 li::after {
display: none;
}
#footer .ul02 li img {
max-width: 47px;
}
}



/* pagetop
-------------------------------------------------------*/
#pagetop {
position: absolute;
top: -50px;
right: 50px;
transition : .4s;
}
#pagetop:hover {
margin-top: -10px;
}
#pagetop img {
max-width: 120px;
}


/* 過去追加CSS
-------------------------------------------------------*/
.contact .description h4{
text-align:center;
}
.contact .description h5 {
text-align:center;
}


/* 追加css【20190624～】
-------------------------------------------------------*/



/*ドロップダウン*/

.menu {
    position: relative;
}





ul.menu__second-level {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
}

ul.menu__third-level {
    visibility: hidden;
    opacity: 0;
}

ul.menu__fourth-level {
    visibility: hidden;
    opacity: 0;
}

.menu > li:hover {
    background: #072A24;
    -webkit-transition: all .5s;
    transition: all .5s;
}

.menu__second-level li {
}

#nav li .menu__second-level li {
	border: none;
}

.menu__second-level li a {
	background: #fff;
	padding: 15px 20px 15px 10px;
	box-sizing: border-box;
	font-size: 12px;
	color: #158f48;
	border: 2px solid #3fb14f;
	border-top: 1px;
	position: relative;
	line-height: 1.2;
}

.menu__second-level li a:after {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    margin: 0 0 0 5px;
    border-right: 1px solid #3fb14f;
    border-bottom: 1px solid #3fb14f;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
	position: absolute;
	top:50%;
	right: 15px;
	margin-top: -3px;
}

/*.menu__third-level li {
    border-top: 1px solid #3fb14f;
}

.menu__second-level li a:hover {
    background: #3fb14f;
}

.menu__third-level li a:hover {
    background: #fff;
}

.menu__fourth-level li a:hover {
    background: #fff;
}*/

/* 下矢印 */
.init-bottom:after {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    margin: 0 0 0 0px;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* floatクリア */
.menu:before,
.menu:after {
    content: " ";
    display: table;
}

.menu:after {
    clear: both;
}

.menu {
    *zoom: 1;
}

ul.menu__second-level {
	display: block !important;
}

.menu > li.menu__single {
    position: relative;
}

li.menu__single ul.menu__second-level {
    position: absolute;
   /* top: 40px;*/
	top: 80%;
    width: 100%;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}

li.menu__single:hover ul.menu__second-level {
    /*top: 60px;*/
	top: 100%;
    visibility: visible;
    opacity: 1;
}

.menu__second-level_sp li a {
	font-size: 70%;
	border: none;
	padding-top: 8px !important;
	padding-bottom: 8px !important;
}

.dl-menu span {
	display: block;
	color: #fff;
	padding-left: 15px !important;
	padding-top: 15px !important;
	padding-bottom:  5px !important;
}

.menu__second-level_sp li a:after {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    margin: 0 0 0 5px;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
	position: absolute;
	top:50%;
	right: 15px;
	margin-top: -3px;
}

/* 20200831 */
#header .head .logo img {
    max-width: 330px;
}

@media screen and (max-width:768px) {
    #header .head {
        padding: 10px 20px;
    }
    #header .head .logo img {
        max-width: 200px;
    }
}
