﻿/* all page */
/*fonts*/

/* color ---------------------------------------------------------------------------------------------*/
.linkStyle{color: #160a0a;text-decoration: underline;transition: opacity .3s;}
.linkStyle:hover{opacity: 0.7}
.txt_color1, .hvr_txt_color1:hover{color: #c9af43;}
/*.txt_color2, .hvr_txt_color2:hover{color: #e6e6e6}*/
/*.txt_color3, .hvr_txt_color3:hover{color: #a67c52}*/
/*.txt_color4, .hvr_txt_color4:hover{color: #c9baa9}*/

/* background-color */
.bg_color1, .hvr_bg_color1:hover{background-color: #D9C058;}
.bg_color2, .hvr_bg_color2:hover{background-color: #f5fdf5;}
/*.bg_color3, .hvr_bg_color3:hover{background-color: #a67c52}*/
.bg_color4, .hvr_bg_color4:hover{background-color: #f1f1ec;}

/* border-color ※!important */
.border_color1, .hvr_border_color1:hover{border-color: #D9C058;}
/*.border_color2, .hvr_border_color2:hover{border-color: #e6e6e6}*/
/*.border_color3, .hvr_border_color3:hover{border-color: #a67c52}*/
/*.border_color4, .hvr_border_color4:hover{border-color: #c9baa9}*/


/* header */
#logo img {
    max-width: 150px;
}
#header.active #logo img {
    max-width: 130px;
}

/* top ----------------*/

/* main img */
.catch {
    top: 50%;
    right: 3vw;
    transform: translateY(-50%);
    z-index: 1;
}
.catch1 {
    font-size: 4.17vw;
    letter-spacing: 3px;
    /*display: inline-block;*/
    /*background: linear-gradient(-30deg, #9c8954 42%, #cab793 50%, #9c8954 58%);*/
    /*-webkit-background-clip: text;*/
    /*-webkit-text-fill-color: transparent;*/
    /*background-clip: text;*/
}
.catch2 {
    font-size: 1.78vw;
    letter-spacing: 2px;
}
.txt_anim1 span{
	position: relative;
	right: 20px;
	opacity: 0;
	transition: all .8s;
}
.txt_anim1 span.start{
	right: 0;
	opacity: 1;
}

/* main */

/* intro */
#intro .intro_subtitle{
    font-size: 80px;
    opacity: 0.35;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    letter-spacing: 6px;
}
#intro .intro_title{
    z-index: 2;
    position: relative;
}
#intro .intro_title br{
    display: none;
}
.intro_txt2::before, .intro_txt3::before{
    content: "";
    background-color: #111;
    width: 1px;
    height: 20px;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}
#intro .intro_img {
    height: auto!important;
}

/* contents */


/* topcms */
.topcms_news_type2 .cate_box {
	width: 46.33333%!important;
	margin-right: 1.5%;
	margin-left: 1.5%;
	cursor: pointer;
	border-bottom: 1px solid #ddd;
	margin-bottom: 30px;
	box-shadow: 0 6px 12px rgb(0 0 0 / 0);
	/* padding: 20px; */
	/* border-radius: 20px; */
	/* background-color: #f5f5f5; */
}
.topcms_news_type2 .cate_box:hover {
	transform: translateY(-5px);
}
.topcms_news_type2 .cate_box .box_item {
	cursor: pointer;
}
.topcms_news_type2 .txt_height {
	height: 5em
}
.topcms_news_type2 .box_img1 {
	border-radius: 10px;
}

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.topcms_news_type2 .cate_box {width: 100%!important;}
.topcms_news_type2 .txt_height {height: 3em}
}

/* footer */
#footer #logo2{
    max-width: 200px;
}


/* under page */


/* cms2 */
main{
    overflow: hidden;
}
.about_type2 .cate_title {
	line-height: 1.7;
	position: relative;
}
.about_type2 .cate_title:before {
	content: '';
    position: absolute;
    display: inline-block;
    width: 80px;
    height: 1px;
    bottom: 10px;
    left: 5px;
    background-color: #333;
    z-index: -1;
}
.about_type2 .cate_box{
	position: relative;
}
.about_type2 .cate_box:nth-of-type(even){
	flex-direction: row-reverse;
}
.about_type2 .cate_box:before {
	content: '';
    position: absolute;
    display: inline-block;
    background-color: #f9f9f9;
    width: 80vw;
    height: 90%;
    bottom: 10px;
    margin: 0 calc(50% - 50vw);
    z-index: -1;
}
.about_type2 .cate_box:nth-of-type(odd):before {	       
    left: 0px;    
}
.about_type2 .cate_box:nth-of-type(even):before {	        
    right: 0px;    
}
/* ----------mobile_sp ---------- */
@media screen and (max-width: 667px){
.about_type2 .cate_box:before {
    height: 95%;
    bottom: auto;
    top: 15px;
}
}

/* cms3 */

/* cms4 */

/* cms5 */


/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
#logo img {max-width: 110px;}
#header.active #logo img {max-width: 120px;}
.main1 img{
    height: 100%;
    width: auto;
}
.catch2 {font-size: 2.78vw;}
#intro .intro_subtitle {font-size: 64px;}
#footer #logo2 {max-width: 150px;}

}
/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
#header #logo{padding: 10px;}
#logo img {max-width: 70px;}
#header.active #logo img {max-width: 70px;}
.catch {
    top: auto;
    bottom: 3vh;
    transform: none;
}
.catch1 {
    font-size: 5.67vw;
    letter-spacing: 1px;
}
.catch2 {
    font-size: 4.28vw;
    letter-spacing: 1px;
    margin-top: 10px;
}
#intro .intro_title br{
    display: block;
}
#intro .intro_subtitle {
    font-size: 8.5vw;
}
.intro_txt2::before, .intro_txt3::before {
    width: 30px;
    height: 1px;
    top: auto;
    bottom: -15px;
    right: auto;
    left: 50%;
    transform: translateX(-50%);
}

}





