.ttl {
  text-align: center;
  padding-bottom: 40px; }
  .ttl span {
    display: block; }
    .ttl span.main_ttl .message {
      width: 140px; }
    .ttl span.main_ttl .profile {
      width: 108px; }
    .ttl span.sub_ttl {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1;
      padding-top: 20px;
      font-weight: normal; }

.main {
  position: relative;
  margin-bottom: 140px; }
  .main img {
    width: 100%;
    height: auto; }
  .main .main_txt {
    background-color: #fff;
    width: 710px;
    top: 530px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    position: absolute; }
    .main .main_txt h2 {
      font-size: 36px;
      font-size: 3.6rem;
      line-height: 1.3;
      padding: 30px 60px 15px; }
    .main .main_txt p {
      text-align: center; }

.message_detail_inner {
  width: 1000px;
  margin: 0 auto; }

#profile {
  padding-bottom: 60px; }

.profile_inner {
  display: flex;
  flex-wrap: wrap; }
  .profile_inner .photo {
    width: 50%; }
  .profile_inner .txt {
    width: 50%;
    padding-left: 20px; }
    .profile_inner .txt .belongs {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 2;
      padding-bottom: 1em; }
    .profile_inner .txt .name {
      font-size: 32px;
      font-size: 3.2rem;
      font-weight: bold;
      padding-bottom: 1em; }
      .profile_inner .txt .name span {
        font-weight: normal;
        display: block;
        font-size: 12px;
        font-size: 1.2rem;
        padding-top: 0.8em; }
    .profile_inner .txt dl dt img {
      width: 220px; }
    .profile_inner .txt dl dd {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.5;
      padding-top: 16px; }

.movie {
  width: 800px;
  margin: 0 auto 90px; }
  .movie a {
    display: block;
    position: relative; }
    .movie a:before {
      content: "";
      width: 90px;
      height: 90px;
      background: url(../images/common/icon_play.png) 0 0 no-repeat;
      background-size: 100% auto;
      position: absolute;
      top: 50%;
      left: 50%;
      z-index: 3;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }
    .movie a:after {
      z-index: 2;
      background-color: rgba(0, 0, 0, 0.5);
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0%;
      left: 0%; }

.message_block {
  padding-bottom: 50px; }
  .message_block h4 {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.5;
    padding-bottom: 1em; }
  .message_block p {
    line-height: 1.6;
    padding-bottom: 1em; }

.back_btn {
  padding-bottom: 40px; }

@media screen and (max-width: 1300px) {
  .ttl {
    padding-bottom: calc(30 / 1300 * 100vw); }
    .ttl span.main_ttl {
      font-size: calc(28 / 1300 * 100vw);
      padding-top: calc(20 / 1300 * 100vw); }
      .ttl span.main_ttl .message {
        width: calc(140 / 1300 * 100vw); }
      .ttl span.main_ttl .profile {
        width: calc(108 / 1300 * 100vw); }
    .ttl span.sub_ttl {
      font-size: calc(14 / 1300 * 100vw);
      padding-top: calc(10 / 1300 * 100vw); }

  .main {
    margin-bottom: calc(140 / 1300 * 100vw); }
    .main .main_txt {
      width: calc(710 / 1300 * 100vw);
      top: calc(530 / 1300 * 100vw); }
      .main .main_txt h2 {
        font-size: calc(36 / 1300 * 100vw);
        padding: calc(30 / 1300 * 100vw) calc(60 / 1300 * 100vw) calc(15 / 1300 * 100vw); }

  .message_detail_inner {
    width: calc(1000 / 1300 * 100vw); }

  #profile {
    padding-bottom: calc(60 / 1300 * 100vw); }

  .profile_inner .txt {
    padding-left: calc(20 / 1300 * 100vw); }
    .profile_inner .txt .belongs {
      font-size: calc(14 / 1300 * 100vw); }
    .profile_inner .txt .name {
      font-size: calc(32 / 1300 * 100vw); }
      .profile_inner .txt .name span {
        font-size: calc(12 / 1300 * 100vw); }
    .profile_inner .txt dl dt img {
      width: calc(220 / 1300 * 100vw); }
    .profile_inner .txt dl dd {
      font-size: calc(14 / 1300 * 100vw);
      padding-top: calc(16 / 1300 * 100vw); }

  .movie {
    width: calc(800 / 1300 * 100vw);
    margin: 0 auto calc(90 / 1300 * 100vw); }
    .movie a:before {
      width: calc(90 / 1300 * 100vw);
      height: calc(90 / 1300 * 100vw); }

  .message_block {
    padding-bottom: calc(50 / 1300 * 100vw); }
    .message_block h4 {
      font-size: calc(24 / 1300 * 100vw); }

  .back_btn {
    padding-bottom: calc(40 / 1300 * 100vw); }
    .back_btn img {
      width: calc(250 / 1300 * 100vw); } }
