﻿/* all page */
/*fonts*/
@import url('https://fonts.googleapis.com/css2?family=Yusei+Magic&display=swap');
.font_bar, #pc_nav li a, #intro h2, #contents h2, #contents2 h2, #contents3 h2, #top_cms h2, #top_info h2, #page_title, .footer_right #footer_nav li a, footer #copyright, #page_title, .cate_list li a, .cate_list li .cate_no, .cate_title, .sub_cate_title, .box_title, .box_title1, a[href^="tel:"], .pager li a {
    font-family: 'Yusei Magic', "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif!important;
}
/* color ---------------------------------------------------------------------------------------------*/
.linkStyle{color: #160a0a;text-decoration: underline;transition: opacity .3s;}
.linkStyle:hover{opacity: 0.7}
.txt_color1{color: #13c21e;} /* メインカラー */
.txt_color2{color: #f7f7f7} /* サブカラー */
.txt_color3{color: #009bdd;} /* アクセントカラー1 */
.txt_color4{color: #cccccc} /* アクセントカラー2 */

/* background-color */
.bg_color1{background-color: #13c21e;} /* メインカラー */
.bg_color2{background-color: #f7f7f7} /* サブカラー */
.bg_color3{background-color: #009bdd;} /* アクセントカラー1 */
.bg_color4{background-color: #cccccc} /* アクセントカラー2 */

/* border-color ※!important */
.border_color1{border-color: #13c21e;}
.border_color2{border-color: #f7f7f7}
.border_color3{border-color: #009bdd;}
.border_color4{border-color: #cccccc}

.hvr_bg_color3:hover {background-color: #009bdd;}

/* header */

/*固定バナー*/
.banner__fixed {
    position: fixed;
    top: 20px;
    right: 110px;
    max-width: 300px;
	min-height: 80px;
    z-index: 10;
}
.banner__fixed a {
	padding: 22px;
}

/* top ----------------*/
#pp-nav.right {
    background-color: #fff;
    border-radius: 30px;
}
/* main img */
.custom_bg{
    background-image: url(./Dup/img/custom_bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}
.custom_box .fraim01{
	width: 20px;
	height: 100%;
	top: 0;
	left: 0;
}
.custom_box .fraim02{
	width: 100%;
	height: 20px;
	top: 0;
	left: 0;
}
.custom_box .fraim03{
	width: 20px;
	height: 100%;
	top: 0;
	right: 0;
}
.custom_box .fraim04{
	width: 100%;
	height: 20px;
	bottom: 0;
	left: 0;
}
/* アニメーション */
.ani_fadein{
	display: none;
}
.ani {
animation-name:poyoyon2;
animation-duration:1.0s;
animation-fill-mode:forwards;
opacity: 0;
}
@keyframes poyoyon2 {
  0%  {
    transform: scale(1.0, 1.0) translate(0, 0);
  }
  15% {
    transform: scale(0.98, 0.9) translate(0, 5px);
  }
  30% {
    transform: scale(1.02, 1.0) translate(0, 8px);
  }
  50% {transform: scale(0.98, 1.05) translate(0, -8px);
  }
  70% {
    transform: scale(1.0, 0.95) translate(0, 0px);
  }
  100% {
    transform: scale(1.0, 1.0) translate(0, 0);
  }
  0%, 100% {
    opacity: 1;
  }
}
#custom .center_square{
    width: 450px;
    height: 450px;
}
#custom .custom_top{
    width: 100%;
    height: 31%;
    top: 0;
    left: 0;
}
#custom .custom_bottom{
    width: 100%;
    height: 52%;
    bottom: 0;
    left: 0;
}
#custom .catch01{
    width: auto;
    height: 100%;
    top: 15px;
    left: 15px;
animation-delay: 1.0s;
}
#custom .catch02{
    width: auto;
    height: 100%;
    top: 15px;
    right: 15px;
animation-delay: 1.2s;
}
#custom .catch03{
    width: auto;
    height: 100%;
    bottom: 15px;
    left: 15px;
animation-delay: 1.5s;
}
#custom .catch04{
    width: auto;
    height: 100%;
    bottom: 20px;
    right: 15px;
animation-delay: 1.7s;
}
#custom .catch05{
    width: 50%;
    bottom: 15px;
    left: 20%;
animation-delay: 1.9s;
}
#custom .custom_img{
    width: 260px;
    bottom: -50px;
    right: -220px;
    z-index: -1;
animation-delay: 2.2s;
}

/* main */

/* intro */
#intro .intro_title{
    padding: 1rem 2rem;
    color: #fff;
    background: #13c21e;
    -webkit-box-shadow: 5px 5px 0 #007032;
    box-shadow: 5px 5px 0 #007032;
}
#intro .intro_right div {
    border: 10px solid #13c21e;
}
#intro .intro_right .intro_img1 {
    border-bottom: 5px solid #13c21e;
}
#intro .intro_right .intro_img2 {
    border-top: 5px solid #13c21e;
    border-right: 5px solid #13c21e;
}
#intro .intro_right .intro_img3 {
    border-top: 5px solid #13c21e;
    border-left: 5px solid #13c21e;
}

