﻿/* ----------　基本カラー　---------- */
.txt_white {
	color: #333;}
.bg_color1 {background-color: #fff;}
.bg_color3 {background-color:#66CC33;}
.border_color2 {border-color: #66CC33;}
.border_color3 {border-color: #66cc33;}
.border_color4 {border-color: #b4b4b4;}
.txt_color1 {color: #66CC33;}
.txt_color2 {color: #f1a71e;}
.txt_color4 {color: #f1b74c;}


/* ----------　全体共通部分　---------- */
.linkStyle{
	color:#77bcba;
}
.linkStyle:hover{
	color:#77bcba;
	opacity: 0.7;
	transition: all 0.5s;
}
body, .txt_color_nomal {
	color:#333!important;
}
#main_menu ul li {
	font-weight: bold;
}
#main_menu ul li a {
	color: #66CC33;
}
#main_menu ul li a .menu_title {
	font-weight: bold;
	font-size: -webkit-calc(1rem + 1px)!important;
	font-size: calc(1rem + 1px)!important;
}
#main_menu.fixed ul li a {
	color: #fff;
}
#main_menu ul li a .menu_sub_title{
	color: #ffcd6f;
}
#f_menu ul li a {
	color: #66CC33;
}
.button_container.active .top {
	background: #66CC33;
}
.button_container.active .bottom {
	background: #66CC33;
}
#fixed_right_banner .sns_link{
	background-color: #f3f3f3;
}
.banner_box{
    margin-top: 50px;
}
.banner{
    width: 40%;
    margin: 0 2%;
    max-width: 300px;
}
#main_img2,#main_img2 .page_title,.page_title h2,.page_title h2,.cate_list li a,#page-top a,#aisatsu,#aisatsu > div,figure ,figure img {
    border-radius: 10px;
}
#top_cms .border_white {
    border-radius: 0 0 10px 10px;
}

/* ----------　TOP　---------- */
#main_img{
border-radius: 10px;
    overflow: hidden;
}
#aisatsu{
    position: relative;
}
#aisatsu:before {
    content: '';
    display: inline-block;
    width: 100%;
    height: 70px;
    background-image: url(Dup/img/back.png);
    vertical-align: middle;
    position: absolute;
    z-index: 9;
    background-size: contain;
    bottom: 0;
    background-repeat: repeat-x;
    background-position: bottom;
}
#aisatsu h2{
	font-weight: bold;
}
#aisatsu h2,#aisatsu p{
	color: #fff;
}
#top_contents .contents_box h2{
	color: #66CC33;
	font-weight: bold;
position: relative;
    margin-bottom: 40px;
}
#top_contents .contents_box h2:before {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -15px;
    display: inline-block;
    width: 50px;
    height: 2px;
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translate(-50%);
    background-color: #f5c34c;
}
#top_contents .contents_img{
box-shadow: 0 5px 10px rgba(0,0,0,0.15);
    border-radius: 10px;
}
#top_contents .top_point{
color: #f5c34c!important;
    text-align: center;
    font-weight: bold;
    margin-bottom: 10px;
}
.cms_title p{
	color: #66CC33;
}
#top_cms h2 {
	font-weight: bold;
}
#top_cms .cms_title h2::before, #top_cms .cms_title h2::after {
	background-color: #66CC33;
}
#info_map{
background-color: #f3f3f3;
}
#info_map p{
	color: #333;
}
#info_map a {
    color: #6c3;
}

