@charset "UTF-8";
@media screen and (min-width: 768px), print {
  /* PCのCSS */
  .seo_bread_list a,
  .seo_bread_list {
    color: #fff !important;
    font-size: 14px;
  }
  #contentsmain {
    width: 100%;
    height: 760px;
    margin: -74px auto 80px;
    position: relative;
    overflow: hidden;
  }
  #contentsmain .inner-Box {
    /* margin: 0 auto; */
  }
  .contentsmain-img {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
  .contentsmain-textbox {
    width: 573px;
    background-color: #fff;
    padding: 50px 20px 50px 50px;
    box-shadow: 20px 20px 40px rgba(0, 0, 0, 0.1);
    position: absolute;
    left: 50%;
    top: 360px;
  }
  .message-name {
    text-align: right;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.28;
    padding-right: 40px;
  }
  #contents01 {
    width: 100%;
    height: 450px;
    margin-bottom: 80px;
    font-weight: 400;
    letter-spacing: 0;
  }
  #contents01 .inner-Box {
    max-width: 1920px;
    width: 100%;
    height: 450px;
    margin: 0 auto;
    background: url("../images/message/contens-photo02.png") no-repeat top center;
    position: absolute; /* or relative, fixed, etc. */
    left: 50%;
    transform: translateX(-50%);
  }
  #contents01 .contents01-textbox {
    width: 1150px;
    margin: 0 auto;
    padding-left: 670px;
    padding-top: 70px;
  }

  #contents01 .contents01-textbox strong {
    font-weight: 700;
  }
  #contents02 {
    width: 100%;
    background: url("../images/message/contens02-bg.png") repeat-y;
    line-height: 1.75;
    padding-top: 140px;
    margin-top: -140px;
    font-weight: 400;
    letter-spacing: 0;
  }

  #contents02 .contents02-box01,
  #contents02 .contents02-box02,
  #contents02 .contents02-box03 {
    width: 1200px;
    margin: 0 auto 70px;
  }
  #contents02 .contents02-box01-textbox,
  #contents02 .contents02-box02-textbox,
  #contents02 .contents02-box03-textbox {
    width: 560px;
    background-color: #fff;
    padding: 50px;
    box-shadow: 20px 20px 40px rgba(0, 0, 0, 0.1);
    order: 1;
  }
  #contents02 .contents02-box02 {
    position: relative;
  }
  #contents02 .contents02-box02-textbox {
    position: absolute;
    right: 0;
  }
  #contents02 .contents02-box01-textbox,
  #contents02 .contents02-box02-textbox,
  #contents02 .contents02-box03-textbox {
    z-index: 1;
  }
  .message-ttltext {
    font-size: 40px;
    font-weight: 900;
    color: #0a3a72;
    line-height: 1.08;
    margin-bottom: 20px;
  }
  .contents02-box01,
  .contents02-box02 {
    display: flex;
    align-items: flex-start;
  }
  .contents02-box01-img {
    order: 2;
    margin-top: 50px;
    margin-left: -50px;
  }

  .contents02-box02-img {
    margin-top: 50px;
    margin-left: 50px;
  }

  #contents02 .contents02-box03-textbox {
    width: 1100px;
    margin: -90px auto 0;
    display: flex;
    align-items: center;
    z-index: 1;
    position: relative;
  }
  #contents02 .contents02-box03-textbox .message-ttltext {
    width: 50%;
    display: flex;
    justify-content: center;
  }
  #contents02 .contents02-box03-textbox p {
    width: 50%;
  }

  #contents02::after {
    content: "";
    background: url("../images/message/contens-photo05-bg.png") no-repeat;
    height: 476px;
    width: 100%;
    display: block;
    margin: -476px auto 0;
  }

  #contentsbottom .inner-Box2 {
    margin: 0 auto;
    position: relative;
    width: 1100px;
  }
  #contentsbottom .inner-Box2 ul {
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  #contentsbottom .inner-Box2 ul li {
    position: relative;
    width: 340px;
    margin-right: 40px;
  }
  #contentsbottom .inner-Box2 ul li:nth-child(3n) {
    margin-right: 0px;
  }
  #contentsbottom .inner-Box2 ul li a {
  }
  #contentsbottom .inner-Box2 ul li a:hover {
  }
  #contentsbottom .inner-Box2 figure {
    position: relative;
    top: 0;
    left: 0;
    margin: 0 0 15px;
  }
  #contentsbottom .inner-Box2 figure img {
  }
  #contentsbottom .inner-Box2 p.ltext {
    font-size: 16px;
    line-height: 1.75;
    font-weight: 400;
    letter-spacing: 0px;
    margin-bottom: 30px;
    position: relative;
  }
  #contentsbottom {
    padding: 110px 0 60px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1450px) {
  /* ブレイクポイント　必要であれば */
}

