@charset "UTF-8";

/*========================================================================

  reset

========================================================================*/

html, body, h1, h2, h3, h4, ul, ol, dl, li, dt, dd, p, div, span, img, a, table, tr, th, td, section, article, header, footer, aside, figure, figcaption, nav, section {
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align:baseline;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
article, header, footer, aside, figure, figcaption, nav, section { display:block;}
ol,ul { list-style: none; list-style-type: none;}
img { 
    vertical-align: top; 
    max-width: 100%;
    height: auto;
}
a img {  -webkit-transition: .3s ease-in-out; transition: .3s ease-in-out;}

.pc { display: block !important;}
.sp { display: none !important;}

.t_right { text-align: right !important;}
.t_left { text-align: left !important;}
.t_center { text-align: center!important;}

.t_bold { font-weight: bold;}

.mb0 { margin-bottom: 0px !important;}
.mb5 { margin-bottom: 5px !important;}
.mb10 { margin-bottom: 10px !important;}
.mb20 { margin-bottom: 20px !important;}
.mb30 { margin-bottom: 30px !important;}
.mb40 { margin-bottom: 40px !important;}
.pb0 { padding-bottom: 0px !important;}

input, button, textarea, select { -webkit-appearance: none; -moz-appearance: none; appearance: none;}

/*========================================================================

  style

========================================================================*/
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

body {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック","Hiragino Maru Gothic Pro", "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro", Osaka, sans-serif;
    font-size: 0.87em;
    color: #242730;
    line-height: 1.8;
}

main { display: block; position: relative; overflow: hidden;}

.articleInner {
    max-width: 1140px; 
    margin: 0 auto;
}

.articleInner ol, ul#top_views {
    counter-reset: number;    
}
.articleInner ol li {
    list-style: none;
    position: relative;
    line-height: 1.8;
}
.articleInner ol li:before {
    counter-increment: number;
    content: counter(number);
    background: #f1795d;
    color: #fff;
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 0.87em;
    font-weight: bold;
    display: block;
    text-align: center;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}
/*========================================================================
    COMMON
========================================================================*/
a.button-2 {
    display: block;
    text-align: center;
    width: 132px;
    margin: auto;
    padding: 10px 0 10px;
    background: #f26a4b url(../images/common/icon_link02.png) no-repeat center right 10px;
    color: #fff;
    text-decoration: none;
    border:2px solid #f26a4b;
    position:relative;
    box-sizing:border-box;
    overflow:hidden;
    transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    z-index: 1;
}
a.button-2:before {
    content: '';
    position: absolute;
    height: 0;
    top: 50%;
    background: #fff url(../images/common/icon_link01.png) no-repeat center right 10px;
    transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    width: 100%;
    left: 0;
    z-index: -1;
}
a.button-2:hover {
    color: #000;    
}
a.button-2:hover:before {
    top: 0;
    height: 100%;
}
a.button-1 { 
    display: block; 
    width: 145px; 
    padding: 10px 0 10px; 
    color: #242730; 
    border-bottom: 1px solid #f26a4b; 
    font-weight: bold; 
    position: relative; 
    font-size: 0.81em; 
    text-decoration: none; 
    margin: 0 auto; 
    text-align: center;
    transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    background: url(../images/common/icon_link01.png) no-repeat center right 6px;
    z-index: 1;
}
a.button-1::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 0%;
    background: #f26a4b url(../images/common/icon_link02.png) no-repeat center right 6px;
    transition: all .233s ease-in-out;
    -webkit-transition: all .233s ease-in-out;
    z-index: -1;
}
a.button-1:hover {
    color: #fff;
    background: url(../images/common/icon_link02.png) no-repeat center right 6px;
}
a.button-1:hover::after {
    height: 100%;
}

.w100 {
    width: 100% !important;
}
.articleInner table {
    border-collapse: collapse;
    background: rgb(250, 251, 254);
    margin: 12px 0;
    width: 100%;
}

.articleInner table, .articleInner th, .articleInner td {
    border: 1px solid rgb(237, 239, 243);
    padding: 8px 16px;
}

/*========================================================================
  header
========================================================================*/
header {
    background: #fff;
    width: 100%;
}
.bnr_contact {
    position: fixed;
    top: 200px;
    right: 0;
    width: 65px;
    height: 240px;
    background: #ea5541;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    z-index: 10;
}
.bnr_contact a {
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    line-height: 65px;
    font-size: 0.87em;
    color: #fff;
    text-decoration: none;
}
header .header_cell {
    width: 100%;
    margin: 0 auto;
    position: relative;
}
header .header_cell:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
header .header_cell .logo {
    padding: 15px 0 15px 3%;
    width: 211px;
}

header .header_cell .gnavi {
    display: block;
    width: 100%;
}
header .header_cell .gnavi > ul {
    display: block;
    width: 100%;
    margin: 0px 0 0;
    text-align: center;
    font-size: 0;
    background: #2f457c;
}
header .header_cell .gnavi ul.is-fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
}
header .header_cell .gnavi > ul > li {
    display: inline-block;
}
header .header_cell .gnavi > ul > li > a {
    display: block;
    padding: 20px;
    color: #fff;
    text-decoration: none;
    letter-spacing: -0.01em;
    font-size: 0.93rem;
    -webkit-transition: all .2s;
    transition: all .2s;
    position: relative;
}
header .header_cell .gnavi > ul > li > a:hover {
    background-color: #40578c;
}
header .header_cell .gnavi > ul > li > a:hover:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #fff;
}
header .header_cell .gnavi ul.sub-menu {
    position: absolute;
    top: 100%;
    z-index: 9;
    padding: 0 100px 0 20px;
    background-color: rgba(36,39,48,.8);
    text-align: left;
    letter-spacing: -.4em;
    display: none;
}
header .header_cell .gnavi ul.sub-menu > li {
    letter-spacing: normal;    
}
header .header_cell .gnavi ul.sub-menu > li > a {
    display: block;
    padding-left: 14px;
    background: url(../images/common/icon_link02.png) left center no-repeat;
    color: #fff;
    text-decoration: none;
    letter-spacing: -0.01em;
    font-size: 0.81rem;
    line-height: 64px;
    -webkit-transition: all .2s;
    transition: all .2s;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
header .header_cell .header_minimenu {
    position: absolute;
    display: flex;
    text-align: right;
    margin: 0 0 0;
    top: 23px;
    right: 190px;
}
header .header_cell .header_minimenu ul {
    font-size: 0;
    height: auto;
    margin: 0px 0 0 0;
    background: none;
}
header .header_cell .header_minimenu ul li {
    margin: 0 0 0px;
    padding: 0 0 0;
    display: inline-block;
}
header .header_cell .header_minimenu ul li a {
    display: block;
    font-size: 0.73rem;
    text-align: center;
    text-decoration: none;
    color: #242730;
    padding: 0 20px 0 0;
    line-height: 1;
}

@media screen and (max-width: 900px) {
    header .header_cell .gnavi li {
        display: inline-block;
    }

    header .header_cell .gnavi > ul > li > a {
        font-size: 0.81em;
    }    
    header .header_cell .header_minimenu ul li a {
        font-size: 0.68em;
        padding: 0 10px 0 0;
    }
}

/*========================================================================
  footer
========================================================================*/
footer { width: 100%; background: #fff; padding: 80px 0 75px;}
footer .footer_cell { width: 71.25%; max-width: 1140px; border-bottom: 1px solid #e0e3e6; padding: 0 0 20px; margin: 0 auto; margin-bottom: 25px; position:relative; padding-top: 5px;}
footer .footer_cell:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
footer .footer_company { display: block; width: 100%; text-align: center; padding: 0 0 0 0%;}
footer .footer_company .f_logo { width: 14%; margin: 0 0 15px;}
footer .footer_company p { 
    font-size: 1em; 
    color: #242730; 
    line-height: 2.1; 
    margin-bottom: 25px;
}
footer .footer_company .tel { 
    float: left; 
    background: url(../images/common/icon_tel.png) no-repeat left 50%; 
    padding: 0 30px 0 35px; 
    font-size: 1.6em; 
    line-height: 1; 
    min-height: 21px;
}
footer .footer_company .fax { 
    float: left; 
    background: url(../images/common/icon_fax.png) no-repeat left 50%; 
    padding: 0 30px 0 35px; 
    font-size: 1.6em; 
    line-height: 1; 
    min-height: 21px;
}
footer .footer_cell .footer_link { }
footer .footer_cell .footer_link ul {
	width: 50%;
margin: 0 auto;
padding: 0;
text-align: center;
}
footer .footer_cell .footer_link ul li { 
    display: inline-block; 
    font-size: 0.87em; 
    font-weight: 500;
    line-height: 2;
	display: -moz-inline-box;
  display: inline-block;
  /display: inline;
  /zoom: 1;
  margin-right:20px;
  margin-bottom:10px
}
footer .footer_cell .footer_link ul li a { color: #242730; text-decoration: none;}
footer ul.f_list {
	text-align: center;
	width: 700px;
max-width: 1140px;
margin:0 auto;
padding:0
	}
footer ul.f_list li { 
    display: inline-block; 
    margin: 0 15px 25px; 
    font-size: 0.87em;
}
footer ul.f_list li a { color: #242730; text-decoration: none;}
footer .copyright { 
    text-align: center; 
    color: #242730; 
    font-size: 0.73em;
}

/* fontsize
-----------------------------------------*/
.fontS { font-size: 85% }
.fontM { font-size: 100% }
.fontL { font-size: 115% }
 
 
/* mod_headerbox_size
-----------------------------------------*/
.mod_headerbox_size {
  position: absolute;
  left:0;
  top:0
 
}
.mod_headerbox_size ul {
	border:1px solid #c1c1c2;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	overflow:hidden;
	margin:0;
	padding:5px 10px 5px 70px;
	background:url(../images/common/size_txt.png) no-repeat center left 5px #e1e1e6;
}
.mod_headerbox_size ul li {
  float: left;
  width:30px;
  height: 30px;
  overflow: hidden;
}

.mod_headerbox_size ul li span {
  display: block;
  cursor: pointer;
}
.mod_headerbox_size ul li.active span {
  margin-top: -30px;
}
.mod_headerbox_size ul li span:hover{
    margin-top:-30px;
}

.cpbanner {
 position:fixed;
right: 15px;
bottom: 80px;
 text-align:right;
 z-index:15
}
.cpbanner img {
 width:80%;
}

/*========================================================================
  index
========================================================================*/
#video-background,
#video-overlay {
    position: fixed;
    top: 0;
    left: 0;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
}

#video-background {
    z-index: -2;
}

#video-overlay {
    z-index: -1;
}

.index h2 { 
    font-size: 2.2em; 
    text-align: center; 
    margin: 0 0 20px; 
    font-weight: 500;
}

.more-link {
    text-align: center;
}

#mv { display: block; position: relative; height: 660px;}
#mv .ttl { position: absolute; width: 54.875%; top: 34%; left: 0; right: 0; margin: 0 auto auto auto;}

.text-fixed {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    top: 34%;
    vertical-align: middle;
    position: absolute;
    left: 0;
    right: 0;
    color: #fff;
}
.index .text-fixed h3 {
    text-transform: uppercase;
    font-size: 3.2em;
    font-weight: 200;
    letter-spacing: -0.039em;
    margin-bottom: 12px;
    text-align: center;
    line-height: 1.2;
    font-family: "Yu Mincho" , "YuMincho" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "MS PMincho" , serif;
}
.text-banner {
    text-align: center;    
}
.text-banner li {
    margin-bottom: 8px;
}
.text-banner span {
    background: #f3694c;
    display: inline-block;
    font-family: 'Noto Sans Japanese';
    padding: 2px 8px;
    letter-spacing: 0.2em;
    margin-bottom: 12px;
}
.btn-link {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    text-align: center;    
}
.btn-link a {
    margin: auto;
    width: 200px;
    background: #ffffffed url(../images/icon/arrow_scroll.png) no-repeat 30% center;
    padding: 24px 0;
    text-decoration: none;
    text-transform: uppercase;
    color: #20242E;
    font-weight: 600;
    font-size: 0.73em;
    text-shadow: 0 0 0 #5d5b5b;
    display: inline-block;
    position: relative;
}
.btn-link a:before {
    content: '';
    position: absolute;
    width: 32px;
    top: 0px;
    left: 0;
    right: 0;
    display: inline-block;
    background: #000;
    height: 1px;
    margin: auto;
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);    
}
.btn-link a:hover {
    background: #fff url(../images/icon/arrow_scroll.png) no-repeat 30% center;
}

#content01 { width: 100%; background: url(../images/index/bg_contents01.jpg) no-repeat center center; background-size: cover; padding: 80px 0;}
#content01 .cell { 
    display: block;
    width: 480px;
    margin: 0 auto;
    padding: 90px 0;
    background: #fff;
    text-align: center;
}
#content01 .cell p { 
    margin: 0 0 30px; 
    line-height: 2.0;
}

#content02 { display: block; padding: 90px 0 60px; background: #fff;}
#content02 ul.tabs { width: 100%; background: #f5f6f9; font-size: 0; text-align: center; margin: 80px 0 0;}
#content02 ul.tabs li { display: inline-block; width: 20%; margin: 0; padding: 25px 0; font-size: 1.2vw;}
#content02 ul.tabs li.select { background: #fff;}
#content02 ul.tabs li a { color: #242730;}
#content02 ul.content {}
#content02 ul.content li.hide { display: none;}
#content02 dl.list_news { width: 100%; display: block;}
#content02 dl.list_news dd { display: block; width: 100%; padding: 25px 0; border-bottom: 1px solid #e1e2e6; font-size: 1.0vw;}
#content02 dl.list_news dd:last-of-type { border-bottom: none;}
#content02 dl.list_news dd .date { color: #f26a4b; width: 65px; font-size: 0.9vw; margin: 0 10px 0 0; display: inline-block;}
#content02 dl.list_news dd .cate { color: #2f457c; width: 114px; font-size: 0.9vw; text-align: center; border: 1px solid #e1e2e6; padding: 1px 0px; margin: 0 10px 0 0; display: inline-block;}
#content02 dl.list_news dd a { color: #242730; text-decoration: none;}

#content03 { 
    padding: 85px 0 140px;
    background: rgba(36,39,48,0.6);
    color: rgb(255, 255, 255);
}

#content03 p { 
    font-size: 1.2em; 
    line-height: 2.1; 
    text-align: center;
}
#content03 p.lead { 
    font-size: 1.6em;
}
#content03 ul { width: 100%; font-size: 0; margin: 40px 0;}
#content03 ul li { display: inline-block; width: 25%; margin: 0; padding: 0 4% 0 0; background: url(../images/index/bg_slash.png) no-repeat right center; background-size: auto 100%; font-size: 24px; text-align: center;}
#content03 ul li:last-child { background: none;}
#content03 ul li .type { 
    display: block; 
    font-size: 1.00em;
}
#content03 ul li .num { 
    font-size: 62px; 
    color: #f26a4b;
}
#content03 a { color: #fff;}

#content04 { display: block; width: 100%;}
#content04:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
#content04 li { 
    width: 25%; 
    float: left;
    background-repeat: no-repeat;
    background-position: left top;    
    background-color: #edeff3;
}

