@charset "UTF-8";


.company_box {margin-top:180px;}
.marginCancel {margin-top:-64px;}


/*================== column_inner_box ==================*/

#contents_box3 .container ul.contents.company_list{
	width: 75%;
	margin: 0 auto;
}

#contents_box3 .container ul.contents.company_list li{
	width: 30%;
	background-color: #fff;
}

#contents_box3.changeBG{
	background: none;
}

#contents_box .container ul.contents{
	width: 80%;
	margin: 0 auto;
}

#contents_box .container ul.contents li{
	width: 30%;
}


h3.tit_sub:nth-of-type(n+2){
	margin-top: 75px;
}

table.enkaku {
	margin-bottom: 35px;
}

table.enkaku th{
	width: 120px;
}

table.results tr:nth-of-type(n+2) th{
	width: 55%;
}

table.results tr:nth-of-type(n+2) td:last-child{
	width: 20%;
}

table.gaiyou td,
table.enkaku td,
table.results td{
    font-size: 15px;
    font-weight: normal;
    padding: 10px 10px 10px 50px;
    position: relative;
    text-align: left;
    vertical-align: middle;
}

table.gaiyou td:before,
table.enkaku td:before,
table.results td:before{
    background: #ccc none repeat scroll 0 0;
    bottom: 0;
    content: "";
    display: block;
    height: 70%;
    margin: auto;
    position: absolute;
    left: 0;
    top: 0;
    width: 1px;
}

table.gaiyou th{
	width: 155px;
}

table.results th{
    font-size: 15px;
	text-align: left;
}


p.gaiyoIntro {margin:0 auto 50px;}
p.gaiyoIntro img {max-width: 1000px}

.gaiyo-name {
	font-size:1.2rem;
}
.gaiyo-en {
	font-size:0.75rem;
}


section.company_box p {
    margin-bottom: 30px;
    text-align: center;
}

#contents_box2 ul.area {
	width: 1100px;
	margin: 0 auto;
}
#contents_box2 ul.area li{
	float: left;
	margin: 5px;
}


#contents_box2 ul.area div.BTN>a {
    background: #fff url(../images/common/ico_arrow_01.png) no-repeat scroll right 20px center;
    background-size: 6px auto;
    border: 1px solid #333;
    display: inline-block;
    font-weight: bold;
    padding: 13px 50px 13px 45px;
    box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.2);
    color: #252525;
    text-decoration: none;
}

#contents_box2 ul.area div.BTN>a:hover {
    color: #fff;
    background: #333 url(../images/common/ico_arrow_02.png) no-repeat scroll right 10px center;
    background-size: 6px auto;
    transition: 0.3s ease-in-out;
}




.access-address {
	margin:35px 0 50px;
}

.marginPlus {
	margin-top:100px;
}

.midosuji {color:#c30;}
.nagahori {color:#396;}
.access-deguchi {width:348px;}




/* ads */
#contents_box2 div.db>div,
#contents_box3 div.db>div{
	width: calc(100% / 2);
	padding: 0 5%;
}

#contents_box2 div.db div.columnL,
#contents_box3 div.db div.columnL{
	float: left;
	margin-top:64px;
}

#contents_box2 div.db div.columnR,
#contents_box3 div.db div.columnR{
	float: right;
	margin-top:64px;
}

#contents_box2 div.db div.columnL img,
#contents_box3 div.db div.columnL img,
#contents_box2 div.db div.columnR img,
#contents_box3 div.db div.columnR img{
	margin:20px 0;
}


#contents_box3 div.db div.commentary{
    margin:2em 0;
    position: relative;
    padding: 1.5em 2em;
    border-top: solid 1px #aaaaaa;
    border-bottom: solid 1px #aaaaaa;
}
#contents_box3 div.db div.commentary:before,
#contents_box3 div.db div.commentary:after{
    content: '';
    position: absolute;
    top: -10px;
    width: 1px;
    height: -webkit-calc(100% + 20px);
    height: calc(100% + 20px);
    background-color: #aaaaaa;
}
#contents_box3 div.db div.commentary:before {left: 10px;}
#contents_box3 div.db div.commentary:after {right: 10px;}

section#contents_box2 .media_wrap{
	margin-top:36px;
}

section#contents_box3 h3 {
    font-size: 135%;
    padding-bottom: 0;
    margin-bottom: 0;
}

