	/* -tc_header
----------------------------------------------------------- */
@font-face {
    font-family: "Yu Gothic";
    src: local("Yu Gothic Medium");
    font-weight: 500;
}

.tc_header input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px #d6d6d6 inset;
}


.tc_header .cls-1{
	stroke-width:1px;
}

    .tc_header{
		position:relative;
        top:0;
        left:0;
        width:768px;
        height:93px;
        z-index:1000;
        background:none;
        font-family: "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, "ＭＳ Ｐゴシック" ;
        font-weight: 500;
        display:block;
        margin: 0;
        padding: 0;
		box-sizing: border-box;
		z-index:100;
    }
  

    .tc_header-mask{
        position: relative;
        width: 100%;
        height:100%;
        opacity:0.95;transition:.4s linear;
        background:#ffffff;
	}
	

    .tc_header a{
        text-decoration:none; 
    }
    
    .tc_header .tc_toggle{
        display:none;
    }
    
    
    .tc_header__wrapper{
        width:100%;
        display:flex;
        flex-wrap:nowrap;
    }
    
    .tc_header .tc_header__logo{
        position:absolute;
        top:10px;
        left:0px;
        width:160px;
        height:36px; 
        
    }
    
    .tc_header .tc_header__logo img{
        height:36px;
        width:160px;
    }
    
  
    
    .tc_header .tc_global_nav-sp{
        display:none;
    }
    
    .tc_header .tc_header__mainnav{
        position:absolute;
        width:100%;
        bottom:0px;
        right:0px;
        margin-bottom:0;
        padding-bottom:0px;
        color:#ffffff;
    }
    
    .tc_header .tc_header__mainnav li.tc_mainnav-li{
        position:relative;
        margin-right:23px;
        height:35px;
        color:#000000;

    }

    .tc_header .tc_header__mainnav li.tc_mainnav-li.end{
        margin-right: 0px;
    }
    
    .tc_mainnav-li.bold{
        font-weight:bold;
    }
    
    .tc_header .tc_header__mainnav li.tc_mainnav-li a{
        position:relative;
        color:#000000;
    }
    
    .tc_header .tc_header__mainnav li.tc_mainnav-li a.blank-icon:after{
        position:absolute;
        content:"";
        background-image: url("/cmn/img/top/icon_blank_gray.svg");
        width:10px;
        height:10px;
        top:3px;;
        margin-left:7px;
    }
    
    
    .tc_header .tc_header__mainnav li.tc_mainnav-li:hover{
        height:31px !important;
    }
    
    
    .tc_header .tc_header__mainnav li.tc_mainnav-li:after{
        background-color: #861c3c;
        top: 32px;
        content: '';
        height: 4px;
        left: 0%;
        position: absolute;
        -webkit-transition: all .2s ease;
        transition: all .2s ease;
        width: 0;
    }
    
    .tc_header .tc_header__mainnav li.tc_mainnav-li:hover::after{
        width: 100%;
    }
    
    .tc_menu-single{
        position:relative;
        cursor: pointer;
    }
    
    .tc_menu-single .tc_nav-icon__arrow{
        position:absolute;
        left:30px;
        top:23px;
        width:8px;
        height:4px;
        fill:none;
        stroke:#ffffff;
    }
    
    .tc_menu-single.tc_menu-single__library .tc_nav-icon__arrow{
        left:35px;
    }
    
    .tc_nav-icon__blank{
        position:absolute;
        stroke:#828282;
        stroke:#ffffff;
        fill:none;
        width:10px;
        height:10px;
        margin-left: 8px;
        top:5px;
    }
    
    .tc_menu-drop__corp{
        position:absolute;
        top:35px;
        width:253px;
        height:307px;
        padding-top:13px;
        padding-left: 0px;
        background-color: #e3e3e3;
        transition:.5s;
        box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.1);
        transition:.3s linear;
        visibility:hidden;
        opacity:0;
    }
  
    
    .tc_menu-drop__library{
        position:absolute;
        padding-top: 13px;
        top:35px;
        width:253px;
        height:270px;
        padding-left: 0px;
        background-color: #e3e3e3;
        -webkit-transition: all .2s ease;
        transition: all .2s ease;
        box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.1);
        transition:.3s linear;
        visibility:hidden;
        opacity:0;
    }
    
    .tc_header .tc_header__mainnav .tc_menu-drop__corp li{
        margin-top: 20px;
        margin-left: 35px;
        height:auto;
        font-weight: 500;
        line-height:1;
    }
    
    .tc_header__mainnav .tc_menu-drop__corp li a {
        color:#777777;
    }

    
    .tc_nav-blank{
        padding-right: 22px !important;
    }
    
    .tc_header__mainnav .tc_menu-drop__corp li a{
        font-size: 14px;
        transition: 0.1s linear;
    }
    
    .tc_header__mainnav .tc_menu-drop__library li a{
        color:#222222 !important;
    }
    
    .tc_header__mainnav .tc_menu-drop__corp li a{
        color:#222222 !important;
    }
    
    .tc_header__mainnav .tc_menu-drop__corp li a:hover{
        opacity:0.5;
    }
    
    .tc_menu-single__library:hover .tc_menu-drop__library{
        opacity:1;
        visibility:visible;
        
    }
    
    .tc_menu-single__corp:hover .tc_menu-drop__corp{
        opacity:1;
        visibility:visible;
    }
    
    .tc_header .tc_header__mainnav .tc_menu-drop__library li{
        margin-top: 20px;
        margin-left: 35px;
        height:auto;
        line-height:1;
    }
    
    .tc_header__mainnav .tc_menu-drop__library li a {
        color:#777777;
        font-weight:500;
    }
    
    .tc_header__mainnav .tc_menu-drop__library li a{
        font-size: 14px;
        font-family: "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, "ＭＳ Ｐゴシック" ;
        font-weight:500;
    }
    
    .tc_header__mainnav .tc_menu-drop__library li a:hover{
        opacity:0.5;
        transition: 0.1s linear;
    }
    
    .tc_header .tc_header__mainnav a{
        color:#201f1f;
        font-size: 16px;
    }
    
    .tc_header__subnav{
        position:absolute;
        top:22px;
        right:170px;
    }
    
    .tc_navsub-icon__blank{
        position:absolute;
        stroke:#828282;
        fill:none;
        width:10px;
        height:10px;
        margin-left: 8px;
        top:5px;
    }
    
    @-moz-document url-prefix() {
        .tc_navsub-icon__blank{
            top:5px;
        }
    }
    
    .tc_header__subnav li{
        position:relative;
        margin-right:45px;
    }
    
    .tc_header .tc_header__subnav a{
        color:#777777;
        font-size:12px;
        transition:.1s linear;
    }
    
    .tc_header .tc_header__subnav a:hover{
        opacity: 0.75;
    }
    
    .tc_header__search{
        position:absolute;
        width:167px;
        top:15px;
        height:30px;
        right:0px;
        display:block;
        background-color:#e6e6e6;
    }
    
    
    
    .tc_header .tc_searchBox{
        padding-top:6px;
        padding-left: 13px;
        width:130px;
        outline: none;
        border: none;
        font-size: 14px;
        background:none;
    }
    
    .tc_header .tc_searchBox::-webkit-input-placeholder {
        color: #888888;
    }
    
    .tc_header .tc_searchBox::-moz-placeholder {
        color: #888888;
    }
    
    .tc_header .tc_searchBox:-ms-input-placeholder {
        color: #888888;
    }
    
 
    
    .tc_search-button{
        position:absolute;
        background-image: url(/cmn/img/top/icon_submit.svg);
        background-repeat: no-repeat;
        opacity: 1;
        background-repeat: no-repeat;
        border:0px;
        width:18px;
        height:18px;
        top:6px;
        right:12px;
        color:#ffffff;
        font-weight:bold;
        text-align:center;
        background-color: transparent;
    }
    
    .tc_header a{
        text-decoration:none;
        cursor: pointer;
    }
    

    
    .tc_header li{
        display:inline-block;
    }
    .tc_header .main-content-wrapper{
        position:relative;
        z-index:0;
        width:100%;
        display: block;
    }
    
    .tc_header #header_menu{
        position: absolute;
        right:0;
    }
    .tc_header .tc_menu-close{
        display:none;
    }
    
    
    .tc_header .tc_search-button{
        background-image: url(/cmn/img/top/icon_submit.svg);
        background-repeat: no-repeat;
        opacity: 1;
    }
    .tc_header .tc_toggle span{
        border-color:#861c3c;
        bottom:0px;
    }
    

    
    .tc_header .tc_nav-icon__blank{
        stroke:#828282;
        top:3px;
    }
    
    .tc_header .tc_navsub-icon__blank{
        stroke:#828282;
    }
    
    .tc_header .tc_menu-single .tc_nav-icon__arrow{
        stroke:#828282;
    }

    .tc_header.search .tc_header__search{
        background-color:#d6d6d6 !important;
    }
    
    .tc_header.search .tc_search-button{
        background-image: url(/cmn/img/top/icon_submit.svg);
    }
    
    .tc_header.search .tc_searchBox::-webkit-input-placeholder {
        color: #111111 !important;
    }
    
    .tc_header.search .tc_searchBox::-moz-placeholder {
        color: #111111 !important;
    }
    
    .tc_header.search .tc_searchBox:-ms-input-placeholder {
        color: #111111 !important;
    }
     
    /*csrヘッダー対応*/
    
    .tc_menu-drop__csr{
        position:absolute;
        padding-top: 13px;
        top:35px;
        width:290px;
        height:240px;
        padding-left: 0px;
        background-color: #e3e3e3;
        -webkit-transition: all .2s ease;
        transition: all .2s ease;
        box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.1);
        transition:.3s linear;
        visibility:hidden;
        opacity:0;
    }
    .tc_menu-single.tc_menu-single__csr .tc_nav-icon__arrow {
        left: 15px;
    }

    .tc_menu-single__csr:hover .tc_menu-drop__csr{
        opacity:1;
        visibility:visible;
        
    }
    .tc_header__mainnav .tc_menu-drop__csr li a:hover{
        opacity: 0.5;
    }
    .tc_header .tc_header__mainnav .tc_menu-drop__csr li {
        margin-top: 20px;
        margin-left: 35px;
        height: auto;
        font-weight: 500;
        line-height: 1;
    }
    .tc_header__mainnav .tc_menu-drop__csr li a {
        font-size: 14px;
        transition: 0.1s linear;
    }
    /* -footer
----------------------------------------------------------- */
	#footer{
		margin:0;
		padding:9px 0 26px;
		text-align:left;
		border-top:solid 1px #ccc;
		font-size:83.33%;
	}
		ul#goTop{
			float:right;
		}
			ul#goTop li{
				background:url(/common/images/content_images/arrows/02_top.gif) no-repeat 0 0.30em;
				padding:0 0 7px 10px;
				text-indent:-10px;
				white-space:nowrap;
				line-height:1;
			}
				ul#goTop li a{
					white-space:nowrap;
					padding-left:9px;
				}

		ul#footUtilities{
			float:left;
		}
			ul#footUtilities li{
				float:left;
				margin:0 0 0 5px;
				padding:0 0 7px 0;
				line-height:1;
				white-space:nowrap;
			}
				ul#footUtilities li a{
					padding-left:5px;
					border-left:solid 1px #ccc;
					white-space:nowrap;
				}
			ul#footUtilities li:first-child{
				margin:0;
			}
				ul#footUtilities li:first-child a{
					padding-left:0;
					border-left:none;
				}

		#copyright{
			margin-top:1px;
		}
			#copyright address{
				color:#808080;
			}

            
			/* tc-footer
----------------------------------------------------------- */
.tc_footer{
    margin:0 auto;
    position:relative;
    height:570px;
    background-color: #ffffff;
    overflow:hidden;
    width:768px;
	border-top:1px solid #cccccc;
	text-align:left;
}

