body {
    font-size: 12pt;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif ;
    color: #212121;
    background-color:#ffffff;
    padding: 0;
    text-align: justify;
    margin: 0;
}

.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.clearfix {
    display: inline-table;
    min-height: 1%;
}
/* Hides from IE-mac */
* html .clearfix {
    height: 1%;
}

.clearfix {
    display: block;
}

a:link    { color: #212121; text-decoration: none; }
a:visited { color: #212121; text-decoration: none; }
a:active  { color: #999999; text-decoration: none; }
a:hover   { color: #999999; text-decoration: none; }

.main-container { 
    margin: 0 auto;
    width: 920px;
    overflow: hidden;
}

.header-box {
    width: 100%;
    height: 10px;
    background-color: #bb1d21;
    border-top: solid 3px #212121;
}

@media screen and (max-width: 768px){
    .header-box {
        width: 920px;
    }
}

.footer-box {
    width: 100%;
    background-color: #212121;
    box-sizing: border-box;
    font-size: 12px;
    padding: 20px 0 50px 0;
    color: #bdbdbd;
    text-align:center;
}

@media screen and (max-width: 768px){
    .footer-box {
        width: 920px;
    }
}

.footer-box a:link    { color: #bdbdbd; text-decoration: none; }
.footer-box a:visited { color: #bdbdbd; text-decoration: none; }
.footer-box a:active  { color: #bdbdbd; text-decoration: underline; }
.footer-box a:hover   { color: #bdbdbd; text-decoration: underline; }

.footer-text {
    overflow: hidden;
}

.footer-link {
    margin-right: 20px;
    float: left;
}

.footer-copy {
    float: right;
}

.main-logo {
    float: left;
    margin: 20px 25px 20px 0;
}

.main-logo img {
    height: 45px;
}

.main-logo-text {
    color: #5a2122;
    float: left;
    font-size: 12px;
    font-weight: bold;
    margin: 32px 0 20px 0;
} 

.main-header {
    margin: 0 auto; 
    width: 920px;
}



.header-menu {
    overflow: hidden;
    margin-bottom: 20px;
    background-color:#ffffff;
}

.header-menu-button {
    width: 11.5%;
    text-align: left;
    padding: 8px 0 0 8px;
    font-size: 14px;
    font-weight: bold;
    line-height: 12pt;
    text-decoration: none;
    background-image: url("../img/menu_bg.png");
    background-repeat: no-repeat;
    background-position: left top;
    float: left;
}

.header-menu-button-now {
    width: 11.5%;
    text-align: left;
    padding: 8px 0 0 8px;
    font-size: 14px;
    font-weight: bold;
    color: #bb1d21;
    line-height: 12pt;
    text-decoration: none;
    background-image: url("../img/menu_bg2.png");
    background-repeat: no-repeat;
    background-position: left top;
    float: left;
}

.header-menu a:link    .header-menu-button { color: #212121; }
.header-menu a:visited .header-menu-button { color: #212121; }
.header-menu a:active  .header-menu-button { color: #bb1d21; background-image: url("../img/menu_bg2.png"); }
.header-menu a:hover   .header-menu-button { color: #bb1d21; background-image: url("../img/menu_bg2.png"); }

.header-menu-button .menu-sub {
    font-size: 10px;
    font-weight: normal;
    color: #999999;
}

.header-menu-button-now .menu-sub {
    font-size: 10px;
    font-weight: normal;
    color: #999999;
}
.header-menu .b-large {
    width: 12.5%;
}

.header-menu .b-xlarge {
    width: 16.5%;
}

#lock {
	z-index: 10000;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #FFF;
	text-align: center;
	display: none;
	opacity: 0.7;
}

.top-slider {
    margin-bottom: 35px;
}

.top-slider img {
    width: 920px;
}

.side-contact img {
    width: 230px;
}



.main-section { 
    width: 630px;
    margin-bottom: 80px;
    float: left;
}

.side-section { 
    width: 230px;
    margin-bottom: 80px;
    float: right;
}



.subpage-title {
    width: 100%;
    margin-bottom: 30px;
}
.subpage-title h3 { 
    margin: 0;
    margin-bottom: 3px;
    padding: 3px 20px;
    font-size: 21px;
    font-weight: bold;
    border-bottom: solid 1px #e6e6e6;
    background-image: url("../img/title_circle.png");
    background-repeat: no-repeat;
    background-position: left center;
}
.subpage-title img { 
    width: 100%;
}



.main-title {
    margin-bottom: 20px;
    padding: 3px 0;
    border-bottom: solid 1px #e6e6e6;
    font-size: 28px;
    font-weight: bold;
}

.main-title .main-title-sub {
    font-size: 10px;
    color: #bb1d21;
}

.subtitle {
    width: 100%;
    height: 50px;
    margin: 0;
    padding: 0;
}


.col2-box {
    width: 100%;
    overflow: hidden;
}
.col2-box .col2-box-l {
    float: left;
}
.col2-box .col2-box-r {
    float: right;
}


.top-news {
    margin-bottom: 20px;
    text-decoration: underline;
}

.top-news-box {
    overflow: hidden;
    font-size: 14px;
    margin-bottom: 5px;
}

.top-news-date {
    width: 16%;
    margin-bottom: 1px;
    text-decoration: none;
    line-height: 20px;
    float: left;
}

.top-news-text {
    width: 82%;
    line-height: 20px;
    float: left;
}
.top-news-box a:link    { color: #212121; }
.top-news-box a:visited { color: #212121; }
.top-news-box a:active  { color: #999999; }
.top-news-box a:hover   { color: #999999; }



.top-article {
    width: 100%;
    overflow: hidden;
    margin-bottom: 30px;
}

.top-article .top-article-image {
    margin-right: 3%;
    float: left;
}

.top-article .top-article-image img {
    width: 295px;
}

.top-article .top-article-text {
    width: 50%;
    margin-bottom: 10px;
    font-size: 14px;
    line-height: 25px;
    float: left;
}

.top-article-more {
    width:  88px;
    height: 22px;
    background-image: url("../img/top-article-more.png");
}

.top-2article {
    width: 100%;
    overflow: hidden;
    margin-bottom: 30px;
}

.top-2left {
    width: 47%;
    margin-right: 6%;
    overflow: hidden;
    float: left;
}

.top-2right {
    width: 47%;
    overflow: hidden;
    float: left;
}

.top-2article .top-article-image {
    width: 100%;
    margin-bottom: 10px;
}
.top-2article .top-article-image img {
    width: 100%;
}

.top-2article .top-article-text {
    width: 100%;
    font-size: 14px;
    line-height: 25px;
}

.top-article-more {
    width:  88px;
    height: 22px;
    margin-top: 10px;
    background-image: url("../img/top-article-more.png");
}

.top-article a:hover .top-article-more, .top-2article a:hover .top-article-more  {
    background-image: url("../img/top-article-more2.png");
}

.banner-block {
    margin-bottom: 20px;
}

.banner-block img {
    width: 630px;
}

.greeting-red {
    margin: 50px 0 30px;
    color: #bb1d21;
    font-size: 21px;
    font-weight: bold;
    font-family: 游明朝, "ヒラギノ明朝 Pro W6", HiraMinPro-W6, "MS Mincho";
    line-height: 32px;
}

.greeting-text {
    font-size: 16px;
    line-height: 26px;
    margin-bottom: 30px;
}

.greeting-text-block {
    margin-bottom:20px;
}

.greeting-img img {
    width: 350px;
}


/* profile */
.profile-table {
    font-size: 13px;
}

.profile-table-title {
    background-color: #f7f7f7;
    border: solid 1px #e6e6e6;
    box-sizing: border-box;
    line-height: 180%;
    padding: 15px;
    vertical-align: top;
    width: 150px;
}

.profile-table-discription {
    border: solid 1px #e6e6e6;
    box-sizing: border-box;
    line-height: 180%;
    padding: 15px;
    vertical-align: top;
    width: 480px;
}

.philosophy-block {
    border: 1px solid #8c8c8c;
    margin-bottom: 20px; 
    padding: 10px;
}

.philosophy-3rd {
    margin-bottom:  30px;
    margin-top: 45px; 
    text-align: center; 
}

.philosophy-3rd img {
    width: 570px; 
}

.philosophy-red {
    margin-bottom: 20px;
    color: #bb1d21;
    font-size: 26px;
    font-weight: bold;
    font-family: 游明朝, "ヒラギノ明朝 Pro W6", HiraMinPro-W6, "MS Mincho";
    line-height: 45px;
    text-align: center;
}

.philosophy-main {
    margin-bottom: 30px;
    font-size: 16px;
    line-height: 26px;
    text-align: center;
}

.philosophy-main-block {
    margin-bottom: 20px;
}

.philosophy-sub {
    margin-bottom: 10px;
    padding: 5px 0;
    font-size: 24px;
    font-weight: bold;
    border-bottom: solid 1px #e6e6e6;
}

.philosophy-text {
    font-size: 14px;
    line-height: 22px;
}
.philosophy-text .red {
    color: #bb1d21;
    font-weight: bold;
    line-height: 32px;
}

.philosophy-text-block {
    margin-bottom: 15px;
}

.voice-subtitle {
    margin: 40px 0 10px;
    font-size: 18px;
    font-weight: bold;
}

.voice-subtitle-red {
    background-color: #bb1d21;
    color: #fff ;
    margin-bottom: 20px;
    padding: 10px 15px;
}

.voice-ch {
    margin-bottom: 40px;
}

.voice-ch-left {
    float: left;
    width: 46%;
}

.voice-ch-left-title {
    margin-bottom: 20px;
}

.voice-ch-left-img img {
    height: 287px;
}

.voice-ch-right {
    float: right;
    width: 46%;
}

.voice-box {
    margin-bottom: 20px;
}

.voice-box img {
    width: 100%;
}

.voice-subtitle-icon {
    float: left;
    margin-right: 10px;
    width: 40px;
}

.voice-red-box {
    background-color: #bb1d21;
    border-radius: 5px;
    box-sizing: border-box;
    color: #fff;
    font-size: 21px;
    font-weight: bold;
    margin-bottom: 20px;
    padding: 8px;
    text-align: center;
}

.voice-subtitle-icon img {
    width: 100%;
}

.voice-seet {
    width: 100%;
}

.voice-seet img {
    width: 100%;
}

.voice-subtitle-str {
    font-size: 28px;
    font-weight: bold;
    float: left;
}

.voice-subimage {
    width: 100%;
    margin-bottom: 40px;
}
.voice-subimage img {
    width: 100%;
}

.voice-barred {
    width: 100%;
    margin-bottom: 20px;
    padding: 5px;
    color: #ffffff;
    font-size: 13px;
    text-align: center;
    background-color: #bb1d21;
}

.voice-q-num {
    font-size: 48px;
    font-weight: bold;
    text-align: center;
    color: #bb1d21;
}

.voice-q-title {
    margin-bottom: 30px;
    font-size: 28px;
    font-weight: bold;
    font-family: 游明朝, "ヒラギノ明朝 Pro W6", HiraMinPro-W6, "MS Mincho";
    text-align: center;
    color: #9d7516;
}

.voice-article-box {
    width: 100%;
    margin-bottom: 50px;
    overflow: hidden;
}
.voice-article-l { float: left; }
.voice-article-r { float: right; }

.voice-article-box .image {
    width: 210px;
}
.voice-article-box .image img {
    width: 100%;
}

.voice-article-box .text {
    width: 390px;
    font-size: 14px;
    line-height: 24px;
}

.voice-article-box .fulltext {
    width: 630px;
    font-size: 14px;
    line-height: 24px;
}

.voice-article-box .subindex {
    font-size: 18px;
    font-weight: bold;
}



.consultation-subtitle {
    border-bottom: solid 1px #e6e6e6;
    margin-bottom: 20px;
    padding: 3px 0;
    font-size: 24px;
    line-height: 30px;
    font-weight: bold;
}
.consultation-subtitle .small {
    color: #bb1d21;
    font-size: 10px;
    line-height: 30px;
}

.consultation-block {
    margin-bottom: 40px;
    overflow: hidden;
}

.seminar-list-index {
    padding: 5px 0;
    font-size: 16px;
    font-weight: bold;
    line-height: 24px;
    color: #bb1d21;
}

.seminar-list-title {
    padding-top: 10px;
    font-size: 13px;
    font-weight: bold;
    line-height: 20px;
    color: #9d7516;
}
a:hover .seminar-list-title { color: #bd9536; }

.seminar-list-text {
    padding-bottom: 10px;
    font-size: 13px;
    line-height: 20px;
    border-bottom: solid 1px #e6e6e6;
}

.seminar-backnumber {
    padding: 10px 20px;
    font-size: 13px;
    border-top:   solid 1px #e6e6e6;
    border-right: solid 1px #e6e6e6;
    border-left:  solid 1px #e6e6e6;
}

.seminar-backnumber-bottom {
    border-top:   solid 1px #e6e6e6;
    margin-bottom: 30px;
}

.consultation-lefttext {
    width: 62%;
    font-size: 14px;
    line-height: 20px;
    float: left;
}
.consultation-lefttext .bold {
    font-weight: bold;
    line-height: 36px;
}

.consultation-lefttext-top-top {
    margin: 20px;
}

.consultation-right-img {
    width: 35%;
    float: right;
}

.consultation-right-img img {
    width: 100%;
}

.consultation-rightimg {
    width: 35%;
    float: right;
}
.consultation-rightimg img {
    height: 145px;
    width: 100%;
}

.consultation-fulltext {
    font-size: 14px;
    line-height: 20px;
    margin-bottom: 10px;
}

.consultation-fulltext .bold {
    font-weight: bold;
    line-height: 36px;
}


.contact-form {
    width: 100%;
    border: solid 1px #e6e6e6;
    margin-bottom: 30px;
    font-size: 13px;
    line-height: 22px;
}

.contact-form th {
    width: 25%;
    background-color: #f7f7f7;
    padding: 10px;
    border: solid 1px #e6e6e6;
    text-align: left;
    vertical-align: top;
}

.contact-form td {
    width: 75%;
    padding: 10px;
    border: solid 1px #e6e6e6;
    text-align: left;
    vertical-align: top;
}

.contact-form .red {
    font-weight: normal;
    color: #bb1d21;
}

.contact-form input, .contact-form textarea {
    border: solid 1px #cccccc;
}

.contact_check {
    width: 100%;
    margin-bottom: 30px;
    padding: 10px;
    border: solid 1px #e6e6e6;
    font-size: 13px;
    line-height: 22px;
    text-align: center;
    vertical-align: middle;
}

input.form-buttom {
    margin: 0 40% 20px;
    padding: 8px 25px;
    color: #ffffff;
    font-size: 16px;
    text-align: center;
    background-color: #bb1d21;
    border-radius: 5px;
    border-style: none;
}
a:hover .form-buttom { background-color: #da2429; }

.recruit-sub {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
}

.recruit-subtitle {
    margin-bottom: 10px;
    font-size: 21px;
    font-weight: bold;
    color: #bb1d21;
    line-height: 32px;
}

.recruit-box-top {
    border-bottom: solid 1px;
    border-top: solid 1px;
    line-height: 180%;
    padding: 15px 10px;
}

.recruit-box {
    border-bottom: solid 1px;
    line-height: 180%;
    padding: 15px 10px;
}

.underline {
    border-bottom: solid 1px #e6e6e6;
}

.recruit-job {
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: bold;
    line-height: 36px;
}
.recruit-job .red {
    color: #bb1d21;
}

.recruit-job-list {
    margin: 20px 0 50px;
    font-size: 14px;
    line-height: 28px;
    overflow: hidden;
}

.recruit-job-list .title {
    width: 90px;
    font-size: 15px;
    font-weight: bold;
    float: left;
    color: #9d7516;
}
.recruit-job-list .list {
    width: 80%;
    float: left;
}
.recruit-job-list .list .gold {
    color: #9d7516;
}



.policy-titletext {
    margin-bottom: 30px;
    padding: 0;
    font-size: 14px;
    font-weight: bold;
    line-height: 24px;
}

.policy-textarea {
    margin-bottom: 30px;
    margin-top: 20px;
    font-size: 14px;
    line-height: 24px;
}
.policy-textarea .text-bold {
    font-weight: bold;
}

.sitemap-box {
    overflow: hidden;
}

.sitemap-box-l {
    width: 46%;
    margin-right: 8%;
    float: left;
}

.sitemap-box-r {
    width: 46%;
    float: left;
}


.sitemap-subtitle {
    height: 33px;
    margin-bottom: 15px;
    padding: 5px 18px;
    font-size: 14px;
    line-height: 22px;
    font-weight: bold;
    background-color: #f7f7f7;
    border: solid 1px #e6e6e6;
    position: relative;
}

.sitemap-subtitle-bar {
    width: 3px;
    height: 33px;
    background-color: #bb1d21;
    position: absolute;
    top:  -1px;
    left: -1px;
}

.margin15 {
    margin-bottom: 15px;
}

.sitemap-list {
    margin-bottom: 10px;
    overflow: hidden;
}

.sitemap-list-link {
    margin: 0;
    font-size: 14px;
    line-height: 25px;
    font-weight: bold;
    vertical-align: middle;
    float: left;
}

.sitemap-list-arrow {
    width: 20px;
    float: left;
}

.sitemap-list .material-icons {
    font-size: 24px;
    line-height: 24px;
    color: #bb1d21;
}





.side-contact {
    width: 100%;
    margin-bottom: 20px;
}

.side-contact-title {
    font-size: 12pt;
    font-weight: bold;
    padding: 10px;
    background-color: #f7f7f7;
}

.side-contact-address {
    font-size: 14pt;
    font-weight: bold;
    padding: 10px;
}

.side-contact-button {
    margin: 10px 0;
    padding: 8px;
    font-size: 11pt;
    font-weight: normal;
    text-align: center;
    background-color: #bb1d21;
    color: #ffffff;
}

.side-banner {
    width: 100%;
    margin-bottom: 20px;
    padding: 15px;
    background-color: #f7f7f7;
}

.side-banner-title {
    font-size: 13px;
    font-weight: bold;
}
.side-banner-title img {
    margin: 0 4px 2px;
}

.side-banner-image {
    margin: 5px 0;
}
.side-banner-image img {
    width: 100%;
}

.side-banner-text {
    font-size: 11px;
    margin: 0 0 20px;
}

.side-banner-top {
    background-color: #3e312e;
    border: 2px solid #f7f7f7;
    border-bottom: none; 
    color: #fff;
    font-size: 14px;
    padding: 8px 15px;
}

.new {
    background-color: #bb1d21;
    color: #fff;
    padding: 10px 20px;
}

.new:hover {
    color: #FFF;
}

.new:link {
    color: #FFF;
}

 .new:visited {
    color: #FFF;
}

.old {
    background-color: #bb1d21;
    color: #fff;
    padding: 10px 20px;
}

.old:hover {
    color: #FFF;
}

.old:link {
    color: #FFF;
}

 .old:visited {
    color: #FFF;
}

nav.pagenation {
    color: #fff;
    margin-top: 30px;
  position: relative;
  .old, .new { position: absolute; }
  .old { right: 0; }
  .new { left: 0;  }
}

.pagenation:visited {
    color: #fff;
}