@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Sen:wght@800&display=swap');

/* CSS Document */


/* PC表示で電話番号リンクを無効 ◇ ------------------------------*/
@media screen and (min-width: 768px){
a[href^="tel:"] {
pointer-events: none;
cursor: default;
}
}

.wh1100  { max-width:1100px; margin: 0 auto;}
.kiji_box{min-height:500px;}
/* text ◇ ------------------------------*/
p {text-justify: inter-ideograph;}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
	font-weight: bold;
	margin: 0;
	text-rendering: optimizeLegibility;}

small {font-size: 75%;}

/* other ◇ ------------------------------*/
@media screen and  (min-width:992px) {
.max1600{max-width:1600px;margin:0 auto;padding:0 50px 30px;}
.max1400{max-width:1400px;margin:0 auto;padding:0 50px 30px;}
.max1200{max-width:1200px;margin:0 auto;padding:0 50px 30px;}
.max1000{max-width:1000px;margin:0 auto;padding:0 50px 30px;}
.max960{max-width:960px;margin:0 auto;padding:0 30px 30px;}
.max800{max-width:800px;margin:0 auto;padding:0 50px 30px;}
.max700{max-width:700px;margin:0 auto;padding:0 50px 30px;}
.max600{max-width:600px;margin:0 auto;padding:0 50px 30px;}
.max600ex{max-width:600px;margin:0 auto;padding:0 50px 30px;}
}
@media screen and (min-width:577px) and ( max-width:992px) {
.max1600{max-width:1600px;margin:0 auto;padding:0 30px 30px;}
.max1400{max-width:1400px;margin:0 auto;padding:0 30px 30px;}
.max1200{max-width:1200px;margin:0 auto;padding:0 30px 30px;}
.max1000{max-width:1000px;margin:0 auto;padding:0 30px 30px;}
.max960{max-width:960px;margin:0 auto;padding:0 30px 30px;}
.max800{max-width:800px;margin:0 auto;padding:0 30px 30px;}
.max700{max-width:700px;margin:0 auto;padding:0 30px 30px;}
.max600{max-width:600px;margin:0 auto;padding:0 30px 30px;}
.max600ex{max-width:600px;margin:0 auto;padding:0 30px 30px;}
}
@media only screen and (max-width: 576px) {
.max1600{max-width:1600px;margin:0 auto;padding:0 15px 30px;}
.max1400{max-width:1400px;margin:0 auto;padding:0 15px 30px;}
.max1200{max-width:1200px;margin:0 auto;padding:0 15px 30px;}
.max1000{max-width:1000px;margin:0 auto;padding:0 15px 30px;}
.max960{max-width:900px;margin:0 auto;padding:0 15px 15px;}
.max800{max-width:800px;margin:0 auto;padding:0 15px 30px;}
.max700{max-width:700px;margin:0 auto;padding:0 15px 30px;}
.max600{max-width:600px;margin:0 auto;padding:0 15px 30px;}
.max600ex{max-width:280px;margin:0 auto;padding:0 15px 30px;}
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
	transition: .5s;
    -ms-interpolation-mode: bicubic}

a:hover img{
  filter: opacity(70%);
}

/* ◆ margin ◇ ------------------------------*/
.ma0    { margin: 0px}
.ma5    { margin: 5px}

.mt5    { margin-top: 5px}
.mt10   { margin-top: 10px}
.mt15   { margin-top: 15px}
.mt20   { margin-top: 20px}
.mt30   { margin-top: 30px}
.mt40   { margin-top: 40px}
.mt50   { margin-top: 50px}
.mt60   { margin-top: 60px}
.mt70   { margin-top: 70px}
.mt80   { margin-top: 80px}
.mt90   { margin-top: 90px}
.mt100  { margin-top: 100px}

