@charset "UTF-8";
/* ##########################################################################
Base
########################################################################## */

/* Bold
---------------------------------------------- */

strong,b{
  font-weight: bold;
}


/* Add Reset
---------------------------------------------- */
ul {
  list-style: none;
}

/* For Link
---------------------------------------------- */
a, a:active, a:visited, a:focus, a:hover {
  -webkit-tap-highlight-color: transparent;
}

a {
  color: #999;
  text-decoration: none;
  outline: none;
}

a:hover {
  text-decoration: none;
}

/* For input
---------------------------------------------- */
input, select, textarea {
  outline: none;
}

textarea {
  resize: none;
}

input[type="button"], input[type="text"], input[type="email"], input[type="submit"], textarea {
  -webkit-appearance: none;
  border-radius: 0;
}

/* Image
---------------------------------------------- */
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

.ie8 img {
  width: auto;
}

/* clearfix
---------------------------------------------- */
/* For modern browsers */
.cf:before,
.cf:after {
  content: "";
  display: table;
}

.cf:after {
  clear: both;
}

/* For IE 6/7 (trigger hasLayout) */
.cf {
  zoom: 1;
}

/* Boxsizing
---------------------------------------------- */
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

/* Frame
---------------------------------------------- */
html {
  -webkit-text-size-adjust: none;
  -ms-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -webkit-tap-highlight-color: transparent;
}

body {
  /* font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; */
  font-family: 'メイリオ', 'Meiryo','ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro',  'ＭＳ Ｐゴシック','MS P Gothic', sans-serif;
  font-size: 14px;
  font-weight: 400;
  font-style: normal;
  line-height: 1.75;
  width: 100%;
  color: #333;
  background: #fff;
}

/* ##########################################################################
Module
########################################################################## */
/* Line Break
---------------------------------------------- */
.line_break {
  display: inline-block;
}

.break_word {
  word-wrap: break-word;
  white-space: normal;
}

.no_break {
  white-space: nowrap;
  word-wrap: normal;
}

/* Bold
---------------------------------------------- */
span.bold {
  font-weight: 700;
}

/* Uppercase
---------------------------------------------- */
span.uppercase {
  text-transform: uppercase;
}

/* ##########################################################################
Layout
########################################################################## */

/* Common
---------------------------------------------- */

.content-inner{
  width: 960px;
  margin-left: auto;
  margin-right: auto;
}

/* Page Top
---------------------------------------------- */

.pageTop{
  width: 40px;
  height: 40px;
  position: fixed;
  right: 40px;
  bottom: 40px;
}

/* Header
---------------------------------------------- */

.header{

}

.header-inner{
  padding: 20px 0;
}

.siteCatch{
  font-size: 12px;
  margin-bottom: 12px;
}

.logo{
  float: left;
}

.gnav{
  float: right;
  margin-top: 20px;
}

.gnav ul{

}

.gnav ul li{
  font-size: 14px;
  font-weight: bold;
  /* margin-left: 36px; */
  margin-left: 20px;
  display: inline-block;
}

.gnav ul li a{
  color: #000;
}

/* Footer
---------------------------------------------- */

.footer{
  background-color: #B01700;
}

.footer-inner{
  padding: 20px 0 48px;
}

.footer-nav{
  margin-bottom: 16px;
}

.footer-nav li{
  display: inline-block;
  font-size: 12px;
  margin-right: 20px;
}

.footer-nav li a{
  color: #fff;
  display: inline-block;
  background-image: url(../images/footer_nav_arrow.png);
  background-repeat: no-repeat;
  background-position: left 1px;
  background-size: 16px;
  padding-left: 24px;
}

.footer-name{
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  margin-bottom: 0.4em;
}

.footer-address{
  font-size: 12px;
  line-height: 1.5;
  color: #fff;
  margin-bottom: 20px;
}

.copyright{
  text-align: right;
  font-size: 12px;
  color: #fff;
}

/* Hero
---------------------------------------------- */

.hero{
  background-color: #B01700;
  background-image: url(../images/hero-bg.gif);
  background-position: center top;
  background-size: 5px;
}