.tc_footer a{
    color:#333333;
    text-decoration: none;
    border-bottom:1px solid #ffffff;
    transition:.1s linear;
    padding-bottom: 1px;
}

.tc_footer-menu__title a:hover{
    opacity:0.75;
    border-color: #444444;
}

.tc_footer .tc_footer__wrap{
    display:flex;
    flex-wrap:nowrap;
    margin-top: 30px;
    width:768px;
}



.tc_footer .tc_footer__logo img{
    width:130px;
    height:30px;
    margin-top: 27px;
}
.tc_footer .tc_footer-menu.majorworks{
    width: 12%;
}

.tc_footer .tc_footer-menu.solution{
    width: 18%;
}

.tc_footer .tc_footer-menu.corp{
    width: 25%;
}

.tc_footer .tc_footer-menu.CSR{
   width:25%;
}

.tc_footer .tc_footer-menu.library{
    width:25%;
}
 
.tc_footer .tc_footer-menu ul{
    margin-top: -25px;
    font-size: 12px;
    line-height:1.3;
}

.tc_footer .tc_footer-menu li{
    margin-top: 15px;
    
}



.tc_footer .tc_footer-menu li a{
    color:#444444;
    transition:.1s linear;
    border-bottom:1px solid #ffffff;
}
.tc_footer .tc_footer-menu li a:hover{
    border-color:#444444;
    opacity:0.75;
}


