@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(91,90,90,1.00)}a:hover { color:rgba(0,50,120,1.00)}
/* css setting */
.tk_flex{padding:1rem 0rem;}

/*　———　PE-202601　———　*/
.pe_text {
background-color: #C40013;
font-weight: bold;
vertical-align: middle;
padding: 1rem;
font-size: 1rem;
display: inline-block;
}
@media only screen and (min-width: 768px){
.pe_text br { display:none;}}

/*　———　TOP - コピー　———　*/
.home_top_copy {
margin: 19vh 55vw 24vh 7rem;
}

@media screen and (max-width: 1024px){
.home_top_copy {
margin: 17vh 50vw 23vh 5rem;
}
}

@media screen and (max-width: 768px){
.home_top_copy {
margin: 33vh 30vw 12vh 3rem;
}
}

@media screen and (max-width: 480px){
.home_top_copy {
margin: 28vh 4.5rem 15vh 2rem;
}
}


/*　———　ヘッダーロゴ　———　*/

.headerlogo {
padding: 1.2rem 5vw 1rem 3rem;
}

@media screen and (max-width: 1024px){
.headerlogo {
padding: 1rem 0.5rem 0.5rem 2rem;
}
}

@media screen and (max-width: 768px){
.headerlogo {
padding: 1.3rem 0rem 0.8rem 1.5rem;
}
}

@media screen and (max-width: 480px){
.headerlogo {
padding: 1.5rem 65vw 1rem 2rem;
}
}



/*　グラデーション背景　*/
.haikei {
    background: -moz-linear-gradient(140deg, rgba(0,40,95,1), rgba(0,129,204,1));
    background: -webkit-linear-gradient(140deg, rgba(0,40,95,1), rgba(0,129,204,1));
    background: linear-gradient(140deg, rgba(0,40,95,1), rgba(0,129,204,1));
}


/*　箇条書きテーブル　*/
.bulletpoints-table{
margin: 0rem 0rem 0rem 0rem;
}
.bulletpoints-table-l {
padding: 0rem;
vertical-align: top;
width: 1.3rem;
line-height: 1.9rem;
color: #003278;
}
.bulletpoints-table-r {
padding: 0rem;
vertical-align: top;
width: calc(100% - 25px);
line-height: 1.9rem;
}


/*　箇条書きテーブル2　*/
.bulletpoints-table2{
margin: 0rem 0rem 0rem 0rem;
}
.bulletpoints-table2-l {
padding: 0rem;
vertical-align: top;
width: 1.4rem;
line-height: 1.8rem;
color: #003278;
}
.bulletpoints-table2-r {
padding: 0rem;
vertical-align: top;
width: calc(100% - 25px);
line-height: 1.8rem;
}


/*　———　UPF価格テーブル　———　*/

.tbl_upfprice {
width: 100%;
margin: 0;
padding: 0;
vertical-align: middle;
font-size: 1rem;
border-collapse: collapse;
border: 1px solid #333333;
table-layout:fixed;
}
.tbl_upfprice.none thead {
display: none;
}
.tbl_upfprice th {
padding: 0.5rem 1rem;
text-align: center;
vertical-align: middle;
font-weight: normal;
border: 1px solid #4B4B4B;
}
.tbl_upfprice th:first-child  {
width: 18%; text-align: center;
}
.tbl_upfprice td:first-child {
text-align: left;
}
.tbl_upfprice th:nth-child(2) {
width: 18%; text-align: center;
}
.tbl_upfprice td:nth-child(2) {
text-align: right;
}
.tbl_upfprice th:nth-child(3) {
width: 18%; text-align: center;
}
.tbl_upfprice td:nth-child(3) {
text-align: right;
}
.tbl_upfprice th:nth-child(4) {
width: 18%; text-align: center;
}
.tbl_upfprice td:nth-child(4) {
text-align: right;
}
.tbl_upfprice th:last-child {
width: 28%; text-align: center;
}
.tbl_upfprice td:last-child {
text-align: left;
}

.tbl_upfprice td {
padding: 0.5rem 0.5rem;
/*text-align: left;*/
vertical-align: middle;
border: 1px solid #4B4B4B;
background-color: #F5F5F7;
}
.tbl_upfprice thead th {
padding: 0.5rem 0.5rem;
text-align: center;
font-weight: bold;
background-color: #E5E5E5;
}
@media screen and (max-width: 480px) {
.tbl_upfprice {
font-size: 0.8rem;
}
}


