@charset "UTF-8";
@media screen and (max-width: 1024px) {}
@media screen and (max-width: 980px) {
  .header .wide {
    display: none;
  }
  .header .narrow {
    display: block;
  }
  .header-info {
    bottom: -18px;
    right: 0;
    width: 100%;
    text-align: center;
  }
  .page-title {
    padding-top: 0;
  }
  .seminar-info {
    position: relative;
    bottom: auto;
    right: auto;
    padding: 30px 0;
    background: #ffffe0;
    color: #333;
    font-size: 1.4rem;
    line-height: 2.2;
    text-align: center;
  }
  .mainvisual-wrap {
    padding-bottom: 0;
  }
  .main {
    padding: 0;
  }
}
@media screen and (max-width: 896px) {
  .newline {
    display: inline;
  }
  .contents {
    margin: 0 30px;
  }
  .section .heading h2 {
    font-size: 2.5rem;
  }
  .section .offer-wide {
    margin: 50px 0;
    padding: 0;
  }
  .offer div {
    padding-bottom: 20px;
  }
  .offer .flexbox-container, .flexbox-container {
    -webkit-box-orient: vertical;
    /* Android -4.3 */
    flex-direction: column;
  }
  .dvd-benefits-wrap .flexbox-container {
    flex-direction: row;
  }
  .flexbox-container div:nth-child(1) {
    margin-right: 0;
  }
  .w20, .w25, .w28,
  .w30, .w35,
  .w40, .w45, .w48 { width: 100%;}
  .w50 { width: 80%; margin: auto;}
  .w250 {
    width: auto !important;
    max-width: 100%;}
  .offer-desc-2 .left-box {
    width: 100%;
  }

  .fl2,
  .fr2 {
    margin: 2rem 0 !important;
    float: none;
    width: 100%;
  }

  .profile-img-fr {
    margin: 2rem auto 0 !important;
    float: none;
  }
  
  .offer-desc-2 .right-box {
    max-width: 150px;
    margin: 0 auto;
  }
  .seminar .index {
    margin: 30px 0 0;
    padding: 20px 20px;
  }
  .seminar .supply {
    margin: 50px 0 0;
  }
  .seminar .supply-inner {
    padding: 20px 20px;
  }
  .seminar .supply dt,
  .seminar .supply dd {
    letter-spacing: 0;
  }
  .seminar .supply dt {
    padding-right: 0.8em;
  }
  .seminar .target {
    margin: 50px 0 0;
  }
  .seminar .target-list {
    padding: 20px;
    border-radius: 30px;
  }
  .seminar .target {
    margin: 50px 0 0;
  }
  .seminar .caution {
    max-width: 640px;
    margin: 50px auto 0;
  }
  .seminar .feature {
    margin: 50px 0 0;
  }
  .seminar .feature-inner {
    padding: 20px 20px;
  }
  .seminar .feature dt,
  .seminar .feature dd {
    letter-spacing: 0;
  }
  .seminar .feature dt {
    padding-right: 0.8em;
  }
  .seminar .feature .flexbox-container {
    -webkit-box-orient: vertical;
    /* Android -4.3 */
    flex-direction: column;
  }
  .seminar .feature .left-box {
    max-width: 340px;
    width: auto;
    margin: 0 auto;
  }
  .seminar .feature .right-box {
    max-width: 340px;
    width: auto;
    margin: 0 auto;
  }
  .seminar .speaker {
    margin: 50px 0 50px;
  }
  .seminar .speaker-inner {
    padding: 30px 20px;
  }
  .seminar .speaker-inner h3 {
    margin-bottom: 1em;
  }
  .seminar .speaker-prof {
    padding: 0;
  }
  .seminar .speaker-prof:last-of-type {
    margin-bottom: 0;
  }
  .info .contents {
    margin: 0 10px;
  }
  .info .fee {
    margin: 30px auto 0;
    padding: 0 10px;
  }
  .info .details {
    margin: 30px auto 0;
  }
  .entry .box {
    max-width: 768px;
    /*
        border: 0;
        */
  }
  .voices-box {
    padding: 1em;
  }
  .voices-box.flexbox-container {
    flex-direction: column;
  }
  .voices-box .left-box-2,
  .voices-box .right-box-2 {
    width: 100%;
  }
  .profile-img {
  margin-top: 0;
  }
  .profile-img.w40 {
    width: 80%;
    float: none;
    display: table;
    margin: auto;
  }
  .movie70 {
    width: auto;
  }
}
@media screen and (max-width: 768px) {
  .wide {
    display: none;
  }
  .narrow {
    display: block;
  }
  .worry .voices p {
    font-size: 3vw;
  }
  .info .details-table th,
  .info .details-table td {
    padding: 10px;
  }
  .info .details-table th {
    width: 100px;
    font-size: 1.2rem;
  }
  .info .details-table .large {
    font-size: 3.5vw;
  }
  .info .details-table .narrow-fee {
    padding-left: 2em;
    line-height: 1.6;
    margin-bottom: 10px;
  }
  .info .details-table .narrow-fee-2 {
    line-height: 1.6;
    margin-bottom: 10px;
  }
  .notice-info {
    padding: 1.2em 0.5em;
  }
  .entry {
    padding: 50px 10px 0;
  }
  .entry .box {
    /*padding: 30px 20px;*/
  }
  .entry .box h2 {
    font-size: 3.8vw;
  }
  .entry .box p {
    font-size: 2.8vw;
  }
  .entry .box a,
  .entry input.btn {
    max-width: 16em;
    font-size: 3.8vw;
  }
  .footer .footer-inner {
    padding: 60px 30px 20px;
  }
  .footer .flexbox-container {
    -webkit-box-orient: vertical;
    /* Android -4.3 */
    flex-direction: column;
  }
  .footer .left-box {
    max-width: 260px;
    width: 100%;
    margin: 0 auto 40px !important;
    padding: 0;
  }
  .footer .right-box {
    width: 340px;
    width: auto;
    margin: 0 auto;
    padding: 0;
  }
  .articles {
    padding: 40px 20px;
  }
  .entry div:nth-last-child(2) {
    margin-top: 15px;
  }
  .phone-contact>p {
    margin-bottom: 20px;
    line-height: 2;
  }
}
@media screen and (max-width: 730px) {
  .newline730 {
    display: inline;
  }
  .mainvisual-wrap {
    padding-bottom: 1px;
  }
  .dvd-benefits-wrap {
    margin: 20px 20px 0;
  }
  .dvd-benefits-wrap .flexbox-container {
    display: block;
  }
  .dvd-benefits-wrap .flexbox-container .dvd-benefits {
    padding: 10px;
    margin: 15px auto;
    max-width: 400px;
  }
  .list01check-c li:last-child {
    letter-spacing: -0.1rem;
  }
  .list01check-c li:last-child span {
    letter-spacing: 0;
  }
  .list01check-c li span {
    right: 0;
  }
  .position-item3 {
    position: static;
    display: table;
    margin: -30px 0 0 1rem !important;
    width: 100px;
    float: right;
  }
  .position-item3 img {
    max-width: 100%;
  }
}
@media screen and (max-width: 480px) {
  .seminar dd.fr {
    float: none;
  }
  .seminar dd.fr img {
    width: auto;
    margin: auto !important;
  }
  .large {
    font-size: 4.4vw;
  }
  .entry button > span:nth-child(3) {
    font-size: 1.2rem;
  }
  .entry button > span:nth-child(3) .large {
    font-size: 2rem;
  }
  .contents {
    margin: 0 14px;
  }
  .header .seminar-info {
    font-size: 3.4vw;
  }
  .worry .voices {
    padding-top: 30px;
  }
  .worry .offer {
    padding: 30px 0;
  }
  .worry .voices p {
    font-size: 3.8vw;
  }
  .section .heading h2 {
    font-size: 5vw;
  }
  .worry .offer div {
    padding-bottom: 0;
  }
  .worry .offer p {
    font-size: 3.6vw;
  }
  .worry .offer img {
    padding-bottom: 40px;
  }
  .worry .offer div {
    padding-bottom: 0;
  }
  .seminar .index {
    margin-top: 20px;
    padding: 20px 15px;
  }
  .seminar .index li {
    font-size: 3.6vw;
  }
  .seminar .index p {
    font-size: 4vw;
  }
  .seminar .supply-inner {
    padding: 20px;
  }
  .seminar .supply dl {
    font-size: 3.6vw;
  }
  .seminar .target h3 {
    font-size: 4.2vw;
  }
  .seminar .target-list dl {
    font-size: 3.6vw;
  }
  .seminar .caution {
    padding: 20px;
    font-size: 3.6vw;
  }

  .seminar .feature-inner {
    padding: 20px;
  }
  .seminar .feature dl {
    font-size: 3.6vw;
  }
  .seminar .speaker-desc {
    font-size: 3.6vw;
  }
  .seminar .speaker-desc h4 {
    font-size: 4vw;
  }
  .seminar .speaker .flexbox-container {
    -webkit-box-orient: vertical;
    /* Android -4.3 */
    flex-direction: column;
  }
  .seminar .speaker .left-box {
    max-width: 184px;
    width: auto;
    margin: 0 auto 40px;
  }
  .seminar .speaker .right-box {
    width: 100%;
    margin: 0 auto;
  }
  .info .fee {
    font-size: 3.6vw;
  }
  .info .details h3 {
    margin-bottom: 20px;
  }
  .info .details-table th,
  .info .details-table td {
    padding: 5px;
    font-size: 1.4rem;
  }
  .info .details-table th {
    width: 25%;
    white-space: nowrap;
    /*
        font-size: 1.2rem;
        */
  }
  .info .fee {
    margin-top: 30px;
  }
  .info .details-table th,
  .info .details-table td,
  .info .details-table tr:first-of-type .large {
    /*
        font-size: 2.8vw;
       */
  }
  .entry .box p {
    font-size: 1.1rem;
  }
  .seminar .feature dt {
    float: none;
  }
  .seminar .feature dd {
    margin-left: 0;
    margin-bottom: 1em;
  }
  .entry .box {
    /*
    padding: 20px 20px 10px;
    margin: 0 20px;
    */
  }
  .entry .box h2 {
    font-size: 2rem;
    letter-spacing: -0.1rem;
  }
  .entry button > span:first-child {
    font-size: 2rem;
  }
  .entry button > span:nth-child(2) {
    /*font-size: 1.2rem;*/
    letter-spacing: -0.2rem;
  }
  .entry button > span:nth-child(4) {
    font-size: 12px;
  }
  .newline2 {
    display: inline;
    margin-right: 4rem;
  }
  .newline3 {
    display: inline;
  }
  .fs26r {
    font-size: 20px !important;
  }
  .definition01 {
    padding: 15px;
  }
  .w80.ma {
    width: 100%;
  }
}