@charset "UTF-8";


                
.contents_inner {
    display: block;
    padding-top: 120px;
    margin-top: -120px;
}
.overimg:hover{opacity: 0.5;}
.spnone{display: block;}
.sponly{display: none;}
.f-left{float: left;}
.f-right{float: right;}
.img100{width: 100%;}
.normal{font-weight: normal;}
.justify{text-align: justify;}
.w48per{width: 48%;}
.w30per{width: 30%;}
.w48per img{width: 100%;}
.w66per{width: 66%;position: relative;}
.w80per{width: 80%;margin: 0 auto;}
.w90per{width: 90%;margin: 0 auto;}
.white{color:#ffffff;}

.sec_p{line-height: 1.8;}
.tbonly{display: none;}
.center{text-align: center;}
.shadow{filter: drop-shadow(4px 4px 5px  rgba(0, 0, 0, 0.32));}
.center_left{text-align: center;}

.bnr_mtb img{margin: 0.6em 0 2em; }
/* 全体英字タイトル：左右センター */
.ttlIconCenter{
  display: flex;
  flex-direction: column;
  align-items: center;   /* ← 日本語も含めてセンター */
  gap: 5px;
  margin: 2em 0 1em;
}

/* 上段：アイコン＋英字 */
.ttlIconCenter__top{
  display: flex;
  align-items: center;   /* ← アイコンを英字の高さ中央に */
  gap: 16px;
}

/* アイコン */
.ttlIconCenter__icon{
  width: 30px;
  height: auto;
  display: block;
  flex: 0 0 auto;
}

/* 英字 */
.ttlIconCenter__en{
  font-size: 2.4em;
  font-weight: 800;
  letter-spacing: 0.04em;
  line-height: 1;
  color: #4b4b4b;
  text-align: center;
}

/* 日本語 */
.ttlIconCenter__jp{
  font-size: 1.2em;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.0;
  color: #4b4b4b;
  text-align: center;
}


/* section_01 */
.section_01{position: relative; z-index: 100;background-color: #dbdbdb;}
/* news */
.news_ttl{position: relative; width:15%;float: left;}
.news_ttl img{margin-top: -150px;}
#news{width: 75%;float: right;height: 380px;overflow-y: scroll; /* 縦方向のスクロールを許可 */
  scroll-snap-type: y mandatory; /* 縦方向のスクロール位置を強制的にスナップ */
  /* スクロールバーを隠したい場合（オプション） */
  -ms-overflow-style: none; /* IE, Edge */
  scrollbar-width: none; /* Firefox */}
#news a {
    display:flex;
    padding-bottom: 1em;
    margin-bottom: 1em;
	margin-top: 1em;
	border-bottom: solid 1px #000000;
	color: #000000;}
#news div:last-of-type {margin-bottom: 0;}
#news a img.news_img{width: 20%;margin-right: 2%;}
#news a div {
    position: relative;
    display: block;
    justify-content: flex-start;
    align-items: center;
    padding-left: 1em;
    padding-right: 1em;
	width: 100%;}

/* section_02 */