@media screen and (max-width: 767px) {
  /* SPのCSS */
  .main-title {
    margin-bottom: 0;
  }
  #contentsmain {
    font-size: 3.86vw;
    letter-spacing: 0;
  }
  .contentsmain-textbox {
    background: #fff;
    position: relative;
    z-index: 1;
    margin: -9.66vw 4.11vw 9.66vw;
    padding: 4.11vw;
    box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.1);
  }
  #contentsmain .message-ttltext {
    font-size: 7vw;
    font-weight: 900;
    line-height: 1.07;
    color: #0a3a72;
  }

  .message-name {
    text-align: right;
  }

  #contents01 .inner-Box {
    margin: 0 4.11vw;
    padding: 0 4.11vw 9.66vw;
    line-height: 1.75;
    font-weight: 400;
  }
  .contents01-textbox {
    margin-top: 9.66vw;
  }
  .contents01-textbox strong {
    font-weight: 700;
    line-height: 1.75;
  }

  #contents02 {
    background: url(../images/message/contens02-bg.png) repeat-y;
    margin: 0;
    padding: 9.66vw 4.11vw 0;
  }
  #contents02 .contents02-box01-textbox,
  #contents02 .contents02-box02-textbox,
  #contents02 .contents02-box03-textbox {
    background-color: #fff;
    margin-top: 4.83vw;
    padding: 7.25vw 4.11vw;
    line-height: 1.75;
    box-shadow: 20px 20px 40px rgba(0, 0, 0, 0.1);
  }
  #contents02 .message-ttltext {
    font-size: 7vw;
    font-weight: 900;
    line-height: 1.07;
    text-align: center;
    color: #0a3a72;
    margin-bottom: 7vw;
  }

  #contents02 .contents02-box01,
  #contents02 .contents02-box02 {
    margin-bottom: 9.66vw;
  }

  #contents02 .contents02-box03-img {
    margin: 0 calc(50% - 50vw);
    width: 100vw;
  }
  #contents02 .contents02-box03-textbox {
    margin-top: -4.83vw;
    position: relative;
    z-index: 1;
  }
  #contents02 .contents02-box03 {
    background-color: #ddd;
    background: url(../images/message/sp-contens-photo05-bg.png) repeat-y;
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    padding: 0 4.83vw 19.32vw;
  }

  #contentsbottom .inner-Box2 {
    margin: 0 9vw;
    position: relative;
  }
  #contentsbottom .inner-Box2 ul {
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  #contentsbottom .inner-Box2 ul li {
    position: relative;
    margin-bottom: 0.66vw;
  }
  #contentsbottom .inner-Box2 ul li:nth-child(3n) {
    margin-right: 0vw;
  }
  #contentsbottom .inner-Box2 ul li a {
  }
  #contentsbottom .inner-Box2 ul li a:hover {
  }
  #contentsbottom .inner-Box2 figure {
    position: relative;
    top: 0;
    left: 0;
    margin: 0 0 3.62vw;
  }
  #contentsbottom .inner-Box2 figure img {
  }
  #contentsbottom .inner-Box2 p.ltext {
    font-size: 3.86vw;
    line-height: 1.75;
    font-weight: 400;
    letter-spacing: 0vw;
    margin-bottom: 7.25vw;
    position: relative;
  }
  #contentsbottom {
    padding-top: 14.49vw;
  }
}