#content04 li a {
    display: block; 
    width: 100%; 
    height: 100%; 
    text-decoration: none; 
    padding: 295px 0 0;
}
#content04 li:hover a {
    background: #54545470;
}
#content04 li a .cell { display: block; margin: 0px 8% 30px; padding: 30px 0px 85px; background: #fff; position: relative;}
#content04 li a .cell::after { content: ''; position: absolute; width: 32px; height: 32px; background: url(../images/index/icon_arrow.png) no-repeat; background-size: 32px 32px; bottom: 32px; left: 0px; right: 0px; margin: auto auto 0 auto;}
#content04 li:hover a .cell::after { content: ''; position: absolute; width: 32px; height: 32px; background: url(../images/index/icon_arrow_hover.png) no-repeat; background-size: 32px 32px; bottom: 32px; left: 0px; right: 0px; margin: auto auto 0 auto;}

#content04 li a .cell h2 { font-size: 1.8vw; color: #f26a4b; letter-spacing: -0.1em; line-height: 1.6;}
#content04 li a .cell h2 span.eng { display: block; font-size: 0.8vw; color: #242730; letter-spacing: 0.05em; margin: 0 0 10px;}
#content04 li a .cell h2 span.business { display: block; font-size: 1.7vw; color: #f26a4b; letter-spacing: 0.05em;}
#content04 li a .cell p { 
    margin: 0 6%; 
    color: #242730; 
    font-size: 0.87em;
    line-height: 28px;
}

#content05 { display: block; padding: 85px 0 85px; background: rgba(36,39,48,0.6); color: #fff;}
#content05 p { 
    font-size: 1.2em; 
    line-height: 2.1; 
    text-align: center; 
    margin: 0 0 20px;
}
#content05 a { color: #fff;}

#content06 { display: block; width: 100%;}
#content06:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
#content06 li {
    width: 25%;
    float: left;
    position: relative;
}
#content06 li img {
    width: 100%;
}
#content06 li::after {
    content: ''; 
    position: absolute; 
    width: 32px; 
    height: 32px; 
    background: url(../images/index/icon_arrow.png) no-repeat; 
    bottom: 32px; 
    left: 0px; 
    right: 0px; 
    margin: auto auto 0 auto;
    z-index: 12;
}
#content06 .box_top_content {
    position: absolute;
    top: 0;
    bottom: 0;
    padding: 10px 24px;
    color: rgb(255, 255, 255);
    font-size: 0.73em;
    transition: background 0.5s ease;
    -webkit-transition: background 0.5s ease;
    z-index: 7;
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
    align-items: center;    
    text-align: center;    
}
#content06 .box_top_inner {
    padding: 35px 20px;
    font-size: 1.8em;
    transition: background 0.5s ease;
    -webkit-transition: background 0.5s ease;
    width: 210px;
}
.box_top_inner span {
    display: block;
    font-size: 0.87em;
}
#content06 li .view-more { 
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    font-size: 0;
    z-index: 6;    
    transition: all 0.2s ease 0s;
    -webkit-transition: all 0.2s ease 0s;
    background: #13121294;    
    filter: brightness(0%);
    -webkit-filter: brightness(0%);
    -moz-filter: brightness(0%);
    -o-filter: brightness(0%);
    -ms-filter: brightness(0%);
    margin: auto;
}
#content06 li a p { font-size: 1.8vw; color: #fff; line-height: 1.6; text-align: center; background: none; padding: 35px 0;}
#content06 li:hover .view-more {
    width: calc(100% - 24px);
    height: calc(100% - 24px);
}

#content07 { display: block; width: 100%; background: url(../images/index/bg_contents07.jpg) no-repeat center center; background-size: cover; padding: 140px 14.375%;}
#content07:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
#content07 .left { display: block; width: 50%; float: left; background: rgba(36,39,48,0.75); color: #fff; padding: 63px 5%;}
#content07 .left a { color: #fff; margin: 0;}
#content07 .left h2 { text-align: left;}
#content07 .left p { margin: 0 0 30px; font-size: 1.2vw;}
#content07 .right { display: block; width: 50%; float: left; background: #ffffff; padding: 55px 4% 45px;}
#content07 .right h3 { text-align: center; font-size: 1.5vw; font-weight: 500; margin: 0 0 20px;}
#content07 .right .time { border: 1px solid #e1e2e6; padding: 5px 0; width: 100%; font-size: 1.2vw; text-align: center; margin: 0 0 15px;} 
#content07 .right ul { width: 100%;}
#content07 .right ul li { float: left; width: 50%; padding: 24px 0 24px 6.7%; text-align: left;}
#content07 .right ul li:first-child { box-shadow:-1px 0 #e1e2e6 inset; font-size: 2.5vw; line-height: 1;}
#content07 .right ul li:first-child span { font-size: 4.8vw; color: #f26a4b; font-weight: bold;} 
#content07 .right ul li:last-child { font-size: 0.95vw;}
#content07 .right ul li:last-child span { font-size: 1.6vw; color: #f26a4b; font-weight: 500;} 


#content08 {
    background: #fff; 
    padding: 48px 0;
    text-align: center;
}
#content08:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
#content08 .left { display: block; width: 50%; float: left; background: #fff; padding: 170px 0% 0; text-align: center;}
#content08 .left p { 
    margin: 0 0 30px; 
    font-size: 1.2em; 
    line-height: 2.0;
}
#content08 .right { display: block; width: 50%; float: left; background: #fff; padding: 20px 20px 12px; text-align: center;}
#content08 .right ul { width: 100%;}
#content08 .right ul:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
#content08 .right ul li {
    float: left;
    width: 33%;
    margin: 0 0.5% 8px 0;
    box-shadow : 0 0 0 1px #2f457c inset;
    background: #2f457c;
}
#content08 .right ul li:nth-child(3n) {
    margin: 0 0% 8px 0;
}
#content08 .right ul li:nth-child(3) {
    background: #fff;
    display: table;
}
#content08 .right ul li:hover {
    background: #fff;
}
#content08 .right ul li a {
    display: block;
    width: 100%;
    height: 100%;
    text-decoration: none;
    color: #fff;
    text-align: left;
    padding: 30px 30px;
}
#content08 .right ul li:nth-child(3) a {
    display: table-cell;
    vertical-align: middle;
}
#content08 .right ul li a .s_cell p.ttl {
    display: inline-block;
    position: relative;
    padding: 0 0 0 25px;
    margin: 0 0 10px;
    background: url(../images/index/icon_efforts.png) no-repeat left 50%;
    background-size: 18px 18px;
    font-size: 20px;
    line-height: 1.5;
    font-weight: 600;
    word-break: break-all;
}
#content08 .right ul li a .s_cell p.ttl span {
    display: block;
    font-size: 0.87em;
    font-weight: 400;
}
#content08 .right ul li:hover a .s_cell p.ttl {
    display: inline-block;
    position: relative;
    padding: 0 0 0 25px;
    background: url(../images/index/icon_efforts_hover.png) no-repeat left 50%;
    background-size: 18px 18px;
}
#content08 .right ul li:hover a {
    color: #2f457c;
}
#content08 .right ul li:hover:nth-child(1) a .s_cell,
#content08 .right ul li:hover:nth-child(2) a .s_cell,
#content08 .right ul li:hover:nth-child(4) a .s_cell,
#content08 .right ul li:hover:nth-child(5) a .s_cell,
#content08 .right ul li:hover:nth-child(6) a .s_cell {
    background: #fff;
}
#content08 .right ul li a .img_03 {
    display: block;
    width: 100%;
}
#content08 .right ul li a .img_03 img {
    width: 100%;
}
#content08 .right ul li a .img {
    display: block;
    width: auto;
    margin: 0 auto 15px;
}
#content08 .right ul li a .img img {
    display: block;
    width: auto;
    margin: 0 auto;
}
#content08 .right ul li a:hover img {
    opacity: 1;
}

#content09 { display: block; width: 100%; background: #edeff3; padding: 155px 0 195px;}
#content09:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
#content09 .lead { 
    font-size: 1.2em; 
    line-height: 2.1; 
    margin: 0 0 30px; 
    text-align: center;
}
#content09 ul { display: block; width: 100%; font-size: 0; margin: 70px 0 0;}
#content09 ul li { 
    display: inline-block; 
    width: 33.3333333%;
    vertical-align: top;
}
#content09 ul li a {
    color: rgb(36, 39, 48);
}
#content09 ul li .img { position: relative; margin: 0 0 0px;}
#content09 ul li .img img { 
    width: 100%;
    max-height: 220px;
    object-fit: cover;
    object-position: top;
}
#content09 ul li .img span { position: absolute; top: 0; right: 0; width: 120px; height: 28px; line-height: 28px; padding: 0px 0; text-align: center; color: #fff; background: rgba(242,106,75,0.75); font-size: 0.8vw;}
#content09 ul li .txtArea { margin: 30px 10% 0px;}
#content09 ul li .txtArea .ttl { 
    font-size: 1.00em; 
    line-height: 1.6; 
    font-weight: bold; 
    margin: 0 0 20px;
}
#content09 ul li .txtArea .txt { 
    font-size: 0.87em; 
    line-height: 2.1; 
    font-weight: normal; 
    margin: 0 0 20px;
}
#content09 ul li .txtArea .date { 
    font-size: 0.87em; 
    line-height: 1; 
    font-weight: bold; 
    margin: 0px; 
    color: #f3694c;
}


#content10 { display: block; width: 100%; padding: 0 5%; background: url(../images/index/bg_img.png) repeat-x top center;  text-align: center; color: #fff; margin: 0;}
#content10 .cell {
    position: relative;
}
#content10 .inner {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    text-align: center;
    margin: auto;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding-top: 6em;
}
#content10 p { 
    margin: 0 0 30px; 
    font-size: 1.14em; 
    line-height: 2.0;
    -webkit-font-smoothing: antialiased;
    font-weight: 600;    
}
#content10 p.lead { 
    font-size: 1.4em; 
    line-height: 1; 
    margin: 0 0 60px; 
    letter-spacing: 0.5em; 
    font-weight: bold;
}
#content10 a { color: #fff;}
#content10 .lead {
    padding-top: 4em;
}


/*========================================================================
  kasou 共通
========================================================================*/
.breadcrumb {
    font-size: 0.73em;
    padding: 12px 0;
    border-bottom: 1px solid #e1e2e6;
}
.breadcrumb li {
    display: inline-block;
}
.breadcrumb a {
    text-decoration: none;
    color: #f26a4b;
}
.breadcrumb li:not(:last-child):after {
    content: '>';
    margin: 0 4px;
}

.kasou {
    background: #edeff3;
    padding-bottom: 60px;
}
.kasou .h1_ttl {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    padding: 200px 0 30px;
}
.kasou.third .h1_ttl {
    padding: 30px 0 30px;
}
.kasou .h1_ttl h1 {
    width: 71.25%;
    max-width: 1140px;
    margin: 0 auto;
    color: #fff;
    border-left: 2px solid #fff;
    padding: 0 0 0 30px;
    font-weight: 500;
    font-size: 2.2em;
}
.kasou .h1_ttl h1 span {
    display: block;
    font-size: 1.0vw;
}

/* ページ別背景 */
.kasou.contact .h1_ttl {
    background: url(../images/common/bg_h1_ttl_contact.jpg) no-repeat center center;
    background-size: cover;
}
.kasou.news .h1_ttl {
    background: url(../images/common/bg_h1_ttl_news.jpg) no-repeat center center;
    background-size: cover;
}
.kasou.company .h1_ttl {
    background: url(../images/common/bg_h1_ttl_company.jpg) no-repeat center center;
    background-size: cover;
}

.kasou h2 {
    font-size: 30px;
    margin: 0 0 20px;
    font-weight: 500;
}
.kasou h3 {
    background: #fff;
    padding: 20px 30px;
    font-size: 1.12em;
    margin: 30px 0 20px;
    font-weight: 500;
    width: 100%;
    overflow: hidden;
}
.kasou h4 {
    font-size: 1.2em;
    color: #242730;
    padding: 3px 0 3px 12px;
    margin: 32px 0 20px;
    border-left: 2px solid #f1795d;
    font-weight: 500;
}
.kasou h5 {
    font-size: 1.00em;
    color: rgb(234, 85, 65);
    padding: 12px 0 0px 0px;
    margin: 0 0 10px;
    font-weight: 500;
}
.kasou p {
    font-size: 0.87em;
    line-height: 2.0;
}
.kasou p.lead {
    margin: 0 0 55px;
    font-size: 1.2222em;
    line-height: 2.1;
    text-align: center;
}
.kasou .cell {
    margin: 0 0 35px;
}
.kasou .text {
    margin: 0 0 25px;
}
.kasou .cell:after,
.kasou .text:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}

.list_disc {
    margin: 0 0 10px;
}
.list_disc li {
    position: relative;
    margin: 0 0 5px 0;
    padding: 0 0 0 17px;
    font-size: 0.87em;
}
.list_disc li::before {
    content: "";
    position: absolute;
    top: 10px;
    left: 5px;
    background: #242730;
    width: 4px;
    height: 4px;
}

.leftArea {
    float: left;
    width: 48%;
}

.rightArea {
    float: right;
    width: 48%;
}

.toback {
    width: 100%;
    padding: 70px 0 85px;
    background: #f26a4b;
}
.toback ul {
    text-align: center;
    font-size: 0;
}
.toback ul li {
    display: inline-block;
    margin: 0 20px;
}
.toback ul li a {
    display: block;
    width: 145px;
    padding: 10px 0 10px;
    color: #fff;
    border-bottom: 1px solid #fff;
    font-weight: bold;
    position: relative;
    font-size: 0.81rem;
    text-decoration: none;
    margin: 0 auto;
    text-align: center;
}
.toback ul li a::after {
    content: '';
    position: absolute;
    width: 8px;
    height: 10px;
    background: url(../images/common/icon_link02.png) no-repeat;
    background-size: 8px 10px;
    top: 0;
    bottom: 0;
    left: 0px;
    right: 10px;
    margin: auto 0 auto auto;
}

.mainArea {
    float: left;
    width: 74%;
}
.sideArea .list_archive li {
    border-bottom: 1px solid #e1e2e6;
    padding: 10px 0 10px 20px;
    background: url(../images/common/icon_archive.png) no-repeat left 20px;
}
.sideArea .list_archive li:last-child {
    border-bottom: none;
}
.sideArea .list_archive li a {
    text-decoration: none;
    color: #242730;
}
#back2top {
    background: url(../images/icon/back2top.png) no-repeat center center;
    position: fixed;
    right: 32px;
    bottom: 48px;
    z-index: 90;
    text-align: center;
    cursor: pointer;
    width: 56px;
    height: 56px;
}

.kasou .pagesend {
    text-align: center;
    margin: 32px auto 50px auto;
}
.kasou .pagesend div {
    display: inline-block;
}
.kasou .pagesend ul li {
    display: inline-block;
    font-size: 1.12em;
    padding: 0 2px;
    margin: 0 2px;
}
.kasou .pagesend li a {
    display: block;
    color: #000;
    border-bottom: 1px solid #000;
    text-decoration: none;
    line-height: 18px;
}
.kasou .pagesend li.p_link a {
    border-bottom: none;
}
.kasou .pagesend li .active {
    display: block;
    border-bottom: 1px solid #f2694b;
    line-height: 18px;
    color: #000;
}
.kasou .pagesend ul li.prev a {
    padding: 0 0px;
    margin: 0px 10px 0;
    border-bottom:none;
}
.kasou .pagesend ul li.next a {
    padding: 0 0px;
    margin: 0px 10px 0;
    border-bottom:none;
}