#contents_box2 .media_wrap{
	overflow: hidden;
    text-align: center;
	margin: 0 auto;
}
#contents_box2 .media_wrap .inner:first-child{
	width: 98%;
}

#contents_box2 .media_wrap .inner{
	display: inline-block;
	width: 31%;
	margin: 1%;
}

#contents_box2 .media_wrap .inner h3,
#contents_box3 .vision_wrap .inner h3{
	font-size: 15px;
}

#contents_box2 .media_wrap .inner img,
#contents_box3 .vision_wrap .inner img {
	margin-bottom: 5px;
}

#contents_box3 .vision_wrap {
	overflow: hidden;
    text-align: center;
	margin: 0 auto;
}

#contents_box3 .vision_wrap .inner{
	display: inline-block;
	width: 40%;
	margin: 2%;
}

#contents_box2 .vision_wrap .inner{
}



img.mascotPhoto {
	max-width:350px;
	margin-top:50px;
}

.mascotInfo {
    position: relative;
    background-color: #fafafa;
    color: #28507e;
	width: 90%;
    margin: 2em auto;
    padding: 2em;
}

.mascotInfo h4 {
	font-size: 20px;
}

.mascotInfo p {
    margin: 0;
    padding: 0;
}

.mascotInfo table tr {
    background: none;
}
















































/*================== MOBILE PAGE ==================*/


@media screen and (max-width: 768px) {


.company_box {margin-top:0px;}
.marginCancel {margin-top:0px;}


#contents_box3 .container ul.contents.company_list li{
	width: 45%;
	background-color: #fff;
}


table.enkaku th{
	width: 100%;
}


table.gaiyou td:before,
table.enkaku td:before,
table.results td:before{
    background: none;
}


p.gaiyoIntro {margin:-20px auto 36px;}
p.gaiyoIntro img {max-width: 1000px}


section.company_box p {
    margin-bottom: 20px;
    text-align: left;
}

.tit_sub {
    background: rgba(0, 0, 0, 0) url(../images/common/bg_border.png) no-repeat scroll center bottom;
    color: #2f3749;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 15px;
    padding-bottom: 10px;
    text-align: center;
}

.company_box .tit_sub::before{
	display: none;
	}

div.company_page table.results tr.PC{
	display: none;
	}

table.gaiyou th{
	width: 100%;
}

div.company_page table.results th,
div.company_page table.results td {
    font-size: 12px;
	font-weight: bold;
	}
div.company_page table.results th {
	padding: 10px 10px 10px 100px;
	position: relative;
	text-align: left;
	background: none;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	overflow: hidden;
	}

div.company_page table.results td {
	padding: 10px 10px 10px 100px;
	border-bottom: 1px solid #ddd;
	}
div.company_page table.results th::before ,
div.company_page table.results td::before {
    content: attr(data-label);
	width: 65px;
	height: auto;
    float: left;
	text-transform: uppercase;
	padding: 10px;
	text-align: center;
	background: #eee;
	}

div.company_page table.results tr:nth-of-type(n+2) th{
	width: 100%;
}

div.company_page table.results tr:nth-of-type(n+2) td:last-child{
	width: 100%;
}

div.company_page table.results th:before{
    display: block;
    margin: auto;
    position: absolute;
    left: 0;
    top: 0;
	height: 100%;
}
div.company_page table.results tr {
	display: block;
	margin-bottom: 20px;
}

#contents_box2 ul.area {
	width: 100%;
}


/* ads */
#contents_box2 div.db div,
#contents_box3 div.db div{
	width: 100%;
}

#contents_box2 div.db div.columnL,
#contents_box2 div.db div.columnR,
#contents_box3 div.db div.columnL,
#contents_box3 div.db div.columnR{
	float: none;
}

.mascotInfo table th,
.mascotInfo table td {
    border: medium none;
    display: table-cell;
    font-size: 12px;
    background: none;
	text-align: left;
}

#contents_box2 .media_wrap .inner:last-of-type{
    float: left;
}

#contents_box2 .media_wrap .inner h3,
#contents_box3 .vision_wrap .inner h3 {
	font-size: 12px;
    font-weight: bold;
	text-align: center;
}


#contents_box2 .media_wrap .inner {
    width: 47%;
}

.company_page table {
    width: 90%;
    padding: 0;
}
	
div.company_page table td {
    padding: 10px 20px;
}

	
#contents_box2 .tit_sub.area_name::before{
	display: none;
}

}