/*　———　IMAGIC価格テーブル　———　*/

.tbl_imagicprice {
width: 100%;
margin: 0;
padding: 0;
vertical-align: middle;
font-size: 1rem;
border-collapse: collapse;
border: 1px solid #333333;
table-layout:fixed;
}
.tbl_imagicprice.none thead {
display: none;
}
.tbl_imagicprice th {
padding: 0.5rem 1rem;
text-align: center;
vertical-align: middle;
font-weight: normal;
border: 1px solid #4B4B4B;
}
.tbl_imagicprice th:first-child  {
width: 34%; text-align: center;
}
.tbl_imagicprice td:first-child {
text-align: left;
}
.tbl_imagicprice th:nth-child(2),
.tbl_imagicprice td:nth-child(2) {
width: 33%; text-align: center;
}
.tbl_imagicprice th:last-child,
.tbl_imagicprice td:last-child {
width: 33%; text-align: center;
}

.tbl_imagicprice td {
padding: 0.5rem 0.5rem;
/*text-align: left;*/
vertical-align: middle;
border: 1px solid #4B4B4B;
background-color: #F5F5F7;
}
.tbl_imagicprice thead th {
padding: 0.5rem 0.5rem;
text-align: center;
font-weight: bold;
background-color: #E5E5E5;
}
@media screen and (max-width: 480px) {
.tbl_imagicprice {
font-size: 0.8rem;
}
}


/*　--------------------　チャット風テーブル　--------------------　*/
.message-chat{
    padding:4rem 0rem;
}
.message-chat ul{
    width:100%;
}
.message-chat ul li{
    width:100%;
    margin-bottom:1rem;
}
.message-chat ul li:last-child{
    margin-bottom:0rem;
}
.message-chat 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: center;
    width:100%;
    padding-left: 2rem;
    box-sizing: border-box;
}
.message-chat dl dt{
    text-align: center;
    width:12px;
    padding:0rem;
    box-sizing: border-box;
}
.message-chat dl dd{
    width: auto;
    margin-left: 1rem;
    padding:0.5rem 1.5rem 0.5rem 1.5rem;
    border:1px solid #c9c9c9;
    border-radius: 1rem;
    background-color:#ffffff;
    box-sizing: border-box;
}

.message-textArea{
    margin-top: -14rem;
    padding: 0rem 2rem 7.5rem 2rem; 
}

@media screen and (max-width: 960px) {
    .message-textArea{
    margin-top: -7rem;
}
}

@media screen and (max-width: 498px) {
    .message-textArea{
        margin-top:3.5rem;
    }
}
@media screen and (max-width: 498px) {
    .message-img{
        padding: 0rem 0rem  0rem 0rem!important;
    }
 }

/*　==============================　よくある質問　==============================　*/
.recruitQA-list{
    margin: 0rem 2rem 0.5rem 2rem;
}
.recruitQA-list details{
    max-height:10rem;
    transition: all 0.3s;
    display: inline;
    width: 100%;
}
.recruitQA-list details:not[open]{
    max-height:10rem;
    transition: all 0.3s;
}
.recruitQA-list details:not[open] summary:before{
    transform: rotate(90deg);
    color:#ffffff;
    transition: all 0.3s;
}
.recruitQA-list details[open]{
    max-height:20rem;
    transition: all 1000ms;
}
.recruitQA-list details[open] summary{
    
}
.recruitQA-list summary{
    font-weight: bold;
    font-size: 1.1rem;
    color:#ffffff;
    letter-spacing: 0.05rem;
    padding: 1.4rem 0rem 1.4rem 2rem;
    background-color: #003278;

    position: relative;
    display: block;
    padding-left: 20px;
    cursor: pointer;
}
.recruitQA-list summary::-webkit-details-marker {
    display:none;
}
.recruitQA-list summary:before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f055";
    font-size:2.2rem;
    color:#ffffff;
    margin: auto;
    position: absolute;
    top: 12%;
    right: 2rem;
}
.recruitQA-list details[open] summary:before{
    transform: rotate(45deg);
    color:#ffffff;
    transition: all 0.3s;
}
.recruitQA-list details p{
    padding: 2rem 0rem 2rem 0rem;
    animation: fadeIn 0.5s ease;
}
@keyframes fadeIn {
  0% {
    opacity: 0; /* 透明 */
    transform: translateY(-10px); /* 上から表示 */
  }
  100% {
    opacity: 1;
    transform: none;
  }
}
@media screen and (max-width: 768px) {
    .recruitQA-list summary{
        padding: 1.15rem 4.5rem 1rem 1rem;
    }
    .recruitQA-list summary:before {
        top: 6%;
        right: 1rem;
    }
}


