﻿/*--------フォント・リンク--------*/
.linkStyle{color: #333333; text-decoration: underline;}

@font-face {
    font-family: 'NotoSans';
    font-style: normal;
    font-weight: 400;
    src: url('./Dup/img/NotoSans_r.woff') format('woff'),
        url('./Dup/img/NotoSans_r.eot')  format('eot');
    font-display: swap;
}
@font-face {
    font-family: 'NotoSans';
    font-style: normal;
    font-weight: 700;
    src: url('./Dup/img/NotoSans_bold.woff') format('woff'),
        url('./Dup/img/NotoSans_bold.eot')  format('eot');
    font-display: swap;
}


#pc_nav li a, #top_pc_nav li a, #footer_nav li a,#page_title .page_title_box h2,.overlay.open {font-family: "NotoSans","游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}
#copyright a{font-family: 'NotoSans',sans-serif;}

body{font-family: "NotoSans","游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}

/*--------全体--------*/
#main_img .menu .bg_white { background-color: rgba(255,255,255,0);}
.vegas-overlay {
    background-image: none!important;
}
.top header.scr_header ul li a { color: #181818;}
header.scr_header {background-color: rgba(229, 229, 229, .7);}
@media screen and (min-width: 1000px){
    #intro .intro_txt{
        width: 75%;
        margin: 0 auto;
        }
    #contents1 .con_box{
        background-color: rgba(255,255,255,0.75);
        margin-left: -90px;
        z-index: +1;
        padding: 50px;
        }
    #contents1{ margin-bottom: 5%;}
    #contents2 .con_box{
        background-color: rgba(255,255,255,0.75);
        margin-right: -102px;
        z-index: +1;
        padding: 50px;
        }
}

#intro .intro_title h3{font-size: 1.6em;}
.con_title h3{font-size: 1.4em;}
#contents1 .con_box .item{
    position: absolute;
    display: inline-block;
    width: 52%;
    height: auto;
    right: 0px;
    top: -450px;
}
#contents1 .con_box,#contents2 .con_box{position:relative;}
#contents1 .con_box::before,#contents2 .con_box::before {
	display: block;
	position: absolute;
	content: "";
	margin: auto;
	left: 0px;
	top: 0px;
	background-color: #e6e3e1;
	width: 100px;
	height: 1px;
}
#contents1 .con_box::after ,#contents2 .con_box::after {
	display: block;
	position: absolute;
	content: "";
	margin: auto;
	left: 0;
	top: 0px;
	background-color: #e6e3e1;
	width: 1px;
	height: 100px;
}
#contents1 .con_box2,#contents2 .con_box2{position:relative;}
#contents1 .con_box2::before{
	display: block;
	position: absolute;
	content: "";
	pointer-events: none;
	margin: auto;
	right: -50px;
	bottom: -50px;
	background-color: #e6e3e1;
	width: 100px;
	height: 1px;
}
#contents1 .con_box2::after{
	display: block;
	position: absolute;
	content: "";
	pointer-events: none;
	margin: auto;
	right: -50px;
	bottom: -50px;
	background-color: #e6e3e1;
	width: 1px;
	height: 100px;
}
#contents2 .con_box2::before {
	display: block;
	position: absolute;
	content: "";
	pointer-events: none;
	margin: auto;
	right: -50px;
	bottom: -50px;
	background-color: #e6e3e1;
	width: 100px;
	height: 1px;
}
#contents2 .con_box2::after {
	display: block;
	position: absolute;
	content: "";
	pointer-events: none;
	margin: auto;
	right: -50px;
	bottom: -50px;
	background-color: #e6e3e1;
	width: 1px;
	height: 100px;
}

#contents3 .con_box {
  position: relative;
  background-color: rgba(255,255,255,0.75);
}
#contents3_wrap:before {
    background-attachment: fixed;
}
#contents3 .con_box::before {
  top: -1px;
  bottom: -1px;
  left: 80px;
  right: 80px;
}
#contents3 .con_box::after {
  top: 80px;
  bottom: 80px;
  left: -1px;
  right: -1px;
}

#top_cms.back1:before { z-index: -1;}
#footer .con_box h2{display:none;}
#logo2 a{max-width:250px;}
#footer .tel_bt{font-size: 1.3em;}


/*--------下層--------*/
header.scr_header ul li a { color: #181818;}
#page_title .page_title_box{padding: 25px 35px 25px 35px;}
#page_title .page_title_box h2{
    font-size: 1.3em;
    letter-spacing: 6px;
}
.page .back1:before{display:none;}
.page .con_box.bg_white{background-color:rgba(255,255,255,0);}


.cate_title {
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap; 
}
.cate_title::before,
.cate_title::after {
  content: '';
    display: block;
    background: #999;
    width: 3%;
    height: 2px;
}
.cate_title::before {
  margin-right: 20px;
}
.cate_title::after {
  margin-left: 20px;
}
#cms_2-a .cate .cate_img{height: 400px!important;}

#cms_2-c .cate_box{
    background-color: rgba(211, 213, 237, .13);
}