.hero-home {
  margin-bottom: 48px;
}

.hero-inner{
  text-align: center;
}

/* Topics
---------------------------------------------- */

.home-topics{
  margin-bottom: 48px;
  padding: 5px 0;
  background-color: #E7E7E7;
}

.home-topics-inner{
	width: 960px;
	margin: 0 auto;
	overflow: hidden;
}

.home-topics-inner h3{
	width: 120px;
	float: left;
	font-weight: bold;
}

.home-topics-inner dl{
	width: 840px;
	float: left;
	overflow: hidden;
}

.home-topics-inner dt{
	width: 120px;
	float: left;
}

.home-topics-inner dd a{
	color: #333;
	text-decoration: underline;
}

/* Breadcrumb
---------------------------------------------- */

.breadcrumb{
  margin-top: 20px;
  margin-bottom: 20px;
}

.breadcrumb a{
  color: #000;
}



/* ##########################################################################
Theme
########################################################################## */

/* Home
---------------------------------------------- */

.home-section{
  margin-bottom: 88px;
}

.home-heading{
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  color: #B01700;
  margin-bottom: 20px;
}

.home-about-l{
  width: 460px;
  float: left;
  margin-right: 32px;
}

.home-about-l-img{
  margin-bottom: 12px;
}

.home-about-l-txt{
  text-align: center;
  font-size: 22px;
  line-height: 1.5;
}

.home-about-l-txt p{
  display: inline-block;
  padding: 0 8px 4px;
  border-bottom: 2px solid #E87E11;
}

.home-about-r{
  overflow: hidden;
}

.home-about-r h2{
  font-size: 20px;
  font-weight: bold;
	margin-bottom: 15px;
}

.home-about-txt{
  margin-bottom: 10px;
}

.home-about-txt-s{
  font-size: 12px;
  margin-bottom: 40px;
}

.home-about-link{
  font-size: 18px;
  line-height: 1.0;
  font-weight: bold;
  text-align: center;
}

.home-about-link a{
  display: inline-block;
  padding: 14px 20px;
  border-radius: 8px;
  background-color: #E87E11;
  color: #fff;
}

.home-service-txt{
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 40px;
}

.home-service-blocks{
  margin-left: -15px;
  margin-right: -15px;
  letter-spacing: -0.5em;
}

.home-service-block{
  padding-left: 15px;
  padding-right: 15px;
  letter-spacing: normal;
  display: inline-block;
  width: 33.333%;
  vertical-align: top;
}

.home-service-block-img{
  margin-bottom: 20px;
}

.home-service-block-img img{
  width: 100%;
}

.home-service-block-txt{
  font-size: 14px;
}

.home-service-block-txt p{
  font-size: 14px;
}

/* Page - Common
---------------------------------------------- */

.page-content{
  margin-bottom: 120px;
}

.page-content h3{
  font-size: 24px;
  padding-bottom: 2px;
  border-bottom: 3px solid #ddd;
  margin-top: 28px;
  margin-bottom: 28px;
  position: relative;
}

.page-content h3:after{
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 180px;
  height: 3px;
  background-color: #B01700;
}

.page-content h4{
  font-size: 16px;
  margin-bottom: 8px;
  font-weight: bold;
  color: #E77E11;
}

.page-content p{
  font-size: 16px;
  margin-bottom: 20px;
}

.page-content ul{
  list-style-type: disc;
  margin-left: 20px;
}

.page-content ul li{
  font-size: 16px;
  margin-bottom: 8px;
}

.page-content ol{
  list-style-type: decimal;
  margin-left: 20px;
}

.page-content ol li{
  font-size: 16px;
  margin-bottom: 8px;
}


/* Page - Service
---------------------------------------------- */

.page-service-l-imgs-wrapper{
  margin-left: -15px;
  margin-right: -15px;
  letter-spacing: -0.5em;
  margin-bottom: 24px;
}

.page-service-l-imgs-block{
  padding-left: 15px;
  padding-right: 15px;
  letter-spacing: normal;
  display: inline-block;
  width: 25%;
  vertical-align: top;
}