/*　--------------------　応募についての設定　--------------------　*/
.guideline-tb{
}
.guideline-tb ul{
    width:100%;
    border:1px solid #e3e3e3;
}
.guideline-tb ul li{
    width:100%;
}
.guideline-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%;
}
.guideline-tb dl dt{
    display: -webkit-inline-flex;
    display: -moz-inline-flex;
    display: -ms-inline-flex;
    display: -o-inline-flex;
    display: inline-flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    color:#ffffff;
    width:190px;
    padding:1.5rem 0.5rem 1.5rem 0.5rem;
    background-color:#003278;
    border-bottom: 1px solid #ffffff;
    box-sizing: border-box;
}
.guideline-tb dl dd{
    width:calc(100% - 190px);
    padding:1.5rem 2rem 1.5rem 2rem;
    background-color:#ffffff;
    border-bottom:1px solid #e3e3e3;
    box-sizing: border-box;
}
.guideline-tb-process{
    margin-bottom:1rem;
}
.guideline-tb dl dd div:last-child{
    margin-bottom:0rem;
}
.guideline-tb-process p:nth-child(1){
    font-weight: bold;
    color: #003278;
}
.guideline-tb-process p:nth-child(2){
    margin-top:0.2rem;
    margin-left:4.9rem;
}
.guideline-tb-process span{
    font-weight: mormal;
    border: 1px solid #003278;
    display: inline-block;
    padding: 0rem 0.5rem;
    margin-right: 0.75rem;
}
@media screen and (max-width: 498px) {
    .guideline-tb dl dt{
        width:105px;
    }
    .guideline-tb dl dd{
        width:calc(100% - 105px);
        padding: 1.5rem 1rem 1.5rem 1rem;
    }
}
@media screen and (max-width: 768px) {
    .guideline-prBtn .r-grid3{
            width: 28.5%!important;
    }
}



/*　==============================　ABOUT　==============================　*/
/*　【A】　*/
.about-img-space{padding-top: 35rem;}
@media screen and (max-width: 498px) {
.about-img-space{
padding-top: 24rem;
margin: 0rem 2rem 0rem 2rem;
}
}
/*　--------------------　特長ボックス　--------------------　*/
.about_pickup_box{
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
justify-content: center;
align-items: center;
flex-flow: column wrap;
margin: -30rem auto 3rem auto;
}
.about_pickup_item{
display: -webkit-inline-flex;
display: -moz-inline-flex;
display: -ms-inline-flex;
display: -o-inline-flex;
display: inline-flex;
flex-flow: column wrap;
justify-content: center;
align-items: center;
margin: 0 auto;
background-color: #666666;
color: #000000;
max-width: 400px;
width: 100%;
height: 400px;
font-size:2.5rem;
}
.about_pickup_item span{
font-size: 1.75rem;
line-height: 1.5rem;
}
@media screen and (max-width: 968px) {
.about_pickup_box{
margin: -30rem auto 3rem auto;
}
.about_pickup_item{
height: 300px;
}
}
@media screen and (max-width: 768px) {
.about_pickup_box{
margin: -30rem 0rem 3rem 2rem;
}
}
@media screen and (max-width: 498px) {
.about_pickup_box{
margin: -6.5rem 0rem 0rem 0rem;
}
.about_pickup_item{
margin: 0rem 0rem 0rem 0rem;
padding: 1.5rem 0rem 1rem 0rem;
height: 120px;
width: 70%;
}
}
/*　--------------------　ボックス　--------------------　*/
.about-item {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
-ms-flex-flow: row wrap;
flex-flow: row wrap;
-webkit-box-align: stretch;
-ms-flex-align: stretch;
align-items: stretch;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-sizing: border-box;
box-sizing: border-box;
width: 100%;
}
.about-item li {
display: -webkit-inline-flex;
display: -moz-inline-flex;
display: -ms-inline-flex;
display: -o-inline-flex;
-ms-flex-flow: row wrap;
flex-flow: row wrap;
-webkit-box-align: stretch;
-ms-flex-align: stretch;
align-self: stretch;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
align-items: center;
-webkit-box-sizing: border-box;
box-sizing: border-box;
padding: 1rem 3px;
margin: 0rem 2px 4px 2px;
width: calc(25% - 10px);
background-color: rgba(255,255,255,1.00);
box-shadow: 0px 0px 2px 0px rgba(150,150,150,0.1);
}
@media screen and (max-width: 768px) {
.about-item li{
width: calc(50% - 4px);
margin: 0rem 2px 4px 2px;
padding: 0.8rem 0;
}
}
.about-sub-ttlA{
position: relative;
margin-top: -2rem;
}
.about-sub-ttlA span{
display: inline-block;
background-color: #666666;
padding: 1rem 2rem;
}
.about-sub-ttlB span{
display: inline-block;
box-sizing: border-box;
border: 1px solid #666666;
padding: 1rem 2rem;
}
/*　--------------------　リスト　--------------------　*/
.about-tb-contents {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-flow: row nowrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
border-bottom:1px solid #E2E8F0;
}
.tb-border-n{
border:none!important;
}
.about-tb-contents dt{
padding: 1rem 0rem 1rem 0rem;
position: relative;
font-weight: bold;
font-size:0.9rem;
letter-spacing:0.2rem;
width: calc(100% - 40px - 1rem);
}
.about-tb-contents dd{
text-align: right;
padding: 1rem 0rem 1rem 1rem;
width: 40px;
}
@media screen and (max-width: 768px){
.about-tb-contents {
flex-flow: row wrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
}
.about-tb-contents dt {
font-weight: bold;
letter-spacing:0.1rem;
}
.about-tb-contents dd {
font-size: 1rem;
border: none;
}
}

