﻿@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;600&display=swap');
body{font-family:"游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif;font-weight: 400;}
.font_serif,h2,h3,h4,h5,.cate_title,.sub_cate_title{font-family: 'Noto Serif JP',"游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";font-weight: 400;}
.font_serif.font_bold,h2.font_bold,h3.font_bold,h4.font_bold,h5.font_bold,.cate_title.font_bold,.sub_cate_title.font_bold{font-weight: 600;}


/*--------------------------------
疑似要素にオブジェクト
--------------------------------*/
#main_img,main{position: relative;}
/*リピートなし*/
#main_img:before,.frame,.frame5,.frame6,.frame7,.frame8,main:before,main:after{
content: "";
display: block;
background-size: cover;
background-repeat: no-repeat;
position: absolute;
}

#main_img:before{
background-image: url(./Dup/img/catch.png);
background-size: 100%;
width: clamp(450px, 30vw, 550px);
height: clamp(420px, 30vw, 515px);
top:55%;
left: 5%;
-ms-transform: translate(0,-50%);
-webkit-transform: translate(0,-50%);
transform: translate(0,-50%);
z-index: 2;
}

.frame{
background-image: url(./Dup/img/frame.png);
width: 50px;
height: 50px;
z-index: 1;
}
.frame.frame1{
top: 20px;
left: 10px;
}
.frame.frame2{
top: 20px;
right: 10px;
transform: scale(-1, 1);
}
.frame.frame3{
bottom: 10px;
left: 10px;
transform: scale(1, -1);
}
.frame.frame4{
bottom: 10px;
right: 10px;
transform: scale(-1, -1);
}
.frame5{
background-image: url(./Dup/img/frame2.png);
background-size: 100%;
width: 41vw;
height: 22vw;
top: 0;
left: 0;
z-index: 1;
mix-blend-mode: multiply;
}
.frame6{
background-image: url(./Dup/img/frame2-2.png);
background-size: 100%;
width: 24vw;
height: 21vw;
bottom: 0;
right: 0;
z-index: 1;
mix-blend-mode: multiply;
}
.frame7{
background-image: url(./Dup/img/obj2.png);
background-size: 100%;
width: 20vw;
height: 12vw;
top: 16%;
left: -4%;
z-index: 2;
}
.frame8{
background-image: url(./Dup/img/obj3.png);
background-size: 100%;
width: 18vw;
height: 9vw;
bottom: 5%;
right: 3%;
z-index: 2;
}

main:before{
background-image: url(./Dup/img/obj4.png);
background-size: 100%;
width: 29vw;
height: 27vw;
top: 0;
right: 76%;
z-index: -1;
}

main:after{
background-image: url(./Dup/img/obj5.png);
background-size: 100%;
width: 34vw;
height: 37vw;
bottom: 0;
left: 70%;
z-index: -1;
}
/*--------------------------------
全体
--------------------------------*/
body{
background-image:url(./Dup/img/bg1.jpg);
background-size: 50%;
overflow: hidden;
}
.shadow,.shadow-b{box-shadow: none;}
header{z-index: 3;}
#header{
background-color: #d2b464;
padding-top: 20px;
padding-bottom: 20px;
}
#header ul li{border: none;}
#header ul li a,#header ul li span{color: #ffffff;}

#logo{
max-width: 400px;
min-width: 300px;
}

.width_1280-1000{max-width: 1600px;}
#side_contact .bg_white{background-color: #fbfbfb;}

.width_1280-1000{min-width: auto;}
.mail_bt.width_200 {
max-width: 200px;
width: 100%;
}

.footer_box.bg_white{background-color: transparent;}

.fix_banner{
width: 300px;
position: fixed;
bottom: 5px;
right: 135px;
z-index: 2;
}
/* スマホ時真ん中へ */
@media  screen and (max-width: 667px){
.fix_banner{
width: 250px;
right: auto;
left: 50%;
-ms-transform: translate(-50%,0);
-webkit-transform: translate(-50%,0);
transform: translate(-50%,0);
}
}