/* contents */
#contents .con_box1{
	padding-bottom: 0;
	margin-bottom: 0;
}
#contents .con_box1::before{
	display: none !important;
}
#contents .con_img {
    border-radius: 0 50% 0 0;
}
#contents .con_box1, #contents2 .con_box2 {
    background-color: #ffffff;
    padding: 50px;
    margin-left: -150px;
    z-index: 2;
    color: #333;
    border-radius: 10px;
    box-shadow: 10px 10px 0px #007032;
}
#contents2 .con_bg{
	top: 0;
	right: 0;
}
#contents.trans .con_wrap, #contents2.trans .con_wrap{
	opacity: 1;
	right: 0;
	position: relative;
	z-index: 2;
}
#contents2 .con_img {
	top: 100px;
	bottom: 100px;
	left: 0;
	border-radius: 0 50% 0 0;
}
.con_no {
    font-size: 3rem;
    color: #feda1d;
    line-height: 1;
    position: absolute;
    top: -130px;
    left: -40px;
    background-color: #fff;
    padding: 2rem 2rem;
    border-radius: 100%;
    box-shadow: 3px 2px 0px #007032;
}
.con_no:after {
  position: absolute;
  bottom: -7px;
  right: 1em;
  width: 0;
  height: 0;
  content: '';
  border-width: 10px 10px 0 10px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
}

/* topcms */
#top_cms .cms_box .cms_title{
    border-top: none;
}
#top_cms .cms_title h3 {
    font-size: 30px;
    font-weight: bold;
    line-height: 1.5;
}
#top_cms .cms_title p {
    opacity: 0.3;
    font-weight: 700;
    font-size: 25px;
    line-height: 1.2;
}
#top_cms .cms_title span{
    width: 0;
    height: 0;
    top: -15px;
}
#top_cms .cms_box .cms_title span::before {
    content: '';
    position: absolute;
    height: 80px;
    width: 80px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}
#top_cms .cms_box:nth-child(1) .cms_title span::before {
    background-image: url(./Dup/img/news.png);
}
#top_cms .cms_box:nth-child(3) .cms_title span::before {
    background-image: url(./Dup/img/recruit.png);
}
#top_cms .cms_box:nth-child(5) .cms_title span::before {
    background-image: url(./Dup/img/faq.png);
}

/* footer */
#logo2{
    width: 300px;
}


/* under page */

/* cms1 */

/* cms2 */

/* cms3 */

/* cms4 */
#cms_6-b .cate_box:first-of-type, .cms_6-b .cate_box:first-of-type {
    border-top: 1px solid #ffffff;
}
#cms_6-b .cate_box, #cms_6-b .cate_box .box_txt1, #cms_6-b .cate_box .box_txt2, .cms_6-b .cate_box, .cms_6-b .cate_box .box_txt1, .cms_6-b .cate_box .box_txt2 {
    border-color: #ffffff;
}
#cms_6-b .cate_box, .cms_6-b .cate_box {
    border-bottom: 3px solid #fff;
}
#cms_6-b .cate_box .box_txt1, .cms_6-b .cate_box .box_txt1 {
    border-right: 5px solid #fff;
    font-size: 17px;
}
#cms_6-b .cate_box .box_txt2, .cms_6-b .cate_box .box_txt2 {
    background-color: #f4f4f4;
}

/* cms5 */

/* page7 */

/* page8 */

/* page9 */

/* page10 */


/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
	.banner__fixed {
		top: 0;
		right: 60px;
		min-height: 50px;
	}
	.banner__fixed a {
		padding: 9px;
	}
    .custom_bg{
        background-image: url(./Dup/img/custom_bg_sp.png);
    }
    #custom .center_square {
        width: 350px;
        height: 350px;
    }
	#contents2 .con_img {
		height: 60vw;
		top: auto;
		bottom: -45px;
	}
	#contents2 .con_wrap{
		opacity: 1;
	}
	#custom .custom_img {
        width: 200px;
        right: -180px;
    }
    #contents .con_box1, #contents2 .con_box2 {
        margin-left: 0;
    }
    #contents .con_img, #contents2 .con_img{
        border-radius: 0;
    }
    #top_cms{
        margin-top: 100px;
    }
    
}
/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
	.banner__fixed {
		z-index: 5;
	}
	.banner__fixed a {
		padding: 11px;
	}
    #custom .center_square {
        width: 250px;
        height: 250px;
    }
    #custom .catch01 {
        top: 10px;
        left: 10px;
    }
    #custom .catch02 {
        top: 10px;
        right: 10px;
    }
    #custom .catch03 {
        bottom: 10px;
        left: 10px;
    }
    #custom .catch04 {
        bottom: 15px;
        right: 10px;
    }
    #custom .catch05 {
        bottom: 10px;
    }
	#custom .custom_img {
        width: 150px;
        right: -40px;
        bottom: -120px;
    }
    .con_no {
        left: 0px;
    }
    
}

/* IE */
@media all and (-ms-high-contrast: none){
    .banner__fixed a{
        padding: 27px 17px 20px;
    }
    #cms_2-b .cate .cate_title, #cms_6-a .cate .cate_title{
        padding-top: 10px!important;
    }
    #cms_6-b .cate .cate_title{
        padding: 10px 20px 10px!important;
    }
    .cate_list a{
        padding-top: 0!important;
    }
    
}


