@charset "UTF-8";
/*///////////////////////////////////////////////////////////////////////////////////////
****************************************************************************************

 変数

****************************************************************************************
****************************************************************************************/
/*///////////////////////////////////////////////////////////////////////////////////////
****************************************************************************************

 htmlタグ

****************************************************************************************
****************************************************************************************/
html {
  font-size: 62.5%; }
  html body {
    color: #000;
    font-size: 1.2em;
    font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    background: #fff;
    -webkit-text-size-adjust: 100%; }
  html body, html p, html ul, html h1, html h2, html h3, html h4, html figure, html figcaption, html dl, html dt, html dd {
    margin: 0;
    padding: 0; }
  html header, html section, html footer, html main, html nav, html figcaption {
    display: block; }
  html img {
    border: 0;
    vertical-align: top;
    max-width: 100%;
    height: auto; }
  html li {
    list-style: none; }
  html table, html th, html td {
    border-spacing: 0;
    border-collapse: collapse; }

/*///////////////////////////////////////////////////////////////////////////////////////
****************************************************************************************

 class

****************************************************************************************
****************************************************************************************/
/****************************************************************************************
 共通要素
****************************************************************************************/
#fixedTop {
  display: none;
  bottom: 0;
  width: 100%;
  height: 50px;
  line-height: 50px;
  color: #fff;
  font-size: 1.5em;
  font-weight: bold;
  text-align: center;
  background: #941027;
  position: fixed;
  z-index: 9999;
  text-decoration: none;
  -webkit-transform: translateZ(0); }
  #fixedTop:hover {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 0.8; }

body .main-wrap .main-ttl {
  text-align: center; }
body .clearfix:after {
  content: "";
  clear: both;
  display: block; }
body .pd20 {
  padding: 20px; }
body .center {
  text-align: center; }
body .sig {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  width: 300px;
  height: 74px;
  background: url("../img/sig.png") no-repeat;
  margin-left: auto;
  margin-top: 10px; }
body .background {
  padding-top: 20px;
  max-width: 702px;
  margin: 0 auto; }
  body .background .form_title {
    margin-top: 20px; }
  body .background form {
    margin-top: 0 !important;
    margin-bottom: 20px;
    padding: 0;
    background-color: transparent !important; }
    body .background form table {
      margin-bottom: 10px; }
      body .background form table th {
        display: none; }
      body .background form table input[type='text'] {
        width: 100% !important; }
  body .background .input_area {
    width: 100% !important;
    float: none; }