/*　==============================　BUSINESS A　==============================　*/
.businessA-mainImg{padding-top: 32rem;}
.businessA-detail{margin: -6rem 2rem 4rem 2rem;}
@media screen and (max-width: 498px) {
.businessA-mainImg{padding-top: 24rem;}
}

/*　==============================　FACILITY A　==============================　*/
.facilityA-tb{
background-color: #ffffff;
padding: 1.75rem 0rem 1.5rem 0rem;
}
.facilityA-tb li{
width: calc(100% - 4rem);
margin: 1rem auto 0rem auto;
padding-bottom: 1rem;
border-bottom: 1px solid #cfcfcf;
}
.facilityA-tb li:last-child{
border-bottom: 0px solid #cfcfcf;
}
.facilityA-tb li 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: flex-start;
width: 100%;
}
.facilityA-tb li dl dt{
margin: 0rem 0rem 0rem 0rem ;
position: relative;
font-weight: bold;
font-size:0.9rem;
color:#000000;
letter-spacing:0.2rem;
width: 300px;
}
.facilityA-tb li dl dd{
text-align: left;
padding: 0rem 2rem;
width: calc(100% - 300px - 4rem);
}
@media screen and (max-width: 768px){
.facilityA-tb{
padding: 1rem 1.5rem 1rem 1.5rem;
}
.facilityA-tb li{
width: 100%;
}
.facilityA-tb li dl {
flex-flow: column wrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
}
.facilityA-tb li dl dt {
font-weight: bold;
margin: 0rem 0rem 0.5rem 0rem;
padding-top: 0.5rem;
width: 100%;
letter-spacing:0.1rem;
}
.facilityA-tb li dl dd {
font-size: 1rem;
margin: 0rem 0rem 0rem 0rem;
padding: 0rem 0rem 0rem 0rem;
width: 100%;
}
}

/*　==============================　WORKS A　==============================　*/
.worksA-tb-img li 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: flex-start;
width: 100%;
border-bottom:1px solid #cfcfcf;
}
.worksA-tb-img li:last-child dl{
border:none!important;
}
.worksA-tb-img li dl dt{
padding: 1rem 0rem 1rem 0rem;
position: relative;
font-weight: bold;
letter-spacing:0.2rem;
width: 80px;
}
.worksA-tb-img li dl dd{
color: #000000;
text-align: left;
padding: 1rem 0rem 1rem 1rem;
width: calc(100% - 80px - 1rem);
}
@media screen and (max-width: 768px){
.worksA-tb-img li dl {
flex-flow: column wrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
}
.worksA-tb-img li dl dt {
font-weight: bold;
padding: 1rem 0 0.3rem 0;
width: 100%;
letter-spacing:0.1rem;
}
.worksA-tb-img li dl dd {
font-size: 1rem;
padding: 0rem 0 1rem 0;
border: none;
width: 100%;
}
}