#cms_2-c #cate0 .cate_box{border-left:none;background-color: rgba(0,0,0,0);}
#cms_2-c #cate0 .box_txt1,
#cms_2-c #cate0 .box_txt2{padding-left:130px;}

#cms_2-c #cate0 .box_wrap{
    position: relative;
    padding-left: 30px;
}
#cms_2-c #cate0 .box_wrap:before{
    content: "";
    display: inline-block;
    height: calc(100% - 0px);
    border-left: 14px solid #e9e9e9;
    position: absolute;
    top: -5px;
    left: 107px
}
#cms_2-c #cate0 .box_txt1{position:relative;}
#cms_2-c #cate0 .box_txt1::before,
#cms_2-c #cate0 .box_txt1::after {
	content: "";
	display: block;
	position: absolute;
	top: 14.5px;
}
#cms_2-c #cate0 .box_txt1::before {
    width: 7px;
    height: 7px;
    margin-top: -3px;
    background: #626262;
    border-radius: 50%;
    left: 59.5px;
}
#cms_2-c #cate0 .box_txt1::after {
	width: 50px;
	border-bottom: 1px dashed #999;
	position: absolute;
	left: 72px;
}
#cms_2-c #cate0 .box_description2{
    position: relative;
    border-left: none;
    background-color: rgba(255, 255, 255, 0);
}
#cms_2-c #cate0 .box_description2 span{
position: absolute;
    display: inline-block;
    width: 90px;
    top: -23px;
    left: -50px;
}

#cms_5-b .cate_box, .cms_5-b .cate_box {border: 1px solid #2a2922;}
#cms_5-b .cate_box .open_bt, .cms_5-b .cate_box .open_bt { border: none;}
#cms_5-b .cate_box .box_item, .cms_5-b .cate_box .box_item { border: none;    padding: 0px 30px 0px;}
#cms_5-b .cate_box .box_txt1,.cms_5-b .cate_box .box_txt1{
	padding: 1em;
    background-color: #f5f5f5;
}
#cms_5-b .cate_box .open_bt .box_title1, .cms_5-b .cate_box .open_bt .box_title1 {  margin-left: 75px;}
#cms_5-b .cate_box .open_bt .arrow img, .cms_5-b .cate_box .open_bt .arrow img{display: none;}
#cms_5-b .cate_box .arrow, .cms_5-b .cate_box .arrow {
	left: 2px;
    top: 50%;
    margin-top: 0px;
}
#cms_5-b .cate_box .open_bt .box_title1::before, .cms_5-b .cate_box .open_bt .box_title1::before {
    left: -26px;
    top: -1px;
}
#cms_5-b .cate_box .open_bt .arrow::before,
#cms_5-b .cate_box .open_bt .arrow::after,
.cms_5-b .cate_box .open_bt .arrow::before,
.cms_5-b .cate_box .open_bt .arrow::after{
    position: absolute;
    content:'';
    width: 15px;
    height: 2px;
    background-color: #909090;
    
}
#cms_5-b .cate_box .open_bt .arrow::before,
.cms_5-b .cate_box .open_bt .arrow::before{
    top:48%;
    left: 15px;
    transform: rotate(180deg);    
    transition: all 0.5s;
}
#cms_5-b .cate_box .open_bt .arrow::after,
.cms_5-b .cate_box .open_bt .arrow::after{    
    top:48%;
    left: 15px;
    transform: rotate(-90deg);
    transition: all 0.5s;
}
#cms_5-b .cate_box .open_bt .arrow.arrow_be::before,
.cms_5-b .cate_box .open_bt .arrow.arrow_be::before{
	transform: rotate(0deg);
    transition: all 0.5s;
}
#cms_5-b .cate_box .open_bt .arrow.arrow_be::after,
.cms_5-b .cate_box .open_bt .arrow.arrow_be::after{
	transform: rotate(0deg);
    transition: all 0.5s;
}
#page10 .con_box div:nth-of-type(3) span:first-of-type{    text-transform: initial;}

.nav_menu_more:first-of-type a .icon:before{content: "\f879";}
#overlay .right .nav_menu_more a{
    background-color: #585858;
    border: 1px solid #585858;
    color: #fff;
}
#overlay .right .nav_menu_more a:hover{
    background-color: #fff;
    color:#585858;
}
#nav_menu .mg_b-50px h2,#nav_menu .mg_b-50px .nav_menu_more:last-of-type{display:none;}
.overlay {
    background: linear-gradient(135deg, rgba(159, 159, 159, .9) , rgba(223, 223, 223, .9) )!important;
}
#overlay .right.txt_white,#overlay .right p a.txt_white {color: #1a1a1a;}
#overlay .right .opacity07 {opacity: 1;}

@media screen and (min-width: 769px){
#overlay .left li {
    font-size: 0.9em;
}
}

/*--------タブレット--------*/
@media screen and (max-width: 768px){
    #logo {
    opacity: 0;
}
header.scr_header #logo {
    opacity: 1;
}
.back1:before, .back2:before {
    width: 35%;
}

