@charset "utf-8";
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-text-size-adjust: none;
}
html {
    color: #000000;
    font-size: 62.5%;
    line-height: 1.7rem;
	letter-spacing: 0.07rem;
    font-family: "Kozuka Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", sans-serif;
}

@media all and (-ms-high-contrast:none) {
	html {
		font-family: "メイリオ",sans-serif;
	}
}
body {
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
	font-size: 1.3rem;
	color: #000000;
	background-color: #FFFFFF;
}
a {
    color: #000000;
}
a[target="_blank"]:after {
	font-family: 'bussyozan' !important;
	content:"\e908";
	margin-left: 0.5em;
	font-size: 90%;
}
a[href$=".pdf"]:after {
	font-family: 'bussyozan' !important;
	content:"（PDF）";
	margin-left: 0em;
	font-size: 80%;
}
header, footer, main, section, article, nav {
    display: block;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
}
img {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    border-style: none;
    width: auto;
    height: auto;
    max-width: 100%;
    vertical-align: bottom;
    display: inline;
}
.dissolve {
    display: inline-block;
    position: relative;
    transition: 0.3s all;
}
.dissolve:after {
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 2;
    background-color: rgba(239,241,241,1.00);
    content: "";
    opacity: 1;
    transition: 0.3s all;
}
.dissolve.active:after {
    z-index: 2;
    opacity: 0;
    transition: 1s all;
}
.base_button {
    display: block;
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
    width: 57vw;
    max-width: 214px;
    color: #000000;
    text-decoration: none;
    text-align: center;
    border: 1px solid #000000;
    font-weight: bold;
    padding-top: 10px;
    padding-right: 0px;
    padding-bottom: 10px;
    padding-left: 0px;
    border-radius: 4px;
}
.pagenation {
    width: 83.5%;
    margin-top: 40px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
    display: block;
    text-align: center;
}
.pagenation a ,.pagenation .current_page{
    display: inline-block;
    margin-top: 0px;
    margin-right: 0.5em;
    margin-bottom: 0px;
    margin-left: 0.5em;
    padding-top: 0.1em;
    padding-right: 0.8em;
    padding-bottom: 0.1em;
    padding-left: 0.8em;
    text-decoration: none;
    color: #000000;
    border: 1px solid #9D9D9D;
    border-radius: 4px;
    letter-spacing: 0rem;
}
.pagenation .current_page {
    background-color: #ECECEC;
}
.youtube{
  position:relative;
  width:100%;
  padding-top:56.25%;
}
.youtube iframe{
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:100%;
}
.table {
    width: 100%;
    height: auto;
    display: table;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
	table-layout: fixed;
}
.table .cell {
    display: table-cell;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
}
.pc {
    display: none;
}
.loading {
	display: table;
	width: 100%;
	height: 100%;
	background-color: #FFFFFF;
	position: absolute;
	top: 0px;
	left: 0px;
	z-index: 100;
}
.loading.off {
}
.loading .cell {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}
@keyframes loading_off {
    0% {opacity: 1;top: 0px;}
    99% {opacity: 0;top: 0px;}
    100% {top: -100vh;}
}
@keyframes loading {
  0%,100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
  }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
  }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
  }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
  }
}
.loading .cell .circles {
	color: #003B20;
	font-size: 10px;
	margin: 100px auto;
	width: 0.8em;
	height: 0.8em;
	border-radius: 50%;
	position: relative;
	text-indent: -9999em;
	animation: loading 1.3s infinite linear;
}
.loading.off {
    top: -100vh;
    opacity: 0;
	animation-name: loading_off;
	animation-duration: 0.3s;
	overflow-y: hidden;
	overflow-x: hidden;
}
header  {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    background-color: #FFFFFF;
    position: fixed;
    z-index: 10;
    top: 0px;
    left: 0px;
    width: 100%;
    border-bottom: 1px solid #9D9D9D;
}
header .area {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    height: 74px;
}
header .area .logo {
    display: table;
    table-layout: fixed;
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    height: 100%;
    width: 100%;
    max-width: 56px;
}
header .area .logo a {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}
header .area nav {
    height: calc(100vh - 74px);
    overflow-y: auto;
    overflow-x: hidden;
    transition: 0.3s all;
    background-color: #FFFFFF;
    width: 80%;
    position: fixed;
    left: 100%;
    top: 75px;
    border-left: 1px solid #9D9D9D;
}
header .area nav.active {
    height: calc(100vh - 65px);
    transition: 0.3s all;
    left: 20%;
}
header .area nav ul.menu {
    display: table;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    width: 100%;
}
header .area nav ul.menu li {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    border-bottom: 1px solid #9D9D9D;
    display: block;
}
header .area nav ul.menu li a,
header .area nav ul.menu li p{
    padding-top: 0px;
    padding-right: 27px;
    padding-bottom: 0px;
    padding-left: 27px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    display: table;
    width: 100%;
    height: 65px;
    text-decoration: none;
    color: #000000;
    background-color: #F1F2F5;
    position: relative;
}
header .area nav ul.menu li a:after  {
    width: 10px;
    height: 10px;
    display: block;
    border-left: 1px none #000000;
    border-right: 1px solid #000000;
    border-bottom: 1px none #000000;
    border-top: 1px solid #000000;
    content: "";
    position: absolute;
    right: 16px;
    top: 50%;
    margin-top: -5px;
    transform: rotate(45deg);
}
header .area nav ul.menu li.active a ,header .area nav ul.menu li a:hover{
    background-color: #F5F5F5;
}
header .area nav ul.menu li.white a {
    background-color: #FFFFFF;
}
header .area nav ul.menu li a span.txt,
header .area nav ul.menu li p span.txt{
    display: table-cell;
    vertical-align: middle;
}
header .area nav ul.menu li a span.txt:before,
header .area nav ul.menu li p span.txt:before{
    display: none;
}
header .area nav ul.menu li a[target="_blank"] span.txt:after {
	font-family: 'bussyozan' !important;
	content:"\e908";
	margin-left: 0.5em;
	font-size: 90%;
}
header .area nav ul.header_sns {
    display: table;
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
    width: auto;
    padding-top: 32px;
    padding-right: 0px;
    padding-bottom: 32px;
    padding-left: 0px;
}
header .area nav ul.header_sns li {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 1.2em;
    padding-bottom: 0px;
    padding-left: 1.2em;
    display: table-cell;
    vertical-align: middle;
    text-align: center;
	letter-spacing: 0rem;
}
header .area nav ul.header_sns li a {
    color: #000000;
    text-decoration: none;
}
header .area nav ul.header_sns li a[target="_blank"]:after {
    display: none;
}
header .area nav ul.header_sns li a span {
    font-size: 0px;
}
header .area nav ul.header_sns li a span:before {
    font-size: 3.2rem;
}
header .area nav ul.menu li ul.sub {
    width: 100%;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
}
header .area nav ul.menu li ul.sub li {
    border-bottom-style: none;
    border-top: 1px solid #9D9D9D;
}
header .area nav ul.menu li ul.sub li a {
    background-color: #FFFFFF;
    padding-left: 54px;
}