.worksA-tb-tx{
background-color: #ffffff;
padding: 1.75rem 0rem 1.5rem 0rem;
}
.worksA-tb-tx li{
width: calc(100% - 4rem);
margin: 1rem auto 0rem auto;
padding-bottom: 1rem;
border-bottom: 1px solid #cfcfcf;
}
.worksA-tb-tx li:last-child{
border-bottom: 0px solid #cfcfcf;
}
.worksA-tb-tx li 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: flex-start;
width: 100%;
}
.worksA-tb-tx li dl dt{
margin: 0rem 0rem 0rem 0rem ;
position: relative;
font-size:0.9rem;
font-weight: normal;
color:#000000;
letter-spacing:0.2rem;
width: 180px;
}
.worksA-tb-tx li dl dd:nth-child(2){
font-weight: bold;
text-align: left;
padding: 0rem 2rem;
width: calc(100% - 330px - 4rem);
}
.worksA-tb-tx li dl dd:nth-child(3){
text-align: right;
width: 150px;
}
@media screen and (max-width: 768px){
.worksA-tb-tx{
padding: 1rem 1.5rem 1rem 1.5rem;
}
.worksA-tb-tx li{
width: 100%;
}
.worksA-tb-tx li dl {
flex-flow: column wrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
}
.worksA-tb-tx li dl dt {
margin: 0rem 0rem 0.5rem 0rem;
padding-top: 0.5rem;
width: 100%;
letter-spacing:0.1rem;
}
.worksA-tb-tx li dl dd {
font-size: 1rem;
margin: 0rem 0rem 0rem 0rem!important;
padding: 0rem 0rem 0rem 0rem!important;
width: 100%!important;
}
.worksA-tb-tx li dl dd:nth-child(3){
text-align: left;}
}

/*　==============================　FLOW A　==============================　*/
.flowA-mainImg{padding-top: 20rem;}
@media screen and (max-width: 498px) {
.flowA-mainImg{padding-top: 17.5rem; margin:1rem 1rem 0rem 1rem;}
}
.flowA-bgImg {padding-top: 50vh;}
@media screen and (max-width: 480px){
.flowA-bgImg {padding-top: 40vh;}
}

/*　▼　*/
.flowA-sankaku  {
width: 0;
height: 0;
border: 2rem solid transparent;
border-top: 2rem solid #fff;
margin: 0 auto;
padding:0 0 1rem 0;
}
.flowA-sankaku-color {
width: 0;
height: 0;
border: 2rem solid transparent;
border-top: 2rem solid #424242;
margin: 0 auto;
padding:0 0 1rem 0;
}

/*　==============================　COMPANY　==============================　*/
/*　----------　アンカーボタン　----------　*/
.color_btn .fs_btn_text_main {
font-size:1.4rem;
}
.color_btn .fs_btn_text_sub {
font-size:0.9rem;
}
.color_btn .fs_btn{
line-height: 1.4rem;
background-color: rgba(85,99,105,0.45);
}
.color_btn .fs_btn:hover {
background-color: rgba(85,99,105,0.05);
}
/*　----------　会社概要　----------　*/
.cp_left {
font-size: 0.9rem;
padding: 1rem 0;
vertical-align: top;
width: 20%;
font-weight: bold;
text-align: justify;
color: #7a8e96;
}
.cp_right {
font-size: 0.9rem;
text-align: justify;
padding: 1rem  0 1rem 1rem;
vertical-align: top;
width: 80%;
}
.cp_line {
border-top:1px solid #ccc;
}


/*　タブレット横時スクロール　*/
@media screen and (max-width: 1024px) {
.tb_bg_scroll{background-attachment: scroll!important; }}