#side_info .logo{width: 100%!important;}
/*--------------------------------
TOP
--------------------------------*/
header.top{
background-color: transparent;
position: absolute;
top: 0;
}
header.top .mail_bt{
margin-left: auto;
margin-right: 0;
}
header.top .tel_txt{
margin-left: auto;
margin-right: 0;
color: #ffffff;
}
header.top .tel_txt a{color: #ffffff;}

#video{ height: 93vh; }
#video video{
height: 100%;
object-fit: cover;
top: 50%;
left: 50%;
    -ms-transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}

/* TOP お知らせ */
.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
}

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.topcms_news_type2 .cate_box {width: 100%!important;}
.topcms_news_type2 .txt_height {height: 3em}
}
/*--------------------------------
下層
--------------------------------*/


/*タブレット用（768px以下）*/
@media  screen and (max-width: 768px){
header{top: 0;}
#logo{max-width: 70px;}
.hamburger{top: 17px;}
#main_img {
padding-top: 0;
margin-top: 0;
}
#main_img:before{
width: 53vw;
height: 50vw;
left: 3%;
}
#video {height: 60vh;}
.frame7{
top: 7%;
left: 3%;
}

}

/*スマホ用（667px以下）*/
@media  screen and (max-width: 667px){
#logo{
width: 200px!important;
max-width: none;
min-width: auto;
}
.hamburger{top: 8px;right: -4px;}

header.top .d_flex{
padding-right: 5px;
padding-left: 5px;
}
#main_img {margin-top: 0;}
#video {height: 47vh;}
.frame{
width: 30px;
height: 30px;
}
.frame.frame1,.frame.frame2{top: 15px;}

}

/*IE*/
@media all and (-ms-high-contrast: none) {}




/*--------------------------------
自動リンク
--------------------------------*/
/* color */
.linkStyle{color: #333; text-decoration: underline;}
.txt_color_nomal .linkStyle{color: #333;}
.txt_white .linkStyle{color: white;}
.txt_red .linkStyle{color: red;}
.bg_color1 .linkStyle{color: #fff;}
.bg_color2 .linkStyle{color: #333;}
.bg_color3 .linkStyle{color: #fff;}
.bg_color4 .linkStyle{color: #333;}

/*IEのみ*/
@media all and (-ms-high-contrast: none) {
.linkStyle{display: inline-block;}
}

/*--------------------------------
カラー
--------------------------------*/
body,.txt_color_nomal,.hvr_txt_color_nomal:hover{color: #333333;}
.txt_black,.hvr_txt_black:hover{color: black;}
.txt_white,.hvr_txt_white:hover{color: white;}
.txt_red,.hvr_txt_red:hover{color: red;}
.txt_color1,.hvr_txt_color1:hover{color: #c79b27;} /* メインカラー */
.txt_color2,.hvr_txt_color2:hover{color: #FAEDCD;} /* サブカラー */
.txt_color3,.hvr_txt_color3:hover{color: #8C9B64;} /* アクセントカラー1 */
.txt_color4,.hvr_txt_color4:hover{color: #F5F0E6;} /* アクセントカラー2 */

/* background-color */
.bg_white,.hvr_bg_white:hover{background-color: white;} /* 白背景 */
.bg_black,.hvr_bg_black:hover{background-color: black;} /* 黒背景 */
.bg_color1,.hvr_bg_color1:hover{background-color: #d2b464;} /* メインカラー */
.bg_color2,.hvr_bg_color2:hover{background-color: #FAEDCD;} /* サブカラー */
.bg_color3,.hvr_bg_color3:hover{background-color: #8C9B64;} /* アクセントカラー1 */
.bg_color4,.hvr_bg_color4:hover{background-color: #F5F0E6;} /* アクセントカラー2 */
.bg_color_clear,.hvr_bg_color_clear:hover{background-color: transparent!important;}

/* border-color */
.border_white,.hvr_border_white:hover{border-color: white;}
.border_black,.hvr_border_black:hover{border-color: black;}
.border_color1,.hvr_border_color1:hover{border-color: #d2b464;}
.border_color2,.hvr_border_color2:hover{border-color: #FAEDCD;}
.border_color3,.hvr_border_color3:hover{border-color: #8C9B64;}
.border_color4,.hvr_border_color4:hover{border-color: #F5F0E6;}