.mb5    { margin-bottom: 5px}
.mb10   { margin-bottom: 10px}
.mb15   { margin-bottom: 15px}
.mb20   { margin-bottom: 20px}
.mb30   { margin-bottom: 30px}
.mb40   { margin-bottom: 40px}
.mb50   { margin-bottom: 50px}
.mb60   { margin-bottom: 60px}
.mb70   { margin-bottom: 70px}
.mb80   { margin-bottom: 80px}
.mb90   { margin-bottom: 90px}
.mb100  { margin-bottom: 100px}

.mr5    {margin-right: 5px}
.mr-10    {margin-right: -10px}
.mr10   {margin-right: 10px}
.mr15   {margin-right: 15px}
.mr20   {margin-right: 20px}

.ml5    {margin-left: 5px}
.ml10   {margin-left: 10px}
.ml15   {margin-left: 15px}
.ml20   {margin-left: 20px}



/* ガター幅（余白）を調整 ◇ ------------------------------*/
.row-0      { margin-left:0px; margin-right:0px;}
.row-0>div  { padding-right:0px; padding-left:0px;}

.row-10     { margin-left:-5px; margin-right:-5px;}	
.row-10>div { padding-right:5px; padding-left:5px;}

.row-20     { margin-left:-10px; margin-right:-10px;}
.row-20>div { padding-right:10px; padding-left:10px;}

.row-30     { margin-left:-15px; margin-right:-15px;}
.row-30>div { padding-right:15px; padding-left:15px;}

.row-40     { margin-left:-20px; margin-right:-20px;}
.row-40>div { padding-right:20px; padding-left:20px;}

.row-50     { margin-left:-25px; margin-right:-25px;}
.row-50>div { padding-right:25px; padding-left:25px;}

.row-60     { margin-left:-30px; margin-right:-30px;}
.row-60>div { padding-right:30px; padding-left:30px;}

.row-70     { margin-left:-35px; margin-right:-35px;}
.row-70>div { padding-right:35px; padding-left:35px;}

.row-100     { margin-left:-50px; margin-right:-50px;}
.row-100>div { padding-right:50px; padding-left:50px;}

.o-3column{ margin:0 -60px;}
.o-3column>div{ padding: 0 60px;}

.allclear {clear: both;}
.txt_ctr  {text-align: center;}