.linkArea ul {
    text-align: center;
}
.linkArea ul li {
    display: inline-block;
    margin: 0 20px;
}
.linkArea .btn {
    display: block;
    width: 145px;
    padding: 10px 0 10px;
    color: #242730;
    border: none;
    border-bottom: 1px solid #f26a4b;
    font-weight: bold;
    position: relative;
    font-size: 0.81em;
    text-decoration: none;
    margin: 0 auto;
    text-align: center;
    background: #edeff3 url(../images/common/icon_link01.png) no-repeat right center;
}
.mw_wp_form_confirm .txt01, .mw_wp_form_confirm #srcZip {
    display: none;
}
#recruit_btn {
	position: fixed;
	right: 20px;
    bottom: 30px;
    z-index: 91;
	width:120px;
}
#sotsu_fit_btn {
	position: fixed;
	right: 20px;
    top: 105px;
    z-index: 91;
	width:120px;
}
.Bnr .pc {display:block}
.Bnr .tb {display:none}
.Bnr .sp {display:none}
/* Bnr
-----------------------------------------*/
.Bnr{
  position: relative;
  
}
.Bnr .Bnr__img{
  position: fixed;
 right: 20px;
    top: 105px;
  z-index: 88;
}
.Bnr__img__inner{
  box-sizing:border-box;
	padding:0px;
	width:130px
}
.Bnr .Bnr__img__inner a{
  display: block;
}
.Bnr .Bnr__img p.close{
	display:none
}

@media only screen and (max-width: 768px) {
	#recruit_btn {
    bottom: 20px;
    right: 22px;
		width:120px;
}
	#sotsu_fit_btn {
    bottom: 170px;
		top: auto;
    right: 22px;
		width:120px;
}
.Bnr .pc {display:none}
.Bnr .tb {display:block}
.Bnr .sp {display:none}

.Bnr .Bnr__img{
  bottom: 170px;
		top: auto;
    right: 22px;
  z-index: 88;
}
.Bnr__img__inner{
  box-sizing:border-box;
	padding:0px;
	width:120px
}
.Bnr .Bnr__img p.close{
	display:none
}
}
@media only screen and (max-width: 640px) {
	#recruit_btn {
    bottom: 135px;
    right: 15px;
	width:100px;
}
	#sotsu_fit_btn {
    bottom: 0px;
    left: 0;
		right:0;
	width:100%;
		padding: 10px;
}
#back2top {
    bottom: 123px !important;
}
.Bnr .pc {display:none}
.Bnr .tb {display:none}
.Bnr .sp {display:block}
footer {
    padding: 30px 5% 130px !important;
}
/* Bnr
-----------------------------------------*/
.Bnr .Bnr__img {
  position: fixed;
  bottom: 0;
  z-index: 88;
	width: 100%;
left: 0;
}
.Bnr__img__inner{
  box-sizing:border-box;
	padding:10px;
	width: 100%;
}
.Bnr .Bnr__img p.close{
  position: absolute;
  right: 10px;
  top:10px;
	display:block
}
.Bnr .Bnr__img p.close a{
  display: block;
  width: 20px;
  height: 25px;
  text-align: center;
}
.Bnr .Bnr__img p.close a span{
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.Bnr .Bnr__img p.close a i{
  font-size: 20px;
  z-index: 888;
  color: #222;
}
}

/*========================================================================
  kasou sitemap
========================================================================*/
.sitemap_cell {
    margin: 0 0 15px;
    padding: 0 0 10px;
    border-bottom: 1px solid #e1e2e6;
}
.sitemap_cell:last-of-type {
    border-bottom: none;
}
.sitemap_cell:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
.sitemap_cell .ttl {
    font-size: 1.2vw;
    color: #f26a4b;
    font-weight: bold;
    text-decoration: none;
}
.sitemap_cell .ttl a {
    font-size: 1.2vw;
    color: #f26a4b;
    font-weight: bold;
    text-decoration: none;
}
.sitemap_cell .s_cell {
    display: block;
    float: left;
    width: 25%;
}
.sitemap_cell .sitemap_link {
    width: 100%;
    margin: 0 0 10px;
}
.sitemap_cell .sitemap_link li {
    background: url(../images/common/icon_link01.png) no-repeat 4px 8px;
    padding: 0 0 0 20px;
}
.sitemap_cell .sitemap_link li a {
    color: #242730;
    text-decoration: none;
    font-size: 1.0vw;
    font-weight: bold;
}
.sitemap_cell .sitemap_link ul {
    margin: 0 0 0 0px;
}
.sitemap_cell .sitemap_link ul li {
    background: url(../images/common/icon_bar.png) no-repeat 0px 12px;
    padding: 0 0 0 13px;
}
.sitemap_cell .sitemap_link ul li a {
    color: #242730;
    text-decoration: none;
    font-size: 1.0vw;
    font-weight: normal;
}


/*========================================================================
  kasou news
========================================================================*/
.tabs-menu {
    text-align: center;
    display: table;
    width: 100%;
    margin-bottom: 24px;    
}
.tabs-menu li {
    display: table-cell;
    width: 16.666%;
    background: #e1e2e6;
    position: relative;
    border-top: 3px solid #edeff3;    
}
.tabs-menu li:before {
    content: '';
    width: 0%;
    position: absolute;
    background: #edeff3;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    z-index: 1;
}
#tabs-container .tabs-menu li {
    border-top: 0;
    background: rgb(245, 246, 249);
    padding: 8px 0;
}
#tabs-container .tabs-menu li:before {
    background: rgb(255, 255, 255);
}
.tabs-menu li:hover:before, #tabs-container .tabs-menu li:hover:before {
    width: 100%;
}
.tabs-menu li a {
    color: #242730;
    text-decoration: none;
    position: relative;
    z-index: 2;
    display: block;
    padding: 12px 0;
}
#tabs-container .tabs-menu {
    margin-top: 3em;
}
.tabs-menu li.current, #tabs-container .tabs-menu li.current {
    background: transparent;
}
.tabs-menu li.current a {
    font-weight: bold;    
}
#news_list li {
    padding: 10px 0;
    border-bottom: 1px solid #e1e2e6;
}
#news_list li > div {
    width: 216px;
    float: left;
}
#news_list .pos_time {
    font-weight: bold;
    line-height: 2.2;
}
#news_list li div + div {
    width: calc(100% - 216px);
    float: left;
}
.pos_time {
    color: #f26a4b;
}
.cat_item {
    display: inline-block;
    width: 120px;
    text-align: center;
    color: #fff;
}
#news_list .cat_item a, .cat_item a {
    color: #fff;
}
#news_list .cat_item {
    font-size: 0.73em;
    margin: 0 4px;
}
#news_list .pos_news {
    line-height: 2.2;
}
#news_list a {
    text-decoration: none;
    color: #000;
    padding-right: 8px;
}

#news_list .pos_news:after, .related_post .pos_news:after {
    content: '';
    display: inline-block;
}
.out-link:after, .file-icon:after {
    content: '';
    display: inline-block;
}
.out-link:after {
    background: url(../images/icon/out_link.png) no-repeat right center;
    width: 12px;
    height: 12px;
}
.file-icon:after {
    background: url(../images/icon/pdf.png) no-repeat right center;
    width: 48px;
    height: 18px;
    position: relative;
    top: 2px;    
}
.news_uti {
    margin-bottom: 18px;    
}

.related_post {
    margin: 48px 0 24px;
    border: 1px solid #e1e2e6;
    padding: 12px 36px;    
}
.related_post h5 {
    color: #494c54;
    font-size: 0.87em;
}
.related_post li {
    padding: 4px 0;
}
.related_post li:before {
    content: '●';
    color: #f1795d;
}
.related_post li a {
    color: #000;
    text-decoration: none;
}

/*========================================================================
  CSR
========================================================================*/
.csr_item {
    margin: 2em 0;
}
.csr_item li {
    margin-bottom: 24px;
    background: #F36A49;
}
.csr_item .box_content {
    background: #fff;
    color: #242730;
    padding: 2em 12px;
}
.csr_item .titl {
    background: url(../images/common/icon_next.png) no-repeat left 50%;
    color: #f26a4b;
    font-size: 1.12em;
    padding: 0 0 0 30px;
    margin: 0 0 10px;    
}
.csr_item img {
    padding: 40px 0 30px 0;
}
.articleInner .list_solar {
    margin: 32px 0;
}
.list_solar li {
    float: left;
    width: 25%;
    margin: 0 0 20px 0;
    text-align: center;
}
.list_solar li img {
    margin-bottom: 18px;
}
.list_solar li .name {
    margin: 0 0 20px;
    font-size: 0.87em;
    color: #242730;
    font-weight: bold;
    line-height: 1;
}
.list_solar li .number {
    margin: 0 0 20px;
    font-size: 24px;
    color: #f1795d;
    font-weight: normal;
    line-height: 1;
}
.list_solar li .number span {
    display: block;
    font-size: 0.87em;
    margin: 10px 0 0;
}
.list_solar li .describe {
    font-size: 0.73em;
    line-height: 1;
}

@media (min-width: 768px) {
    .csr_item li:nth-child(odd) {
        width: calc(50% - 24px);
        margin-right: 24px;
    }
    .business_flow .flow_detail {
        margin: 0 0 0 245px;
    }    
}

