html, body {
  margin: 0;
  padding: 0;
  background: #fefefe; }
  html *, body * {
    box-sizing: border-box; }

header#main {
  margin: 0;
  padding: 0;
  width: 100%;
  background: #322d39;
  background-image: url("../image/header_bg.png");
  background-repeat: repeat;
  background-size: 250px auto; }
  header#main h1 {
    margin: 0;
    padding: 40px 0 0 0;
    text-align: center; }
    header#main h1 > img {
      height: 100px; }
  header#main #menu {
    width: 1000px;
    margin: 0 auto;
    padding: 100px 0;
    display: flex;
    justify-content: space-between; }
    header#main #menu > a.book-menu {
      color: rgba(255, 255, 255, 0.7);
      text-decoration: none; }
      header#main #menu > a.book-menu:hover {
        opacity: .7; }
      header#main #menu > a.book-menu > .image > img {
        vertical-align: top;
        width: 180px; }
      header#main #menu > a.book-menu > .text {
        margin-left: 82px;
        padding-left: 8px;
        border-left: 1.5px solid rgba(255, 255, 255, 0.7); }

#contents {
  width: 100%;
  overflow: hidden; }
  #contents > section.book-section {
    display: flex;
    align-items: center;
    padding: 100px 0 100px 50%;
    width: 1600px; }
    #contents > section.book-section > .flag-title {
      margin-left: -300px; }
    #contents > section.book-section > .book {
      width: 957px; }
      #contents > section.book-section > .book > .book-top {
        width: inherit;
        height: 49px;
        background: url("../image/book_top.png") no-repeat;
        background-size: 957px; }
      #contents > section.book-section > .book > .book-contents {
        padding: 0 520px 20px 80px;
        width: inherit;
        background: url("../image/book_mid.png") repeat-y;
        background-size: 957px;
        word-break: break-all; }
        #contents > section.book-section > .book > .book-contents > h3 {
          margin: 0;
          padding-bottom: 24px;
          font-weight: normal;
          font-size: 32px;
          color: #322d39; }
          #contents > section.book-section > .book > .book-contents > h3:not(:first-child) {
            padding-top: 20px; }
        #contents > section.book-section > .book > .book-contents > p {
          margin: 0;
          line-height: 1.6;
          padding-bottom: 8px;
          font-size: 14px;
          color: #444444; }
      #contents > section.book-section > .book > .book-bottom {
        width: inherit;
        background: url("../image/book_bottom.png") no-repeat 0;
        background-size: 957px;
        height: 49px; }
    #contents > section.book-section.reverse {
      background: #f3f3f3; }
      #contents > section.book-section.reverse > .flag-title {
        margin-left: 30px; }
      #contents > section.book-section.reverse > .book {
        width: 957px;
        margin-left: -950px; }
        #contents > section.book-section.reverse > .book > .book-top {
          width: inherit;
          height: 49px;
          background: url("../image/book_top_reverse.png") no-repeat;
          background-size: 957px; }
        #contents > section.book-section.reverse > .book > .book-contents {
          padding: 0 80px 20px 520px;
          width: inherit;
          background: url("../image/book_mid_reverse.png") repeat-y;
          background-size: 957px;
          word-break: break-all; }
        #contents > section.book-section.reverse > .book > .book-bottom {
          width: inherit;
          background: url("../image/book_bottom_reverse.png") no-repeat 0;
          background-size: 957px;
          height: 49px; }

footer#about {
  width: 100%;
  background: #322d39;
  color: #fafafa;
  padding: 32px 0; }
  footer#about > #about-section {
    display: flex;
    justify-content: space-between;
    width: 800px;
    margin: 0 auto; }
    footer#about > #about-section .left-side, footer#about > #about-section .right-side {
      width: 380px; }
  footer#about > #copyright {
    height: 30px;
    line-height: 30px;
    text-align: center;
    font-size: 12px; }

.inquiry {
  width: 100%;
  padding: 16px 0;
  background: #f3f3f3;
  text-align: center; }

.btn {
  display: inline-block;
  padding: 8px 24px;
  text-decoration: none;
  background: #322d39;
  color: #fafafa;
  border-radius: 2px; }
  .btn:hover {
    opacity: .7; }

.flag-title {
  width: 300px;
  padding-left: 32px;
  font-size: 10px; }
  .flag-title.blue {
    background: url("../image/flag_blue.png") no-repeat 0 50%;
    background-size: 25px auto; }
  .flag-title.green {
    background: url("../image/flag_green.png") no-repeat 0 50%;
    background-size: 25px auto; }
  .flag-title.orange {
    background: url("../image/flag_orange.png") no-repeat 0 50%;
    background-size: 25px auto; }
  .flag-title.white {
    background: url("../image/flag_white.png") no-repeat 0 50%;
    background-size: 25px auto; }
  .flag-title h2 {
    font-size: 20px;
    margin: 0;
    font-weight: normal; }

.about-contents {
  margin-bottom: 32px; }
  .about-contents .flag-title {
    margin-bottom: 16px; }
  .about-contents .company > .info {
    margin-bottom: 8px;
    font-size: 12px; }
    .about-contents .company > .info .key:after {
      content: ":"; }
  .about-contents .history > .info {
    margin-bottom: 8px;
    font-size: 12px; }
  .about-contents .recruit > .info {
    margin-bottom: 8px;
    font-size: 12px; }
    .about-contents .recruit > .info a {
      color: #fafafa;
      text-decoration: none; }
      .about-contents .recruit > .info a:hover {
        text-decoration: underline; }
      .about-contents .recruit > .info a:before {
        content: "> "; }

/*# sourceMappingURL=main.css.map */