header #hamburger {
    position: absolute;
    top: 0px;
    right: 0px;
    height: 74px;
    width: 65px;
    display: table;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
}
header #hamburger .cell {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}
header #hamburger .cell a {
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    display: block;
    width: 20px;
    height: 20px;
    background-color: #FFFFFF;
    font-size: 0px;
    position: relative;
}
header #hamburger .cell a span ,
header #hamburger .cell a:before,
header #hamburger .cell a:after{
    display: block;
    width: 100%;
    height: 3px;
    position: absolute;
    background-color: #000000;
}
header #hamburger .cell a:before,
header #hamburger .cell a:after{
    content: "";
}
header #hamburger .cell a:before {
    top: 0px;
    left: 0px;
	transition: 0.3s all;
}
header #hamburger .cell a span {
    top: 50%;
    left: 0px;
    margin-top: -1.5px;
    transition: 0.3s all;
}
header #hamburger .cell a:after {
    top: auto;
    left: 0px;
    bottom: 0px;
	transition: 0.3s all;
}
header #hamburger.active .cell a:before {
    top: 50%;
    transition: 0.3s all;
    transform: rotate(45deg);
    margin-top: -1.5px;
}
header #hamburger.active .cell a span {
    opacity: 0;
	transition: 0.3s all;
}
header #hamburger.active .cell a:after {
    bottom: 50%;
    transition: 0.3s all;
    transform: rotate(-45deg);
    margin-bottom: -1.5px;
}
main {
    margin-top: 75px;
}
.page_img {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    position: relative;
}
.page_img h1 {
    display: table;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    table-layout: fixed;
}
.page_img h1 span {
    display: table-cell;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 3%;
    padding-bottom: 0px;
    padding-left: 3%;
    background-size: 0px auto;
}
.page_img h1 span img {
    width: 30%;
    max-width: 230px;
}
.page_img .back {
    display: block;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}
