@charset "utf-8";
@media screen and (min-width: 1201px) { html{font-size:16px; } }@media screen and (max-width: 1200px) { html{font-size:15px; } }@media screen and (max-width: 1024px) { html{font-size:14px; } }@media screen and (max-width: 768px) {  html{font-size:13px; } }@media screen and (max-width: 480px) {  html{font-size:12px; } }a,a:visited,a:active { color:rgba(33,33,33,1.00)}a:hover { color:rgba(186,186,186,1.00)}
/* css setting */
a   {
text-decoration:none;
}

h1 , h2 , h3 {
    margin: 0px 0px 0px 0px;
    padding: 0px 0px;
    margin-top: 0px;
}

.white_rgba {
background-color: rgba(255,255,255,0.7);
}


/*　———　ヘッダーロゴ　———　*/
.headerlogo img {max-width:220px;}
@media screen and (min-width: 1201px) {
    .headerlogo {padding: 2.5rem 0rem 0rem 2rem;}
}

@media screen and (max-width: 768px) {
    .headerlogo img {width:210px;}
}
@media screen and (max-width: 480px) {
    .headerlogo {padding: 3rem 0rem 0rem 2rem; width: 75%;}
    .headerlogo img {width:160px;}
}



/*　———　TOP - コピー　———　*/
.home_top_copy{text-align: justify; padding: 24vh 0rem 19.5vh 2rem; max-width: 1200px;  width: 100%; margin: 0 auto; box-sizing: border-box;}
.home_top_copy img{max-width:460px; width:100%;}
@media screen and (max-width: 1200px){
    .home_top_copy{padding: 24vh 2rem 19.5vh 2rem;}
}
@media screen and (max-width: 768px){
    .home_top_copy{padding: 25vh 0rem 30vh 2rem;}
    .home_top_copy img{max-width:400px;}
}
@media screen and (max-width: 498px){
    .home_top_copy{padding: 35vh 0rem 20vh 2rem;}
    .home_top_copy img{max-width:300px;}
}


/*　———　事業領域タイトル　———　*/

.titlespace {
padding: 4rem 0 2rem 0; letter-spacing: 0.1rem;
}

@media screen and (max-width: 768px){
.titlespace {
padding: 0 0 2rem 0;
}
}


/*　———　フッターのパディング　———　*/

.f-pdd {
padding: 0rem 0rem 0.3rem 2rem;
}
#footer-2Parent{padding:3rem 0rem;}

@media screen and (max-width: 1024px){
.f-pdd {
padding: 0 2rem 0.3rem 2rem;
}
}


/*　———　右上のボタン　———　*/
.contact_btn i{
font-size: 3rem!important;
}
.contact_btn .fs_btn_text{
line-height:2;
}


/*　Fatnaviフィックス　*/

#topfix-A {
position: absolute;
z-index: 50;
top: 0;
right: 0;
}

/*---------home_スリック----------*/
.home_slick_space { margin:0 0 0 40vw; }
@media screen and (max-width: 768px) {.home_slick_space { margin:0 0 0 10vw; }}
@media screen and (max-width: 498px) {.home_slick_space { margin:0 0 0 0; }}

/*　--------------------　線の長さ　--------------------　*/
.linelength   {
max-width: 29px;
margin:  0 auto;  
}



/*　———　事業領域の右と下側のマージン　———　*/
.businessarearight {
margin: 0 1px 0 0;
}

@media screen and (max-width: 768px){
.businessarearight {
margin: 0 1px 1px 0;
}
}

@media screen and (max-width: 498px){
.businessarearight {
margin: 0 0 1px 0;
}
}

