@charset "UTF-8";
/* CSS Document */
/*色*/
/*フォント*/
main a.more {
  letter-spacing: 0.08em;
  color: #050505;
  display: inline-flex;
  align-items: center;
  border-bottom: 0.8px solid #2b2b2b;
  padding: 5px 0; }
  main a.more img {
    margin-left: 10px;
    width: 30px; }
main #about {
  background: #f4f2ee;
  padding-top: 110px;
  padding-bottom: 130px;
  display: flex;
  flex-direction: column;
  align-items: center; }
  main #about h2 {
    writing-mode: vertical-rl;
    line-height: 1.8;
    font-weight: 600;
    font-size: 3.4rem;
    letter-spacing: 0.2em;
    padding-left: 40px;
    padding-bottom: 25px;
    background: url("../image/title_icon.png");
    background-repeat: no-repeat;
    background-size: 25px;
    background-position: bottom right 0; }
  main #about .wrap_cont {
    display: flex; }
    main #about .wrap_cont .img_box {
      width: 45%;
      margin-top: -20px; }
    main #about .wrap_cont .txt_box {
      width: 55%;
      padding: 0 5%;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      margin: 65px 0; }
      main #about .wrap_cont .txt_box h3 {
        font-weight: 500;
        font-size: 2.2rem;
        margin-bottom: 40px; }
    main #about .wrap_cont a.more {
      margin-top: 40px; }
main #commitment {
  background: url("../image/bg_commitment.jpg");
  background-size: cover;
  padding: 120px 0;
  color: #ffffff; }
  main #commitment .contbox {
    display: flex;
    flex-direction: column;
    align-items: center; }
    main #commitment .contbox h2 {
      writing-mode: vertical-rl;
      /* font-size: 2.4rem; */
      line-height: 1.8;
      font-weight: 600;
      font-size: 3.4rem;
      letter-spacing: 0.2em;
      margin-bottom: 65px; }
    main #commitment .contbox .wrap_cont {
      text-align: center; }
      main #commitment .contbox .wrap_cont .lead {
        margin: 66px 0 40px; }
      main #commitment .contbox .wrap_cont h3 {
        font-weight: 500;
        font-size: 2rem;
        margin-bottom: 13px; }
        main #commitment .contbox .wrap_cont h3 strong {
          font-weight: normal;
          border-bottom: 1px solid #fff;
          padding-bottom: 3px; }
      main #commitment .contbox .wrap_cont .col-md-6 {
        margin-bottom: 45px; }
    main #commitment .contbox .more {
      margin-top: 0;
      color: #ffffff;
      border-bottom: 0.8px solid #ffffff; }
main #products {
  background: #f4f2ee;
  padding: 120px 0; }
  main #products .contbox {
    display: flex;
    flex-direction: column;
    align-items: center; }
    main #products .contbox h2 {
      writing-mode: vertical-rl;
      line-height: 1.8;
      font-weight: 600;
      font-size: 3.4rem;
      letter-spacing: 0.2em;
      padding-left: 40px;
      padding-bottom: 25px;
      background: url("../image/title_icon.png");
      background-repeat: no-repeat;
      background-size: 25px;
      background-position: bottom right 0;
      margin: 70px; }
    main #products .contbox .wrap_cont {
      text-align: center; }
      main #products .contbox .wrap_cont .lead {
        margin-bottom: 45px; }
      main #products .contbox .wrap_cont ul li {
        padding: 0 70px;
        margin-bottom: 50px; }
        main #products .contbox .wrap_cont ul li img {
          margin-bottom: 10px; }
  main #products .pict_box {
    margin-top: 120px; }
    main #products .pict_box img {
      width: 95%; }
main #flow {
  background: #f4f2ee;
  padding: 75px 0 120px; }
  main #flow h2 {
    font-weight: normal;
    font-size: 3.4rem;
    margin-bottom: 65px; }
  main #flow .lead {
    margin-bottom: 25px; }
  main #flow ul {
    margin-bottom: 40px;
    padding-left: 25px; }
    main #flow ul li {
      font-weight: normal;
      font-size: 2rem;
      margin-bottom: 25px;
      line-height: 45px; }
      main #flow ul li strong {
        display: inline-block;
        width: 45px;
        height: 45px;
        flex-shrink: 0;
        line-height: 45px;
        border: 1px solid #707070;
        border-radius: 50%;
        text-align: center;
        margin-right: 20px; }