@media screen and (max-width: 768px) {
  #header_txt {
    display: none; }

  .ttl {
    padding-bottom: calc(50 / 768 * 100vw); }
    .ttl img {
      width: calc(100 / 768 * 100vw); }
    .ttl span.main_ttl {
      font-size: calc(56 / 768 * 100vw);
      padding-top: calc(20 / 768 * 100vw); }
      .ttl span.main_ttl .message {
        width: calc(270 / 768 * 100vw); }
      .ttl span.main_ttl .profile {
        width: calc(216 / 768 * 100vw); }
    .ttl span.sub_ttl {
      font-size: calc(24 / 768 * 100vw);
      padding-top: calc(30 / 768 * 100vw); }

  .main {
    margin-bottom: calc(280 / 768 * 100vw); }
    .main img {
      width: 100vw;
      height: calc(615 / 768 * 100vw);
      object-fit: cover; }
    .main .main_txt {
      width: calc(680 / 768 * 100vw);
      top: calc(540 / 768 * 100vw); }
      .main .main_txt h2 {
        font-size: calc(48 / 768 * 100vw);
        padding: calc(30 / 768 * 100vw); }
      .main .main_txt p {
        font-size: calc(28 / 768 * 100vw); }

  .message_detail_inner {
    width: 100%; }

  #profile {
    padding-bottom: calc(130 / 768 * 100vw); }

  .profile_inner .photo {
    width: 100%;
    order: 2;
    text-align: center; }
    .profile_inner .photo img {
      width: calc(600 / 768 * 100vw); }
  .profile_inner .txt {
    width: 100%;
    order: 1;
    padding-left: 0;
    padding: 0 calc(30 / 768 * 100vw) calc(45 / 768 * 100vw); }
    .profile_inner .txt .belongs {
      font-size: calc(28 / 768 * 100vw); }
    .profile_inner .txt .name {
      font-size: calc(48 / 768 * 100vw);
      padding-bottom: 1em; }
      .profile_inner .txt .name span {
        font-size: calc(24 / 768 * 100vw); }
    .profile_inner .txt dl dt img {
      width: calc(420 / 768 * 100vw); }
    .profile_inner .txt dl dd {
      font-size: calc(28 / 768 * 100vw);
      padding-top: 1em; }

  .movie {
    width: 100%;
    margin: 0 auto calc(100 / 768 * 100vw); }
    .movie a:before {
      width: calc(80 / 768 * 100vw);
      height: calc(80 / 768 * 100vw); }

  .message_block {
    padding: 0 calc(30 / 768 * 100vw) calc(85 / 768 * 100vw); }
    .message_block h4 {
      font-size: calc(32 / 768 * 100vw); }
    .message_block p {
      font-size: calc(28 / 768 * 100vw); }

  .back_btn {
    padding: 0 calc(30 / 768 * 100vw) calc(130 / 768 * 100vw); }
    .back_btn img {
      width: calc(416 / 768 * 100vw); } }