/*　==============================　RECRUIT　==============================　*/
/*　----------　fix　----------　*/
.rec_bg_m{
position: relative;
z-index: -100;
}
@media screen and (max-width: 768px) {
.rec_bg01{
background-attachment: scroll!important;
}
}
/*　--------------------　採用情報テーブル　--------------------　*/
.outline_table_list{
border-bottom: 1px solid #f4f4f4;
padding-bottom: 0.4rem;
margin: 0rem;
}
.outline_table_list:last-child{
border: none;
padding-bottom:0rem;
}
.outline_contents {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-flow: row nowrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
padding: 1.2rem 0rem 0.8rem 0rem;
}
.outline_contents dt{
color: #003278;
font-weight: bold;
padding: 0rem 1rem 0rem 0rem;
width: 140px;
}
.outline_contents dd{
text-align: left;
padding: 0rem 0rem 0rem 0rem;
width: calc(100% - 140px);
}
@media screen and (max-width: 768px){
.outline_contents {
flex-flow: column wrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
padding: 0.8rem 0rem 0.4rem 0rem;
}
.outline_contents dt{
font-size: 95%;
padding: 0rem 0rem 0.4rem 0rem;
width: 100%;
}
.outline_contents dd{
font-size: 105%;
padding: 0rem 0rem 0rem 0rem;
width: 100%;
}
}

/*　==============================　STAFF　==============================　*/
.staff_margin_n{
margin-top: -8rem;
}
.qa_q {
color:#919191;
vertical-align: top;
font-weight: bold; 
}
.qa_a {
padding: 0.5rem 0 3rem 0;
vertical-align: top;
}
@media screen and (max-width: 480px) {
.staff_margin_n{
margin-top: -3rem;
}
}
/*　==============================　INTERVIEW A　==============================　*/
.interviewA-mainImg{padding-top: 27rem;}
.interviewA-subImg{padding-top: 18rem;}
@media screen and (max-width: 498px) {
.interviewA-mainImg{padding-top: 24rem;}
.interviewA-subImg{padding-top: 24rem;}
}
.interviewA-qa-q {color:#666666; vertical-align: top; font-weight: bold;}
.interviewA-qa-a {padding: 0.5rem 0rem 2.5rem 0rem; vertical-align: top;}

/*　==============================　INTERVIEW B　==============================　*/
/*　80%中央寄せ　*/
@media screen and (min-width:1281px) {
.interviewB-w80Center {width: calc(100% - 20%); margin: auto!important;}
}
/*　———　インタビュータイトル回り　———　*/
.interviewB-tittleEn{font-size: 1.2rem; margin-bottom: 1rem!important;}
.interviewB-tittleEn:before{content: ""; display: inline-block; top: -0.4rem; position: relative; width: 2rem; height: 1px; background-color: #ffffff; margin: 0rem 1rem 0rem 0.2rem; box-shadow: 1px 1px 2px rgba(0,0,0,0.75);}
.interviewB-tittleSpace{text-shadow: 1px 1px 2px rgba(0,0,0,0.75);}
@media screen and (min-width:769px) {
.interviewB-tittleSpace{ font-size:2.4rem; padding: 28rem 0rem 7rem 2rem ;}
}
@media screen and (max-width:768px) {
.interviewB-tittleSpace{  font-size:2rem; padding: 22rem 0rem 7rem 2rem !important;}
}
@media screen and (max-width:480px) {
.interviewB-tittleSpace{ font-size:2rem; padding: 23rem 0rem 6rem 2rem !important;}
}
.interviewB-subImg{padding: 10rem 0rem; margin-bottom: 1rem;}

.interviewB-detail{margin:-5rem 1rem 0rem 1rem; padding:0rem 1rem 0rem 1rem; background-color:#ffffff;}
@media screen and (max-width:480px) {
.interviewB-detail{padding:0rem;}
}

/*　==============================　GUIDELINE A　==============================　*/
.guidelineA-tb{
background-color: #f2f2f2;
padding: 1.75rem 0rem 1.5rem 0rem;
}
.guidelineA-tb li{
width: calc(100% - 4rem);
margin: 1rem auto 0rem auto;
padding-bottom: 1rem;
border-bottom: 1px solid #cfcfcf;
}
.guidelineA-tb li:last-child{
border-bottom: 0px solid #cfcfcf;
}
.guidelineA-tb li 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: flex-start;
width: 100%;
}
.guidelineA-tb li dl dt{
margin: 0rem 0rem 0rem 0rem ;
position: relative;
font-weight: bold;
font-size:0.9rem;
color:#000000;
letter-spacing:0.2rem;
width: 200px;
}
.guidelineA-tb li dl dd{
text-align: left;
padding: 0rem 2rem;
width: calc(100% - 200px - 4rem);
}
@media screen and (max-width: 768px){
.guidelineA-tb{
padding: 1rem 1.5rem 1rem 1.5rem;
}
.guidelineA-tb li{
width: 100%;
}
.guidelineA-tb li dl {
flex-flow: column wrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
}
.guidelineA-tb li dl dt {
font-weight: bold;
margin: 0rem 0rem 0.5rem 0rem;
padding-top: 0.5rem;
width: 100%;
letter-spacing:0.1rem;
}
.guidelineA-tb li dl dd {
font-size: 1rem;
margin: 0rem 0rem 0rem 0rem;
padding: 0rem 0rem 0rem 0rem;
width: 100%;
}
}


/*　==============================　お問い合わせページ　==============================　*/
.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;
transform: scale(0.9) !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%;
}
}