.page-service-l-wrapper{
  margin-bottom: 56px;
}

.page-service-l-img{
  float: left;
  width: 320px;
  margin-right: 40px;
}

.page-service-l-txt{
  overflow: hidden;
}

/* Page - Company
---------------------------------------------- */

.page-company-table{
  width: 100%;
}

.page-company-table th,
.page-company-table td{
  font-size: 14px;
  border: 1px solid #ddd;
  padding: 12px 16px;
}

.page-company-table th a,
.page-company-table td a{
  color: #000;
}

.page-company-table td p{
  font-size: 14px;
}

.page-company-table th{
  width: 200px;
  background-color: #fff9fa;
  text-align: left;
  font-weight: bold;
}

/* Page - Company
---------------------------------------------- */
.page-access-gmapBtn a {
  display: inline-block;
  position: relative;
  margin-left: 1em;
  padding: 4px 17px 4px 12px;
  background-color: #e57a00;
  color: #fff;
  font-size: 14px;
}
.page-access-gmapBtn a::after {
	content: '';
	display: inline-block;
  position: absolute;
  right: 0;
  top: 50%;
	width: 0;
	height: 0;
	margin-left: .5em;
	border: 5px solid transparent;
	border-left-color: #fff;
  transform: translateY(-50%);
}

.page-access-map{
  margin-top: 40px;
  margin-bottom: 60px;
  text-align: center;
}

/* Page - Link
---------------------------------------------- */

.page-link-table{
  width: 100%;
}

.page-link-table th,
.page-link-table td{
  font-size: 14px;
  border: 1px solid #ddd;
  padding: 12px 16px;
}

.page-link-table th a,
.page-link-table td a{
  color: #000;
}

.page-link-table th{
  width: 340px;
  background-color: #fff9fa;
  text-align: left;
  font-weight: bold;
}

/* Page - Sitemap
---------------------------------------------- */

.page-content ul.sitemap-list li{
  font-size: 18px;
  margin-bottom: 12px;
}

.page-content ul.sitemap-list li a{
  color: #333;
}

/* Page - Topics
---------------------------------------------- */
#topics .content-inner{
	max-width: 960px;
	width: 100%;
	padding: 0 10px;
}

.topics-hero .content-inner{
	max-width: 960px;
	width: 100%;
	padding: 0 10px;
}

.topics-header .content-inner{
	max-width: 960px;
	width: 100%;
	padding: 0 10px;
}

.topics-footer .content-inner{
	max-width: 960px;
	width: 100%;
	padding: 0 10px;
}

.topics-breadcrumb .content-inner{
	max-width: 960px;
	width: 100%;
	padding: 0 10px;
}

table.topics_list{
	width: 75%;
}

table.topics_list a{
	color: #333;
	text-decoration: underline;
}

table.topics_list th{
	width: 25%;
	border-bottom: 1px solid #e7e7e7;
	text-align: left;
	padding: 10px 0 5px;
}

table.topics_list td{
	border-bottom: 1px solid #e7e7e7;
	padding: 10px 0 5px;
}

.topics_post p.topics_date{
	font-size: 12px;
	text-align: right;
}

.topics_post img{
	margin-bottom: 20px;
}
.topics_post a{
    color:#0000ff;
}

.topics-area{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

.topics-sidebar{
	width: 25%;
}

.sidebar-list{
	padding: 10px 20px;
	border-bottom: solid 1px #e7e7e7;
}

#topics{
	width: 100%;
	max-width: 100%;
}

.topics-sidebar{
	width: 20%;
    margin-left: 50px;
    text-align: left;
}

.sidebar-title{
	padding: 10px 20px;
	background: #B01700;
	color: #ffffff;
	font-weight: bold;
}

.sidebar-list a{
	color: #333;
}

/* Page - 見学・実習
---------------------------------------------- */
.visit-internship_tb th,
.visit-internship_tb td {
  text-align: center;
  vertical-align: middle;
}



/* end */