.tc_footer .tc_footer-menu__title{
    color:#ffffff;
    font-size:15px; 
    margin-bottom: 20px;
    font-weight:bold;
}

.tc_footer .tc_footer-menu__title:hover{
    border-color:#333333;
    opacity:0.75;
}

.tc_footer-title__blank{
    position:relative;
}

.tc_footer-title__blank:after{
    position: absolute;
    content:url("/cmn/img/top/icon_blank_gray.svg");
    top: 6px;
    margin-left: 8px;
    width:10px;
    height: 10px;
}

.tc_footer .tc_footer-sub__wrap{
    position:relative;
    display: flex;
    flex-wrap: wrap;
    width:768px;
    padding-bottom:20px;
    margin:0 auto;
   
}

.tc_footer-line{
    width:100%;
    height:1px;
    background-color:#cccccc;
    margin-top: 20px;
}

.tc_footer .tc_footer-sub__wrap .tc_footer-menu__title{
    margin-right:55px;
}

.tc_footer .tc_footer-blank{
    position:relative;
}

.tc_footer .tc_footer-blank:after{
    content:url("/cmn/img/top/icon_blank_gray.svg");
    position:absolute;
    width:10px;
    height:10px;
    top:4px;
    margin-left: 9px;
}

.tc_footer-menusub__title{
    color: #e6e6e6;
    font-size: 13px;
    margin-right: 55px;
}