main #news {
  background: #FFFFFF;
  padding: 75px 0 120px; }
  main #news .contbox {
    display: flex;
    flex-direction: column;
    align-items: center; }
    main #news .contbox h2 {
      writing-mode: vertical-rl;
      line-height: 1.8;
      font-weight: 600;
      font-size: 3.4rem;
      letter-spacing: 0.2em;
      padding-left: 40px;
      padding-bottom: 25px;
      background: url("../image/title_icon.png");
      background-repeat: no-repeat;
      background-size: 25px;
      background-position: bottom right 0;
      margin: 70px; }
    main #news .contbox .wrap_cont {
      width: 100%; }
      main #news .contbox .wrap_cont .news-list ul {
        border-top: 1px solid #909090;
        margin-bottom: 60px; }
        main #news .contbox .wrap_cont .news-list ul li {
          border-bottom: 1px solid #909090;
          padding: 15px 0; }
          main #news .contbox .wrap_cont .news-list ul li a {
            color: #909090; }
          main #news .contbox .wrap_cont .news-list ul li span.date {
            font-size: 15px;
            color: #909090;
            display: inline-block;
            width: 200px; }
@media (max-width: 768px) {
  main a.more {
    display: block;
    width: fit-content;
    margin: auto; }
  main #about {
    background: #f4f2ee;
    padding-top: 60px;
    padding-bottom: 70px;
    display: flex;
    flex-direction: column;
    align-items: center; }
    main #about h2 {
      font-size: 2.4rem;
      margin-bottom: 30px;
      background-size: 18px; }
    main #about .wrap_cont {
      display: block; }
      main #about .wrap_cont .img_box {
        width: 95%;
        margin-top: 0; }
      main #about .wrap_cont .txt_box {
        width: 100%;
        padding: 0 5%;
        display: block;
        margin: 40px 0 0; }
        main #about .wrap_cont .txt_box h3 {
          font-size: 1.8rem;
          margin-bottom: 30px; }
      main #about .wrap_cont a.more {
        margin-top: 40px; }
  main #commitment {
    padding: 70px 0; }
    main #commitment .contbox h2 {
      font-size: 2.4rem;
      margin-bottom: 40px; }
    main #commitment .contbox .wrap_cont {
      text-align: center; }
      main #commitment .contbox .wrap_cont .lead {
        margin: 0 0 30px;
        text-align: left; }
      main #commitment .contbox .wrap_cont h3 {
        font-size: 1.8rem;
        margin-bottom: 13px; }
      main #commitment .contbox .wrap_cont .col-md-6 {
        margin-bottom: 35px; }
  main #products {
    background: #f4f2ee;
    padding: 65px 0; }
    main #products .contbox h2 {
      font-size: 2.4rem;
      padding-left: 0;
      background-size: 25px;
      margin-bottom: 50px; }
    main #products .contbox .wrap_cont {
      text-align: center; }
      main #products .contbox .wrap_cont .lead {
        margin-bottom: 40px;
        text-align: left; }
      main #products .contbox .wrap_cont ul {
        margin: 0; }
        main #products .contbox .wrap_cont ul li {
          padding: 0 0;
          margin-bottom: 35px; }
    main #products .pict_box {
      margin-top: 60px; }
      main #products .pict_box img {
        width: 100%; }
  main #flow {
    background: #f4f2ee;
    padding: 0 0 70px; }
    main #flow h2 {
      font-weight: normal;
      font-size: 2.4rem;
      margin-bottom: 35px; }
    main #flow .lead {
      margin-bottom: 40px; }
    main #flow ul {
      padding-left: 0; }
      main #flow ul li {
        font-weight: normal;
        font-size: 1.7rem;
        margin-bottom: 25px;
        line-height: 1.8em;
        display: flex;
        align-items: center; }
        main #flow ul li strong {
          display: inline-block;
          width: 40px;
          height: 40px;
          text-align: center;
          margin-right: 15px;
          line-height: 40px; } }
