@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=BIZ+UDPGothic:wght@400;700&family=Noto+Sans+JP:wght@100..900&family=Science+Gothic:wght@100..900&display=swap');


/* Reset CSS
-------------------------------*/

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{
    margin:0;
    padding:0;
}
table{
    border-collapse:collapse;
    border-spacing:0;
}
fieldset,img{
    border:0;
}
address,caption,cite,code,dfn,em,strong,th,var{
    font-style:normal;
    font-weight:normal;
}
ul,ol,li{
    list-style:none;
}
caption,th{
    text-align:left;
}
h1,h2,h3,h4,h5,h6{
    font-size:100%;
    font-weight:normal;
}
q:before,q:after{
    content:'';
}
abbr,acronym {border:0;font-variant:normal;}
sup {vertical-align:text-top;}
sub {vertical-align:text-bottom;}
hr {display:none;}
input,textarea,select{
    font-family:inherit;
    font-size:inherit;
    font-weight:inherit;
    *font-size:100%;
}
*,
*::before,
*::after {
    box-sizing: border-box;
}

img{
    max-width:100%;
    height:auto;
    vertical-align: bottom;
    margin:0;
    padding:0;
}

.clearfix:after {
    content: ""; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}
html {scroll-behavior: smooth;}

a {
  outline:none;
  color: #2e2e2e;
  -webkit-transition: 0.3s;
  -moz-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.3s;
  text-decoration: none;
}

a:hover {
  text-decoration: none;
  filter: alpha(opacity=70);
  -moz-opacity:0.70;
  opacity:0.70;
}

/* PCで電話リンクしない */
@media(min-width: 768px){
  a[href^="tel:"]{
    pointer-events: none;
  }
}

.flex{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.w1450{
    width: 90%;
    max-width: 1450px;
    margin: auto;
}

.noto{
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
}
.en_sg {
    font-family: "Science Gothic", sans-serif;
    font-weight: 500;
    font-variation-settings:
        "slnt" 0,
        "wdth" 100,
        "CTRS" 0;
}



/* Basic setting
-------------------------------*/

body {
    font-family: "BIZ UDPGothic", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 16px;
	line-height: 1.8;
    font-weight: 700;
	color: #000;
	-webkit-text-size-adjust: 100%;
}
@media screen and (max-width:640px){
    body {
        font-size: 14px;
    }

}




#wrapper{
	margin:0 auto;
	padding:0;
	width:100%;
	overflow:hidden;
}


/* ヘッダー
-------------------------------*/
#header{
    width: 100%;
    padding: 20px;
    position: fixed;
    z-index: 10;
    color: #fff;
    transition: 0.5s;
}
.header_inner{
    width: 100%;
    max-width: 1920px;
    margin: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}
h1{
    position: absolute;
    left: 190px;
    top: 0;
    font-size: 12px;
    line-height: 1.2;
    transition: 0.3s;
}
.fixed .h_logo .img,
.fixed .h_logo .img img{
    transition: 0.3s;
}

@media screen and (min-width:1401px){
    .fixed h1{
        position: absolute;
        left: 150px;
        top: 38%;
        width: calc(100% - (150px + 970px));
    }
}

@media screen and (min-width:911px){
    #header.fixed{
        padding-top: 10px;
        padding-bottom: 10px;
        background-color: #fff;
        color: #000;
    }
    .fixed .h_logo .img img{
        visibility: hidden;
        height: 65px;
    }
    .fixed .h_logo .img{
        display: inline-block;
        background-image: url(../img/common/logo_bk.png);
        background-repeat: no-repeat;
        background-position: left top;
        background-size: contain;
    }
    .fixed h1{
        left: 150px;
    }

}

@media screen and (max-width:910px){
    #header{
        padding: 10px 20px;
        position: relative;
        z-index: 10;
        background-color: #fff;
        color: #000;
        border-bottom: solid 1px #ccc;
    }
    .header_inner{
        justify-content: flex-start;
        padding-right: 60px;
    }
    h1{
        position: static;
        order: 2;
    }
    .h_logo{
        order: 1;
        margin-right: 20px;
    }
    .h_logo a{
    }
    .h_logo .img{
        display: block;
        width: 153px;
        height: 85px;
        background-image: url(../img/common/logo_bk.png);
        background-repeat: no-repeat;
        background-position: left top;
        background-size: contain;

    }
    .h_logo .img img{
        visibility: hidden;
    }
}
@media screen and (max-width:640px){
    #header{
        padding: 15px 10px;
    }
    .h_logo .img{
        width: 91px;
        height: 50px;
    }
}
@media screen and (max-width:420px){
    .h_logo{
        margin-right: 10px;
    }

}






























/* フッター
-------------------------------*/
#footer{
    width: 100%;
    background-color: #000;
    padding-top: 100px;
    padding-bottom: 100px;
    color: #fff;
}
.top_seo{
    font-size: 13px;
    margin-bottom: 100px;
}
.f_info{
    align-items: flex-end;
}
f_info_txtspan{
    display: inline-block;
}

#footer .copy{
	font-size:12px;
}
#footer .copy span{
    display: inline-block;
    margin-left: 1em;
}
/*  ページトップへ */
#pageTop{
	position:fixed;
	bottom:50px;
	right:20px;
}





@media screen and (max-width:910px){

    #footer{
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .top_seo{
        margin-bottom: 60px;
    }

    #footer .copy{
        width: 100%;
        margin-top: 60px;
    }

}
@media screen and (max-width:640px){
    #footer{
        padding-bottom: 30px;
    }
    #footer .copy{
        text-align: center;
    }
    #footer .copy span{
        display: block;
        margin-left: 0;
    }
    #pageTop img{
        width:52px;
        height:auto;
    }
}












background-image: none;


@media screen and (max-width:910px){

}
@media screen and (max-width:640px){

}




@media screen and (max-width:910px){

}
@media screen and (max-width:640px){

}




@media screen and (max-width:910px){

}
@media screen and (max-width:640px){

}




@media screen and (max-width:910px){

}
@media screen and (max-width:640px){

}










































/* layout */
.clear { clear: both; }
.ac { text-align: center; }
.strong{font-weight:bold;}

/* プリントの表示設定 */
@media print{
    body {
        zoom: 0.68;
        -webkit-print-color-adjust: exact;
    }

    #wrapper{
        width:1110px;
        margin:auto;
    }

    [data-aos^="fade"][data-aos^="fade"] {
        opacity: 1;
        transform: translateZ(0);
    }

}