.txt_gr  {color:#009a5f;}

/* ヘッダー ◇ ------------------------------*/

@media (min-width: 992px) { .bp_992o {display: none;} .hd_title_box {margin:0px 0 10px 0; padding-top:30px; text-align:center;}}
@media (max-width: 991px) { .bp_991u {display: none;} .hd_title_box {margin:20px 0 10px 0px; text-align:left;}}

@media (min-width: 761px) { .bp_761o {display: none;} }
@media (max-width: 760px) { .bp_760u {display: none;} }

.body_bg {
	background-image: url("../images/common/bg_mikan.svg"), url("../images/common/bg_dot.svg");
	background-repeat: no-repeat, no-repeat;}

@media (min-width: 576px) {
	.body_bg  { background-size: 12%, 150px; background-position: right 3% top 130px, left top;}}
@media (max-width: 575px) {
	.body_bg  { background-size: 20%, 80px; background-position: right 3% top 70px, left top;}}

.hd_top_r        { position:absolute; width:110px; height:50px; right:75px; top:18px;}
.hd_top_r_access   { float:right; background:url("../images/common/icon_hd_map.svg") center center no-repeat #009a5f;}
.hd_top_r_access      { width:50px; height:50px; border-radius:30px; position:relative; transition: all .6s;}
.hd_top_r_access a    { position:absolute; top:0; left:0; width:100%; height:100%;}
.hd_top_r_access:hover{ cursor:pointer; background-color:#ffb800; }


/* ヘッダーメインメニュー ◇ ------------------------------*/

#toggle { position: fixed; top: 0; right: 0; z-index: 1001; width:80px; height:85px; text-align:center; cursor: pointer; transition : all 0.5s ease 0s;}
#toggle p{ font-size:76%; margin-top:4px; color:#009a5f; font-weight:bold;}
#toggle:hover{ opacity:0.5; filter:alpha(opacity=50); -ms-filter: "alpha( opacity=50 )";}
#toggle-box { position: relative; width: 50px; height: 30px; margin:18px auto 0;}
#toggle-box > span { height: 2px; left: 10px; display: inline-block; background: #009a5f; position: absolute; transition: all .6s;}
#toggle-box > span:nth-child(1) { top: 5px; width: 30px; }
#toggle-box > span:nth-child(2) { top: 15px; width: 30px; }
#toggle-box > span:nth-child(3) { top: 25px; width: 30px; }
.is-open #toggle-box > span {background: #009a5f;}
.is-open #toggle-box > span:nth-child(1) { top: 11px; left: 9px; transform: translateY(6px) rotate(-45deg); width: 32px;}
.is-open #toggle-box > span:nth-child(2) { top: 23px; left: 9px; transform: translateY(-6px) rotate(45deg); width: 32px;}
.is-open #toggle-box > span:nth-child(3) { top: 23px; left: 9px; transform: translateY(-6px) rotate(45deg); width: 32px;}
.is-open #nav-content {z-index: 1000; transform: translateX(0);}
#nav-content {
    z-index: 1000;
    overflow: auto;
    width: 100%;
    height: 100%;
    background-color: rgba(255,255,255,0.95);
	background-image: url(""),url("");
	background-repeat:no-repeat;
    color: #212529;
    position: fixed;
    top: 0;
    right: 0;
    text-align: center;
    transform: translateX(100%);
    transition:  transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);}

.nav-content_in{
	max-width:950px;
	margin:0 auto;
	padding:30px;}

@media (min-width: 576px) {.nav-content_in h2 {margin:60px 0;} .gnav_mu_box{margin-top:40px;}}
@media (max-width: 575px) {.nav-content_in h2 {margin:10px 0 30px; width:240px;} .gnav_mu_box{margin-top:30px;} .gnav_mu_bt{font-size:90%;}}

ul.gnav_mu   { padding-left: 10px; }
ul.gnav_mu li{ list-style:none; display: table; padding:5px 0;}


.gnav-menulist { display: table; table-layout: fixed; list-style-type: none; padding: 0; width: 100%; max-width:1100px; height: 100%;  margin:0 auto;}
.gnav-menulist li {display: table-cell; vertical-align: middle; border-left: 1px solid #fff; word-wrap: break-word; height: 100%;}
.gnav-menulist li:first-child {border-left: 0px solid #fff;}

.gnav-menulist a{
	display: inline-block;
	vertical-align: middle;
	padding: 1em;
	width: 100%;
	height: 100%;
	color:#212529;
	text-decoration: none;
	box-sizing: border-box;
	-webkit-transition: all 0.3s ease; 	-moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all  0.3s ease;}

.gnav-menulist li a:hover { color: #ff9924;}

.hm_menu {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 100%;
	text-align: center;}

.hm_menu::before,
.hm_menu::after {
	content: '';
	width: 2px;
	height: 25px;
	background-color: #ff9924;}

.hm_menu::before {
	margin-right: 25px;
	transform: rotate(-35deg)}

.hm_menu::after {
	margin-left: 25px;
	transform: rotate(35deg)}

/* フッダー ◇ ------------------------------*/
#content{ position: relative;}
#to_top{width:93px; height: 100px; position: fixed; right: 20px; bottom: 20px; z-index:999;}
#footer { background:#96d040; color:#fff; font-size:85%; padding:50px 0 30px 0;}
.footer_in  { width:90%; margin:0 auto; line-height:170%;}
.ft_left  { float: left; }
.ft_right a{ color:#fff; }
.ft_right { float: right; min-width:450px; }
.ft_right ul { padding-inline-start: 0; list-style-position: inside; list-style: none; border-top: 1px solid #fff;}
.ft_right li{ border-bottom: 1px solid #fff; padding:10px 0;}
.ft_copyright { font-size:75%; text-align:right; margin-top:20px;}
.ft_banner {text-align:center; max-width:1100px; margin:0 auto 60px;}
.ft_banner img{padding:10px;}