#intro .num {
    font-size: 4vw;
    top: -30px;
}
#contents1 .con_box .item {
    width: 61%;
    right: auto;
    left: -200px;
    top: auto;
    bottom: 131px;
}

#contents1 .con_box,#contents2 .con_box {
    margin: 20% 3% 0;
}
#contents1 .con_box::before,#contents2 .con_box::before {
	top: -35px;
}
#contents1 .con_box::after ,#contents2 .con_box::after {
	top: -35px;
}
.page .con_box {
    padding: 5% 0;
}
.page #footer .con_box {
    padding: 3% 0 3% 10%;
}
#cms_2-a .cate .cate_img {
    height: 280px!important;
}


#cms_2-c #cate0 .box_wrap{padding-left: 30px;}
#cms_2-c #cate0 .box_txt1, #cms_2-c #cate0 .box_txt2 {padding-left: 40px;}
#cms_2-c #cate0 .box_txt2{padding-left: 41px;}
#cms_2-c #cate0 .box_wrap:before{ left: 13px;}
#cms_2-c #cate0 .box_txt1::before { left: -34.5px;}
#cms_2-c #cate0 .box_txt1::after {left: -22px;}
#cms_2-c #cate0 .flex_order2_tb{
    width: 86%!important;
    margin: 0 auto;
}

}



/*--------スマートフォン--------*/
@media screen and (max-width: 667px){
    .overlay ul li a {
    color: #404040;
    }
.back1, .back2 {background-color: #f7f7f7;}
.back2:before {
    height: 100%;
}
#intro h3{font-size: 5.5vw;}
#intro .intro_title h3,.con_title h3 {
    font-size: 4.4vw;
}

#intro .num {
    font-size: 5vw;
    top: -17px;
}
#contents1 .con_box,#contents2 .con_box {
    padding: 20px;
    margin: 10% 3% 0;
}
#contents1 .con_box::before,#contents2 .con_box::before {
	top: -5px;
}
#contents1 .con_box::after ,#contents2 .con_box::after {
	top: -5px;
}
#contents1 .con_box2::before{
	right: -35px;
}
#contents1 .con_box2::after{
	right: -35px;
}
#contents1 .con_box .item {
    display: none;
}
#contents2 .con_box2::after{
	right: -35px;
}
#contents2 .con_box2::before {
	right: -35px;
}
#contents3_wrap:before, #contents3_wrap:after {
    top: -100px;
}
 #contents3_wrap:before{
    content:"";
     display:block;
     position:fixed;
     top:0;
     left:0;
     z-index:-1;
    background-attachment: inherit;
  }

#top_cms,#info_contact{
    background-color: #f7f7f7;
    margin-bottom: 0;
    padding-bottom: 50px;
}
#footer #h1txt p{
        font-size: 3.2vw;
    line-height: 1.5;
}
.page #footer .con_box {
    padding: 3% 0 3% 0%;
}
.cms_5-b .cate_box .arrow {
    left: -10px;
}
.cms_5-b .cate_box .open_bt .box_title1 {
    margin-left: 62px;
}
.cms_5-b .cate_box .open_bt {
    padding: 0;
}
#page_title .page_title_box {
    padding: 25px 30px 25px 30px;
    width: 60%;
}
#page_title .page_title_box h2 {
    font-size: 4vw;
    letter-spacing: 3.5px;
}
.cate_title {
    white-space: break-spaces;
    line-height: 1.5;
    letter-spacing: 3px;
    font-size: 4.5vw;
}
.cate_title::before,
.cate_title::after {
  width: 6%;
}
.cate_title::before {
  margin-right: 10px;
}
.cate_title::after {
  margin-left: 10px;
}
#cms_2-a .cate .cate_img {
    height: 160px!important;
}

#cms_2-c #cate0 .box_wrap{
    padding-left: 23px;
}
#cms_2-c #cate0 .box_wrap:before {
    left: 8px;
    top: 7px;
}
#cms_2-c #cate0 .box_txt1::before, #cms_2-c #cate0 .box_txt1::after {
    top: 13px;
}
#cms_2-c #cate0 .box_txt1::before {
    margin-top: -3px;
    left: -31.5px;
}
#cms_2-c #cate0 .box_txt1::after {
    width: 30px;
    left: -22px;
}
#cms_2-c #cate0 .box_txt1, #cms_2-c #cate0 .box_txt2 {
    padding-left: 16px;
}
#cms_2-c #cate0 .flex_order2_tb {
    width: 92%!important;
    margin: 0;
    margin-left: auto;
}
#cms_5-b .cate_box .open_bt .box_title1{
    margin-left: 68px;
    font-size: 3.8vw;
    padding-right: 15px;
}
#cms_5-b .cate_box .box_item, .cms_5-b .cate_box .box_item {
    padding: 0px 15px 0px;
    line-height: 1.5;
}
}


/*--------------------------------------------
IE
--------------------------------------------*/
@media all and (-ms-high-contrast:none){
.cms_1-a figure img{width:100%!important;height:auto!important;}
}