/*　==============================　ページタイトル共通設定　==============================　*/
.page-ttl span{
display: ineline-block;
background-color: #ffffff;
padding: 0.55rem 1.2rem 0.55rem 1.5rem;
}
.page-ttl-ja{padding: 18rem 0rem 0rem 0rem}
.page-ttl-en{padding: 1rem 0rem 18rem 0rem}
@media screen and (max-width: 768px) {
.page-ttl-ja{padding: 20rem 0rem 0rem 0rem}
.page-ttl-en{padding: 1rem 0rem 20rem 0rem}
}
@media screen and (max-width: 480px) {
.page-ttl-ja{padding: 11rem 0rem 0rem 0rem}
.page-ttl-en{padding: 1rem 0rem 11rem 0rem}
}


/*　=============================================================================　*/
/*　=============================================================================　*/
/*　===============================　全体の共通項目　===============================　*/
/*　=============================================================================　*/
/*　=============================================================================　*/


/*　==============================　ヘッダー部分　==============================　*/
/*　--------------------　Fatナビに関する設定　--------------------　*/
.fat-nav li {
list-style-type: none;
text-align: left;
padding: 1.5rem 0 1.5rem 2rem;
font-size: 1.2rem;
border-bottom: 1px solid #969696;
}
.fat-nav{
background: rgba(45, 55, 60, 0.96);
}
.hamburger .hamburger__icon, .hamburger .hamburger__icon:before, .hamburger .hamburger__icon:after {
background-color: #00469b;
}

/*　Fatnaviフィックス　*/
#topfix-A {
position: absolute;
z-index: 50;
top: 0;
right: 0;
}
#topfix-B {
position: absolute;
z-index: 10;
top: 0;
right: 0;
}

/*　==============================　フッター部分　==============================　*/
/*　フッターロゴに関する設定　*/
.f-logo {
padding: 0rem 5rem 0rem 2rem;
}

@media screen and (max-width: 1024px){
.f-logo {
padding: 0rem 4rem 0rem 2rem;
}
}

@media screen and (max-width: 768px){
.f-logo {
padding: 0rem 1rem 0rem 2rem;
}
}

@media screen and (max-width: 480px){
.f-logo {
padding: 2rem 30vw 0.5rem 2rem;
}
}


/*　サイトマップ　*/
.sitemap-table {
padding: 0 0 0.5rem 2rem;
vertical-align: top;
width: 50%;
line-height: 2rem;
}
.sitemap-table a, .sitemap-table a:visited, .sitemap-table a:active ,
.f-link a , .f-link a:visited, .f-link a:active  {
color: #ffffff;
}
.sitemap-table a:hover ,
.f-link a:hover{
opacity: 0.5;
transition:0.3s;
}



/*　==============================　文字に関する設定　==============================　*/
.bold {
font-weight: bold;
}
.italic {
font-style: italic;
}
.eiji {
font-family: "Lato", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", sans-serif;
}