.contents_box::before {
	background-color:#66CC33;
}
.contents_box::after {
 	background-color: #66CC33;
}
.contents_box2::before {
	background-color: rgba(102, 204, 51, 0.7);
}
.contents_box2::after {
	background-color: rgba(102, 204, 51, 0.7);
}
#contents1 .contents_box p,#contents2 .contents_box p,#contents3 .contents_box p{
	color: #333;
}
#contents1,#contents2,#contents3{
    position: relative;
}
#contents1:before,#contents3:before {
    content: '';
    display: inline-block;
    width: 110%;
    height: 70%;
    background-size: contain;
    vertical-align: middle;
    position: absolute;
    background-color: #f3f3f3;
    right: -40%;
    top: 0;
    bottom: 0;
    margin: auto;
}
#contents2:before {
    content: '';
    display: inline-block;
    width: 110%;
    height: 70%;
    background-size: contain;
    vertical-align: middle;
    position: absolute;
    background-color: #f1ffea;
    left: -40%;
    top: 0;
    bottom: 0;
    margin: auto;
}
#top_cms .border_white{
border-color: #6c3;
}
#top_cms .effect.effect-1{
    color: #f5c34c;
}
.top_banner{
width: 100%;
}
.top_banner a{
    background-color: #6c3;
    color: #fff;
    padding: 15px 10px;
    width: 100%;
    display: block;
    text-align: center;
    border-radius: 10px;
    font-size: -webkit-calc(1rem + 3px);
    font-size: calc(1rem + 3px);
    letter-spacing: 3px;
    font-weight: bold;
transition: 0.3s;
}
.top_banner i{
    margin-right: 10px;
}
.top_banner a:hover {
    background-color: #f5c34c;
}


/* ----------　下層ページ　---------- */
.page_title:before {
    content: '';
    display: inline-block;
    width: 100%;
    height: 40px;
    background-image: url(Dup/img/back.png);
    vertical-align: middle;
    position: absolute;
    z-index: 9;
    background-size: contain;
    bottom: 0;
}
.page_title h2{
	font-weight: bold;
}
.page_title h2 span{
	font-size: -webkit-calc(1rem + 0px);
	font-size: calc(1rem + 0px);
}
.cate_title {
    background-color: #66CC33;
    border: none;
    padding: 10px 10px;
    text-align: left;
    color: #fff;
    border-radius: 10px;
    display: inline-block;
}
#cms_2-a .cate_box{
    border-bottom: 1px dotted #c8c4c4;
}
#cms_2-a .box_title1{
    border-bottom: 1px solid #6c3;
    padding-bottom: 5px;
    margin-bottom: 15px;
}
#cms_3-c .box_title1 {
    color: #f1a71e;
    font-weight: bold;
    border-bottom: 1px solid #66cc33;
}
#form_area input {
	background-color: #66CC33;
	color: #fff;
}
#form_area input:hover {
	background-color: #f1b74c;
	color: #fff;
}
#page8 .d_flex.mg_b-30px input,#page8 textarea{
	background-color: #fafbfd;
	border: 1px solid #66CC33;
}
#page8 .end_message,#page8 .error_message{
	color: #66CC33!important;
}
#page9 p a{
	background-color: #66CC33;
	color: #fff;
}
#page9 p a:hover {
	background-color: #f1b74c;
	color: #fff;
}


/* ----------　IE　---------- */
@media all and (-ms-high-contrast: none){

}



/* ----------　タブレット　---------- */
@media screen and (max-width: 768px){
.header {
	padding-right: 10px;
	padding-left: 10px;
}
#f_menu ul li a{
	letter-spacing: 0px;
}
#main_menu ul li a .menu_title {
    font-weight: bold;
    font-size: -webkit-calc(1rem + 0px)!important;
    font-size: calc(1rem + 0px)!important;
}
#main_menu ul li a .menu_sub_title {
    color: #ffcd6f;
    font-size: -webkit-calc(1rem - 7px);
    font-size: calc(1rem - 7px);
}
#main_img {
    border-radius: 0px;
}
#aisatsu {
    width: 90%;
    margin: auto;
    margin-bottom: 100px;
}
#contents1:before, #contents3:before {
    right: -30%;
}
#contents2:before {
    left: -30%;
}
#main_img2 {
    width: 95%;
}
}




/* ----------　スマホ　---------- */
@media screen and (max-width: 667px){
.button_container {
	top: 30px;
}
.button_container span {
	background: #66CC33;
	box-shadow: none;
}
#aisatsu h2{
	font-size: -webkit-calc(1rem + 4px);
	font-size: calc(1rem + 4px);
}
#aisatsu > div{
	padding-top: 50px;
}

.page_title h2{
	padding: 30px 0px;
	width: 80%;
}
.banner {
    width: 80%;
    margin: 0 2% 25px;
    max-width: 300px;
}
}