/*　--------------------　会社概要　--------------------　*/
.outline-tb{padding: 2.5rem 2rem; background-color:#ffffff;}
.outline-tb div{font-size:1.5rem; font-weight:bold; letter-spacing: 0.05rem; padding: 0rem 0rem 2rem 0rem;}
.outline-tb ul{width:100%;}
.outline-tb ul li{width:100%;}
.outline-tb dl{display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-flow: row nowrap; justify-content: flex-start; align-items: stretch; width:100%;}
.outline-tb dl dt{width:190px; padding:1.5rem 0rem 1.5rem 0rem; border-top:1px solid #666666; box-sizing: border-box;}
.outline-tb dl dd{width:calc(100% - 140px); padding:1.5rem 2rem 1.5rem 2rem; border-top:1px solid #c4c4c4; box-sizing: border-box;}
@media screen and (max-width: 1211px) {
    .outline-tb dl dt{width:33%;}
    .outline-tb dl dd{width:67%;}
}
@media screen and (max-width: 498px) {
    .outline-tb dl{flex-flow: column wrap;}
    .outline-tb dl dt{text-align: justify; color:#666666; width:100%; padding:1rem 0rem 0rem 0rem; border-top:1px solid #c4c4c4;}
    .outline-tb dl dd{width:100%; padding:0.5rem 0rem 1rem 0rem; border-top:0px solid #666666;}
}


/*　フッターナビ　*/
.sitemap-table{
width:80%;
padding: 0rem 0rem 0rem 2rem;
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
justify-content: left;
flex-direction: row;
}
.sitemap-table li:nth-child(1){width: 110px;}
.sitemap-table li:nth-child(2){width: 140px;}
.sitemap-table li:nth-child(3){width: 215px;}
.sitemap-table li:nth-child(4){width: calc(100% - 465px);}
.sitemap-table li p{
margin-bottom: 1rem;
}
.sitemap-table-eiji{
font-size:0.8rem;
font-family: "Lato", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", sans-serif;
}
@media screen and (max-width: 768px) {
.sitemap-table{
font-size:125%!important;
line-height:2.5rem!important;
flex-direction: column;
width: calc(100% - 2rem);
padding: 0rem 0rem 0rem 2rem;
}
.sitemap-table li:nth-child(1){width: 100%;}
.sitemap-table li:nth-child(2){width: calc(100% - 1rem); padding:0.5rem 0rem 0.5rem 1rem; }
.sitemap-table li:nth-child(3){width: 100%;}
.sitemap-table li:nth-child(4){width: 100%;}
.sitemap-table li a{
flex-flow: row;
display: inline-flex;
}
.sitemap-table-eiji{width:84px;}
.sitemap-table .br-sp{
line-height: unset;
}
.sitemap-table li p{
margin-bottom: 0rem;
padding: 0.35rem 0rem 0.35rem 1rem;
}
.sitemap-table li p:nth-child(odd){
background-color: #f5f5f7;
}
}

@media screen and (max-width: 498px) {
.sitemap-table{padding: 1.5rem 0rem 0rem 2rem;}
.sitemap-table-eiji{width:84px;}
}
.sitemap-table a, .sitemap-table a:visited, .sitemap-table a:active ,
.f-link a , .f-link a:visited, .f-link a:active  {
color: #444444;
}
.sitemap-table a:hover ,
.f-link a:hover{
opacity: 0.5;
transition:0.3s;
}

/*　==============================　ページタイトル共通設定　==============================　*/

.page-ttl-ja{padding: 10rem 0rem 0rem 0rem}
.page-ttl-en{padding: 0.5rem 0rem 14rem 0rem}

@media screen and (max-width: 768px) {
.page-ttl-ja{padding: 8rem 0rem 0rem 0rem}
.page-ttl-en{padding: 0.5rem 0rem 12rem 0rem}
}

@media screen and (max-width: 480px) {
.page-ttl-ja{padding: 7rem 0rem 0rem 0rem}
.page-ttl-en{padding: 0.5rem 0rem 11rem 0rem}
}

/*　==============================　お問い合わせページ　==============================　*/
.formBlockSurveyTable dl dt {
color: #999;
text-align: left;
width: 100%;
margin-right: 0%!important;
font-weight: bold;
font-size: 1rem;
margin-top: 1rem;
padding: 2px 0 0.5% 0;
}
.formBlockSurveyTable dl dd {
width: 100%;
}
.formBlockSurveyTable dl {
padding: 0.5% 0;
}
.formBlockSurveyTable dl dd input,
.formBlockSurveyTable dl dd textarea {
width: 96%;
resize: none;
border-radius: 0;
padding: 1.5%;
border: 1px solid #c8d2dc;
}
.formBlockSubmitButton {
width:240px!important;
text-align:center!important;
background-color: #999!important;
color:#fff;
border:1px solid #fff;
}
@media screen and (max-width: 480px) {
.formBlockSubmitButton {
width:100%!important;
}
.miniSurveyView input[type="text"],
.miniSurveyView input[name^="Question"],
.miniSurveyView textarea[name^="Question"] {
font-size: 16px !important;
}
}
.formBlockSubmitButton:hover {
transition:0.6s;
background-color: #fff!important;
border:1px solid #999;
color:#999;
}
.on-pointer input {
cursor: pointer;
}
@media screen and (max-width: 498px) {
.formBlockSurveyTable dl dd input,
.formBlockSurveyTable dl dd textarea {
width: 100%;
}
}


/*　==============================　サイトのご利用について･プライバシーポリシー　==============================　*/
/*　--------------------　サイトのご利用についての設定　--------------------　*/
.contentA-hr{border-color: #2B3035; margin: 3rem 2rem;}
.contentA-hr-u{border-color: #bababa; margin: 2rem 2rem 2rem 4rem;}
.contentA-hr-u2{border-color: #bababa; margin: 2rem 2rem 2rem 2rem;}
.contentA-detailTx{margin: 0rem 2rem 0rem 2rem;}
.contentA-detailTxTB{margin: 0rem 2rem 0rem 4rem;}
.contentA-detailTxTB2{margin: 0rem 2rem 0.5rem 2rem;}
.contentA-detailTx table{width:100%; border:none;}
.contentA-detailTx th{font-size: 1.2rem; font-weight: normal; width:70px;}
.contentA-detailTx td{width:calc(100% - 70px);}
.sitepolicy-requirements{margin:1.5rem 2rem 1.5rem 4rem;}
.sitepolicy-requirements ul{display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-flow: row wrap; justify-content: flex-start; align-items: flex-start;}
.sitepolicy-requirements li{width:35%;}
.sitepolicy-requirements dt{font-weight:bold;}
.sitepolicy-requirements dd{margin-top: 0.5rem; margin-left: 0.75rem;}
.top-btnText{}
.top-btnText .fs_btn{max-width: 360px; width: 100%;}
@media screen and (max-width: 498px){
    .contentA-hr-u{margin: 2rem 2rem 2rem 2rem;}
    .contentA-detailTx{margin: 0rem 2rem 0rem 2rem;}
    .contentA-detailTxTB{margin: 0rem 2rem 0rem 2rem;}
    .contentA-detailTx th{width:35px;}
    .contentA-detailTx td{width:calc(100% - 35px);}
    .sitepolicy-requirements{margin:2rem 2rem 2rem 2rem;}
    .sitepolicy-requirements li{width: 50%;}
    .sitepolicy-requirements dd{margin-top: 0.5rem; margin-left: 0rem; letter-spacing: -0.01rem;}
    .top-btnText .fs_btn{max-width: 100%; width: 100%;}
}

/*　--------------------　その他　--------------------　*/

.hover-opacity:hover{
opacity: 0.8;
transition:0.6s;
}
.hover-opacity-img:hover {
opacity:0.7;
transition:0.6s;
}

.br-sp-adress{display:none;}
@media screen and (max-width: 768px) {
    .br-sp-adress{display:block; line-height:0rem;}
}

.hover-opacity-svg img{
opacity:1;
transition:0.6s;
}
.hover-opacity-svg img:hover
{opacity:0.7;
transition:0.6s;
}
.news-index{
position: relative;
z-index:0;}

/*　タブレット横時スクロール　*/
@media screen and (max-width: 1024px) {
.tb_bg_scroll{background-attachment: scroll!important; }}
/*　———　タブレット縦時改行なし　———　*/
@media screen and (max-width: 768px){
.tb-br-none br {display:none;}
}

/*　--------------------　telリンク - スマホ版のみ　--------------------　*/
@media screen and (min-width: 768px) {
a[href^="tel:"] {pointer-events: none;}
}
@media screen and (min-width: 480px) {
.tel_splink {pointer-events: none;}
}


/*　--------------------　ページリストタグ　--------------------　*/
.tk_tags{padding: 0.05rem 1em 0.1rem 1rem!important; position: relative; top: -1px;}
.tk_tags_Tags{
background-color: #000000;
color: #ffffff;
}

/*　==============================　文字　==============================　*/
.bold {font-weight: bold;}
.italic {font-style: italic;}
.space-1{
letter-spacing: 0.1rem;
}
.space-2{
letter-spacing: 0.2rem;
}
.space-3{
letter-spacing: 0.3rem;
}
.space-4{
letter-spacing: 0.4rem;
}

/*　ページトップボタン　*/
.pagetop_btm{
position: fixed;
z-index: 20;
bottom: 0;
right: 0;
}
.pagetop_btm .fs_btn{
line-height: 1.6;
}
.pagetop_btm_sp {
background-color: rgba(0, 70, 150, 0.7);
}



/*　--------------------　段落ち指定　--------------------　*/

@media screen and (max-width: 768px){
.r-gridN3 {
     width: calc((100% / 12) * 6);
     width: -webkit-calc((100% / 12) * 6);
     -moz-calc((100% / 12) * 6);
}
}


/*　--------------------　事業領域の上下幅指定　--------------------　*/

.business_btn_area { height:600px; }

@media screen and (max-width: 1024px){
.business_btn_area { height:500px; }
}

@media screen and (max-width: 768px){
.business_btn_area { height:350px; }
}