/* section_03 */
.section_03{background-color: #ececeb;}
.sec_ttl_left span{font-size: 0.6em;display: block;}
.sec_ttl_left{border-left: solid 5px #363b43; font-size: 2.2em;padding-left: 0.4em;margin-bottom: 1em;color:#363b43;}
.sec03_sub_ttl{font-size: 2.2em;color:#363b43;font-weight: bold;}
.sec_03_pl{padding-left: 1.4em;}
.sec03_btn img{margin-bottom: 4%;}
.sec03_btn_box_sp{display: none;}

/* section_04 */
.section_04{}
.voice_wrap{background-image: url("../img/sec_04_img_01_pc.webp");
    background-repeat: no-repeat;
    background-position: top center; /*右下に表示 したものを左上に反転*/
    background-size: cover; /*高さにあわせる*/
    height: 350px;
    width: 100%;
	position: relative;padding:0;}
.w50per_left{position: relative;width: 50%;float: left; height: 100%; background-color: rgba(255,255,255,0.7);padding: 3em;box-sizing: border-box;}
.w50per_right{position: relative; height: 100%;width: 50%;float: right;padding: 2em; box-sizing: border-box;}
.border{position: relative;border: solid 1px #ffffff;height: 100%;}
.sec04_btn img{position: absolute;bottom:3em;width: 70%;}

/* section_05 */
.section_05{background-color: #cec9c0;}
.sec_ttl_left img{height: 80px;}
.sec_05_bg{background-image: url("../img/sec_05_bg_01_pc.webp");
    background-repeat: no-repeat;
    background-position: top center; /*右下に表示 したものを左上に反転*/
    background-size: contain; /*高さにあわせる*/
    height: 700px;
    width: 100%;
	position: relative;padding:0;}
.sec05_width_left{position: relative;width: 46%;float: left; background-color: #cec9c0;padding:3em 1.6em;box-sizing: border-box;}
.sec05_width_left h3,.sec05_width_left p{font-size: 1.4em;}
.sec05_btn img{margin:25% 0 0;}

/* section_07 */
.sec_07_bg{background-image: url("../img/sec_07_bg_01_pc.webp");
    background-repeat: no-repeat;
    background-position: top center; /*右下に表示 したものを左上に反転*/
    background-size: cover; /*高さにあわせる*/
    height: auto;
    width: 100%;
	position: relative;padding:1.6em 3em;box-sizing: border-box;}
.sec07_btn img{width: 40%;margin-top: 3%;}

/* section_08 */
.sec_08_bg{background-color: #ececeb;height: auto; width: 100%;
	position: relative;padding:2em;box-sizing: border-box;}
.sec_08_h3{text-align: center;font-size: 1.2em;margin: 1em 0;}


/* section_09 */
.reform_wrap{background-image: url("../img/sec_09_img_01_pc.webp");
    background-repeat: no-repeat;
    background-position: top center; /*右下に表示 したものを左上に反転*/
    background-size: cover; /*高さにあわせる*/
    height: 300px;
    width: 100%;
	position: relative;padding:0;}
/* section_10 */
.estate_wrap{background-image: url("../img/sec_10_img_01_pc.webp");
    background-repeat: no-repeat;
    background-position: top center; /*右下に表示 したものを左上に反転*/
    background-size: cover; /*高さにあわせる*/
    height: 400px;
    width: 100%;
	position: relative;padding:0;}
.w50per_left_bgnone{position: relative;width: 50%;float: left; height: 100%;padding: 3em;box-sizing: border-box;}
.sec10_btn img{margin: 2% 0; width: 90%;}

.company_wrap{display: block; background-image: url("../img/sec_11_img_01_pc.svg");
    background-repeat: no-repeat;
    background-position: center; /*右下に表示 したものを左上に反転*/
    background-size: cover; /*高さにあわせる*/
    height: auto;
    width: 100%;
	box-sizing: border-box;
	position: relative;padding:2em 2em 2em 2em;}
.company_wrap h2{margin-bottom: 0;}

/* section_insta */
.section_insta{background-color: #ececeb;}
.insta_ttl{text-align: center;}
.insta_ttl img{width: 30%;margin-bottom: 0.4em;}
.insta_ttl span{display: block;font-size: 1.2em;}
/* section_contact */
.section_contact{background-image: url("../img/sec_contact_back_pc.webp");
    background-repeat: no-repeat;
    background-position: top center; /*右下に表示 したものを左上に反転*/
    background-size: cover; /*高さにあわせる*/
    height: auto;
    width: 100%;
	position: relative;padding:3em 0;}
.contact_right{position: absolute;right:3em;top:3em; width: 34%;}
.contact_right img{width: 100%;margin-bottom: 5%;}

/*================================================
 *  ユーチューブ用
 ================================================*/
.youtube_box{background-color: #941F2C;padding:3% 5%;}
.youtube_box h2{font-size: 26px;font-weight:bold;}
.youtubesm{
background:#fff
}
.youtubesm a{
border:2px
solid #fff;
display:block;
position:relative
}
.youtubesm a:hover{
opacity:.6
}
.youtubesm a::before{
background:url(../img/yt_icon_rgb.png) center center / 70px 40px no-repeat;content:"";
display:block;
width:100%; /*アイコンの幅調整*/
height:60px; /*アイコンの高さ調整*/
margin:-32px auto 0;
position:absolute;
top:50%;
left:0;
right:0;
z-index:1
}
.youtubesm a img{
width:100%
}
.yt_pt100{padding-top: 20%;}


/*
===================================================
 tb タブレット解像度
===================================================
*/
@media screen and (max-width:1000px) {
.spnone{display: block;}
.tbonly{display: block;}
.sponly{display: none;}
/* section_01 */

.section_02{background-position: right center;}
.section_03_right{background-image: url("../img/sec_03_back_tb.webp");background-position: right center;background-repeat: no-repeat;background-size:cover;}


	}
/*
===================================================
 sp スマホ解像度
===================================================
*/
@media screen and (max-width:640px) {
.spnone{display: none;}
.sponly{display: block;}
.tbonly{display: none;}
.f-left{float: none;}
.f-right{float: none;}
.w90per{width: 100%;margin:0 auto;}
.w80per{width: 80%;margin:0 auto;}
.w48per{width: 100%;margin-bottom: 3%;}
.w66per{width: 100%;position: relative;}	
.center_left{text-align: left;}

/* 全体英字タイトル：左右センター */
.ttlIconCenter{
  display: flex;
  flex-direction: column;
  align-items: flex-start;   /* ← 日本語も含めてセンター */
  gap: 5px;
  margin: 2em 0 1em;
}

/* 上段：アイコン＋英字 */
.ttlIconCenter__top{
  display: flex;
  align-items: center;   /* ← アイコンを英字の高さ中央に */
  gap: 10px;
}

/* アイコン */
.ttlIconCenter__icon{
  width: 25px;
  height: auto;
  display: block;
  flex: 0 0 auto;
}

/* 英字 */
.ttlIconCenter__en{
  font-size: 2.0em;
  font-weight: 800;
  letter-spacing: 0.04em;
  line-height: 1;
  color: #4b4b4b;
  text-align: center;
}

/* 日本語 */
.ttlIconCenter__jp{
  font-size: 1.0em;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.0;
  color: #4b4b4b;
  text-align: center;
}

/* news */
.news_ttl{position: relative; width:35%;float: none;margin-top: -15px;}
.news_ttl img{margin-top: -300px;}
#news{width: 100%;float: none;height: 250px;overflow-y: scroll; /* 縦方向のスクロールを許可 */
  scroll-snap-type: y mandatory; /* 縦方向のスクロール位置を強制的にスナップ */
  /* スクロールバーを隠したい場合（オプション） */
  -ms-overflow-style: none; /* IE, Edge */
  scrollbar-width: none; /* Firefox */}
#news a {
    display:flex;
    padding-bottom: 1em;
    margin-bottom: 1em;
	margin-top: 1em;
	border-bottom: solid 1px #000000;
	color: #000000;}
#news div:last-of-type {margin-bottom: 0;}
#news a img.news_img{width: 20%;margin-right: 2%;}
#news a div {
    position: relative;
    display: block;
    justify-content: flex-start;
    align-items: center;
    padding-left: 1em;
    padding-right: 1em;
	width: 100%;
}
	
.news_btn{float:none; width: 50%;margin: 2em 0;display: block;}
.news_btn img{width: 100%;}
.ttl_black{margin-top: 3%; font-size: 1em;display: block;font-weight: bold;}
.ttl_black02{margin-top: 3%; font-size: 1em;display: block;font-weight: bold;}
.ttl_wihte{color:#ffffff;margin-top: 3%; font-size: 1em;display: block;font-weight: bold;}
.page_h3{font-size: 1.4em;margin: 1% 0 2%;}

/* section_02 */
	
/* section_03 */
.sec_ttl_left span{font-size: 0.5em;line-height: 1.0em;padding-top: 0.3em}
.sec_ttl_left{font-size: 1.8em;padding-left: 0.4em;margin-bottom: 1em;line-height: 1.14em;}
.sec03_sub_ttl{font-size: 1.6em;}
.sec_03_pl{padding-left: 0em;}
	.sec_03_pl .mgm{margin-bottom: 1em ;}
.sec03_btn_box_sp{margin-top: 5%;}	
.sec03_btn_box_sp a img{margin-bottom: 3%;}
	
/* section_04 */
.section_04{background-image: url("../img/sec_04_img_01_sp.webp");
    background-repeat: no-repeat;
    background-position: top center; /*右下に表示 したものを左上に反転*/
    background-size: cover; /*高さにあわせる*/
    height: 350px;
    width: 100%;
	position: relative;padding:0;}
.voice_wrap_sp{position: relative;width: 100%;height: 100%; background-color: rgba(255,255,255,0.7);padding: 0em;box-sizing: border-box;}
.voice_wrap{background-image:none;
    height: 100%;
    width: 100%;
	position: relative;padding:0;}
.w50per_left{position: relative;width: 100%;float:none; height: 100%; background-color: rgba(255,255,255,0);padding: 0em;box-sizing: border-box;}
.w50per_right{display: none;}
.sec04_btn img{position: relative;bottom:0em;width: 100%;margin-top: 5%;}

/* section_05 */
.sec_ttl_left img{height: 50px;margin-top: 0.2em;}
.sec_05_bg{background-image: none;
    background-repeat: no-repeat;
    background-position: bottom center; /*右下に表示 したものを左上に反転*/
    background-size: contain; /*高さにあわせる*/
    height: auto;
    width: 100%;
	position: relative;padding:0;margin-bottom: 0%;}
.sec05_width_left{position: relative;width: 100%;float: left; background-color: transparent;padding:0.4em 0em;box-sizing: border-box;}
.sec05_width_left h3,.sec05_width_left p{font-size: 1.14em;}
span.sp_top{display: none;}
.sec05_btn img{margin:2% 0 0;}
	
/* section_07 */
.section_07{background-image: url("../img/sec_07_bg_01_sp.webp");
    background-repeat: no-repeat;
    background-position: top center; /*右下に表示 したものを左上に反転*/
    background-size: cover; /*高さにあわせる*/
    height: auto;
    width: 100%;
	position: relative;padding:0 0 2em;}
.sec_07_bg{background-image: none;padding:0em 0em 0;box-sizing: border-box;}
.sec_07_bg p{font-size: 0.84em;}
.sec07_btn img{width: 100%;margin-top: 3%;}
	
/* section_08 */
.section_08{background-color: #ececeb;padding-bottom: 1em;}
.sec_08_bg{background-color: #ececeb;height: auto; width: 100%;
	position: relative;padding:0em;box-sizing: border-box;}
.sec_08_h3{text-align: left;font-size: 1.0em;margin: 1em 0;}
.boxitem_03{width: 48%;margin-bottom: 5%;}
	
/* section_09 */
.section_09{background-image: url("../img/sec_09_img_01_sp.webp");
    background-repeat: no-repeat;
    background-position: top center; /*右下に表示 したものを左上に反転*/
    background-size: cover; /*高さにあわせる*/
    height: 350px;
    width: 100%;
	position: relative;padding:0;}
.reform_wrap{background-image: none;
    height: auto;
    width: 100%;
	position: relative;padding:0;}

/* section_10 */
.section_10{background-color: #bbc996;}
.estate_wrap{background-image: none;
    height: auto;
    width: 100%;
	position: relative;padding:0;}
.w50per_left_bgnone{position: relative;width: 100%;float: left; height: 100%;padding: 0em;box-sizing: border-box;padding-bottom: 2em;}
.sec10_btn img{margin: 1% 0; width: 100%;}
	
.company_wrap{display: block; background-image: url("../img/sec_11_img_01_pc.svg");
    background-repeat: no-repeat;
    background-position: right center; /*右下に表示 したものを左上に反転*/
    background-size: cover; /*高さにあわせる*/
    height: auto;
    width: 100%;
	box-sizing: border-box;
	position: relative;padding:1em 2em 1em 1em;}
/* section_insta */
.insta_ttl img{width: 70%;margin-bottom: 0.4em;}
.insta_ttl span{display: block;font-size: 1.2em;}
	
.yt_pt100{padding-top: 3%;}
.yt_spb2per{padding-bottom: 2%;}
}