footer #tc_footer-bottom{
    width:768px;
    margin-top: 3px;
   
} 

.tc_footer #tc_footer-bottom__wrap{
    display:flex;
    flex-wrap:nowrap;
}

.tc_footer .tc_footer-bottom__link{
    margin-right: 24px;
    color: #969696;
    font-size: 12px;
}
.tc_footer .tc_footer-bottom__link.end{
    margin-right: 0px;
}

.tc_footer .tc_footer-bottom__link a{
    color:#555555;
    border-bottom:1px solid #ffffff;
    transition:.1s linear;
    padding-bottom:1px;
}
.tc_footer .tc_footer-bottom__link a:hover{
    border-color:#555555;
    opacity: 0.75;
}
.tc_footer small.tc_footer__menu{
    display:block;
    color:#969696;
    margin-top:21px;
    font-size: 10px;
}

.tc_footer-menu__pc{
    margin-left: 590px;
}
#tc_footer-back__top{
    position:absolute;
    right:12px;
    bottom:25px;
}
#tc_footer-back__top a{
    font-size:12px;
}

#tc_footer-back__top .top-back{
    position:absolute;
    fill:none;
    stroke:#737373;
    width:9px;
    height:6px;
    top:8px;
    right:-13px;
}



.tc_footer a{
    text-decoration:none;
    cursor: pointer;
    border-bottom:1px solid #ffffff;
    transition:.1s linear;
}
.tc_footer a:hover{
    border-color: #333333;
    opacity: 0.75;
}


.tc_footer li{
    display:inline-block;
}
.tc_footer .main-content-wrapper{
    position:relative;
    z-index:0;
    width:100%;
    display: block;
}

.tc_footer #footer_menu{
    position: absolute;
    right:0;
}
.tc_footer .tc_menu-close{
    display:none;
}


@media print{
    .tc_header{
        display:none;
    }
    .tc_footer{
        display:none;
    }
}



