﻿/*h2, h3 {
font-family: 'Kosugi Maru', sans-serif !important;
}*/


/* color */
body,.txt_color_nomal{color: #555;}
.txt_white{color: white;}
.txt_red{color: red;}
.txt_color1{color: #4fb75c} /* メインカラー */
.txt_color2{color: #e2fbe5} /* サブカラー */
.txt_color3{color: #f57f40} /* アクセントカラー1 */
.txt_color4{color: #ffcebd} /* アクセントカラー2 */

/* background-color */
.bg_white{background-color: white} /* 白背景 */
.bg_black{background-color: black} /* 黒背景 */
.bg_color1{background-color: #4fb75c} /* メインカラー */
.bg_color2{background-color: #e2fbe5} /* サブカラー */
.bg_color3{background-color: #f57f40} /* アクセントカラー1 */
.bg_color4{background-color: #ffcebd} /* アクセントカラー2 */
.bg_color_clear{background-color: transparent!important}

/* border-color ※!important */
.border_white{border-color: #fff}
.border_color1{border-color: #4fb75c}
.border_color2{border-color: #e2fbe5}
.border_color3{border-color: #f57f40}
.border_color4{border-color: #ffcebd}

/* hover ---------------------------------------------------------------------------------------------*/
/* color */
.hvr_txt_color_nomal:hover{color: #555;}
.hvr_txt_white:hover{color: white;}
.hvr_txt_red:hover{color: red;}
.hvr_txt_color1:hover{color: #4fb75c} /* メインカラー */
.hvr_txt_color2:hover{color: #e2fbe5} /* サブカラー */
.hvr_txt_color3:hover{color: #f57f40} /* アクセントカラー1 */
.hvr_txt_color4:hover{color: #ffcebd} /* アクセントカラー2 */

/* background-color */
.hvr_bg_white:hover{background-color: white} /* 白背景 */
.hvr_bg_black:hover{background-color: black} /* 黒背景 */
.hvr_bg_color1:hover{background-color: #4fb75c} /* メインカラー */
.hvr_bg_color2:hover{background-color: #e2fbe5} /* サブカラー */
.hvr_bg_color3:hover{background-color: #f57f40} /* アクセントカラー1 */
.hvr_bg_color4:hover{background-color: #ffcebd} /* アクセントカラー2 */
.hvr_bg_color_clear:hover{background-color: transparent!important}

/* border-color ※!important */
.hvr_border_color1:hover{border-color: #4fb75c}
.hvr_border_color2:hover{border-color: #e2fbe5}
.hvr_border_color3:hover{border-color: #f57f40}
.hvr_border_color4:hover{border-color: #ffcebd}

.linkStyle {
  color: #222222;
}

#contents2 .font_30 {
	position: relative;
}
#contents2 .font_30:before {
    position: absolute;
    content: "";
    background-image: url(./Dup/img/green.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    width: 50%;
    height: 170%;
    top: -17px;
    right: 0%;
    z-index: -1;
}
#contents1 h2 {
	position: relative;
}
#contents1 h2:before {
    position: absolute;
    content: "";
    background-image: url(./Dup/img/con2.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    width: 30%;
    height: 130%;
    top: -160%;
    right: 40%;
    z-index: -1;
}
#intro h2 {
	position: relative;
}
#intro h2:before {
    position: absolute;
    content: "";
    background-image: url(./Dup/img/con1.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    width: 30%;
    height: 150%;
    top: -175%;
    right: 48%;
    z-index: -1;
}
#main_img:after {
    position: absolute;
    content: "";
    background-image: url(./Dup/img/main.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 66%;
    height: 66%;
    top: 58%;
    left: 50%;
    -webkit-transform: translate(-50% , -50%);
    transform: translate(-50% , -50%);
    pointer-events: none;
    z-index: 2;
}
#page_title h2 {
    position: relative;
    width: 50%;
    margin: 0 auto;
    background-image: url(./Dup/img/title.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center;
    padding: 10px;
}
#page_title h2 span {
    padding-top: 10px;
}
#page_title h2:before {
    position: absolute;
    content: "";
    background-image: url(./Dup/img/title_right.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: bottom right;
    width: 50%;
    height: 114%;
    z-index: -1;
    right: -100px;
    bottom: -3px;
}
#contents2 .cate_box {
    background-color: #fff;
    position: relative;
    z-index: 1;
}
#contents2 .cate_box::before,
#contents2 .cate_box::after {
    border-radius: 4px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .3);
    content: "";
    height: 100%;
    position: absolute;
    width: 100%;
}
#contents2 .cate_box::before {
    background-color: rgba(255, 255, 255, .5);
    left: 0;
    top: 0;
    z-index: -1;
}
#contents2 .cate_box::after {
    background-color: #e2fbe5;
    top: 5px;
    left: 5px;
    z-index: -2;
}
#logo img {
    vertical-align: bottom;
    width: 85%;
    height: auto;
}
.box_item2 {
    background-color: #e2fbe5;
    border: 2px solid #fff;
    box-shadow: 0 0 0 2px #cafbce;
 /*   color: #e2fbe5;*/
    margin: 2em 0;
    padding: 2em;
}
#page8 .txt_color2 {
    color: #4fb75c;
}
#page8 .border_color2 {
    border-color: #f57f40;
}

#contents1 .bg_color2 {
    background: -webkit-repeating-linear-gradient(-45deg, #e2fbe5, #e2fbe5 5px, #fdfcff 5px, #fdfcff 10px);
    background: repeating-linear-gradient(-45deg, #e2fbe5, #e2fbe5 5px, #fdfcff 5px, #fdfcff 10px);
    color: #4a1086;
    /*margin: 2em 0;
    padding: 2em;*/
}
h2 .text-wrapper {
    position: relative;
    display: inline-block;

}

h2 .letter {
    transform-origin: 50% 100%;
    display: inline-block;
    line-height: 1em;
    transform: translateZ(0); /*for older browsers*/
    will-change: transform;

}
#top_info .tel_bt {
    display: block;
}
#main_img::before {
    content: "";
    display: inline-block;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
    opacity: 0.3;
    background-color: #000;
}
#main_img h2 {
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: 0.02em;
    font-size: 3.2vw;
}
#main_img .txt {
    z-index: 10;
    top: 60%;
    left: 10vw;
}
.top_cms_title {
	position: relative;
}
.top_cms_title:after {
    position: absolute;
    content: "";
    background-image: url(./Dup/img/cms.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top left;
    width: 20%;
    height: 150%;
    top: -81px;
    left: 0px;
}
@media screen and (max-width: 1206px){
#contents1 h2:before {
    width: 30%;
    height: 100%;
    top: -104%;
    right: 40%;
}
}


/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){

/* color */
body,.txt_color_nomal{color: #555;}
.txt_white_tb{color: white;}
.txt_red_tb{color: red;}
.txt_color1_tb{color: #4fb75c} /* メインカラー */
.txt_color2_tb{color: #e2fbe5} /* サブカラー */
.txt_color3_tb{color: #f57f40} /* アクセントカラー1 */
.txt_color4_tb{color: #ffcebd} /* アクセントカラー2 */
	
/* background-color */
.bg_white_tb{background-color: white} /* 白背景 */
.bg_black_tb{background-color: black} /* 黒背景 */
.bg_color1_tb{background-color: #4fb75c} /* メインカラー */
.bg_color2_tb{background-color: #e2fbe5} /* サブカラー */
.bg_color3_tb{background-color: #f57f40} /* アクセントカラー1 */
.bg_color4_tb{background-color: #ffcebd} /* アクセントカラー2 */
.bg_color_clear_tb{background-color: transparent!important}
	
/* border-color ※!important */
.border_white_tb{border-color: #fff}
.border_color1_tb{border-color: #4fb75c}
.border_color2_tb{border-color: #e2fbe5}
.border_color3_tb{border-color: #f57f40}
.border_color4_tb{border-color: #ffcebd}
#contents2 .font_30 {
    position: relative;
    font-size: 29px;
}
#contents2 .font_30:before {
    height: 120%;
    top: -5px;
    right: -6%;
    z-index: -1;
}
#main_img h2 {
    font-size: 37px;
}
#contents2 .font_30:before {
    position: absolute;
    content: "";
    background-image: url(./Dup/img/green.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    width: 75%;
    height: 170%;
    top: -16px;
    right: -15%;
    z-index: -1;
}
#intro h2 {
    text-align: center;
}
#intro h2:before {
    width: 30%;
    height: 150%;
    top: -175%;
    right: 37%;
    z-index: -1;
}
#contents1 h2:before {
    width: 43%;
    height: 70%;
    top: -70%;
    left: 25%;
    z-index: -1;
}
#page_title h2 {
    position: relative;
    width: 70%;
}
#cms_2-c .box_wrap .d_flex {
    display: block;
}
#cms_2-c .width_50per {
    width: 100%!important;
}
#page10 .d_flex h2 {
    display: grid;
    position: relative;
    top: -15px;
}
#page10 h2 span {
    position: absolute;
    top: 30px;
    left: 110px;
}
#main_img .txt {
    z-index: 10;
    top: 43%;
    left: 10vw;
}
#main_img:after {
    position: absolute;
    content: "";
    background-image: url(./Dup/img/main.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 76%;
    height: 66%;
    top: 34%;
    left: 50%;
    -webkit-transform: translate(-50% , -50%);
    transform: translate(-50% , -50%);
    pointer-events: none;
    z-index: 2;
}
.top_cms_title:after {
    position: absolute;
    content: "";
    background-image: url(./Dup/img/cms.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top left;
    width: 20%;
    height: 150%;
    top: -75px;
    left: 8px;
}
}
/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
.bg_color_clear_sp{background-color: transparent!important}
#contents2 .font_30:before {
   display: none;
}
#contents2 .font_30 {
    position: relative;
    font-size: 27px;
}
#main_img h2 {
    font-size: 24px;
}
#intro h2 {
    text-align: left;
}
#intro h2:before {
    width: 30%;
    height: 70%;
    top: -90%;
    right: 37%;
    z-index: -1;
}
#page_title h2:before {
    width: 50%;
    height: 114%;
    z-index: -1;
    right: -74px;
    bottom: -3px;
}
#page_title .font_26_sp {
    font-size: 23px;
}
#page10 h2 span {
    position: absolute;
    top: 30px;
    left: 140px;
}
#main_img .txt {
    z-index: 10;
    top: 35%;
    left: 10vw;
}
#main_img:after {
    position: absolute;
    content: "";
    background-image: url(./Dup/img/main.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 97%;
    height: 66%;
    top: 27%;
    left: 50%;
    -webkit-transform: translate(-50% , -50%);
    transform: translate(-50% , -50%);
    pointer-events: none;
    z-index: 2;
}
.top_cms_title:after {
    position: absolute;
    content: "";
    background-image: url(./Dup/img/cms.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top left;
    width: 20%;
    height: 150%;
    top: -56px;
    left: 8px;
}
}
