/*========================================================================
  kasou contact
========================================================================*/
p.con_attention { margin: 0 0 0 0; padding: 0 0 0; font-size: 0.9vw;}
p.con_attention span { color: #f26a4b; font-size: 0.9vw;}
p.con_attention a { padding: 0 15px 0 0; background: url(../images/common/icon_blank.png) no-repeat right center; text-decoration: none; border-bottom: 1px solid #f1795d; color: #f1795d; margin: 0 3px 0 0;}

.concact_cell { border-top: 1px solid #e1e2e6; border-bottom: 1px solid #e1e2e6; padding: 30px 0; margin: 0 0 40px;}
.concact_cell ul { display: table; width: 100%;}
.concact_cell ul li { display: table-cell; width: 50%; vertical-align: bottom; text-align: center;}
.concact_cell ul li .txt { font-size: 1.0vw; font-weight: bold;}
.concact_cell ul li .tel { display: inline-block; background: url(../images/common/icon_tel.png) no-repeat left center; padding: 0 0 0 35px;  font-family: 'Open Sans', sans-serif; font-size: 1.8vw; margin: 0 0 0;}
.concact_cell ul li .mail { display: inline-block; background: url(../images/common/icon_mail.png) no-repeat left center; padding: 0 0 0 35px;  font-family: 'Open Sans', sans-serif; font-size: 1.8vw; margin: 0 0 0;}
.concact_cell ul li a {
    color: #000;
}
.concact_cell ul li a:hover {
    text-decoration: none;
}

.dl_contact { width: 100%; display: table; margin: 0 0 0px; padding: 0 0 0px;}
.dl_contact:last-of-type { margin: 0 0 50px;}
.dl_contact dt { display: table-cell; border-bottom: 1px solid #edeff3; width: 25%; padding: 20px 0% 20px 0%; vertical-align: top; font-size: 1.0vw; color: #242730; font-weight: bold; text-align: center; background: #e1e2e6;}
.dl_contact dt:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
.dl_contact dt span { color: #f26a4b;}
.dl_contact dd { display: table-cell; padding: 15px 2% 15px 2%; font-size: 1.0vw; vertical-align: middle; color: #242730; border-bottom: 1px solid #edeff3; background: #fff;}
.dl_contact dd span.txt01 { display: inline-block; font-size: 0.9vw; color: #242730; margin: 0 0 0 2%;}
.dl_contact dd span.txt02 { display: inline-block; font-size: 0.9vw; color: #242730; margin: 0 0 0 0px; width: 3%;}
.dl_contact dd span.txt03 { display: inline-block; font-size: 0.9vw; color: #242730; margin: 0 0 0 2%;}
.dl_contact dd p { font-size: 0.9vw; color: #242730; margin: 0 0 0 0px;}
.dl_contact dd p a { padding: 0 15px 0 0; background: url(../images/common/icon_blank.png) no-repeat right center; text-decoration: none; border-bottom: 1px solid #f1795d; color: #f1795d; margin: 0 3px 0 0;}
.dl_contact dd .address { margin: 0 0 10px;}
.dl_contact dd .address:last-of-type { margin: 0 0 0px;}

form .dl_contact input[type="text"] { display: inline-block; width: 43%; padding: 7px 2%; background: #fff; border: none; box-shadow : 0 0 0 1px #e1e2e6 inset; border-radius: 3px;}
form .dl_contact input[type="email"] { display: inline-block; width: 43%; padding: 7px 2%; background: #fff; border: none; box-shadow : 0 0 0 1px #e1e2e6 inset; border-radius: 3px;}
form .dl_contact input[type="text"].txt_add { 
    display: inline-block; 
    width: 11%; 
    padding: 7px 2%; 
    background: #fff; 
    border: none; 
    box-shadow : 0 0 0 1px #e1e2e6 inset; 
    border-radius: 3px;
    text-align: center;
}
form .dl_contact input[type="text"].txt_add:nth-of-type(1) {
    width: 8%;
}
form .dl_contact textarea { display: inline-block; width: 96%; height: 160px; padding: 7px 2%; background: #fff; border: none; box-shadow : 0 0 0 1px #e1e2e6 inset; border-radius: 3px;}
form .dl_contact .btn_add { display: inline-block; width: 18%; padding: 5px 0%; margin: 0 0 0 2%; background: #f26a4b; color: #fff; border: none; border-radius: 3px; text-align: center; font-size: 0.9vw; vertical-align: top;}
form .dl_contact .btn_add a { color: #fff; text-decoration: none; font-size: 0.9vw;}

::-webkit-input-placeholder { color: #969799;}
:-moz-placeholder { color: #969799; opacity: 1; }
::-moz-placeholder { color: #969799;; opacity: 1; }
:-ms-input-placeholder { color: #969799;; }


/*========================================================================
  TOP PAGE
========================================================================*/


/*========================================================================
  kasou company
========================================================================*/
.box_wrap {
    position: relative;
    overflow: hidden;
    transition: all 0.5s ease 0s;
    -webkit-transition: all 0.5s ease 0s;
}
.box_wrap a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    font-size: 0;
    z-index: 6;
    background: -webkit-radial-gradient(top center, ellipse cover, #fff3 0%,#00000080 100%);
    -moz-linear-gradient: -webkit-radial-gradient(top center, ellipse cover, #fff3 0%,#00000080 100%);
    -ms-linear-gradient: -webkit-radial-gradient(top center, ellipse cover, #fff3 0%,#00000080 100%);
    -o-linear-gradient: -webkit-radial-gradient(top center, ellipse cover, #fff3 0%,#00000080 100%);
    -webkit-linear-gradient: -webkit-radial-gradient(top center, ellipse cover, #fff3 0%,#00000080 100%);
    filter: brightness(0%);
    -webkit-filter: brightness(0%);
    -moz-filter: brightness(0%);
    -o-filter: brightness(0%);
    -ms-filter: brightness(0%);
    transition: all 0.5s ease 0s;
    -webkit-transition: all 0.5s ease 0s;
}
.box_wrap p {
    margin: 0;
}
.box_wrap img {
    width: 100%;
    height: auto;
    transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    position: relative;
    z-index: 0;
}
.box_wrap .box_content {
    position: absolute;
    bottom: 6%;
    right: 4%;
    width: 180px;    
    padding: 10px 24px;
    color: #fff;
    font-size: 0.73em;
    transition: background 0.5s ease;
    -webkit-transition: background 0.5s ease;
    z-index: 7;
}
.box_wrap .box_content h5 {
    font-size: 1.12em;
    margin: 12px 0;
    font-weight: normal;
    color: #fff;
}
.box_wrap:hover a {
    background: none;
    -moz-linear-gradient: none;
    -ms-linear-gradient: none;
    -o-linear-gradient: none;
    -webkit-linear-gradient: none;
    filter: brightness(100%);
    -webkit-filter: brightness(100%);
    -moz-filter: brightness(100%);
    -o-filter: brightness(100%);
    -ms-filter: brightness(100%);
    transition: all 0.5s ease 0s;
    -webkit-transition: all 0.5s ease 0s;
}
.box_wrap:hover .box_content {
    background: #f26a4b;
}

.company .breadcrumb {
    margin: 0px 0 0px;
}
.index_cell01.row div[class^="col-"] {
    padding: 0;
}

.company_index {
    width: 100%;
    display: block;
}
.company_index.index_cell01 {
    margin-top: 80px;
}
.company_index.index_cell02 {
    margin-bottom: 30px;
}
.company_index:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
.company_index .bnr {
    float: left;
    width: 50%;
}
.company_index .index_01 {
    background: url(../images/company/bg_index01_off.jpg) no-repeat center center;
    background-size: cover;
    margin: 0;
}
.company_index .index_02 {
    background: url(../images/company/bg_index02.jpg) no-repeat center center;
    background-size: cover;
    margin: 0;
}
.company_index .index_03 {
    background: url(../images/company/bg_index03.jpg) no-repeat center center;
    background-size: cover;
    margin: 0;
}
.company_index .index_04 {
    background: url(../images/company/bg_index04.jpg) no-repeat center center;
    background-size: cover;
    margin: 0;
}
.company_index .index_05 {
    background: url(../images/company/bg_index05.jpg) no-repeat center center;
    background-size: cover;
    margin: 0;
}
.company_index .index_06 {
    background: url(../images/company/bg_index06.jpg) no-repeat center center;
    background-size: cover;
    margin: 0;
}
.company_index .index_01 a,
.company_index .index_02 a,
.company_index .index_03 a,
.company_index .index_04 a,
.company_index .index_05 a,
.company_index .index_06 a {
    display: block;
    width: 100%;
    height: 100%;
    text-decoration: none;
    color: #fff;
}
.company_index .index_01 a,
.company_index .index_06 a {
    padding-top: 300px;
    padding-bottom: 30px;
}
.company_index p {
    margin: 0;
    font-size: 0.73em;
    text-align: left;
    line-height: 1.8;
    font-weight: 500;
}
.company_index p span {
    display: block;
    text-align: center;
    padding: 0 0 5px;
    font-size: 1.12em;
}
.company_index .index_01 p {
    display: block;
    margin: 0px 5% 0 55%;
    padding: 55px 5%;
    background: #6a3e39;
}
.company_index .index_02 p,
.company_index .index_03 p,
.company_index .index_04 p,
.company_index .index_05 p {
    padding: 90px 10% 90px 60%;
}
.company_index .index_06 p {
    display: block;
    margin: 0px 5% 0 55%;
    padding: 55px 5%;
}
@media screen and (min-width: 769px) {
    .company_index .index_01:hover {
        background: url(../images/company/bg_index01.jpg) no-repeat center center;
    }
    .company_index .index_01:hover p {
        background: #f26a4b;
    }
    .img-case img {
        height: 220px;
        width: 100%;
        object-fit: cover;    
    }
}

.company_menu {
    margin: 0 0 80px;
    display: flex;
    flex-flow: row wrap;
}
.company_menu.menu_top_business {
    margin: 0;
}
.overview_box {
    margin-bottom: 48px;
}
.company_menu:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
.company_menu li {
    border-bottom: 1px solid #e1e2e6;
    text-align: center;
    background: url(../images/company/bg_line.png) no-repeat right 50%;
    transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    position: relative;
    flex-grow: 1;
}
.menu_second {
    background: #e1e2e6;
    margin-bottom: 80px;
    margin-left: 0 !important;
    display: flex;
}
.menu_second li {
    display: inline-block;
    padding: 8px;
}
.menu_second li a {
    text-align: center;
    color: #242730;
    text-decoration: none;
}
.menu_second .current_page_item  {
    background: #d0d1d4;
}
.company_menu li:last-child {
    background: none;
}
.company_menu li:after, .page_menu_child li:after {
    content: '';
    position: absolute;
    height: 2px;
    width: 0%;
    background: #f1795d;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
.company_menu li:hover:after, .company_menu li.current_page_item:after, 
.page_menu_child li:hover:after, .page_menu_child li.current_page_item:after, .company_menu .current_page_parent:after {
    width: 100%;
}
.company_menu li a {
    text-decoration: none;
    font-size: 0.87em;
    color: #242730;
    padding: 25px 0;
    display: block;
}
.menu_second li:after {
    width: 0;
}
.company_footer {
    width: 96%;
    margin: 0 auto;
    padding: 30px 0;
}
.company_footer ul {
    width: 100%;
}
.company_footer ul:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
.company_footer ul li {
    float: left;
    width: 32%;
    margin: 0 2% 30px 0;
    text-align: center;
    font-size: 0.93em;
}
.company_footer ul li:nth-child(3n) {
    margin: 0 0% 30px 0;
}
.company_footer ul li a {
    text-decoration: none;
    color: #242730;
}
.company_footer ul li img {
    z-index: 1;
    width: 100%;
}
.company_footer ul li .img {
    display: block;
    position: relative;
    margin: 0 0 10px;
}
.company_footer ul li.active .img::before {
    content: '';
    position: absolute;
    width: 100%;
    border-bottom: solid 4px #f1795d;
    display: block;
    bottom: 0px;
    left: 0;
    z-index: 10;
}
dl.company_history {
    border-top: solid 1px #e1e2e6;
    margin: 0 0 20px 0;
    padding: 30px 0 0;
}
dl.company_history dt {
    clear: both;
    display: block;
    float: left;
    padding: 0px 0 40px;
    width: 200px;
    color: #f26a4b;
    font-size: 64px;
    font-family: 'Noto Sans', sans-serif;
    font-weight: 100;
    line-height: 1;
}
dl.company_history dd {
    border-bottom: solid 1px #e1e2e6;
    display: block;
    padding: 0px 0 30px 200px;
    margin: 0px 0 40px;
}
dl.company_history dd img {
    float: right;
    margin: 0 0 0 30px;
    width: 35%;
}
dl.company_history dd p {
    border-left: solid 1px #e1e2e6;
    padding: 0 0 8px 35px;
    overflow: hidden;
    font-size: 0.87em;
}
table.tbl_info {
    margin: 0 0 20px;
    width: 100%;
    border-collapse: collapse;
}
table.tbl_info td.column-1 {
    width: 25%;
    text-align: center;
    vertical-align: middle;
    color: #242730;
    font-weight: bold;
    font-size: 0.87em;
    background: #e1e2e6;
    border-bottom: 1px solid #edeff3;
    box-shadow:1px 0 #edeff3 inset;
}
table.tbl_info td.column-2 {
    width: 71%;
    border-bottom: 1px solid #edeff3;
    background: #fff;
    text-align: left;
    padding: 20px 2%;
    color: #242730;
    font-size: 0.87em;
    vertical-align: middle;
}
table.tbl_info td span.t_bold {
    font-weight: bold;
}
table.tbl_info td span.t_attention {
    color: #f1795d;
    margin-left: 10px;
}
table.tbl_info td .iso {
    width: 100%;
    display: table;
}
table.tbl_info td .iso .img {
    display: table-cell;
    width: 180px;
}
table.tbl_info td .iso .img img {
    width: 100%;
}
table.tbl_info td .iso p {
    display: table-cell;
    vertical-align: middle;
    font-size: 0.87em;
}

table.tbl_capacity {
    margin: 0 0 20px;
    width: 100%;
    border-collapse: collapse;
    background: #fff;
}
table.tbl_capacity thead th {
    text-align: center;
    vertical-align: middle;
    color: #242730;
    font-weight: bold;
    font-size: 0.87em;
    background: #e1e2e6;
    border-bottom: 1px solid #edeff3;
    padding: 20px 0%;
}
table.tbl_capacity td {
    background: #fff;
    color: #242730;
    font-size: 0.87em;
    vertical-align: middle;
    border-bottom: 1px solid #edeff3;
    padding: 20px 2%;
}
table.tbl_capacity td.column-1, table.tbl_capacity td.column-3 {
    text-align: center;
}
table.tbl_capacity .th01 {
    width: 155px;
}
table.tbl_capacity .th02 {
}
table.tbl_capacity .th03 {
    width: 150px;
}
table.tbl_capacity .th04 {
}
table.tbl_capacity .td01 {
    width: 155px;
    text-align: center;
}
table.tbl_capacity .td02 {
    text-align: left;
}
table.tbl_capacity .td03 {
    width: 150px;
    text-align: center;
}
table.tbl_capacity .td04 {
    text-align: left;
}

.access_menu {
    text-align: center;
    margin: 0 0 40px;
}
.access_menu li {
    display: inline-block;
    border-right: 1px solid #e1e2e6;
    background: url(../images/common/icon_arrow01.png) no-repeat 10px 50%;
    padding: 2px 10px 2px 25px;
}
.access_menu li:first-child {
    border-left: 1px solid #e1e2e6;
}
.access_menu li a {
    font-weight: bold;
    text-decoration: none;
    color: #242730;
    font-size: 0.81em;
}
.access_map {
    display: block;
    width: 100%;
    height: 320px;
    margin-bottom: 10px;
}
.access_map iframe {
    width: 100%;
    height: 100%;
}
.kasou.company_message {
    width: 100%;
    background: url(../images/company/bg_company_message.jpg) no-repeat bottom, #edeff3;
    background-size: 100% auto, 100%;
    padding: 0 0 250px;
}
.messageArea {
    display: table;
    width: 100%;
    margin: 60px 0 0;
    padding: 0 0 10px;
}
.messageArea.none {
    border-bottom: none;
}
.messageArea .message01 {
    display: table-cell;
    vertical-align: middle;
    font-family: "ヒラギノ明朝 Pro W3", Hiragino Mincho Pro,"ＭＳ Ｐ明朝", MS PMincho, serif;
    font-size: 1.31em;
    color: #f1795d;
    line-height: 42px;
    text-align: center;
    width: 50%;
    letter-spacing: 0.1em;
}
.messageArea .message02 {
    display: table-cell;
    width: 48%;
    padding: 0 0 0 4%;
}
.messageArea .message02 .ttl {
    font-family: "ヒラギノ明朝 Pro W3", Hiragino Mincho Pro,"ＭＳ Ｐ明朝", MS PMincho, serif;
    font-size: 1.31em;
    color: rgb(241, 121, 93);
    line-height: 42px;
    margin: 0 0 40px;
    letter-spacing: 0.1em;
}
.messageArea .message03 {
    display: table-cell;
    text-align: right;
    vertical-align: bottom;
    width: 34%;
}
.messageArea .message04 {
    display: table-cell;
    text-align: left;
    width: 80%;
    padding: 0 4% 0 0;
}
.messageArea p {
    margin: 0 0 40px;
}
.messageArea .message03 p {
    margin: 10px 0 0;
}
.txt_company {
    font-family: "ヒラギノ明朝 Pro W3", Hiragino Mincho Pro,"ＭＳ Ｐ明朝", MS PMincho, serif;
    font-size: 21px !important;
    color: #f1795d;
    line-height: 42px;
    text-align: center;
    letter-spacing: 0.1em;
}
.articleInner ol.company_management {
    margin-left: 0;
}
.company_management {
    display: block;
    width: 100%;
    margin: 30px 0 0;
}
.company_management:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
.company_management li {
    /*float: left;
    width: calc(50% - 2.666666%);
    margin: 0 2.666666% 25px 0;*/
    margin-bottom: 25px;
    background: #fff;
    padding: 2em 0px 2em 52px;
    min-height: 110px;    
}
.company_management li span {
    position: absolute;
    top: 50%;
    transform: translate(0,-50%);    
}
.company_management li p {
    margin: 30px 15%;
    font-family: "ヒラギノ明朝 Pro W3", Hiragino Mincho Pro,"ＭＳ Ｐ明朝", MS PMincho, serif;
    font-size: 0.93em;
    line-height: 30px;
}

/*--------------------------------------
                AJAX LOAD TAB
----------------------------------------*/
.loading {
    position: relative;
}
.loading .load_bg {
    background: rgba(255, 255, 255, 0.75);
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    position: absolute;
    z-index: 13;
}
.loading .load {
    height: 60px;
    width: 60px;
    margin: 89px auto 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    z-index: 11;
    -webkit-animation: rotation .6s infinite linear;
    -moz-animation: rotation .6s infinite linear;
    -o-animation: rotation .6s infinite linear;
    animation: rotation .6s infinite linear;
    border-left: 6px solid rgba(0, 174, 239, .15);
    border-right: 6px solid rgba(0, 174, 239, .15);
    border-bottom: 6px solid rgba(0, 174, 239, .15);
    border-top: 6px solid rgba(0, 174, 239, .8);
    border-radius: 100%;
}

@-webkit-keyframes rotation {
    from {
        -webkit-transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(359deg);
    }
}

@-moz-keyframes rotation {
    from {
        -moz-transform: rotate(0deg);
    }
    to {
        -moz-transform: rotate(359deg);
    }
}

@-o-keyframes rotation {
    from {
        -o-transform: rotate(0deg);
    }
    to {
        -o-transform: rotate(359deg);
    }
}

@keyframes rotation {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(359deg);
    }
}

/*--------------------------------------
                事業内容
----------------------------------------*/
.business_index {
    background: #fff;
    margin-top: 36px;
    margin-bottom: 32px;
}
.business_index div[class^='col-'] {
    padding: 0;
}
.inner-content {
    padding: 18px 8% 0;
}
.inner-content .txt {
    padding-bottom: 16px;
}
h2 span {
    display: block;
}
.business_index h2 {
    font-size: 26px;
    color: #f26a4b;
    letter-spacing: -0.1em;
    line-height: 1.6;
}
.business_index h2 span:nth-of-type(1) {
    font-size: 0.73em;
    color: #242730;
    letter-spacing: 0.05em;
    margin: 0 0 10px;    
}
.business_index h2 span:nth-of-type(2) {
    font-size: 1.31em;
    color: #f26a4b;
    letter-spacing: 0.05em;    
}
.contactArea {
    background: #fff;
    padding: 35px 3%;
}
.contactArea p {
    text-align: center;
    margin: 0 0 0px;
}
.contactArea .tel{
    display: inline;
    background: url(../images/common/icon_tel.png) no-repeat left center;
    padding: 0 0px 0 35px;
    font-family: 'Open Sans', sans-serif;
    font-size: 28px;
    margin: 0 auto;
    text-align: center;
}
.contactArea a{
    display: block;
    width: 100%;
    height: 64px;
    line-height: 64px;
    color: #fff;
    font-size: 0.87em;
    background: #f26a4b;
    text-align: center;
    text-decoration: none;
    font-weight: bold;
}
.business_flow {
    position: relative;
    background: url(../images/business/bg_line02.png) no-repeat 142px top;        
    background-size: 2px 100%;
    padding: 0 0 50px;
}
.business_flow:nth-of-type(1) {
    background-position-y: bottom; 
    background-size: 2px 70%;
}
.business_flow:last-of-type {
    background-position-y: top;
    background-size: 2px 30%;
    padding: 0 0 0px;
}
.business_flow .business_step {
    position: absolute;
    top: 40px;
    left: 0;
    width: 285px;
    background: #fff;
    padding: 50px 0px 40px;
}
.business_flow .business_step .step {
    position: absolute;
    top: -10px;
    left: 103px;
    display: block;
    background: #242730;
    color: #fff;
    font-size: 0.68em;
    padding: 3px 0px;
    width: 80px;
    text-align: center;
}
.business_flow .business_step p {
    font-size: 26px;
    color: #f26a4b;
    line-height: 1;
    margin: 0 0 40px;
    text-align: center;
}
.business_flow .business_step p span.eng {
    display: block;
    font-size: 0.73em;
    color: #242730;
    letter-spacing: 0.05em;
    margin: 0 0 20px;
    line-height:24px;
}

.business_flow .flow_detail .ttl {
    width: 100%;
    padding: 235px 8% 25px;
    margin: 0 0 20px;
    font-size: 1.31em;
    line-height: 42px;
    color: #fff;
    font-family: "ヒラギノ明朝 Pro W3", Hiragino Mincho Pro,"ＭＳ Ｐ明朝", MS PMincho, serif;
    letter-spacing: 0.2em;
}
.business_flow .flow_detail .ttl.ttl01 {
    background: url(../images/business/bg_ttl01.jpg) no-repeat bottom center;
    background-size: cover;
}
.business_flow .flow_detail .ttl.ttl02 {
    background: url(../images/business/bg_ttl02.jpg) no-repeat bottom center;
    background-size: cover;
}
.business_flow .flow_detail .ttl.ttl03 {
    background: url(../images/business/bg_ttl03.jpg) no-repeat bottom center;
    background-size: cover;
}

.business_smart_item > li {
    padding: 25px 0 40px;
    margin: 0 4% 40px 0;
    background: #fff;
    width: 46%;
}
.business_smart_item .smart_titl {
    font-size: 1.00em;
    margin: 0 0 20px;
    padding: 5px 0 5px 15px;
    line-height: 1;
    font-weight: bold;
    border-left: 2px solid #f1795d;
}
.list_item li {
    margin: 0 12px 8px 30px;
}
.list_square li:before {
    content: '■';
    margin-right: 8px;
    color: #F3694A;
    font-size: 0.63em;
}
.roof_item {
    margin: 40px 0;
}
.roof_desc {
    padding-bottom: 24px;
}
.content-box li[class^="col-"] {
    padding-bottom: 24px;
}
.business_list li .ttl {
    font-size: 1.00em;
    padding: 10px 0;
    line-height: 1;
    font-weight: bold;
    color: #f3694c;
}
.business_list .txt {
    padding-bottom: 12px;
}
.content-box h4, .featured h4 {
    margin-left: 15px;
    margin-right: 15px;
}
.link_service {
    display: block;
    width: 228px;
    padding: 10px 0 10px;
    color: #242730;
    border-bottom: 1px solid #f26a4b;
    font-weight: bold;
    position: relative;
    font-size: 0.81em;
    text-decoration: none;
    margin: 3em auto 0;
    text-align: center;
}
.link_service.out-link:after {
    margin-left: 12px;
}
.link_service:hover {
    text-decoration: none;
}
.dev_list {
    counter-reset: number;
}
.dev_list li {
    padding-bottom: 56px;
    background: url(../images/icon/business_line2.png);
    background-position: 25%;
    background-repeat: repeat-y;
}
.dev_list li:last-child {
    background: none;
}
.dev_list .std {
    font-size: 1.31em;
    color: #f26a4b;
    font-family: "ヒラギノ明朝 Pro W3", Hiragino Mincho Pro, "ＭＳ Ｐ明朝", MS PMincho, serif;
    margin: 0 0 15px;
    letter-spacing: 0.3em;    
}
.dev_list li .std:before {
    content: '';
    width: 40px;
    height: 40px;
    display: inline-block;
    line-height: 40px;
    background: #EC7961;
    margin-right: 16px;
    counter-increment: number;
    content: counter(number);    
    color: #fff;
    text-align: center;
    font-size: 0.87em;
    padding-left: 6px;
}
.dev_list .txtArea {
    padding-top: 30px;
}
.dev_list .txt {
    margin-bottom: 30px;
}
.om_item {
    padding-bottom: 72px;
}
.om_item .desc {
    padding: 12px 0 24px;
}
.om_bg {
    background: rgb(255, 255, 255);
    padding: 12px 32px;
    margin-bottom: 30px;
}
.articleInner ul.business_list {
    margin-left: 0;
}
.panel_type {
    margin: 0 0 15px;
}
.panel_type span {
    display: block;
    float: left;
    margin: 0 10px 0 0;
    padding: 5px 0;
    width: 115px;
    font-size: 0.73em;
    line-height: 1;
    background: rgb(243, 105, 76);
    text-align: center;
    color: rgb(255, 255, 255);
    font-weight: bold;
}
.ttl_panel {
    font-size: 1.00em;
    color: rgb(243, 105, 76);
    font-weight: bold;
    margin: 0 0 10px;
    padding: 0 0 0;
    margin-top: 24px;
}
.features_list.company_management {
    margin-top: 8px;
}
.homesystem .tbl_capacity tr td:first-child, 
.battery .tbl_capacity tr td:first-child,
.battery .tbl_capacity tr:nth-of-type(2) td:nth-of-type(2),
.battery .tbl_capacity tr:nth-of-type(6) td:nth-of-type(2),
.battery .tbl_capacity tr:nth-of-type(9) td:nth-of-type(2),
.battery .tbl_capacity tr:nth-of-type(11) td:nth-of-type(2),
.battery .tbl_capacity tr:nth-of-type(14) td:nth-of-type(2),
.battery .tbl_capacity tr:nth-of-type(16) td:nth-of-type(2)
{
    background: rgb(225, 226, 230);
}
.battery .tbl_capacity tr td:first-child {
    vertical-align: middle;
    border-right: 1px solid rgb(237, 239, 243);
}
.dl_attention {
    margin: 0 0 20px;
    display: table;
    width: 100%;
    border: 2px solid rgb(243, 105, 76);
}
.dl_attention dt {
    display: table-cell;
    width: 285px;
    padding-left: 50px;
    background: url(../images/common/icon_attention.png) no-repeat 50px 50%,rgb(243, 105, 76);
    vertical-align: middle;
    color: rgb(255, 255, 255);
    font-size: 1.00em;
    text-align: center;
}
.dl_attention dd {
    padding: 20px 40px;
    font-size: 0.87em;
    line-height: 28px;
}
.list_business.list_business_03 {
    margin-left: 0;
}
.list_business.list_business_03 li {
    float: left;
    width: 33.3333%;
    padding: 0px 0 0px;
    margin: 0 0 40px 0;
}
a.list_catalog {
    display: table;
    width: 100%;
    height: 100%;
    color: rgb(36, 39, 48);
    text-decoration: none;
    font-weight: bold;
}
a.list_catalog .catalog_L {
    display: table-cell;
    width: 50%;
    padding: 0 0 0;
}
a.list_catalog .catalog_L img {
    width: 100%;
    margin: 0 0 0;
    height: auto;
}
a.list_catalog .catalog_R {
    display: table-cell;
    width: 50%;
    padding: 0px 0 0px 40px;
    line-height: 1;
    background: url(../images/common/icon_next.png) no-repeat 15px 50%;
    vertical-align: middle;
}
.link02.button-1 {
    width: 230px;
}


/*--------------------------------------
                コラム
----------------------------------------*/
.column_bottom .media-object {
    max-width: none;
}
.sideArea .column_term-archive a, .post_column_tag a {
    background: #fff;
    color: #f1795d;
    margin: 2px;
    display: inline-block;
    border-radius: 15px;
    border: 1px solid transparent;
    -o-transition: all .7s ease-in-out;
    -moz-transition: all .7s ease-in-out;
    -webkit-transition: all .7s ease-in-out;
    transition: all .7s ease-in-out;    
    text-decoration: none;
    padding: 0 8px;
    font-size: 0.81em;
}
.post_column_tag {
    margin: 30px 0 0;
    text-align: right;
}
.column_term-archive a:hover{
    border:1px solid #f1795d;
    background:transparent;
    -o-transition:all 0s ease-in-out;
    -moz-transition:all 0s ease-in-out;
    -webkit-transition:all 0s ease-in-out;
    transition:all 0s ease-in-out
}
.wrapper {
    margin-top: 80px;
    margin-bottom: 48px;
    overflow: hidden;
}
#column_list a {
    text-decoration: none;
}
.content_column {
    position: relative;
    overflow: hidden;
}
.content_column img {
    width: 100%;
    height: 220px;
    object-fit: cover;
}
.content_column .col_cat {
    position: absolute;
    top: 0;
    right: 0;
    color: #fff;
    font-size: 0.73em;
    padding: 3px 20px;
    background: rgba(242,106,75,0.75);    
}
.col_titl {
    font-weight: bold;
    font-size: 1.00em;
    margin: 12px 0;
    color: #242730;
}
.column_bottom {
    border-top: 1px solid #e1e2e6;
    margin-bottom: 3.2em;
}
.column_bottom .media-body {
    vertical-align: middle;
}
.column_bottom .column_time {
    padding-top: 12px;
}
.sideArea a {
    color: rgb(36, 39, 48);
}
.sideArea > h4 {
    margin-top: 0;
}
.column-taxonomy li {
    border-bottom: 1px solid #e1e2e6;
    padding: 10px 0 10px 20px;
    background: url(../images/common/icon_archive.png) no-repeat left 20px;
}
.column-taxonomy li:last-child {
    border-bottom: none;
}
.articleInner a {
    text-decoration: none;
}
#top_views li {
    position: relative;
    margin-bottom: 16px;
}
#top_views li:before {
    counter-increment: number;
    content: counter(number);
    background: rgba(255, 255, 255, 0.7215686274509804);
    color: rgb(241, 121, 93);
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 0.87em;
    font-weight: bold;
    text-align: center;
    position: absolute;
    left: 0;
}
#top_views li img {
    width: 100%;
    height: auto;
}
#top_views .title {
    color: rgb(36, 39, 48);
    padding: 8px 0;
    line-height: 1.6;
    font-weight: bold;
}
#top_views .date {
    color: rgb(36, 39, 48);
    font-weight: normal;
}
.date .num_view {
    color: rgb(208, 208, 208);
    font-style: italic;
    font-size: 0.73em;
    padding-right: 8px;
}
.date .num_view:after {
    content: 'view';
}
#secondary .widget_media_image {
    margin-top: 12px;
}
.share_social {
    margin: 30px 0 12px;
    text-align: right;
}
.share_social li:nth-child(2) {
    position: relative;
    top: -8px;
}
#comment_box {
    background: #fff;
    padding: 32px;
}
#comment_box label {
    font-weight: bold;
}
#comment_box label.comment_note {
    font-weight: normal;
}
#comment_box .form-group {
    margin-bottom: 12px;
    overflow: hidden;
}
#comment_box #submit {
    text-align: center;
    padding: 4px 12px;
    color: rgb(255, 255, 255);
    background: rgb(242, 106, 75);
    border: none;
    border-radius: 3px;    
}
#comment_box .form-submit {
    text-align: right;
}
.commentlist {
    margin: 24px 0;    
}
.commentlist li {
    border-top: 1px solid rgb(225, 226, 230);
}
.commentlist a {
    text-decoration: none;
    color: rgb(36, 39, 48);
}
.commentlist .children {
    margin-left: 8px;
    background: rgb(250, 249, 248);
}
.commentlist li {
    padding: 8px;
}
.commentlist .children li {
    padding: 8px 12px;
}
.commentlist .comment-author {
    font-weight: bold;
}
/*--------------------------------------
                ビジョン
----------------------------------------*/
.kasou.vision {
    padding: 0 0 350px;
    background-repeat: no-repeat;
    background-position: bottom center;
    background-color: rgb(233, 238, 241);
}
.vision01 {
    position: relative;
    margin: 0 0 60px;
}
.vision01 .main_ttl {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 10;
    width: 420px;
    height: 210px;
    margin: auto;
    background: rgba(255, 255, 255, 0.96);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #F1795D;    
    font-size: 1.4em;
}
@media screen and (min-width: 1600px) {

    .vision01 .rslides li {
        width: 100%;
    }
    .vision01 .rslides li img {
        width: 100%;
    }
}
.p-content {
    margin-top: 40px;
}
.box_1, .box_4 {
    position: relative;
}
.b01_content {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;    
}
.b01_content .v-box1_inner {
    font-size: 1.31em;
    color: rgb(241, 121, 93);
    letter-spacing: 0.2em;
    font-family: "ヒラギノ明朝 Pro W3", Hiragino Mincho Pro,"ＭＳ Ｐ明朝", MS PMincho, serif;
    background: rgba(255, 255, 255, 0.93);
    padding: 60px 40px;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;    
}
.b01_content .v-box1_inner:hover {
    background: #fff;
}
.box_2, .box_3, .box_4 {
    margin-top: -32px;
    position: relative;
    z-index: 12;
}
.box_2 {
    margin-bottom: 32px;
}
.v_box_content {
    padding-top: 60px;
    padding-left: 24px;
}
.box_3 .v_box_content {
    padding-left: 0px;
    padding-top: 32px;
}
.v_box_content p {
    line-height: 2.4;
}
.box_4 {
    margin-top: -48px;
    z-index: 1;
}
.v_box4_content {
    position: absolute;
    right: 14%;
    top: 52px;
    padding: 18px 12px;
}
.v_box4_content p {
    line-height: 2.4;
}

/*--------------------------------------
                導入事例
----------------------------------------*/
.kasou.case .h1_ttl {
    background: url(../images/common/bg_h1_ttl_case.jpg) no-repeat center center;
    background-size: cover;
}

.performance_img img{ max-width: 100%; height: auto;}
.performance_img .box-top{ margin:0px 0 0px 0px; width:100%; height: 570px;}
.performance_img .box-top li { width:100%; height: 570px;}
.performance_img .box-top li img { display: block; width: auto; height: 100%; text-align: center;}
.performance_img .box-bottom{ margin:0px 0px 50px 0; width:100%;}
.performance_img .box-bottom:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
.performance_img .box-bottom li{ width: 25%; height: 142px; float: left; text-align: center; cursor: pointer;}
.performance_img .box-bottom li img{ }
.performance_img .box-bottom li img:hover{ opacity: 0.8;}
.performance_img .hide {display:none;}

.condition_cell {
    float: left;
    width: 65.5%;
    background: #fff;
    padding: 40px 40px;
}
.condition_cell ul li {
    float: left;
    width: 32%;
    margin: 0 2% 0 0;
}
.condition_cell ul li:last-child {
    margin: 0 0% 0 0;
}

.freeword_cell {
    float: right;
    width: 31%;
    background: #fff;
    padding: 40px 40px;
}
.freeword_cell p {
    margin-bottom: 10px !important;
}
.freeword_cell #keywords1  {  
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: calc(100% - 61px);
    background: #fff;
    border: 1px solid #e1e2e6;
    border-radius: 3px;
    padding: 3px 6px 3px 12px;
    font-size: 0.87em;
    float: left;
}  
.freeword_cell #searchBtn1 {  
    width: 61px;
    background: #ea5541;
    color: #fff;
    font-size: 0.87em;
    text-align: center;
    border: 0;
    border-radius: 0 3px 3px 0;
    padding: 4px 0;
}
input#keywords1::-webkit-input-placeholder {
    color: #969799 !important;
    font-weight: normal;
}
input#keywords1:-ms-input-placeholder {
    color: #969799 !important;
    font-weight: normal;
}
input#keywords1::-moz-placeholder {
    color: #969799 !important;
    font-weight: normal;
}

.case_L {
    display: block;
    width: 48%;
    float: left;
}
.case_R {
    display: block;
    width: 48%;
    float: right;
}
p.txt_howto {
    color: #f1795d;
    margin: 5px 0 5px;
}
p.ttl_catalog {
    margin: 0 0 0;
    font-weight: bold;
}
p.ttl_catalog a {
    color: #242730;
    text-decoration: none;
    position: relative;
    display: inline;
    background: url(../images/common/icon_pdf.png) no-repeat right center;
    background-size: 48px 18px;
    padding: 0 60px 0 0;
}
.box_hoken {
    margin: 30px 0 10px;    
}
.box_hoken > .row {
    background: #fff;
    padding: 12px 0;
    margin-left: 0px;
    margin-right: 0;
}
.box_hoken > .row:last-child {
    padding: 0;
}
.catalog_item .img {
    background: #fff;
    margin-bottom: 8px;
}
.box_hoken .ttl {
    font-size: 1.00em;
    font-weight: bold;
    margin: 0 0 20px;
    color: #242730;
}
.box_hoken .ttl span {
    display: inline-block;
    width: 115px;
    background: #f3694c;
    color: #fff;
    text-align: center;
    padding: 5px 0;
    line-height: 1;
    font-size: 0.73em;
    font-weight: bold;
    margin-left: 8px;    
}
.box_hoken .hoken-sub {
    border: 1px solid #edeff3;
    border-bottom: 0;
}
.box_hoken .row:not(:first-child) {
    margin-top: 48px;
}
.box_hoken .hoken-sub div[class^="col-xs-"] {
    padding: 30px 12px;
    border-bottom: 1px solid #edeff3;
}
.box_hoken .hoken-sub > div.col-xs-4 {
    text-align: center;
    vertical-align: middle;
    color: #242730;
    font-weight: bold;
    font-size: 0.87em;
    background: #e1e2e6;
}
.hoken h3, .hoken h4 {
    margin-top: 60px;
}
.txt_type {
    width: 120px;
    background: #fff;
    color: #f26a4b;
    font-size: 0.73em;
    line-height: 1;
    text-align: center;
    padding: 2px 0;
}

.map_power {
    width: 100%;
    height: 380px;
}
.map_power iframe {
    width: 100%;
    height: 100%;
}

.img_power {
    width: 100%;
    height: 380px;
}
.img_power img {
    width: auto;
    height: 100%;
    text-align: center;
}

.tbl_power th {
    width: 20%;
}
.tbl_power td {
    text-align: center;
}

dl.list_news.news_power dt {
    float: none;
    padding: 0px 0 0;
    width: 100%;
    font-size: 0.73em;
}
dl.list_news.news_power dt .cate {
    font-size: 0.73em;
    color: #115697;
    width: 115px;
    border: none;
    background: #fff;
}
dl.list_news.news_power dt .cate.cate01 {
    color: #fff;
    background: #115697;
}
dl.list_news.news_power dt .cate.cate02 {
    color: #fff;
    background: #159ca8;
}
dl.list_news.news_power dt .cate.cate03 {
    color: #fff;
    background: #138fdf;
}
dl.list_news.news_power dt .cate.cate04 {
    color: #fff;
    background: #8869d0;
}
dl.list_news.news_power dd {
    padding: 15px 0 15px 0;
    margin: 0 0 15px;
    font-size: 0.87em;
}

.tab_power {
    width: 100%;
    margin: 0 0 30px;
    font-size: 0;
    display: table;
}
.tab_power li {
    display: table-cell;
    width: 50%;
    font-size: 0.87em;
    text-align: center;
}
.tab_power li a {
    display: block;
    width: 100%;
    padding: 20px 0;
    text-decoration: none;
    color: #242730;
}
.tab_power .is_active {
    background: #e1e2e6;
    box-shadow:0 3px #f26a4b inset;
}
.tab_case {
    width: 100%;
    margin: 0 0 30px;
    display: table;
    margin-left: 0 !important;
}
.tab_case li {
    display: table-cell;
    width: 50%;
    font-size: 0.87em;
    text-align: center;
}
.tab_case li a {
    display: block;
    width: 100%;
    padding: 20px 0;
    text-decoration: none;
    color: #242730;
}
.tab_case .is_none {
    background: #e1e2e6;
    box-shadow:0 3px #f26a4b inset;
}
.tab-content.is_show {
    display: block;
}

.search_map {
    display: block;
    margin: 0 0 10px;
    background: #fff;
}
.search_map:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
.search_map .map {
    float: left;
    width: 60%;
}
.search_map .map img {
    display: block;
    width: auto;
    height: auto;
}
.search_map .map span {
    display: block;
    margin: 10px 0 0;
    float: right;
}
.icon_map {
    display: block;
    margin: 0px 0 30px;
    text-align: right;
}
.icon_map li img {
    padding-right: 4px;
    padding-top: 2px;
}

.search_map .search_area {
    float: left;
    width: 40%;
    position: relative;
}

.search_map ul.area_wide {
    width: 50%;
    margin: 0;
}
.search_map ul.area_wide li {
    background: url(../images/common/icon_archive.png) no-repeat 95% 50%, #fff;
    box-shadow:0 -1px #e1e2e6 inset, -1px 0 #e1e2e6 inset;
    padding: 0px 0 0px 15px;
    height: 60px;
    line-height: 60px;
}
.search_map ul.area_wide li:last-child {
    box-shadow: -1px 0 #e1e2e6 inset;
}
.search_map ul.area_wide li a {
    display: block;
    width: 100%;
    height: 100%;
    color: #242730;
    text-decoration: none;
}
.search_map ul.area_wide li span.nav {
    display: block;
    width: 100%;
    height: 100%;
    color: #242730;
    text-decoration: none;
    cursor: pointer;
}

.search_map .area_detail {
    position: absolute;
    display: none;
    top:0;
    right: 0;
    width: 50%;
    height: 100%;
    padding: 25px 15px;
    overflow-y: scroll;
    background: #fff;
}

.area_detail .case__sub_title {
    font-size: 0.73em;
    line-height: 1;
    margin: 0 0 5px;
    font-weight: bold;
}

.search_map .area_detail ul {
    margin-left: 0;
}
.search_map ul.area_wide .area_detail ul li {
    background: none;
    box-shadow:0 -1px #e1e2e6 inset;
    padding: 10px 0 10px 5px;
    height: auto;
    line-height: 1.3;
}
.search_map ul.area_wide .area_detail ul li:last-child {
    box-shadow: none;
}
.search_map ul.area_wide .area_detail ul li a {
    display: block;
    width: auto;
    height: auto;
    color: #f26a4b;
    text-decoration: none;
    padding: 0 0 0 15px;
    margin: 0 0 5px;
    background: url(../images/common/icon_archive.png) no-repeat left 6px, #fff
}
.search_map ul.area_wide .area_detail ul li span {
    display: block;
    padding: 0 0 0 15px;
    color: #242730;
    font-size: 0.73em;
}

.list_power:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
.list_power li {
    float: left;
    width: 32%;
    margin: 0 2% 25px 0;
    border-bottom: 1px solid #e1e2e6;
    font-size: 0.87em;
}
.list_power li:nth-child(3n) {
    margin: 0 0% 25px 0;
}
.list_power li .name {
    text-align: left;
    color: #242730;
}
.list_power li .num {
    float: right;
    text-align: right;
    color: #f26a4b;
}
p.search {
    margin: 0 0 10px;
}
.search:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
.search_ttl {
    display: block;
    width: 100%;
    font-weight: bold;
}

.select_search {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100%;
    height: 30px;
    line-height: 30px;
    border: 1px solid #e1e2e6;
    border-radius: 3px;
    padding: 0 5px;
    margin: 0 0 0;
    background: url(../images/common/icon_arrow01.png) no-repeat 95% 50%, #fff;
}

dl.list_case {
    margin: 0 0 20px 0;
}
dl.list_case dt {
    clear: both;
    display: block;
    float: left;
    margin: 0 0px;
    padding: 20px 0;
    width: 80px;
    font-size: 0.73em;
    color: #242730;
    font-weight: bold;
}
dl.list_case dd {
    border-bottom: solid 1px #e1e2e6;
    display: block;
    padding: 20px 0 20px 80px;
    margin: 0;
    font-size: 0.87em;
    color: #242730;
    letter-spacing: -0.03em;
}
dl.list_case dd:last-of-type {
    border-bottom: none;
}
dl.list_case dd a {
    color: #242730;
    text-decoration: none;
    position: relative;
    display: inline;
}

.case_menu {
    background: #fff;    
}
.sideArea .panel-heading {
    background: url(../images/common/icon_arrow01.png) no-repeat center right 16px;
    border-bottom: 1px solid #e1e2e6;
    padding: 20px 0 20px 15px;    
}
.sideArea .panel-heading.current {
    background: url(../images/common/icon_arrow_up.png) no-repeat center right 16px;
}
.sideArea .accordion {
    display: none;
}

.sideArea .case__sub_title {
    padding: 20px 0 0px 30px;
    font-weight: bold;
    margin-right: 12px;
}
.sideArea .case__list li {
    padding: 6px 0 6px 0px;
    margin: 6px 20px 0 14px;
    border-bottom: 1px solid rgb(225, 226, 230);
    overflow: hidden;
}
.sideArea .case__list li a {
    color: rgb(243, 106, 74);
}
.search_map ul.sub_case {
    display: none;
}

.list_power.row li[class^="col-"], .search_map div[class^="col-"] {
    padding: 0;
}
table.tbl_capacity th {
    text-align: center;
    vertical-align: middle;
    color: #242730;
    font-weight: bold;
    font-size: 0.87em;
    background: #e1e2e6;
    border-bottom: 1px solid #edeff3;
    padding: 20px 0%;
}
.box_search li {
    width: 25%;
    float: left;
}
.box_search ul {
    margin-left: 0;
}
.box_search h5 {
    font-weight: bold;
    margin-top: 18px;
}
.box_search li label {
    display: inline-block;
    width: 100%;
    text-align: center;
}
.checkbox04-input {
    display: none;
}
.checkbox01-parts {
    position: relative;
    padding: 15px 20px 15px 20px;
    -moz-transition: .1s;
    -webkit-transition: .1s;
    -o-transition: .1s;
    transition: .1s;
    color: #EA5541;
    border: 1px solid #EA5541;
    display: inline-block;
    line-height: 1;
    width: 100%;
}
.box_search li:not(:last-child):not(:nth-child(4)) .checkbox01-parts {
    border-right: none;
}
.checkbox04-input:checked + .checkbox01-parts {
    background: #EA5541;
    color: #fff;
    border: 1px solid #EA5541;
}
.box_search .chiiki li:last-child .checkbox01-parts {
    border-top: none;
}
.box-search {
    background: #fff;
    padding: 24px 12px;
}
.box-search h4 {
    padding-top: 0;
}
.box-search input[type="text"] {
    float: left;
    border: 1px solid rgb(226, 225, 230);
    border-bottom-left-radius: 4px;
    border-top-left-radius: 4px;
    width: calc(100% - 44px);
}
.box-search input[type="submit"] {
    background: rgb(234, 85, 65);
    color: #fff;
    border: none;
    padding: 2px 8px;
}
.articleInner ul.case_info {
    margin-left: 0;
}
ul.case_info li {
    border-bottom: 1px solid #e1e2e6;
    padding: 5px 0px 5px 40px;
    font-size: 0.81em;
    color: #f26a4b;
    position: relative;
}
ul.case_info li {
    background: url(../images/common/icon_performance01.png) no-repeat center left;
}
ul.case_info li:nth-child(2) {
    background: url(../images/common/icon_performance02.png) no-repeat center left;
}
ul.case_info li:nth-child(3) {
    background: url(../images/common/icon_performance03.png) no-repeat center left;
}
.case_list {
    margin-top: 46px;
}
.case_list .row {
    margin-top: 32px;
}
.list_block li[class^="col-"] {
    padding: 8px 0 12px 0;
    border-bottom: 1px solid #e1e2e6;
    font-size: 0.81em;
    color: #f26a4b;
}
.case_date {
    font-size: 0.87em;
    font-weight: bold;
    padding-top: 8px;
}
.gmap {
    width: 100%;
    height: 400px;
}
.tab-content {
    overflow: hidden; 
}
.tab-content img {
    width: 100%;
    -webkit-animation-name: opacity;
    animation-name: opacity;
    -webkit-animation-duration: .3s;
    animation-duration: .3s;
    object-fit: cover;
    height: 100%;
}
@-webkit-keyframes opacity {
    0% {
        opacity: 0;
        -webkit-transform: scale(3);
        transform: scale(3); }
    100% {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1); } }

@keyframes opacity {
    0% {
        opacity: 0;
        -webkit-transform: scale(3);
        transform: scale(3); }
    100% {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1); } 
}
.preview-thumbnail.nav-tabs {
    border: none;
    margin-left: 0;
}
.preview-thumbnail.nav-tabs li {
    width: 25%;
}
.preview-thumbnail.nav-tabs li a {
    padding: 0;
    margin: 0;
    height: 160px;
    overflow: hidden;
}
.preview-thumbnail.nav-tabs li img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}
.txt_type span {
    background: rgb(255, 255, 255);
    color: rgb(242, 106, 75);
    padding: 8px 24px;
}
.articleInner .public_info ul {
    margin: 0;
}
.public_info ul li {
    padding: 16px 0;
    border-bottom: 1px solid #e1e2e6;
}
.public_info ul li:last-child {
    border-bottom: none;
}
.public_info ul li a {
    color: #3c3f48;
}
.public_info li span.date_time {
    font-size: 0.73em;
    font-weight: bold;
    padding-right: 12px;
}
.box_result {
    background: #fff;
}
.box_result .label {
    padding-top: 24px;
    font-size: 1.2em;
}
.business_wrap_out > .vc_column-inner > .wpb_wrapper {
    background: #fff;
}
.business_wrap_out .business_heading {
    border-bottom: 1px solid #ccc;
}
.business_border {
    margin-left: 0 !important;
    margin-right: 0 !important;
    border-top: 1px solid #ccc;
}
.business_border .vc_column-inner {
    padding-left: 0 !important;
    padding-right: 0 !important;    
}
.business_border h5 {
    border-bottom: 1px solid #ccc;
    padding-left: 12px;
}
.business_border p, .business_wrap_out .business_content {
    padding-left: 12px;
    padding-right: 12px;
}
.business_border > .vc_col-sm-6:nth-of-type(1) {
    border-right: 1px solid #ccc;
}
.business_heading h4 {
    padding: 12px 10px 12px !important;
}

/* 20200222 追記 */
#post-404 {
    text-align: center;
    padding: 80px 0;
}
.returnTop {
    margin-top: 30px;
}
.returnTop a {
    padding: 8px;
    display: inline-block;
    background-color: #2f457c;
    color: #fff;
}
@media screen and (max-width: 768px) {
    #post-404 {
        text-align: left;
        margin: 0 5%;
        padding: 40px 0;
    }
    #post-404 > p {
        font-size: 0.7rem;
        text-align: left;
    }
    .returnTop {
        margin-top: 20px;
    }
}
@media screen and (max-width: 768px) {
    .pc { display: none !important;}
    .sp { display: block !important;}
    .articleInner { width: 90%; max-width: 90%; margin: 0 5%;}

    /*========================================================================
      header
    ========================================================================*/
    header {
        background: #fff;
        width: 100%;
        position: fixed;
        top: 0;
        left: 0;
        height: 61px;
        z-index: 999;
    }
    .bnr_contact {
        position: fixed;
        top: inherit;
        bottom: 0;
        width: 100%;
        height: 45px;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: lr-tb;
        writing-mode: horizontal-tb;
    }
    .bnr_contact a {
        line-height: 45px;
    }
    header .header_cell {
        display: block;
        width: 100%;
        max-width: 100%;
        height: 61px;
        margin: 0 auto;
    }
    header .header_cell .logo {
        position: absolute;;
        padding: 0px;
        top: 18px;
        left: 18px;
        width: 120px;
    }

    #panel-btn{
        display: inline-block;
        position: relative;
        width: 50px;
        height: 50px;
        margin: 6px 140px 10px 0;
        float: right;
    }
    #panel-btn-icon{
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        width: 20px;
        height: 2px;
        margin: -1px 0 0 -7px;
        background: #f26a4b;
        -moz-transition: .3s;
        -webkit-transition: .3s;
        -o-transition: .3s;
        transition: .3s;
    }
    #panel-btn-icon:before,
    #panel-btn-icon:after{
        display: block;
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
        width: 20px;
        height: 2px;
        background: #f26a4b;
        -moz-transition: .3s;
        -webkit-transition: .3s;
        -o-transition: .3s;
        transition: .3s;
    }
    #panel-btn-icon:before{ margin-top: -6px;}
    #panel-btn-icon:after{ margin-top: 4px;}
    #panel-btn .close{ background: transparent;}
    #panel-btn .close:before,
    #panel-btn .close:after{ margin-top: 0;}
    #panel-btn .close:before{
        transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
    }
    #panel-btn .close:after{
        transform: rotate(-135deg);
        -webkit-transform: rotate(-135deg);
    }

    header .header_cell .gnavi {
        display: none;
        width: 100%;
        height: calc(100vh - 66px);
        background: rgba(36,38,49,0.75);
        position: absolute;
        top: 61px;
        left: 0;
        z-index: 1000;
        padding: 20px 0 20px;
        overflow-y: scroll;
    }
    header .header_cell .gnavi ul {
        float: none;
        width: 100%;
        max-width: 100%;
        height: auto;
        margin: 0 auto;
        text-align: center;
        font-size: 0;
        background: none;
    }
    header .header_cell .gnavi > ul > li {
        display: block;
        line-height: 1;
        width: 100%;
        margin: 0px 0px;
        padding: 12px 0px;
    }
    header .header_cell .gnavi > ul > li > a {
        color: #fff;
        text-decoration: none;
        font-weight: bold;
        letter-spacing: -0.01em;
        font-size: 1.00em;
        text-align: center;
        padding: 0;
    }
    header .header_cell .gnavi > ul > li > a:hover {
        background-color: transparent;
    }
    header .header_cell .gnavi > ul > li > a:hover:after {
        content: none;
    }
    header .header_cell .header_minimenu {
        position: static;
        text-align: center;
        margin: 0 0 0;
        display: block;
    }
    header .header_cell .header_minimenu ul + ul {
        display: flex;
        width: 20%;
    }
    header .header_cell .header_minimenu ul li {
        display: block;
        line-height: 1;
        width: 100%;
        margin: 0px 0px;
        padding: 12px 0px;
    }
    header .header_cell .header_minimenu ul li a {
        color: #fff;
        text-decoration: none;
        font-weight: bold;
        letter-spacing: -0.01em;
        font-size: 1.00em;
        text-align: center;
    }
    header + main {
        margin-top: 66px;
    }

	/*========================================================================
      footer
    ========================================================================*/
    footer { width: 100%; background: #fff; padding: 30px 5% 50px;}
    footer .footer_cell { width: 100%; max-width: 100%; border-bottom: 1px solid #e0e3e6; padding: 0 0 20px; margin: 0 auto; margin-bottom: 30px;}
    footer .footer_cell .footer_company { display: block; float: none; width: 100%; max-width: 100%; text-align: left; padding: 0 0 20px 0%;}
    footer .footer_cell .footer_company:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
    footer .footer_cell .footer_company .f_logo { display: block; width: 234px; max-width: 234px; margin: 0 auto; margin-bottom: 15px; text-align: center;}
    footer .footer_cell .footer_company p {
        line-height: 2.1; 
        margin-bottom: 15px;
    }
	footer .footer_company .f_logo {
    width: 234px;
	max-width: 234px;
	}
    footer .footer_cell .footer_company .tel { 
        padding: 0 30px 0 35px; 
        min-height: 21px; 
        margin: 0 0 10px;
    }
    footer .footer_cell .footer_company .fax { 

    }
    footer .footer_cell .footer_company .fb { float: right;}
    footer .footer_cell .footer_link { display: block; float: none; width: 100%; max-width: 100%; border-top: 1px solid #e0e3e6;}
    footer .footer_cell .footer_link ul { width: 100%; margin: 80px 0 0%;}
    footer .footer_cell .footer_link ul li a { color: #242730; text-decoration: none;}
    footer ul.f_list { text-align: center; width: 100%;}
    footer ul.f_list li { 
        margin: 0 15px 10px;
    }  
	
	.mod_headerbox_size {
	top: 8%;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width:176px
	}
	
	.cpbanner {
 position:fixed;
right: 10px;
bottom: 90px;
text-align: right;
}
.cpbanner img {
 width:60%;
}

    /*========================================================================
      index
    ========================================================================*/    
    .index {
        overflow: hidden;
        position: relative;

    }
    .index::before {
        content: ' ';
        position: fixed;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: white;
        background: url(../images/index/mv_sp_2.jpg) no-repeat center center;
        background-size: cover;
        will-change: transform;
        z-index: -1;
    }
    .index h2 {
        font-size: 2.0em;
    }

    #mv { display: block; position: relative; height: 600px;}    

    #content01 { width: 100%; background: url(../images/index/bg_contents01_sp.jpg) no-repeat center center; background-size: cover; padding: 40px 0;}
    #content01 .cell { display: block; width: 76%; max-width: 560px; margin: 0 auto; padding: 45px 0; background: #fff; text-align: center;}
    #content01 .cell p { 
        margin: 0 0 30px; 
        line-height: 2.0;
    }

    #content02 { display: block; padding: 55px 0 30px;}
    #content02 .articleInner { width: 100%; max-width: 100%; margin: 0;}
    #content02 ul.tabs { width: 100%; background: #f5f6f9; font-size: 0; text-align: center; margin: 50px 0 0;}
    #content02 ul.tabs li { display: inline-block; width: 25%; margin: 0; padding: 12px 0; font-size: 3.0vw;}
    #content02 ul.content { width: 90%; max-width: 90%; margin: 0 5%;}
    #content02 dl.list_news dd { display: block; width: 100%; padding: 15px 0; border-bottom: 1px solid #e1e2e6; font-size: 3.0vw;}
    #content02 dl.list_news dd .date { color: #f26a4b; width: auto; font-size: 2.9vw; margin: 0 10px 0 0; display: inline-block;}
    #content02 dl.list_news dd .cate { color: #2f457c; width: auto; font-size: 2.9vw; text-align: center; border: 1px solid #e1e2e6; padding: 1px 0px; margin: 0 10px 0 0; display: inline-block;}
    #content02 dl.list_news dd a { display: block; color: #242730; text-decoration: none; font-size: 3.0vw;}

    #content03 { display: block; padding: 60px 0 50px; background: rgba(36,39,48,0.6); color: #fff;}
    #content03 p { 
        margin: 0 0 20px; 
        letter-spacing: -0.02em;
        font-size: 1.1em;
    }
    #content03 p.lead { 
        letter-spacing: 0.08em;
        font-size: 1.2em;
    }
    #content03 ul { width: 100%; font-size: 0; margin: 30px 0;}
    #content03 ul li { display: inline-block; width: 50%; margin: 0 0 20px; padding: 0 4% 0 0; background: url(../images/index/bg_slash.png) no-repeat right center; background-size: auto 100%; line-height: 1.3;}
    #content03 ul li:last-child { background: none;}
    #content03 ul li:nth-child(2n) { background: none;}
    #content03 ul li .num { 
        font-size: 2.62em; 
    }


    #content04 { display: block; width: 100%;}
    #content04:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
    #content04 li { 
        width: 100%; 
        float: none;
        background-size: auto 100%;
    }
    #content04 li a { display: block; width: 100%; height: 100%; text-decoration: none; padding: 20px 5% 20px 36%;}
    #content04 li a .cell { display: block; margin: 0px 0% 0px; padding: 20px 0px 60px; background: #fff; position: relative;}
    #content04 li a .cell::after { content: ''; position: absolute; width: 32px; height: 32px; background: url(../images/index/icon_arrow.png) no-repeat; background-size: 32px 32px; bottom: 32px; left: 0px; right: 0px; margin: auto auto 0 auto;}
    #content04 li:hover a .cell::after { content: ''; position: absolute; width: 32px; height: 32px; background: url(../images/index/icon_arrow_hover.png) no-repeat; background-size: 32px 32px; bottom: 32px; left: 0px; right: 0px; margin: auto auto 0 auto;}

    #content04 li a .cell h2 { font-size: 5.0vw; color: #f26a4b; letter-spacing: -0.1em; line-height: 1.3;}
    #content04 li a .cell h2 span.eng { display: block; font-size: 2.8vw; color: #242730; letter-spacing: 0.05em; margin: 0 0 10px;}
    #content04 li a .cell h2 span.business { display: block; font-size: 4.6vw; color: #f26a4b; letter-spacing: 0.05em;}
    #content04 li a .cell p { display: none;}

    #content05 { display: block; padding: 60px 0 50px; background: rgba(36,39,48,0.6); color: #fff;}
    #content05 p {
        margin: 0 0 20px;
    }

    #content06 { display: block; width: 100%;}
    #content06:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
    #content06 li { width: 50%; float: left;}
    #content06 li::after { content: ''; position: absolute; width: 32px; height: 32px; background: url(../images/index/icon_arrow.png) no-repeat; background-size: 32px 32px; bottom: 32px; left: 0px; right: 0px; margin: auto auto 0 auto;}
    #content06 li a p { font-size: 4.8vw; color: #fff; line-height: 1.6; text-align: center; background: none; padding: 35px 0;}
    #content06 li a p span.eng { display: block; font-size: 2.8vw; color: #fff; letter-spacing: 0.05em; margin: 0 0 10px;}

    #content07 { display: block; width: 100%; background: url(../images/index/bg_contents07_sp.jpg) no-repeat center center; background-size: cover; padding: 20px 5%;}
    #content07:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
    #content07 .left { display: block; width: 100%; float: none; background: rgba(36,39,48,0.75); color: #fff; padding: 50px 0% 40px; text-align: center;}
    #content07 .left a { color: #fff; margin: 0 auto;}
    #content07 .left h2 { text-align: center;}
    #content07 .left p { margin: 0 0 30px; font-size: 3.2vw; letter-spacing: 0.02em;}
    #content07 .right { display: block; width: 100%; float: none; background: #ffffff; padding: 25px 7% 75px;}
    #content07 .right h3 { text-align: center; font-size: 4.5vw; font-weight: 500; margin: 0 0 10px;}
    #content07 .right .time { border: 1px solid #e1e2e6; padding: 5px 0; width: 100%; font-size: 3.0vw; text-align: center; margin: 0 0 15px;} 
    #content07 .right ul { display: block; width: 100%; margin-bottom: 25px;}
    #content07 .right ul li { display: block; float: left; width: 50%; padding: 10px 0 10px 4%; text-align: left;}
    #content07 .right ul li:first-child { box-shadow:-1px 0 #e1e2e6 inset; font-size: 2.5vw; line-height: 1;}
    #content07 .right ul li:first-child span { font-size: 7.8vw; color: #f26a4b; font-weight: bold;} 
    #content07 .right ul li:last-child { font-size: 2.95vw; line-height: 1.3;}
    #content07 .right ul li:last-child span { font-size: 4.0vw; color: #f26a4b; font-weight: 500;} 


    #content08 { display: block; width: 100%; background: #fff; padding: 0px 0 0px;}
    #content08:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
    #content08 .left { display: block; width: 100%; float: none; background: #fff; padding: 60px 0% 40px; text-align: center;}
    #content08 .left p { margin: 0 0 30px; font-size: 3.0vw; line-height: 2.0;}

    #content08 .right {
        display: block;
        width: 100%;
        float: none;
        background: #fff;
        padding: 0px 0px 20px;
        text-align: left;
    }
    #content08 .right ul {
        width: 90%;
        margin: 0 5%;
    }
    #content08 .right ul li {
        float: none;
        width: 100%;
        margin: 0 0% 8px 0;
    }
    #content08 .right ul li:nth-child(3n) {
        margin: 0 0% 8px 0;
    }
    #content08 .right ul li:nth-child(3) {
        background: #fff;
        display: table;
    }
    #content08 .right ul li:hover {
        background: #fff;
    }
    #content08 .right ul li a {
        display: block;
        width: 100%;
        height: 100%;
        padding: 30px 30px;
    }
    #content08 .right ul li:nth-child(3) a {
        display: table-cell;
        vertical-align: middle;
    }

    #content09 { display: block; width: 100%; background: #edeff3; padding: 60px 0 0px;}
    #content09:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
    #content09 .articleInner { width: 100%; max-width: 100%; margin: 0;}
    #content09 .lead { 
        line-height: 2.1; 
        margin: 0 0 20px;
    }
    #content09 ul { display: block; width: 100%; font-size: 0; margin: 40px 0 50px;}
    #content09 ul li { 
        display: block; 
        width: 100%;
    }
    #content09 ul li .img { position: relative; margin: 0 0 0px;}

    #content09 ul li .img span { position: absolute; top: 0; right: 0; width: 32%; height: 28px; line-height: 28px; padding: 0px 0; text-align: center; color: #fff; background: rgba(242,106,75,0.75); font-size: 2.8vw;}
    #content09 ul li .img img {
        max-height: none;
    }
    #content09 ul li .txtArea { margin: 30px 2% 24px;}
    #content09 ul li .txtArea .ttl {
        margin: 0 0 10px;
    }
    #content09 ul li .txtArea .txt {
        margin: 0 0 10px;
    }
    #content09 ul li .txtArea .date { 
        line-height: 1; 
    }

    #content09 .slick-prev, #content03 .slick-next { z-index: 200;}
    #content09 .slick-prev { left: 0px; width: 40px; height: 40px; background: url(../images/index/btn_prev.png) no-repeat !important; background-size: 40px 40px !important;}
    #content09 .slick-next { right: 0px; width: 40px; height: 40px; background: url(../images/index/btn_next.png) no-repeat !important; background-size: 40px 40px !important;}
    #content09 .slick-prev::before { content: "";}
    #content09 .slick-next::before { content: "";}
    #content09 .slick-prev:hover, #content03 .slick-next:hover { opacity: 1;} 


    #content10 { display: block; width: 100%; padding: 0 5%; background: url(../images/index/bg_img.png) repeat-x top center, #f26a4b; text-align: center; color: #fff; margin: 0;}
    #content10 .cell { 
        width: 100%; 
        background: url(../images/index/top_recruit_img_sp.jpg) no-repeat top center !important; 
        background-size: 100% auto !important; 
        padding: 0px 0 40px;
    }
    #content10 img {
        margin-bottom: 24px;
    }
    #content10 p { 
        margin: 0 0 12px;
        font-size: 0.87em;
    }
    #content10 p.lead { display: none;}
    #content10 a { color: #fff;}


    /*========================================================================
      kasou 共通
    ========================================================================*/

    .kasou .h1_ttl { 
        padding: 70px 0 30px;
    }
    .kasou .h1_ttl h1 { width: 90%; max-width: 90%; margin: 0 auto; color: #fff; border-left: 2px solid #fff; padding: 0 0 0 20px; font-weight: 500; font-size: 5.0vw;}
    .kasou .h1_ttl h1 span { display: block; font-size: 3.0vw;}
    /* ページ別h1 */
    .kasou.contact .h1_ttl {padding: 70px 0 30px;}
    .kasou.news .h1_ttl {padding: 70px 0 30px;}

    .kasou h2 { 
        margin: 0 0 20px;
        font-size: 1.37em;
    }
    .kasou h3 {
        padding: 10px 15px;
    }
    .kasou p.lead { 
        margin: 0 0 35px; 
        line-height: 2.0; 
        font-size: 0.87em;
    }
    .kasou .cell { margin: 0 0 25px;}
    .kasou .text { margin: 0 0 15px;}

    .list_disc li {}

    .leftArea {
        float: none;
        width: 100%;
        margin: 0 0 30px;
    }

    .rightArea {
        float: none;
        width: 100%;
        margin: 0 0 30px;
    }

    .toback { width: 100%; padding: 70px 0 85px; background: #f26a4b;}
    .toback ul li { display: inline-block; margin: 0 10px;}
    .toback ul li a { display: block; width: 145px; padding: 10px 0 10px; color: #fff; border-bottom: 1px solid #fff; font-weight: bold; position: relative; font-size: 0.81em; text-decoration: none; margin: 0 auto; text-align: center;}
    .toback ul li a::after { content: ''; position: absolute; width: 8px; height: 10px; background: url(../images/common/icon_link02.png) no-repeat; background-size: 8px 10px; top: 0; bottom: 0; left: 0px; right: 10px; margin: auto 0 auto auto;}

    .mainArea { float: none; width: 100%;}

    /*========================================================================
      kasou sitemap
    ========================================================================*/
    .sitemap_cell { margin: 0 0 15px; padding: 0 0 10px; border-bottom: 1px solid #e1e2e6;}
    .sitemap_cell:last-of-type { border-bottom: none;}
    .sitemap_cell:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
    .sitemap_cell .ttl { font-size: 3.2vw; color: #f26a4b; font-weight: bold; text-decoration: none;}
    .sitemap_cell .ttl a { font-size: 3.2vw; color: #f26a4b; font-weight: bold; text-decoration: none;}
    .sitemap_cell .s_cell { display: block; float: left; width: 100%;}
    .sitemap_cell .sitemap_link { width: 100%; margin: 0 0 10px;}
    .sitemap_cell .sitemap_link li { background: url(../images/common/icon_link01.png) no-repeat 4px 8px; padding: 0 0 0 20px;}
    .sitemap_cell .sitemap_link li a { color: #242730; text-decoration: none; font-size: 3.0vw; font-weight: bold;}
    .sitemap_cell .sitemap_link ul { margin: 0 0 0 0px;}
    .sitemap_cell .sitemap_link ul li { background: url(../images/common/icon_bar.png) no-repeat 0px 12px; padding: 0 0 0 13px;}
    .sitemap_cell .sitemap_link ul li a { color: #242730; text-decoration: none; font-size: 3.0vw; font-weight: normal;}


    /*========================================================================
      kasou news
    ========================================================================*/

    dl.list_news dt { clear: both; display: block; float: none; margin: 0 0px; padding: 20px 0 0; width: 100%; font-size: 2.9vw; color: #f26a4b; font-weight: bold;}
    dl.list_news dt .cate { font-size: 2.9vw; color: #2f457c; margin: 0 0 0 10px; padding: 1px 0px; width: 35%; border: 1px solid #e1e2e6; text-align: center; font-weight: bold; letter-spacing: -0.03em;}
    dl.list_news dd { padding: 10px 0 20px 0%; margin: 0; font-size: 3.0vw;}

    .news_date { display: block; text-align: right; margin: 0px 0 20px 0; padding: 0px 0 0 0;}
    .news_date .date { font-size: 0.73em; margin: 0 10px 0 0;}
    .news_date .cate { font-size: 0.73em; margin: 0 10px 0 0; width: 30%; max-width: 200px;}
    .news .img_L { float: none; width: 100%; margin: 0 0% 20px 0;}
    .news .img_R { float: none; width: 100%; margin: 0 0% 20px 0;}
    .news .img_L_s { float: none; width: 100%; margin: 0 0% 20px 0;}
    .news .img_R_s { float: none; width: 100%; margin: 0 0% 20px 0;}
    .news .img_L img, .news .img_R img, .news .img_L_s img, .news .img_R_s img { width: auto; max-width: 100%; display: block; margin: 0 auto;}
    .news .cell .text p { overflow: hidden;}


    /*========================================================================
      kasou contact
    ========================================================================*/
    p.con_attention { font-size: 2.9vw;}
    p.con_attention span { font-size: 2.9vw;}

    .concact_cell ul { display: block; width: 100%;}
    .concact_cell ul li { display: block; width: 100%; margin: 0 0 30px;}
    .concact_cell ul li:last-child { margin: 0 0 0px;}
    .concact_cell ul li .txt { font-size: 3.0vw; margin: 0 0 0;}
    .concact_cell ul li .tel { display: inline-block; background: url(../images/common/icon_tel.png) no-repeat left center; padding: 0 0 0 35px;  font-family: 'Open Sans', sans-serif; font-size: 4.8vw; margin: 0 0 0;}
    .concact_cell ul li .mail { display: inline-block; background: url(../images/common/icon_mail.png) no-repeat left center; padding: 0 0 0 35px;  font-family: 'Open Sans', sans-serif; font-size: 4.8vw; margin: 0 0 0;}


    .dl_contact { width: 100%; display: block; margin: 0 0 0px; padding: 0 0 0px;}
    .dl_contact:last-of-type { margin: 0 0 50px;}
    .dl_contact dt { display: block; border-bottom: 1px solid #edeff3; width: 100%; padding: 10px 0% 10px 3%; font-size: 3.0vw; color: #242730; font-weight: bold; text-align: left; background: #e1e2e6;}
    .dl_contact dd { display: block; width: 100%; padding: 10px 2% 10px 2%; font-size: 3.0vw;}
    .dl_contact dd span.txt01 { display: inline-block; font-size: 2.9vw; color: #242730; margin: 0 0 0 2%;}
    .dl_contact dd span.txt02 { display: inline-block; font-size: 2.9vw; color: #242730; margin: 0 2% 0 0; width: 3%;}
    .dl_contact dd span.txt03 { display: block; font-size: 2.9vw; color: #242730; margin: 0 0 20px 0%;}
    .dl_contact dd span.txt03:last-of-type { margin: 0 0 0px 0%;}
    .dl_contact dd p { font-size: 2.9vw; line-height: 1.3;}
    .dl_contact dd .address { margin: 0 0 10px;}

    form .dl_contact input[type="text"] { width: 96%; padding: 10px 2%;}
    form .dl_contact input[type="email"] { width: 96%; padding: 10px 2%;}
    form .dl_contact input[type="text"].txt_add:nth-of-type(1) {
        width: 14%;
    }
    form .dl_contact input[type="text"].txt_add { width: 26%; padding: 10px 2%;}
    form .dl_contact textarea { width: 96%; padding: 10px 2%;}
    form .dl_contact .btn_add { display: inline-block; width: 34%; padding: 5px 0%; margin: 0 0 0 2%; background: #f26a4b; color: #fff; border: none; border-radius: 3px; text-align: center; font-size: 2.9vw; vertical-align: top;}
    form .dl_contact .btn_add a { font-size: 2.9vw;}

    /*========================================================================
      kasou company
    ========================================================================*/
    .box_wrap .box_content {
        background: rgba(0, 0, 0, 0.5490196078431373);
    }
    .company_index.index_cell01 {
        margin-top: 80px;
    }
    .company_index.index_cell02 {
        margin-bottom: 30px;
    }
    .company_index .bnr {
        float: none;
        width: 100%;
    }
    .company_index .index_01 a,
    .company_index .index_06 a {
        padding-top: 200px;
    }
    .company_index p {
        margin: 0;
    }
    .company_index .index_01 p {
        margin: 0px 5% 0 35%;
        padding: 35px 5%;
    }
    .company_index .index_02 p,
    .company_index .index_03 p,
    .company_index .index_04 p,
    .company_index .index_05 p {
        padding: 50px 10% 50px 40%;
    }
    .company_index .index_06 p {
        margin: 0px 5% 0 35%;
        padding: 35px 5%;
    }

    .company_menu {
        margin: 0 0 50px;
        border-bottom: 1px solid #e1e2e6;
    }
    .company_menu li {
        border-bottom: none;
        background:none;
    }
    .messageArea .message02 .ttl {
        margin-bottom: 12px;
    }
    .company_menu li a {
        padding: 12px 0 16px 0;
    }
    .company_menu.csr_menu li {
        width: 50%;
    }
    .page_menu_child li a {
        padding-bottom: 12px;
    }
    .company_footer {
        width: 94%;
        margin: 0 auto;
        padding: 30px 0;
    }
    .company_footer ul {
        width: 100%;
    }
    .company_footer ul li {
        float: none;
        width: 100%;
        margin: 0 0% 20px 0;
    }
    .company_footer ul li:nth-child(3n) {
        margin: 0 0% 20px 0;
    }
    dl.company_history {
        padding: 20px 0 0;
    }
    dl.company_history dt {
        float: none;
        margin: 0px 0 20px;
        padding: 0px 0 0px;
        width: 100%;
        font-size: 2.44em;
    }
    dl.company_history dd {
        border-bottom: solid 1px #e1e2e6;
        padding: 0px 0 0px 0px;
        margin: 0px 0 20px;
    }
    dl.company_history dd img {
        float: none;
        margin: 0 auto;
        margin-bottom: 20px;
        width: auto;
        max-width: 100%;
        display: block;
    }
    dl.company_history dd p {
        border-left: none;
        padding: 0 0 30px 0px;
    }
    table.tbl_info td .iso {
        width: 100%;
        display: block;
    }
    table.tbl_info td .iso .img {
        display: block;
        margin: 0 auto;
    }
    table.tbl_info td .iso .img img {
        width: 100%;
        margin-top: 10px;
    }
    table.tbl_info td .iso p {
        display: table-cell;
        vertical-align: middle;
        font-size: 0.87em;
    }
    table.tbl_capacity .th01 {
        width: 20%;
    }
    table.tbl_capacity .th03 {
        width: 20%;
    }
    table.tbl_capacity .th04 {
    }
    table.tbl_capacity .td01 {
        width: 20%;
    }
    table.tbl_capacity .td03 {
        width: 20%;
    }
    .access_menu li {
        border-right: none;
    }
    .access_menu li:first-child {
        border-left: none;
    }
    .access_map {
        height: 250px;
    }
    .kasou.company_message {
        padding: 0 0 50px;
    }
    .messageArea {
        display: block;
        margin: 40px 0 0;
    }
    .messageArea.none {
        border-bottom: none;
    }
    .messageArea .message01 {
        display: block;
        font-size: 1.31em;
        width: 100%;
        margin: 30px 0;
    }
    .messageArea .message03 {
        display: block;
        width: 100%;
        margin: 20px 0;
    }
    .messageArea .message03 p {
        margin: 10px 0 0;
    }
    .company_management li {
        float: none;
        width: 100%;
        margin: 0 0% 25px 0;
        background: #fff;
        padding-bottom: 30px;
    }
    .company_management li:nth-child(4n) {
        margin: 0 0% 25px 0;
    }
    .company_management li:nth-child(2n) {
        margin: 0 0% 25px 0;
    }
    .company_management li p {
        margin: 20px 10% 0;
    }

    .alignright, img.alignright, .alignleft, img.alignleft {
        width: 100%;
        margin-left: 0;
        margin-right: 0;    
    }

    .list_solar li {
        float: none;
        width: 100%;
        margin: 0 0 40px;
    }

    /*--------------------------------------
                事業内容
    ----------------------------------------*/
    .business_flow {
        background: none;
        padding: 0 0 30px;
    }
    .business_flow .business_step {
        position: relative;
        width: 100%;
        padding: 30px 0px 30px;
    }
    .business_flow .business_step .step {
        position: absolute;
        top: -10px;
        left: 0;
        right: 0;
        margin: 0 auto auto auto;
    }
    .business_flow .flow_detail .ttl {
        width: 100%;
        padding: 175px 8% 25px;
        margin: 0 0 20px;
        font-size: 1.31em;
        line-height: 42px;
        color: #fff;
        font-family: "ヒラギノ明朝 Pro W3", Hiragino Mincho Pro,"ＭＳ Ｐ明朝", MS PMincho, serif;
        letter-spacing: 0.2em;
    }
    .business_smart_item > li {
        width: 100%;
    }
    .dev_list li {
        background: none;
    }

    .box_2, .box_3, .box_4 {
        margin-top: 12px;
    }
    .box_1 {
        height: 320px;
        overflow: hidden;
    }
    .box_1 img {
        height: 100%;
        width: auto;
        object-fit: cover;
    }
    .b01_content .v-box1_inner {
        padding: 40px 20px;
        font-size: 1.12em;
    }
    .box_2 img {
        margin: auto;
    }
    .v_box_content {
        padding-top: 22px;
    }
    .box_3 .v_box_content {
        padding-left: 24px;
        padding-right: 24px;
    }

    .v_box4_content {
        position: static;
    }
    .tabs-menu {
        width: calc(100% - 28px);
    }
    .tabs-menu li {
        width: 100%;
        display: block;
    }
    #tabs-container .tabs-menu li {
        padding: 6px 0;
    }
    .dl_attention dt {
        display: block;
        width: 100%;
        padding: 30px 0px 30px 0px;
    }
    .list_business.list_business_03 li {
        width: 100%;
    }
    .vision01 {
        padding: 0px 0 0px;
        margin: 0 0 70px;
    }

    .vision01 .main_ttl {
        width: 80vw;
        height: 148px;
        top: auto;
        bottom: -50px;
        font-size: 0.87em;
    }
    .index .text-fixed h3 {
        font-size: 2.6em;
    }
    .br {
        display: block;
    }
    #news_list li > div, #news_list li div + div {
        width: 100%;
    }
    #content06 .box_top_content, #content06 .box_top_inner {
        padding: 0;
    }    
    .preview-thumbnail.nav-tabs li {
        width: 50%;
    }    
    .list_power li {
        float: none;
        width: 100%;
        margin: 0 0% 15px 0;
    }
    .condition_cell {
        float: none;
        width: 100%;
        padding: 20px 40px;
        margin: 0 0 20px;
        overflow: hidden;
    }
    .freeword_cell {
        float: none;
        width: 100%;
        padding: 20px 40px;
    }
    .condition_cell ul li {
        float: none;
        width: 100%;
        margin: 0 0% 20px 0;
    }
    .condition_cell ul li:last-child {
        margin: 0 0% 0 0;
    }
    .search_map .search_area {
        display: none;
    }
    .search_map .map {
        width: 100%;
        height: 420px;
    }
    .menu_second {
        flex-direction: column;
    }
    .preview-thumbnail.nav-tabs li a {
        height: 120px;
    }
}

    /*--------------------------------------
                ヘッダー追記
    ----------------------------------------*/
.spmailicon {
	position:absolute;
	top:0;
	right:0px;
	width:90px;
	text-align:center;
	background:#7e9fbb
}
.spdlcon {
	position:absolute;
	top:0;
	right:90px;
	width:90px;
	text-align:center;
	background:#e23c30
}
.spmailicon a , .spdlcon a {
	background:none !important;
}
.spmailicon img , .spdlcon img {
	width:61px;
}

@media screen and (max-width: 768px) {
	.spmailicon {
	width:70px;
}
.spdlcon {
	right:70px;
	width:70px;
}
.logopc { display: block !important;}
.logosp { display: none !important;}
}
@media screen and (max-width: 767px) {
.logopc { display: none !important;}
.logosp { display: block !important;}
}
@media screen and (max-width: 640px) {
.logopc { display: none !important;}
.logosp { display: block !important;}
}