.page_img .back img {
    width: 100%;
}

.page_img .back.pc {
    display: none;
}
footer {
    background-color: #F9F9F9;
    padding-top: 35px;
    margin-top: 40px;
}
footer .footer_logo {
    text-align: center;
    width: 94%;
    max-width: 115px;
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
}
footer .footer_sns {
    margin-top: 35px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    display: table;
    letter-spacing: 0rem;
    width: auto;
}
footer .footer_sns li {
    display: table-cell;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 1.5em;
    padding-bottom: 0px;
    padding-left: 1.5em;
    width: auto;
    vertical-align: middle;
    text-align: center;
}
footer .footer_sns li a {
    color: #000000;
    text-decoration: none;
}
footer .footer_sns li a[target="_blank"]:after {
    display: none;
}
footer .footer_sns li a span {
    font-size: 0px;
}
footer .footer_sns li a span:before {
    font-size: 3.2rem;
}
footer .footer_nav {
    display: none;
}
footer .green_block {
    background-color: #003C17;
    color: #FFFFFF;
    padding-top: 17.5px;
    padding-bottom: 17.5px;
    font-size: 1rem;
    margin-top: 35px;
    position: relative;
}
footer .green_block #pagetop {
    display: block;
    width: 38px;
    height: 38px;
    position: fixed;
    right: 3vw;
    bottom: 0px;
    z-index: 3;
    opacity: 0;
    transition: 0.3s all;
}
footer .green_block #pagetop.active {
    opacity: 1;
	transition: 0.3s all;
}
footer .green_block #pagetop a {
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.70);
    font-size: 0px;
    border-radius: 100px;
    position: relative;
    margin-top: -30px;
}
footer .green_block #pagetop a:after  {
    display: block;
    width: 10px;
    height: 10px;
    content: "";
    border-left: 1px solid #FFFFFF;
    border-right: 1px none #FFFFFF;
    border-bottom: 1px none #FFFFFF;
    border-top: 1px solid #FFFFFF;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -5px;
    margin-top: -3px;
    transform: rotate(45deg);
}
footer .green_block .green_nav {
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    width: 94%;
    display: table;
}
footer .green_block .green_nav li {
    display: block;
}
footer .green_block .green_nav li a {
    color: #FFFFFF;
    text-decoration: none;

}
footer .green_block .green_nav li a span {
    text-decoration: underline;
}

footer .green_block .copyright {
    width: 94%;
    margin-top: 20px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
    line-height: 1.3em;
}

@media only screen and (min-width:640px) {
a {
    opacity: 1;
    transition: all 0.3s;
}
a:hover {
    opacity: 0.7;
    transition: all 0.3s;
}
.pc {
    display: inline;
}
.sp {
    display: none;
}
.page_img h1 span {
    padding-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    vertical-align: middle;
    background-repeat: no-repeat;
    background-position: left center;
    background-size: auto auto;
}
.page_img h1 span img {
    max-width: none;
    width: 100%;
}
.page_img .back.sp {
    display: none;
}
.page_img .back.pc {
    display: block;
}
footer {
    padding-top: 40px;
    margin-top: 80px;
}
footer .footer_logo {
    max-width: 116px;
}
footer .footer_sns {
    margin-top: 40px;
}
footer .footer_sns li a span:before {
    font-size: 3.5rem;
}
footer .green_block {
    padding-left: 30px;
    padding-right: 30px;
    display: table;
    width: 100%;
    margin-top: 40px;
    padding-top: 35px;
    padding-bottom: 35px;
}
footer .green_block #pagetop {
    width: 48px;
    height: 48px;
}
footer .green_block.active #pagetop {
    position: absolute;
    top: -38px;
    bottom: auto;
}
footer .green_block .green_nav {
    width: auto;
    margin-left: 0px;
    float: left;
}
footer .green_block .green_nav li {
    display: table-cell;
    vertical-align: middle;
    padding-right: 1em;
    line-height: 1em;
}
footer .green_block .green_nav li + li {
    padding-left: 1em;
    border-left: 1px solid #FFFFFF;
}
footer .green_block .copyright {
    width: auto;
    float: right;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    line-height: 1em;
}
}