.space-1{
letter-spacing: 0.1rem;
}
.space-2{
letter-spacing: 0.2rem;
}
.space-3{
letter-spacing: 0.3rem;
}
.space-4{
letter-spacing: 0.4rem;
}
.br-sp{
display:none;
}
.br-sp-r{
display:inline;
}
@media screen and (max-width: 900px) { 
}
@media screen and (max-width: 480px) { 
.tx-center{
text-align: center!important;
}
.tx-left{
text-align: left!important;
}
.tx-right{
text-align: right!important;
}
.br-sp{
display:block;
line-height:0rem;
}
.br-sp-r{
display:none;
}
}
/*　==============================　色に関する設定　==============================　*/
.rgba-white{
background-color:rgba(255,255,255,0.8);
}
.rgba-black{
background-color:rgba(0,0,0,0.8);
}
.rgba-black4{
background-color:rgba(0,0,0,0.4);
}
.rgba-staff{
background-color:rgba(0,0,0,0.7);
}
/*　==============================　デフォルト　==============================　*/
.ccm-edit-mode, .ccm-scrapbook-list-item-detail div{margin-top:0rem!important;}
.ccm-edit-mode .ccm-area-styles{margin-top:0rem!important;}
/*　--------------------　ページリストタグ　--------------------　*/
.tk_tags_Tags{
background-color: #003278;
color: #ffffff;
}
/*　--------------------　ページャー　--------------------　*/
div .ccm-pagination{
margin-top: 1rem;
}
div.ccm-pagination span.ccm-page-left, div.ccm-pagination span.ccm-page-right{
top: 0.5rem!important;
}
#pagination .currentPage  strong{
background-color: #000000!important;
color: #ffffff!important;
}
#pagination .numbers {
margin-right: 0.6rem;
}
#pagination .numbers a, #pagination .numbers strong{
font-family: 'Roboto', 游ゴシック Medium,Yu Gothic Medium,游ゴシック体,YuGothic,sans-serif;
background-color: #666666;
padding: 0.5rem 1rem;
display: inline-block;
}
/*　--------------------　マルチイメージのポインター無　--------------------　*/
.cuosor {
pointer-events: none ;
cursor: default ;
}
/*　--------------------　telリンク - スマホ版のみ　--------------------　*/
@media screen and (min-width: 768px) {
a[href^="tel:"] {pointer-events: none;}
}
@media screen and (min-width: 480px) {
.tel_splink {pointer-events: none;}
}
/*　———　スマホ時改行なし　———　*/
@media screen and (max-width: 480px){
.sp-br-none br {display:none;}
}
/*　———　スマホ時改行あり　———　*/
@media only screen and (min-width: 769px){
.sp-br br {display:none;}
}
/*　--------------------　タブレット横時スクロール　--------------------　*/
@media screen and (max-width: 1024px) {
.tb-bg-scroll{background-attachment: scroll!important; }
}
/*　--------------------　その他　--------------------　*/
a {
text-decoration:none;
}
h1 , h2 , h3 {
margin: 0px 0px 0px 0px;
padding: 0px 0px;
margin-top: 0px;
font-weight: normal;
}
.hover-opacity:hover{
opacity: 0.8;
transition:0.6s;
}
.hover-opacity-img:hover {
opacity:0.7;
transition:0.6s;
}
.cuosor {
pointer-events: none ;
cursor: default ;
}
/*　box-shadow　*/
.boxshadow_20 {box-shadow: 4px 4px 6px 0 rgba(0,0,0,.20);}
.boxshadow_50 {box-shadow: 4px 4px 6px 0 rgba(0,0,0,.5);}
.boxshadow_90 {box-shadow: 4px 4px 6px 0 rgba(0,0,0,.9);}
/*　--------------------　トップボタン　--------------------　*/
/*　ボタンline-height　*/
.btn-detail .fs_btn_text {
line-height: 1.6;
}
/*　ピックアップボタン　*/
.btn_pickup .fs_btn_text_main {
letter-spacing: 0.2rem;
font-size:1.2rem;
}
.btn_pickup .fs_btn_text_sub {
font-size:0.8rem;
font-weight: bold;
}
.btn_pickup  .fs_btn {
background-color: rgba(33,33,33,0.5);
}
.btn_pickup .fs_btn:hover{
background-color: rgba(33,33,33,0.05);
}
/*　ページトップボタン　*/
.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);
}

/*　--------------------　Google font　--------------------　*/
.googlefont {font-family: 'Roboto', 游ゴシック Medium,Yu Gothic Medium,游ゴシック体,YuGothic,sans-serif;}

/* cyrillic-ext */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 300;
src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v16/0eC6fl06luXEYWpBSJvXCBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
}
/* cyrillic */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 300;
src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v16/Fl4y0QdOxyyTHEGMXX8kcRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 300;
src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v16/-L14Jk06m6pUHB-5mXQQnRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 300;
src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v16/I3S1wsgSg9YCurV6PUkTORJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 300;
src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v16/NYDWBdD4gIq26G5XYbHsFBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 300;
src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v16/Pru33qjShpZSmG3z6VYwnRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 300;
src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v16/Hgo13k-tfSpn0qi1SFdUfVtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}