﻿@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;500;700;900&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap');

/* ----------　all　---------- */
.linkStyle{
	color:#99C65D;
	text-decoration: underline;
}
.linkStyle:hover{
	color:#99C65D;
	opacity: 0.7;
	transition: all 0.5s;
}

html{font-size: 16px;}
body{-webkit-text-size-adjust: 120%;font-size: 16px;}

.font_12{font-size: 14px;}
.font_14{font-size: 16px;}
.font_15{font-size: 17px;}
.font_16{font-size: 18px;}
.font_18{font-size: 20px;}
.font_20{font-size: 22px;}
.font_22{font-size: 24px;}
.font_24{font-size: 26px;}
.font_26{font-size: 28px;}
.font_28{font-size: 30px;}
.font_30{font-size: 32px;}
.font_100per{
font-size: -webkit-calc(1rem + 2px);
font-size: calc(1rem + 2px);
}
.font_2up{
font-size: -webkit-calc(1rem + 4px);
font-size: calc(1rem + 4px);
}
.font_4up{
font-size: -webkit-calc(1rem + 6px);
font-size: calc(1rem + 6px);
}
.font_6up{
font-size: -webkit-calc(1rem + 8px);
font-size: calc(1rem + 8px);
}
.font_8up{
font-size: -webkit-calc(1rem + 10px);
font-size: calc(1rem + 10px);
}
.font_10up{
font-size: -webkit-calc(1rem + 12px);
font-size: calc(1rem + 12px);
}
.font_2dw{
font-size: -webkit-calc(1rem);
font-size: calc(1rem);
}

html, body {
    font-size: 16px;
}

body {
    font-family: 'Roboto', 'Zen Kaku Gothic New', "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif;
}

figure, figure img {
    border-radius: 25px;
}

.button:hover::after {
    box-shadow: inset 0 0 0 15em rgba(84,130,53,1);
}

/* nav */

#main_menu ul li a {
    font-weight: bold;
    font-size: 16px;
    color: #548235;
}

#main_menu ul li a::before {
    background-color: #548235;
}

.tel_bt a {
    color: #548235;
}

.fix-rsv {
    right: 50px;
    width: 20%;
    z-index: 3;
    margin-bottom: -25px;
}

.is-hidden {
  visibility: hidden;
  opacity: 0;
}

/* footer */

.foot_tel_bt a {
    max-width: 400px;
}

/* ----------　TOP　---------- */

/* main-img */

#main_img:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-image: url(/Dup/img/main-r.png), url(/Dup/img/main-l.png),url('/Dup/img/main-copy.png');
    background-repeat: no-repeat;
    background-position: 100% 0, 0 0, 50% 45%;
    background-size: 45%,45% 35%;
    z-index: 3;
    background-color: rgba(255,255,255,0.3);
}

/*anime*/

.anime1 {
    width: 10%;
    top: 8%;
    left: 5%;
    z-index: 3;
}

.anime2 {
    width: 10%;
    bottom: 10%;
    right: 5%;
    z-index: 3;
}

.anime3 {
    width: 10%;
    right: 40%;
}

.anime5 {
    right: 0;
    top: -10%;
    z-index: 3;
    width: 20%;
}

.anime4 {
    left: 5%;
    top: -5%;
    width: 15%;
}

.anime6 {
    left: 0;
    width: 20%;
    z-index: 3;
}

.hito {
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 20%;
    z-index: 3;
}

/* top */
.con_no::before {
    display: none;
}

#contents_box h2, #contents_box h3 {
    color: #548235;
    font-weight: 500;
}


#contents1:before {
    content: "";
    width: 100%;
    height: 180px;
    position: absolute;
    bottom: -178px;
    left: 0;
    background-image: url('/Dup/img/box-tp.png');
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 100%;
    z-index: 2;
}

#contents1 {
    padding: 100px 10% 20px;
}

#contents2 {
    padding: 200px 10% 180px;
    background-image: url('/Dup/img/box-bt.png');
    background-size: 100%;
    background-position: 0 101%;
    background-repeat: no-repeat;
}

#contents3 {
    padding: 100px 10% 20px;
    position: relative;
}

#contents3 .grid_6 {
    margin-top: 0;
}

#contents3:before {
    content: "";
    width: 100%;
    height: 180px;
    position: absolute;
    bottom: -178px;
    left: 0;
    background-image: url('/Dup/img/box-tp.png');
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 100%;
    z-index: 2;
}

.list {
    width: 250px;
    height: 250px;
}


#contents_box .list h3 {
    color: #ffffff;
    margin-top: 40px;
    font-weight: bold;
}

#contents_box .list p {
    padding: 0 25px 0 32px;
}

.list1 {
    background-color: #66C1D3;
}

.list2 {
    background-color: #F3AFB7;
}

.list3 {
    background-color: #FFCC33;
}

/* top-cms */

.cms_title h2 {
    font-weight: bold;
}

.link_type1 .link_top .link_title {
    font-size: 20px;
    margin-bottom: 20px;
    text-align: center;
	margin-bottom: 30px;
    color: #474521;
    font-weight: normal;
}
.link_type1 .link_top .link_title{
    font-size: 20px;
    margin-bottom: 20px;
}
.link_type1 .link_top a{
	padding-top: 80px;
    padding-bottom: 60px;
}
.link_type1 .link_top a:hover{
    background-color: #ededeb;
}
.link_type1 .link_top a:hover .link_img1{
    transform: translate(-50%, -50%) scale(1.1,1.1);
    opacity: 0.1;
}