@media only screen and (min-width:770px){
header #hamburger {
    display: none;
}
header .area {
    padding-left: 30px;
    padding-right: 30px;
    position: relative;
}
header .area .logo {
    margin-left: 0px;
    width: 6%;
}
header .area nav ul.header_sns {
    display: none;
}
header .area nav {
    width: auto;
    height: 100%;
    right: 0px;
    top: 0px;
    left: auto;
    position: absolute;
    display: block;
    border-style: none;
    padding-right: 30px;
}
header .area nav.active {
    height: 100%;
    left: auto;
}
header .area nav ul.menu {
    height: 100%;
    width: auto;
    margin-left: auto;
    margin-right: 0px;
}
header .area nav ul.menu li  {
    display: table-cell;
    border-style: none;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    vertical-align: middle;
    letter-spacing: 0rem;
}
header .area nav ul.menu li a,
header .area nav ul.menu li p{
    height: 100%;
    background-color: #FFFFFF;
    padding-left: 10px;
    padding-right: 10px;
    display: table;
}
header .area nav ul.menu li a span.txt,
header .area nav ul.menu li p span.txt{
    font-size: 0rem;
    display: table-cell;
    vertical-align: middle;
}
header .area nav ul.menu li a span.txt:before,
header .area nav ul.menu li p span.txt:before{
    display: inline-block;
    font-size: 1rem;
}
header .area nav ul.menu li a:after  {
    display: none;
}
header .area nav ul.menu li.button {
    padding-left: 10px;
}

header .area nav ul.menu li.button a  {
    display: inline-table;
    background-color: #023C20;
    color: #FFFFFF;
    padding-top: 1em;
    height: auto;
    padding-bottom: 1em;
    border-radius: 2em;
    text-align: center;
}
header .area nav ul.menu li.sp {
    display: none;
}
header .area nav ul.menu li ul.sub {
    display: none;
    position: fixed;
    background-color: #FFFFFF;
    width: auto;
    z-index: 2;
    top: 70px;
    border: 1px solid #9D9D9D;
    padding-top: 10px;
    padding-right: 10px;
    padding-bottom: 10px;
    padding-left: 10px;
}
header .area nav ul.menu li:hover ul.sub {
    display: block;
}

header .area nav ul.menu li ul.sub li {
    display: table;
    border-top-style: none;
}
header .area nav ul.menu li ul.sub li:before {
    content: "・";
    display: table-cell;
    vertical-align: top;
}

header .area nav ul.menu li ul.sub li a {
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    background-color: #FFFFFF;
}
header .area nav ul.menu li ul.sub li a span.txt {
    font-size: 1rem;
    text-decoration: underline;
}

}

@media only screen and (min-width:910px){
header .area nav ul.menu li a {
    padding-left: 15px;
    padding-right: 15px;
}

footer .footer_nav {
    display: table;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    margin-top: 40px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
}
footer .footer_nav li {
    display: table-cell;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 1em;
    padding-bottom: 0px;
    padding-left: 1em;
    line-height: 1em;
    position: relative;
    cursor: pointer;
}
footer .footer_nav li + li {
    border-left: 1px solid #000000;
}
footer .footer_nav li a {
    color: #000000;
}
footer .footer_nav li p {
    text-decoration: underline;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
}
footer .footer_nav li ul.sub {
    display: none;
    position: absolute;
    width: auto;
    padding-top: 1em;
    padding-right: 0.5em;
    padding-bottom: 1em;
    padding-left: 0.5em;
    top: 100%;
    left: 0px;
    background-color: #FFFFFF;
    border: 1px solid #000000;
    z-index: 1;
    margin-top: 1.5px;
}
footer .footer_nav li:hover ul.sub {
    display: block;
}

footer .footer_nav li ul.sub li {
    white-space: nowrap;
    display: block;
}
footer .footer_nav li ul.sub li:before {
    content: "・";
}
footer .footer_nav li ul.sub li + li {
    border-style: none;
    margin-top: 1em;
}




}

@media only screen and (min-width:1015px) {
header .area nav ul.menu li a {
    padding-left: 20px;
    padding-right: 20px;
}

}

@media only screen and (min-width:1140px) {
header .area nav ul.menu li a span.txt:before ,
header .area nav ul.menu li p span.txt:before ,
header .area nav ul.menu li ul.sub li a span.txt {
	font-size: 1.3rem;
}

}