body .red {
  color: #941027; }
body h1 a:hover {
  opacity: 0.5; }
body .mgt20 {
  margin-top: 20px; }
body .mgt40 {
  margin-top: 40px; }
body .mgt100 {
  margin-top: 100px !important; }
body .fs13 {
  font-size: 1.3em; }
body .box-type01 .img {
  max-width: 631px;
  margin: 20px auto 0; }
body .tab-ttl-btn, body .tab-ttl-img {
  display: none; }
body .tab-ttl-btn, body .sp-ttl-btn {
  width: 100%;
  text-align: center;
  background-color: #c1a872; }
  body .tab-ttl-btn a, body .sp-ttl-btn a {
    color: black;
    font-size: 3.0em;
    line-height: 3.0em;
    display: block; }
body .fs12 {
  font-size: 1.2em; }
body .fs15 {
  font-size: 1.5em; }
body .fs20 {
  font-size: 2em; }

/****************************************************************************************
 header画像
****************************************************************************************/
.top-area {
  background: url("../img/main_bg.png") #2D49F7 no-repeat center top; }
  .top-area .top-ttl-area {
    width: 315px;
    margin: 0 auto; }
  .top-area .top-ttl-txt {
    width: 858px;
    margin-left: auto;
    padding: 20px 0 10px;
    color: #c1a872;
    font-size: 20px;
    line-height: 1.2; }
    .top-area .top-ttl-txt span {
      display: inline-block;
      padding-right: 220px; }
  .top-area .top-ttl-inr {
    width: 858px;
    margin-left: auto;
    padding: 0 0 40px;
    position: relative; }
  .top-area .sp-ttl-img {
    display: none; }
  .top-area .top-catch-area {
    background: #333;
    padding: 13px 0; }
    .top-area .top-catch-area ul {
      width: 980px;
      min-height: 53px;
      margin: 0 auto;
      padding-left: 115px;
      color: #c1a872;
      font-size: 16px;
      box-sizing: border-box; }
      .top-area .top-catch-area ul .upper-txt {
        width: 100%;
        height: 100%; }
        .top-area .top-catch-area ul .upper-txt:after {
          content: "";
          display: block;
          height: 1px;
          width: 100%;
          background: -webkit-gradient(linear, left top, right bottom, from(#c1a872), to(transparent));
          background: -moz-linear-gradient(left, #c1a872, transparent);
          background: linear-gradient(left, #c1a872, transparent);
          margin-top: 5px;
          margin-bottom: -5px; }
      .top-area .top-catch-area ul .lower-txt {
        padding-top: 10px; }
    .top-area .top-catch-area ul:before {
      opacity: 0.8;
      content: "\f16d";
      font-size: 4em;
      float: left;
      /* height: 0em; */
      line-height: 2em;
      margin-right: -17px;
      margin-left: -70px;
      margin-top: -0.6em; }

/****************************************************************************************
 area共通
****************************************************************************************/
body .wrapper header {
  max-width: 1524px;
  margin: 0 auto; }
body .main-wrap {
  max-width: 980px;
  margin: 0 auto; }
body .txt-box {
  position: relative;
  padding: 30px 30px 0;
  box-sizing: border-box;
  background-color: white;
  border: 1px solid #c1a872; }
  body .txt-box dt {
    border-left: solid 3px #9d1f24;
    padding-left: 10px;
    line-height: 1.1;
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3","游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 28px;
    margin-bottom: 16px; }
  body .txt-box dd {
    font-size: 18px;
    line-height: 1.4; }
    body .txt-box dd.sp-txt-img {
      display: none; }
  body .txt-box .name {
    text-align: right;
    position: absolute;
    bottom: 30px;
    right: 30px; }
body .box-type01 {
  max-width: 980px;
  padding: 10px 40px 20px;
  background: #fff no-repeat right bottom;
  box-sizing: border-box;
  font-size: 20px;
  line-height: 1.5; }
  body .box-type01 p + p {
    margin-top: 20px; }
  body .box-type01 .btn-type01 a {
    width: 660px;
    height: 110px;
    display: block;
    color: #fff;
    text-decoration: none;
    margin: 45px auto 0;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0.97, #770d1f), color-stop(0, #941027));
    background: -webkit-linear-gradient(top, #941027 0%, #770d1f 97%);
    background: -moz-linear-gradient(top, #941027 0%, #770d1f 97%);
    background: -o-linear-gradient(top, #941027 0%, #770d1f 97%);
    background: -ms-linear-gradient(top, #941027 0%, #770d1f 97%);
    background: linear-gradient(to bottom, #941027 0%, #770d1f 97%); }
    body .box-type01 .btn-type01 a:hover {
      opacity: 0.8; }
    body .box-type01 .btn-type01 a span {
      width: 660px;
      height: 110px;
      background: url("../img/arrow02.png") no-repeat center 70px;
      padding-top: 24px;
      box-sizing: border-box;
      display: block;
      font-size: 30px;
      line-height: 1.0;
      text-align: center; }

.wrapper ul {
  margin-top: 20px;
  margin-bottom: 20px; }
  .wrapper ul li {
    position: relative;
    font-size: 1.2em;
    margin-left: 40px; }
    .wrapper ul li::after, .wrapper ul li::before {
      display: block;
      content: "";
      position: absolute; }
    .wrapper ul li::after {
      top: .24em;
      left: -1.3em;
      width: 20px;
      height: 20px;
      background-color: #941027;
      border-radius: 100%; }
    .wrapper ul li::before {
      z-index: 2;
      top: 0.55em;
      left: -1.05em;
      width: 4px;
      height: 4px;
      border-right: 2px solid #fff;
      border-bottom: 2px solid #fff;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg); }

.main-area00, .main-area01, .main-area02, .main-area03, .profile, .main-area04, .main-area05, .main-area06, .main-area07, .main-area08, .main-area09, .main-area10, .schedule, .apply, .ps {
  padding: 40px 0 40px; }
  .main-area00 .main-ttl, .main-area01 .main-ttl, .main-area02 .main-ttl, .main-area03 .main-ttl, .profile .main-ttl, .main-area04 .main-ttl, .main-area05 .main-ttl, .main-area06 .main-ttl, .main-area07 .main-ttl, .main-area08 .main-ttl, .main-area09 .main-ttl, .main-area10 .main-ttl, .schedule .main-ttl, .apply .main-ttl, .ps .main-ttl {
    line-height: 120px;
    font-size: 32px;
    margin-bottom: 20px; }

/****************************************************************************************
 main-area01
****************************************************************************************/
.main-area01 {
  background: url("../img/bg01.jpg"); }
  .main-area01 .main-ttl {
    line-height: 1.5em;
    font-size: 1.9em; }

/****************************************************************************************
 main-area02
****************************************************************************************/
.main-area02 {
  background: url("../img/bg02.jpg"); }
  .main-area02 .main-ttl {
    margin-bottom: 10px !important; }
  .main-area02 .main-inr {
    max-width: 940px;
    overflow: hidden;
    margin: 27px auto 0; }
  .main-area02 dt {
    font-size: 1.7em !important;
    font-weight: bold; }
  .main-area02 dd {
    font-size: 1.3em !important;
    line-height: 1.3; }

/****************************************************************************************
 main-area03
****************************************************************************************/
.main-area03 {
  background: url("../img/bg01.jpg"); }

/****************************************************************************************
 profile
****************************************************************************************/
.profile {
  background: url("../img/bg02.jpg"); }
  .profile .main-ttl {
    line-height: 1.5em; }
  .profile .box-type01 {
    padding: 40px; }
  .profile .boxprofile {
    width: 100%;
    overflow: hidden; }
    .profile .boxprofile .photo {
      width: 22%;
      float: left; }
    .profile .boxprofile .textcont {
      width: 75%;
      float: right; }
      .profile .boxprofile .textcont .prftitle {
        display: block;
        overflow: hidden;
        line-height: 37px;
        border-bottom: 1px solid #c8c8c8;
        margin: 0 0 15px 0; }
        .profile .boxprofile .textcont .prftitle .txleft {
          font-size: 34px;
          float: left; }
          .profile .boxprofile .textcont .prftitle .txleft .txen {
            font-size: 16px; }
        .profile .boxprofile .textcont .prftitle .txright {
          float: right;
          font-size: 17px; }
      .profile .boxprofile .textcont p {
        font-size: 14px;
        line-height: 1.6; }
        .profile .boxprofile .textcont p span {
          margin-left: -7px; }
      .profile .boxprofile .textcont p.text1 {
        margin-bottom: 50px; }

/****************************************************************************************
 main-area04
****************************************************************************************/
.main-area04 {
  background: url("../img/bg01.jpg"); }

/****************************************************************************************
 main-area05
****************************************************************************************/
.main-area05 {
  background: url("../img/bg02.jpg"); }

/****************************************************************************************
 main-area06
****************************************************************************************/
.main-area06 {
  background: url("../img/bg01.jpg"); }
  .main-area06 .main-ttl {
    line-height: 2em;
    font-size: 2.5em; }

/****************************************************************************************
 main-area07
****************************************************************************************/
.main-area07 {
  background: url("../img/bg02.jpg"); }
  .main-area07 .main-ttl {
    font-size: 2.4em; }

/****************************************************************************************
 main-area08
****************************************************************************************/
.main-area08 {
  background: url("../img/bg01.jpg"); }
  .main-area08 ul li::after {
    top: 0.8em !important; }
  .main-area08 ul li::before {
    top: 1.08em; }

/****************************************************************************************
 main-area09
****************************************************************************************/
.main-area09 {
  background: url("../img/bg02.jpg"); }
  .main-area09 .main-ttl {
    margin-bottom: 10px !important;
    font-size: 4em; }
  .main-area09 .endo .prof {
    width: 180px;
    height: 250px; }
  .main-area09 .endo .img_left {
    margin-right: 25px;
    border: 1px solid #ccc;
    float: left; }
  .main-area09 .endo h3 {
    margin-bottom: 20px;
    margin-top: 20px; }
  .main-area09 .trust p {
    font-size: 0.7em; }
  .main-area09 .trust p + p {
    margin-top: 5px; }

/****************************************************************************************
 main-area10
****************************************************************************************/
.main-area10 {
  background: url("../img/bg01.jpg"); }
  .main-area10 .main-ttl {
    margin-bottom: 10px !important; }

/****************************************************************************************
 schedule
****************************************************************************************/
.schedule {
  background: url("../img/bg02.jpg");
  padding-bottom: 2.6%; }
  .schedule h3.btitle {
    text-align: center;
    font-size: 46px;
    color: white;
    line-height: 1.5;
    padding: 10px 0;
    margin: 0; }
  .schedule .boxtable {
    margin: 0 auto;
    background-color: white;
    padding: 3%; }
    .schedule .boxtable div + div {
      margin-top: 40px; }
    .schedule .boxtable table.tableinfo {
      width: 100%;
      border: 1px solid #646464; }
      .schedule .boxtable table.tableinfo p {
        margin-top: 5px;
        margin-bottom: 5px; }
      .schedule .boxtable table.tableinfo td {
        border: 1px solid #646464; }
      .schedule .boxtable table.tableinfo td.tbtitle {
        font-size: 26px;
        line-height: 1.5;
        padding: 7px 18px 3px;
        font-weight: bold; }
      .schedule .boxtable table.tableinfo td.tdleft {
        width: 60%;
        border: none;
        border-right: 1px solid #646464; }
      .schedule .boxtable table.tableinfo td.tdright {
        width: 40%;
        border: none;
        text-align: center;
        padding-top: 18px;
        border-right: 1px solid #646464; }
        .schedule .boxtable table.tableinfo td.tdright img {
          width: 92%; }
        .schedule .boxtable table.tableinfo td.tdright p {
          text-align: right;
          padding-right: 18px;
          margin: 4px 0 0; }
          .schedule .boxtable table.tableinfo td.tdright p a {
            font-size: 12px;
            color: #ff6c00;
            text-decoration: underline; }
          .schedule .boxtable table.tableinfo td.tdright p a:hover {
            text-decoration: none; }
      .schedule .boxtable table.tableinfo table {
        width: 100%;
        font-size: 17px;
        line-height: 2.2; }
        .schedule .boxtable table.tableinfo table tr {
          border-bottom: 1px solid #c8c8c8; }
          .schedule .boxtable table.tableinfo table tr:last-child {
            border-bottom: none; }
        .schedule .boxtable table.tableinfo table tr.lasttr {
          border: none; }
        .schedule .boxtable table.tableinfo table td {
          border: none;
          padding: 8px 5px 6px 18px;
          font-weight: bold;
          text-align: left; }
        .schedule .boxtable table.tableinfo table th {
          background-color: whitesmoke;
          width: 18%; }
    .schedule .boxtable .d3dot {
      width: 7px;
      margin: 30px auto 0;
      position: relative; }
      .schedule .boxtable .d3dot span {
        position: absolute;
        top: 15px;
        left: 20px;
        width: 355px;
        font-size: 14px;
        line-height: 1; }
  .schedule .finbase {
    position: relative; }
  .schedule .finished {
    position: absolute;
    text-align: center;
    background-color: rgba(0, 0, 0, 0.8);
    top: 0;
    width: 100%;
    height: 100%;
    color: white;
    font-size: 2.0em;
    font-weight: bold; }
    .schedule .finished h2 {
      text-align: center;
      line-height: 1.5em;
      margin-top: 18%; }

/****************************************************************************************
 apply
****************************************************************************************/
.apply {
  background-color: #941027; }
  .apply .main-ttl {
    margin-bottom: 10px !important;
    color: white; }
  .apply .boxinput {
    width: 100%;
    overflow: hidden; }
    .apply .boxinput h2 {
      text-align: center; }
    .apply .boxinput h4 {
      color: white;
      font-size: 22px;
      background: url("../img/icon_lefttitle_area15.png") no-repeat left center;
      padding-left: 30px;
      padding-top: 2px;
      margin: 0 0 4px 0; }
    .apply .boxinput p {
      font-size: 13px;
      color: white;
      margin: 0;
      line-height: 1.4; }
    .apply .boxinput .left {
      width: 48%;
      float: left; }
    .apply .boxinput .right {
      width: 48%;
      float: right;
      margin-top: 0 !important; }
    .apply .boxinput form {
      background-color: whitesmoke;
      padding: 2.5% 5%;
      margin-top: 14px; }
      .apply .boxinput form input[type="text"], .apply .boxinput form input[type="email"], .apply .boxinput form input[type="tel"] {
        padding: 10px; }
      .apply .boxinput form table {
        width: 100%;
        font-size: 16px; }
        .apply .boxinput form table th {
          text-align: left;
          font-weight: bold; }
          .apply .boxinput form table th span {
            color: #b80000;
            font-size: 13px; }
        .apply .boxinput form table td {
          width: 65%;
          padding: 12px 0; }
          .apply .boxinput form table td input, .apply .boxinput form table td select {
            width: 100%;
            font-size: 16px;
            line-height: 1.5;
            border: 1px solid black; }
          .apply .boxinput form table td select {
            text-align: center; }
        .apply .boxinput form table td.tdbtn {
          text-align: center; }
          .apply .boxinput form table td.tdbtn input {
            border: none; }

/****************************************************************************************
 ps
****************************************************************************************/
.ps {
  background: url("../img/bg01.jpg"); }
  .ps .main-ttl {
    margin-bottom: 10px !important; }

/****************************************************************************************
 gotoform
****************************************************************************************/
.buttonFooter {
  overflow: hidden;
  width: 100%;
  padding-bottom: 30px; }
  .buttonFooter .submit-btn {
    text-align: center;
    margin: 0 auto;
    display: block;
    text-decoration: none;
    font-size: 1.4em;
    color: #fff;
    /* padding: 20px 30px; */
    padding: 20px;
    font-weight: bold;
    border: none;
    background: #00AE20;
    -webkit-box-shadow: 3px 3px 3px 0 rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 3px 3px 3px 0 rgba(0, 0, 0, 0.3);
    box-shadow: 3px 3px 3px 0 rgba(0, 0, 0, 0.3); }
    .buttonFooter .submit-btn:hover {
      opacity: 0.8; }

/****************************************************************************************
 Footer
****************************************************************************************/
.footer {
  max-width: 980px;
  margin: 0 auto;
  text-align: center;
  padding-top: 20px; }
  .footer ul li {
    list-style: none;
    float: left; }
    .footer ul li a {
      color: black; }
      .footer ul li a:hover {
        color: #941027;
        text-decoration: underline;
        font-weight: bold; }
  .footer ul li + li {
    margin-left: 10px; }

/****************************************************************************************
 メディアクエリ(min-width: 900px)
****************************************************************************************/
@media (min-width: 900px) {
  .box-left {
    float: left; }

  .box-right {
    float: right; }

  .txt-box {
    background-size: 450px auto;
    width: 450px;
    height: 283px; } }
/****************************************************************************************
 メディアクエリ(max-width: 1060px)
****************************************************************************************/
@media (max-width: 1060px) {
  .main-ttl {
    margin-left: 10px; } }
/****************************************************************************************
 メディアクエリ(max-width: 980px)
****************************************************************************************/
@media (max-width: 980px) {
  .top-area {
    background: none; }

  .top-ttl-area {
    display: none; }

  .top-catch-area ul {
    padding-left: 98px; }
    .top-catch-area ul li {
      font-size: 0.8em; }

  .txt-box {
    min-height: 190px;
    height: auto;
    width: 100%; }
    .txt-box .name {
      position: inherit !important;
      bottom: 0 !important;
      right: 0 !important;
      margin-top: 20px;
      margin-bottom: 20px; }

  .txt-box.txt-box {
    margin: 0 auto 20px; }

  .main-area01 .main-inr {
    width: 98%;
    margin: 0 auto; }

  .main-wrap {
    width: 100%; }

  .tab-ttl-btn, .tab-ttl-img {
    display: block; } }
/****************************************************************************************
 メディアクエリ(max-width: 900px)
****************************************************************************************/
@media (max-width: 900px) {
  .main-area03 .main-ttl, .main-area04 .main-ttl, .main-area05 .main-ttl, .main-area07 .main-ttl, .main-area08 .main-ttl, .main-area09 .main-ttl, .main-area10 .main-ttl, .schedule .main-ttl {
    line-height: 1.5em; }

  .main-wrap {
    padding: 20px; }

  .thanks_video iframe {
    width: 98%;
    margin: 0 auto; }

  .ribbon {
    margin-bottom: 20px; }

  .top-ttl-txt {
    width: 930px;
    margin: 0 10px; }

  .top-ttl-inr {
    width: auto;
    margin: 0 auto;
    padding: 20px 0 20px; }
    .top-ttl-inr h1 img {
      max-width: 70%;
      padding-left: 10px; }

  .top-catch-area ul {
    width: auto;
    margin: 0 10px;
    padding-left: 80px; }

  .main-wrap {
    width: auto;
    margin: 0 10px; }

  .main-ttl {
    margin: 0 auto 10px; }

  .main-area02 .main-ttl {
    margin: 0 auto 10px;
    line-height: 1.5; }
    .main-area02 .main-ttl .br {
      display: block; }

  .box-left, .box-right {
    float: none; }

  .boxinput .left, .boxinput .right {
    float: none !important;
    width: 100% !important; }
  .boxinput .left {
    margin-bottom: 40px; }

  .box-before {
    width: auto;
    height: auto; }

  .box-before-inr {
    width: auto;
    height: auto;
    background-size: 176px auto;
    padding-bottom: 30px; }

  .box-after {
    width: auto;
    height: auto; }

  .box-after-inr {
    width: auto;
    height: auto;
    background-size: 176px auto;
    padding-bottom: 30px; }

  .box-before dl, .box-after dl {
    padding: 40px 0 0 240px; }

  .box-type01 {
    width: auto;
    background-size: 15px auto;
    margin: 0;
    padding: 16px 20px 30px;
    font-size: 13px; }

  .footer ul {
    width: 244px;
    margin: 0 auto;
    font-size: 16px;
    margin-bottom: 40px; } }
/****************************************************************************************
 メディアクエリ(min-width: 768px)
****************************************************************************************/
@media all and (min-width: 768px) {
  .form_title {
    margin: 40px auto 0;
    text-align: center; }

  form {
    margin: 0 auto;
    padding-top: 50px;
    padding-bottom: 50px;
    overflow: hidden; }
    form table {
      display: table;
      width: 650px;
      margin: 0 auto 30px; }
      form table tbody {
        display: table-row-group; }
      form table tr {
        display: table-row; }
      form table th, form table td {
        display: table-cell; }
      form table th {
        text-align: right;
        font-weight: normal;
        padding: 20px 10px 10px 0;
        font-size: 16px;
        white-space: nowrap;
        width: 11em;
        vertical-align: top; }
      form table td {
        padding: 10px 20px;
        font-size: 14px;
        width: 100%; }
        form table td input {
          float: left;
          margin: 2px 7px 0 0; }

  .input_area {
    width: 400px;
    float: left; }

  input[type='text'], input[type='email'], input[type='tel'] {
    width: 400px;
    border: solid 1px #ccc;
    height: 2em;
    margin-bottom: 2px; }

  .submit-btn {
    text-align: center; }

  .background input[type='text'] {
    width: 100% !important; }
  .background .input_area {
    width: 100% !important;
    float: none; } }
/****************************************************************************************
 メディアクエリ(max-width: 767px)
****************************************************************************************/
@media (max-width: 767px) {
  .background {
    padding-bottom: 20px;
    max-width: 600px !important;
    margin: 0 auto; }
    .background form {
      width: 95%;
      margin: 0 auto; }
    .background .form_title {
      margin-left: 10px; }
      .background .form_title h2 {
        line-height: 1em !important; }

  .form_title h2 {
    line-height: 1.2em !important; }

  .submit-btn input {
    width: 100%;
    font-size: 1em !important; } }
/****************************************************************************************
 メディアクエリ(max-width: 640px)
****************************************************************************************/
@media (max-width: 640px) {
  body {
    font-size: 16px; }

  body .main-wrap h2 {
    background: none; }

  .fs20, .fs15 {
    font-size: 1.2em !important; }

  .tableinfo .tdright {
    display: none; }

  .tab-ttl-btn, .tab-ttl-img {
    display: none; }

  .sp-ttl-img, .sp-ttl-btn {
    display: block; }

  .main-ttl {
    background-size: 43px auto;
    padding-left: 52px;
    line-height: 3.0;
    font-size: 30px;
    margin: 0 auto 10px; }

  .main-area02 .main-ttl {
    background-size: 43px auto;
    padding-left: 52px;
    line-height: 3.0;
    margin: 0 auto 10px; }
    .main-area02 .main-ttl.type02 {
      line-height: 1.3; }

  .main-area01 {
    padding: 20px 0 25px; }

  .txt-box dt {
    padding-left: 14px;
    font-size: 17px; }
  .txt-box dd {
    font-size: 13px; }
    .txt-box dd.sp-txt-img {
      display: block;
      text-align: right;
      margin: 10px 0 0; }
      .txt-box dd.sp-txt-img img {
        width: 40%; }
  .txt-box.txt-box.mail03 dd.sp-txt-img img {
    width: 20%; }

  .main-area01 .main-ttl {
    font-size: 1.4em; }

  .main-area02 {
    padding: 20px 0 35px; }

  .main-wrap .mgb20 {
    margin-bottom: 0;
    display: block; }
  .main-wrap .box-before {
    height: 366px;
    margin: 8px auto 0; }
  .main-wrap .box-before-inr {
    height: 366px;
    background: url("../img/man_img01.png") no-repeat center bottom;
    background-size: 114px auto;
    padding-bottom: 0; }
  .main-wrap .box-after {
    height: 288px;
    margin: 8px auto 0; }
  .main-wrap .box-after-inr {
    height: 288px;
    background: url("../img/man_img02.png") no-repeat center bottom;
    background-size: 114px auto;
    padding-bottom: 0; }
  .main-wrap .box-before dl, .main-wrap .box-after dl {
    padding: 20px 20px 0; }
  .main-wrap .box-before dd span, .main-wrap .box-after dd span {
    font-size: 1.4em;
    line-height: 1.2; }

  .main-area02 dd {
    font-size: 1.4em; }

  .box-type01 {
    padding: 10px !important; }
    .box-type01 .btn-type01 a {
      width: 260px;
      height: 65px;
      margin: 16px auto 0; }
      .box-type01 .btn-type01 a span {
        width: 260px;
        height: 65px;
        padding-top: 14px;
        box-sizing: border-box;
        background: url("../img/arrow02.png") no-repeat center 40px;
        background-size: 27px auto;
        font-size: 14px;
        line-height: 1.0; }

  .top-ttl-inr {
    display: none; }

  .top-ttl-txt {
    display: none;
    width: 359px;
    margin: 0 10px;
    font-size: 10px;
    position: absolute;
    left: 153px; }

  .top-catch-area ul li {
    font-size: 0.7em; }

  .tab-ttl-btn a, .sp-ttl-btn a {
    font-size: 2.0em;
    line-height: 2.0em; }

  .background .form_title h2 {
    width: 90%;
    text-align: center; }

  .profile p {
    line-height: 1.5em; }
  .profile .main-ttl {
    font-size: 15px; }

  .buttonFooter .box-type01 {
    padding: 0 !important;
    font-size: 1em; }

  .main-area05 .main-ttl {
    font-size: 28px; }

  .main-area06 .main-ttl {
    font-size: 1.5em; }

  .main-area07 .main-ttl {
    font-size: 2em; }

  .main-area08 .main-ttl {
    font-size: 2em; }

  .main-area09 .main-ttl {
    font-size: 2em; }

  .main-area10 .main-ttl {
    font-size: 2em; }

  .schedule .main-ttl {
    font-size: 2em; } }
/****************************************************************************************
 メディアクエリ(max-width: 520px)
****************************************************************************************/
@media (max-width: 520px) {
  .wrapper {
    min-width: 320px; }

  .main-ttl, .main-area02 .main-ttl {
    font-size: 24px;
    padding-left: 0;
    text-align: center; }

  .thanks_video iframe {
    height: 210px; }

  .main-area09 .endo .img_left {
    float: none;
    width: 180px;
    margin: 40px auto 0; }

  .profile .boxprofile .photo, .profile .boxprofile .textcont {
    float: none;
    width: 100%;
    margin-bottom: 20px; }
  .profile .boxprofile .txen {
    display: none; } }

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