/* ----------　下層ページ　---------- */

#page_title {
    background-image: url(Dup/img/sub-top-l.png),url(Dup/img/sub-top-r.png);
    background-repeat: no-repeat;
    background-size: 25%;
    background-position: top left, top right;
}

#page_title .title_img {
    display: none;
}

#page_title .page_box {
    padding: 200px 0 50px;
}

/*バナー*/
.btn_container a {
    background-color: #548235;
    color: #fff;
    max-width: 300px;
    text-align: center;
    padding: 10px;
    font-size: 20px;
    border-radius: 5px;
    margin: 20px auto 0;
}

/* 会社情報 */
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */


/*-------------------------------------------------------
			          タブレット
-------------------------------------------------------*/
@media screen and (max-width: 768px){
    
.font_12_tb{font-size: 14px;}
.font_14_tb{font-size: 16px;}
.font_16_tb{font-size: 18px;}
.font_18_tb{font-size: 20px;}
.font_20_tb{font-size: 22px;}
.font_22_tb{font-size: 24px;}
.font_24_tb{font-size: 26px;}
.font_26_tb{font-size: 28px;}
.font_28_tb{font-size: 30px;}
.font_30_tb{font-size: 32px;}
.font_100per_tb{
font-size: -webkit-calc(1rem + 2px);
font-size: calc(1rem + 2px);
}
.font_2up_tb{
font-size: -webkit-calc(1rem + 4px);
font-size: calc(1rem + 4px);
}
.font_4up_tb{
font-size: -webkit-calc(1rem + 6px);
font-size: calc(1rem + 6px);
}
.font_6up_tb{
font-size: -webkit-calc(1rem + 8px);
font-size: calc(1rem + 8px);
}
.font_8up_tb{
font-size: -webkit-calc(1rem + 10px);
font-size: calc(1rem + 10px);
}
.font_10up_tb{
font-size: -webkit-calc(1rem + 12px);
font-size: calc(1rem + 12px);
}
.font_2dw_tb{
font-size: -webkit-calc(1rem);
font-size: calc(1rem);
}
    
.fix-rsv {
    width: 35%;
}
    
.main_box {
    padding-top: 70px;
}

#main_img {
    height: 70vh;
}

#main_img:before {
    background-size: 50%,50%,65%;
background-position: 100% 0, 0 0, 50% 50%;
    z-index: 3;
}

#page_title .page_box {
    padding: 150px 0 50px;
}

#page_title {
    background-size: 40%;
}

/*anime*/

.anime1 {
    width: 15%;
}

.anime2 {
    width: 15%;
}

.anime3 {
    width: 15%;
    right: 20%;
}

.anime5 {
    width: 30%;
    top: 0%;
}

.anime4 {
    top: -1%;
    width: 20%;
}

.anime6 {
    left: 0;
    width: 30%;
    z-index: 3;
}

.hito {
    width: 30%;
}

header .head_banner {
    display: none;
}
    
    
}

/*-------------------------------------------------------
		            	スマホ
-------------------------------------------------------*/
@media screen and (max-width: 667px){
    
.font_12_sp{font-size: 14px;}
.font_14_sp{font-size: 16px;}
.font_16_sp{font-size: 18px;}
.font_18_sp{font-size: 20px;}
.font_20_sp{font-size: 22px;}
.font_22_sp{font-size: 24px;}
.font_24_sp{font-size: 26px;}
.font_26_sp{font-size: 28px;}
.font_28_sp{font-size: 30px;}
.font_30_sp{font-size: 32px;}
.font_100per_sp{
font-size: -webkit-calc(1rem + 2px);
font-size: calc(1rem + 2px);
}
.font_2up_sp{
font-size: -webkit-calc(1rem + 4px);
font-size: calc(1rem + 4px);
}
.font_4up_sp{
font-size: -webkit-calc(1rem + 6px);
font-size: calc(1rem + 6px);
}
.font_6up_sp{
font-size: -webkit-calc(1rem + 8px);
font-size: calc(1rem + 8px);
}
.font_8up_sp{
font-size: -webkit-calc(1rem + 10px);
font-size: calc(1rem + 10px);
}
.font_10up_sp{
font-size: -webkit-calc(1rem + 12px);
font-size: calc(1rem + 12px);
}
.font_2dw_sp{
font-size: -webkit-calc(1rem);
font-size: calc(1rem);
}
    
.fix-rsv {
    right: 0;
    left: 0;
    margin: 0 auto;
    width: 75%;
}
    
.more a {
    width: auto;
}
    
.main_box {
    padding-top: 50px;
}

#main_img {
    background-position: 40% 50%;
    height: 75vh;
}

.list-box {
    row-gap: 30px;
}

.link_type1 .link_top .link_title{
    font-size: 15px;
}


/*anime*/

.anime1 {
    width: 25%;
}

.anime2 {
    width: 25%;
}

.anime3 {
    width: 25%;
    right: 5%;
    top: 5%;
}

.anime5 {
    width: 40%;
    top: -1%;
}

.anime4 {
    width: 30%;
}

.anime6 {
    width: 45%;
}

#contents1 {
    padding: 100px 3% 20px;
}

#contents2 {
    padding: 200px 3% 180px;
}
    
#contents3 {
    padding: 100px 3% 20px;
}

.list {
    width: 280px;
    height: 280px;
}

#contents_box .list h3 {
    margin-top: 30px;
}

}

@media screen and (max-width: 320px){ 
    
}
