@charset "UTF-8";
html {
  font-size: 62.5%;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, "Hiragino Sans", Arial, 'Yu Gothic', sans-serif;
  word-wrap: break-word; }

body {
  font-size: 1.6rem;
  background-color: #fff;
  margin: 0;
  padding: 0; }

*,
*::before,
*::after {
  box-sizing: border-box; }

h1, h2, h3, div, p, ul, li {
  margin: 0;
  padding: 0; }

li {
  list-style: none; }

img {
  width: 100%;
  height: auto;
  line-height: 0;
  vertical-align: bottom; }

a:hover img {
  opacity: 0.8; }

.pcOnly {
  display: none; }
  @media only screen and (min-width: 750px) {
    .pcOnly {
      display: inline; } }

.spOnly {
  display: inline; }
  @media only screen and (min-width: 750px) {
    .spOnly {
      display: none; } }

@media only screen and (min-width: 420px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none; } }
.wrap {
  position: relative; }
  .wrap .kv {
    width: 100%;
    min-height: calc(1180/750 * 100vw);
    background-color: #ff0000;
    background-image: url("../img/bg_kv01_sp.png"), url("../img/bg_kv02_sp.png");
    background-size: 100% auto,100% auto;
    background-repeat: no-repeat,no-repeat;
    background-position: top center,bottom center; }
    @media only screen and (min-width: 750px) {
      .wrap .kv {
        min-height: calc(705/1075 * 100vw);
        background-image: url("../img/bg_kv01_pc.png");
        background-size: 100% auto;
        background-repeat: no-repeat;
        background-position: top center;
        background-size: auto 100%; } }
    @media only screen and (min-width: 1150px) {
      .wrap .kv {
        min-height: 705px;
        background-size: 1075px auto; } }
    .wrap .kv__inner {
      position: relative;
      width: 100%;
      margin: 0 auto;
      padding: calc(360/750 * 100vw) 0 0; }
      @media only screen and (min-width: 750px) {
        .wrap .kv__inner {
          margin: 0 auto;
          padding: calc(280/1075 * 100vw) 0 0; } }
      @media only screen and (min-width: 1150px) {
        .wrap .kv__inner {
          width: 1075px;
          margin: 0 auto;
          padding: 280px 0 0; } }
      .wrap .kv__inner .logo_bp {
        width: calc(153/750 * 100%);
        position: absolute;
        top: calc(30/750 * 100vw);
        left: calc(30/750 * 100%);
        z-index: 10; }
        @media only screen and (min-width: 750px) {
          .wrap .kv__inner .logo_bp {
            width: calc(113/1075 * 100%);
            top: calc(26/1075 * 100vw);
            left: calc(246/1075 * 100vw); } }
        @media only screen and (min-width: 1150px) {
          .wrap .kv__inner .logo_bp {
            width: 113px;
            top: 26px;
            left: 246px; } }
      .wrap .kv__inner h1 {
        width: calc(702/750 * 100%);
        margin: 0 auto; }
        @media only screen and (min-width: 750px) {
          .wrap .kv__inner h1 {
            width: calc(668/1075 * 100vw);
            margin: 0 auto 0; } }
        @media only screen and (min-width: 1150px) {
          .wrap .kv__inner h1 {
            width: 668px;
            margin: 0 auto 0; } }
      .wrap .kv__inner .course {
        width: calc(664/750 * 100%);
        margin: calc(23/750 * 100vw) auto 0; }
        @media only screen and (min-width: 750px) {
          .wrap .kv__inner .course {
            width: calc(850/1075 * 100vw);
            margin: calc(18/1075 * 100vw) auto 0; } }
        @media only screen and (min-width: 1150px) {
          .wrap .kv__inner .course {
            width: 850px;
            margin: 18px auto 0; } }
      .wrap .kv__inner .teaser {
        width: calc(700/750 * 100%);
        margin: calc(37/750 * 100vw) auto 0;
        padding-bottom: calc(40/750 * 100vw); }
        @media only screen and (min-width: 750px) {
          .wrap .kv__inner .teaser {
            width: calc(580/1075 * 100vw);
            margin: calc(37/1075 * 100vw) auto 0;
            padding-bottom: calc(40/1075 * 100vw); } }
        @media only screen and (min-width: 1150px) {
          .wrap .kv__inner .teaser {
            width: 580px;
            margin: 37px auto 0;
            padding-bottom: 40px; } }
  .wrap .period {
    position: relative;
    background: #ffd2c8;
    width: 100%;
    height: calc(80/750 * 100vw);
    margin: 0 auto 0;
    display: flex;
    justify-content: center;
    align-items: center; }
    @media only screen and (min-width: 750px) {
      .wrap .period {
        height: calc(64/750 * 100vw);
        margin: 0 auto 0; } }
    @media only screen and (min-width: 1150px) {
      .wrap .period {
        height: 64px;
        margin: 0 auto 0; } }
    .wrap .period img {
      width: calc(682/750 * 100%);
      margin: calc(0/750 * 100vw) auto 0; }
      @media only screen and (min-width: 750px) {
        .wrap .period img {
          width: calc(584/1075 * 100vw);
          margin: calc(0/1075 * 100vw) auto 0; } }
      @media only screen and (min-width: 1150px) {
        .wrap .period img {
          width: 584px;
          margin: 0px auto 0; } }
  .wrap .comingsoon {
    position: relative; }
    .wrap .comingsoon .hide {
      z-index: 100;
      position: absolute;
      top: calc(-80/750 * 100vw);
      left: 0;
      width: 100%;
      height: calc(100% - calc(300/750 * 100vw));
      background-color: gray;
      mix-blend-mode: multiply; }
      @media only screen and (min-width: 750px) {
        .wrap .comingsoon .hide {
          top: calc(-64/1075 * 100vw);
          height: calc(100% - calc(250/1075 * 100vw)); } }
      @media only screen and (min-width: 1150px) {
        .wrap .comingsoon .hide {
          top: -64px;
          height: calc(100% - 250px); } }
    .wrap .comingsoon .comingsoontext {
      z-index: 101;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      width: 100%;
      height: calc(100% + 7vw);
      background-image: url(../img/comingsoontext.png);
      background-size: 100% auto;
      background-position: top center;
      background-repeat: repeat-y;
      margin: 0 auto; }
      @media only screen and (min-width: 750px) {
        .wrap .comingsoon .comingsoontext {
          width: calc(800/1075 * 100vw);
          height: calc(100% + calc(50/1075 * 100vw)); } }
      @media only screen and (min-width: 1150px) {
        .wrap .comingsoon .comingsoontext {
          width: 800px;
          height: calc(100% + 50px); } }
  .wrap .movie_wrap {
    width: 100%;
    background-color: #f2ead2; }
    .wrap .movie_wrap .movie {
      width: 100%;
      padding: calc(46/750 * 100vw) 0 calc(90/750 * 100vw); }
      @media only screen and (min-width: 750px) {
        .wrap .movie_wrap .movie {
          margin: 0 auto;
          padding: calc(62/1075 * 100vw) 0 calc(73/1075 * 100vw); } }
      @media only screen and (min-width: 1150px) {
        .wrap .movie_wrap .movie {
          width: 1150px;
          margin: 0 auto;
          padding: 62px 0 73px; } }
      .wrap .movie_wrap .movie h2 {
        width: calc(650/750 * 100%);
        margin: 0 auto 0; }
        @media only screen and (min-width: 750px) {
          .wrap .movie_wrap .movie h2 {
            width: calc(545/1075 * 100vw); } }
        @media only screen and (min-width: 1150px) {
          .wrap .movie_wrap .movie h2 {
            width: 545px; } }
      .wrap .movie_wrap .movie .bt_apply {
        width: calc(550/750 * 100%);
        margin: calc(92/750 * 100vw) auto 0;
        filter: drop-shadow(calc(5/750 * 100vw) calc(5/750 * 100vw) 0 #000045); }
        @media only screen and (min-width: 750px) {
          .wrap .movie_wrap .movie .bt_apply {
            width: calc(440/1075 * 100vw);
            margin: calc(75/1075 * 100vw) auto 0;
            filter: drop-shadow(calc(4/1075 * 100vw) calc(4/1075 * 100vw) 0 #000045); } }
        @media only screen and (min-width: 1150px) {
          .wrap .movie_wrap .movie .bt_apply {
            width: 440px;
            margin: 75px auto 0;
            filter: drop-shadow(4px 4px 0 #000045); } }
      .wrap .movie_wrap .movie .movie_note {
        width: calc(591/750 * 100%);
        margin: calc(33/750 * 100vw) auto 0; }
        @media only screen and (min-width: 750px) {
          .wrap .movie_wrap .movie .movie_note {
            width: calc(530/1075 * 100vw);
            margin: calc(24/1075 * 100vw) auto 0; } }
        @media only screen and (min-width: 1150px) {
          .wrap .movie_wrap .movie .movie_note {
            width: 530px;
            margin: 24px auto 0; } }
  .wrap .lineup_wrap {
    width: 100%;
    background-color: #f2ead2;
    background-image: url("../img/bg_white.png");
    background-size: 100% calc(205/750 * 100vw);
    background-repeat: no-repeat;
    background-position: top center; }
    @media only screen and (min-width: 750px) {
      .wrap .lineup_wrap {
        background-size: 100% calc(134/1075 * 100vw); } }
    @media only screen and (min-width: 1150px) {
      .wrap .lineup_wrap {
        background-size: 100% 134px; } }
    .wrap .lineup_wrap .lineup {
      width: 100%;
      padding: calc(33/750 * 100vw) 0 calc(100/750 * 100vw); }
      @media only screen and (min-width: 750px) {
        .wrap .lineup_wrap .lineup {
          margin: 0 auto;
          padding: calc(39/1075 * 100vw) 0 calc(88/1075 * 100vw); } }
      @media only screen and (min-width: 1150px) {
        .wrap .lineup_wrap .lineup {
          width: 1075px;
          margin: 0 auto;
          padding: 39px 0 88px; } }
      .wrap .lineup_wrap .lineup h2 {
        width: calc(569/750 * 100%);
        margin: 0 auto 0; }
        @media only screen and (min-width: 750px) {
          .wrap .lineup_wrap .lineup h2 {
            width: calc(821/1075 * 100vw); } }
        @media only screen and (min-width: 1150px) {
          .wrap .lineup_wrap .lineup h2 {
            width: 821px; } }
      .wrap .lineup_wrap .lineup .lineup_lead {
        width: calc(591/750 * 100%);
        margin: calc(50/750 * 100vw) auto 0; }
        @media only screen and (min-width: 750px) {
          .wrap .lineup_wrap .lineup .lineup_lead {
            width: calc(844/1075 * 100vw);
            margin: calc(37/1075 * 100vw) auto 0; } }
        @media only screen and (min-width: 1150px) {
          .wrap .lineup_wrap .lineup .lineup_lead {
            width: 844px;
            margin: 37px auto 0; } }
      .wrap .lineup_wrap .lineup .lineup_fig {
        width: calc(450/750 * 100%);
        margin: calc(35/750 * 100vw) auto 0; }
        @media only screen and (min-width: 750px) {
          .wrap .lineup_wrap .lineup .lineup_fig {
            width: calc(403/1075 * 100vw);
            margin: calc(22/1075 * 100vw) auto 0; } }
        @media only screen and (min-width: 1150px) {
          .wrap .lineup_wrap .lineup .lineup_fig {
            width: 403px;
            margin: 22px auto 0; } }
      .wrap .lineup_wrap .lineup .prod_list {
        width: calc(650/750 * 100%);
        margin: calc(45/750 * 100vw) auto 0; }
        @media only screen and (min-width: 750px) {
          .wrap .lineup_wrap .lineup .prod_list {
            display: flex;
            justify-content: space-between;
            width: calc(982/1075 * 100vw);
            margin: calc(60/1075 * 100vw) auto 0; } }
        @media only screen and (min-width: 1150px) {
          .wrap .lineup_wrap .lineup .prod_list {
            width: 982px;
            margin: 60px auto 0; } }
        .wrap .lineup_wrap .lineup .prod_list li {
          position: relative; }
          @media only screen and (min-width: 750px) {
            .wrap .lineup_wrap .lineup .prod_list li {
              width: calc(316/1075 * 100vw);
              margin: 0; } }
          @media only screen and (min-width: 1150px) {
            .wrap .lineup_wrap .lineup .prod_list li {
              width: 316px;
              margin: 0; } }
        .wrap .lineup_wrap .lineup .prod_list li + li {
          margin-top: calc(35/750 * 100vw); }
          @media only screen and (min-width: 750px) {
            .wrap .lineup_wrap .lineup .prod_list li + li {
              margin-top: 0; } }
      .wrap .lineup_wrap .lineup .bt_apply {
        width: calc(550/750 * 100%);
        margin: calc(92/750 * 100vw) auto 0;
        filter: drop-shadow(calc(5/750 * 100vw) calc(5/750 * 100vw) 0 #000045); }
        @media only screen and (min-width: 750px) {
          .wrap .lineup_wrap .lineup .bt_apply {
            width: calc(440/1075 * 100vw);
            margin: calc(75/1075 * 100vw) auto 0;
            filter: drop-shadow(calc(4/1075 * 100vw) calc(4/1075 * 100vw) 0 #000045); } }
        @media only screen and (min-width: 1150px) {
          .wrap .lineup_wrap .lineup .bt_apply {
            width: 440px;
            margin: 75px auto 0;
            filter: drop-shadow(4px 4px 0 #000045); } }
  .wrap .method_ti {
    width: 100%;
    height: calc(140/750 * 100vw);
    display: flex;
    justify-content: center;
    align-items: center;
    background: #000045; }
    @media only screen and (min-width: 750px) {
      .wrap .method_ti {
        height: calc(104/1075 * 100vw); } }
    @media only screen and (min-width: 1150px) {
      .wrap .method_ti {
        height: 104px; } }
    .wrap .method_ti h2 {
      width: calc(284/750 * 100vw); }
      @media only screen and (min-width: 750px) {
        .wrap .method_ti h2 {
          width: calc(283/1075 * 100vw); } }
      @media only screen and (min-width: 1150px) {
        .wrap .method_ti h2 {
          width: 283px; } }
  .wrap .method_wrap {
    width: 100%;
    background-color: #f2ead2; }
    .wrap .method_wrap .method {
      width: 100%;
      padding: calc(65/750 * 100vw) 0 calc(100/750 * 100vw); }
      @media only screen and (min-width: 750px) {
        .wrap .method_wrap .method {
          margin: 0 auto;
          padding: calc(70/1075 * 100vw) 0 calc(79/1075 * 100vw); } }
      @media only screen and (min-width: 1150px) {
        .wrap .method_wrap .method {
          width: 1150px;
          margin: 0 auto;
          padding: 70px 0 79px; } }
      .wrap .method_wrap .method .step {
        width: calc(650/750 * 100%);
        margin: 0 auto 0; }
        @media only screen and (min-width: 750px) {
          .wrap .method_wrap .method .step {
            width: calc(980/1075 * 100vw); } }
        @media only screen and (min-width: 1150px) {
          .wrap .method_wrap .method .step {
            width: 980px; } }
      .wrap .method_wrap .method .message {
        width: calc(654/750 * 100%);
        margin: calc(38/750 * 100vw) auto 0; }
        @media only screen and (min-width: 750px) {
          .wrap .method_wrap .method .message {
            width: calc(530/1075 * 100vw);
            margin: calc(12/1075 * 100vw) auto 0; } }
        @media only screen and (min-width: 1150px) {
          .wrap .method_wrap .method .message {
            width: 530px;
            margin: calc(12/750 * 100vw) auto 0; } }
  .wrap .about_ti {
    width: 100%;
    padding: calc(80/750 * 100vw) 0 calc(33/750 * 100vw); }
    @media only screen and (min-width: 750px) {
      .wrap .about_ti {
        padding: calc(68/1075 * 100vw) 0 calc(46/1075 * 100vw); } }
    @media only screen and (min-width: 1150px) {
      .wrap .about_ti {
        padding: 68px 0 46px; } }
    .wrap .about_ti h2 {
      width: calc(597/750 * 100vw);
      margin: 0 auto; }
      @media only screen and (min-width: 750px) {
        .wrap .about_ti h2 {
          width: calc(985/1075 * 100vw); } }
      @media only screen and (min-width: 1150px) {
        .wrap .about_ti h2 {
          width: 985px; } }
  .wrap .about_wrap {
    width: 100%;
    background-color: #e60012; }
    .wrap .about_wrap .about {
      width: 100%;
      padding: calc(0/750 * 100vw) 0 calc(103/750 * 100vw); }
      @media only screen and (min-width: 750px) {
        .wrap .about_wrap .about {
          margin: 0 auto;
          padding: calc(0/1075 * 100vw) 0 calc(96/1075 * 100vw); } }
      @media only screen and (min-width: 1150px) {
        .wrap .about_wrap .about {
          width: 1075px;
          margin: 0 auto;
          padding: 0px 0 96px; } }
      .wrap .about_wrap .about .ph {
        width: 100%;
        margin: 0; }
      .wrap .about_wrap .about .about_lead {
        width: calc(644/750 * 100%);
        margin: calc(72/750 * 100vw) auto 0; }
        @media only screen and (min-width: 750px) {
          .wrap .about_wrap .about .about_lead {
            width: calc(860/1075 * 100vw);
            margin: calc(60/1075 * 100vw) auto 0; } }
        @media only screen and (min-width: 1150px) {
          .wrap .about_wrap .about .about_lead {
            width: 860px;
            margin: 60px auto 0; } }
      .wrap .about_wrap .about .bt_tabemura, .wrap .about_wrap .about .bt_brand {
        width: calc(550/750 * 100%);
        margin: calc(92/750 * 100vw) auto 0;
        filter: drop-shadow(calc(5/750 * 100vw) calc(5/750 * 100vw) 0 #000045); }
        @media only screen and (min-width: 750px) {
          .wrap .about_wrap .about .bt_tabemura, .wrap .about_wrap .about .bt_brand {
            width: calc(440/1075 * 100vw);
            margin: calc(78/1075 * 100vw) auto 0;
            filter: drop-shadow(calc(4/1075 * 100vw) calc(4/1075 * 100vw) 0 #000045); } }
        @media only screen and (min-width: 1150px) {
          .wrap .about_wrap .about .bt_tabemura, .wrap .about_wrap .about .bt_brand {
            width: 440px;
            margin: 78px auto 0;
            filter: drop-shadow(4px 4px 0 #000045); } }
      .wrap .about_wrap .about .recipe {
        background: #FFF;
        border-radius: calc(40/750 * 100vw);
        width: calc(650/750 * 100vw);
        margin: calc(100/750 * 100vw) auto 0;
        padding: calc(67/750 * 100vw) 0 calc(68/750 * 100vw); }
        @media only screen and (min-width: 750px) {
          .wrap .about_wrap .about .recipe {
            width: calc(980/1075 * 100vw);
            margin: calc(85/1075 * 100vw) auto 0;
            padding: calc(59/1075 * 100vw) 0 calc(59/1075 * 100vw); } }
        @media only screen and (min-width: 1150px) {
          .wrap .about_wrap .about .recipe {
            width: 980px;
            margin: 85px auto 0;
            padding: 59px 0 59px; } }
        .wrap .about_wrap .about .recipe .recipe_md {
          width: calc(550/750 * 100vw);
          margin: calc(0/750 * 100vw) auto 0; }
          @media only screen and (min-width: 750px) {
            .wrap .about_wrap .about .recipe .recipe_md {
              width: calc(850/1075 * 100vw);
              margin: calc(0/1075 * 100vw) auto 0; } }
          @media only screen and (min-width: 1150px) {
            .wrap .about_wrap .about .recipe .recipe_md {
              width: 850px;
              margin: 0px auto 0; } }
        .wrap .about_wrap .about .recipe .recipe_step {
          width: calc(550/750 * 100vw);
          margin: calc(28/750 * 100vw) auto 0; }
          @media only screen and (min-width: 750px) {
            .wrap .about_wrap .about .recipe .recipe_step {
              width: calc(855/1075 * 100vw);
              margin: calc(30/1075 * 100vw) auto 0; } }
          @media only screen and (min-width: 1150px) {
            .wrap .about_wrap .about .recipe .recipe_step {
              width: 855px;
              margin: 30px auto 0; } }
        .wrap .about_wrap .about .recipe .recipe_text {
          width: calc(430/750 * 100vw);
          margin: calc(40/750 * 100vw) auto 0; }
          @media only screen and (min-width: 750px) {
            .wrap .about_wrap .about .recipe .recipe_text {
              width: calc(570/1075 * 100vw);
              margin: calc(30/1075 * 100vw) auto 0; } }
          @media only screen and (min-width: 1150px) {
            .wrap .about_wrap .about .recipe .recipe_text {
              width: 570px;
              margin: 30px auto 0; } }
      .wrap .about_wrap .about .nutrition {
        width: calc(535/750 * 100vw);
        margin: calc(98/750 * 100vw) auto 0; }
        @media only screen and (min-width: 750px) {
          .wrap .about_wrap .about .nutrition {
            width: calc(571/1075 * 100vw);
            margin: calc(80/1075 * 100vw) auto 0; } }
        @media only screen and (min-width: 1150px) {
          .wrap .about_wrap .about .nutrition {
            width: 571px;
            margin: 80px auto 0; } }
      .wrap .about_wrap .about .reason {
        background: #FFF;
        border-radius: calc(40/750 * 100vw);
        width: calc(650/750 * 100vw);
        margin: calc(100/750 * 100vw) auto 0;
        padding: calc(67/750 * 100vw) 0 calc(68/750 * 100vw); }
        @media only screen and (min-width: 750px) {
          .wrap .about_wrap .about .reason {
            width: calc(980/1075 * 100vw);
            margin: calc(85/1075 * 100vw) auto 0;
            padding: calc(59/1075 * 100vw) 0 calc(59/1075 * 100vw); } }
        @media only screen and (min-width: 1150px) {
          .wrap .about_wrap .about .reason {
            width: 980px;
            margin: 85px auto 0;
            padding: 59px 0 59px; } }
        .wrap .about_wrap .about .reason .reason_md {
          width: calc(550/750 * 100vw);
          margin: calc(0/750 * 100vw) auto 0; }
          @media only screen and (min-width: 750px) {
            .wrap .about_wrap .about .reason .reason_md {
              width: calc(850/1075 * 100vw);
              margin: calc(0/1075 * 100vw) auto 0; } }
          @media only screen and (min-width: 1150px) {
            .wrap .about_wrap .about .reason .reason_md {
              width: 850px;
              margin: 0px auto 0; } }
        .wrap .about_wrap .about .reason .reason_text {
          width: calc(509/750 * 100vw);
          margin: calc(55/750 * 100vw) auto 0; }
          @media only screen and (min-width: 750px) {
            .wrap .about_wrap .about .reason .reason_text {
              width: calc(804/1075 * 100vw);
              margin: calc(42/1075 * 100vw) auto 0; } }
          @media only screen and (min-width: 1150px) {
            .wrap .about_wrap .about .reason .reason_text {
              width: 804px;
              margin: 42px auto 0; } }
        .wrap .about_wrap .about .reason .reason_fig01 {
          width: calc(501/750 * 100vw);
          margin: calc(35/750 * 100vw) auto 0; }
          @media only screen and (min-width: 750px) {
            .wrap .about_wrap .about .reason .reason_fig01 {
              width: calc(826/1075 * 100vw);
              margin: calc(42/1075 * 100vw) auto 0; } }
          @media only screen and (min-width: 1150px) {
            .wrap .about_wrap .about .reason .reason_fig01 {
              width: 826px;
              margin: 42px auto 0; } }
        .wrap .about_wrap .about .reason .reason_fig02 {
          width: calc(524/750 * 100vw);
          margin: calc(35/750 * 100vw) auto 0; }
          @media only screen and (min-width: 750px) {
            .wrap .about_wrap .about .reason .reason_fig02 {
              width: calc(850/1075 * 100vw);
              margin: calc(42/1075 * 100vw) auto 0; } }
          @media only screen and (min-width: 1150px) {
            .wrap .about_wrap .about .reason .reason_fig02 {
              width: 850px;
              margin: 42px auto 0; } }
        .wrap .about_wrap .about .reason .reason_fig03 {
          width: calc(503/750 * 100vw);
          margin: calc(35/750 * 100vw) auto 0; }
          @media only screen and (min-width: 750px) {
            .wrap .about_wrap .about .reason .reason_fig03 {
              width: calc(491/1075 * 100vw);
              margin: calc(42/1075 * 100vw) auto 0; } }
          @media only screen and (min-width: 1150px) {
            .wrap .about_wrap .about .reason .reason_fig03 {
              width: 491px;
              margin: 42px auto 0; } }
      .wrap .about_wrap .about .bt_brand {
        display: block;
        width: calc(550/750 * 100%);
        margin: calc(82/750 * 100vw) auto 0;
        filter: drop-shadow(calc(5/750 * 100vw) calc(5/750 * 100vw) 0 #000045); }
        @media only screen and (min-width: 750px) {
          .wrap .about_wrap .about .bt_brand {
            width: calc(440/1075 * 100vw);
            margin: calc(74/1075 * 100vw) auto 0;
            filter: drop-shadow(calc(4/1075 * 100vw) calc(4/1075 * 100vw) 0 #000045); } }
        @media only screen and (min-width: 1150px) {
          .wrap .about_wrap .about .bt_brand {
            width: 440px;
            margin: 74px auto 0;
            filter: drop-shadow(4px 4px 0 #000045); } }
      .wrap .about_wrap .about .note {
        text-align: center;
        margin: 2em auto 0;
        color: #FFF;
        font-size: calc(19/750 * 100vw); }
        @media only screen and (min-width: 750px) {
          .wrap .about_wrap .about .note {
            font-size: calc(17/1075 * 100vw); } }
        @media only screen and (min-width: 1150px) {
          .wrap .about_wrap .about .note {
            font-size: 17px; } }
  .wrap .cont_wrap {
    width: 100%;
    padding: calc(60/750 * 100vw) 0 0; }
    @media only screen and (min-width: 750px) {
      .wrap .cont_wrap {
        padding: calc(74/1075 * 100vw) 0 0; } }
    @media only screen and (min-width: 1150px) {
      .wrap .cont_wrap {
        padding: 74px 0 0; } }
    @media only screen and (min-width: 2000px) {
      .wrap .cont_wrap {
        background-size: 100% auto ,100% auto; } }
  .wrap .guideline_btn, .wrap .privacy_btn {
    margin: calc(60/750 * 100vw) auto 0;
    width: calc(550/750 * 100vw);
    padding: calc(35/750 * 100vw) calc(35/750 * 100vw) calc(35/750 * 100vw) 0;
    background-color: #000045;
    background-image: url("../img/btn_arrow_op.svg");
    background-position: right calc(43/750 * 100vw) center;
    background-size: calc(24/750 * 100vw) auto;
    background-repeat: no-repeat;
    text-align: center;
    line-height: 0; }
    @media only screen and (min-width: 750px) {
      .wrap .guideline_btn, .wrap .privacy_btn {
        margin: calc(50/1075 * 100vw) auto 0;
        width: calc(850/1075 * 100vw);
        padding: calc(23/1075 * 100vw) 0;
        background-image: url("../img/btn_arrow_op.svg");
        background-position: right calc(30/1075 * 100vw) center;
        background-size: calc(25/1075 * 100vw) auto; } }
    @media only screen and (min-width: 1150px) {
      .wrap .guideline_btn, .wrap .privacy_btn {
        margin: 50px auto 0;
        width: 850px;
        padding: 23px 0;
        background-image: url("../img/btn_arrow_op.svg");
        background-position: right 30px center;
        background-size: 25px auto; } }
    .wrap .guideline_btn.active, .wrap .privacy_btn.active {
      background-image: url("../img/btn_arrow_cl.svg"); }
    @media only screen and (min-width: 750px) {
      .wrap .guideline_btn:hover, .wrap .privacy_btn:hover {
        opacity: 0.8;
        cursor: pointer; } }
    .wrap .guideline_btn img, .wrap .privacy_btn img {
      height: calc(28/750 * 100vw);
      margin: 0 auto; }
      @media only screen and (min-width: 750px) {
        .wrap .guideline_btn img, .wrap .privacy_btn img {
          height: calc(29/1075 * 100vw); } }
      @media only screen and (min-width: 1150px) {
        .wrap .guideline_btn img, .wrap .privacy_btn img {
          height: 29px; } }
  .wrap .guideline_cont, .wrap .privacy_cont {
    display: none;
    background-color: #fff;
    margin: calc(46/750 * 100vw) auto 0;
    width: calc(550/750 * 100vw);
    padding: 1.2em 0.3em 1.2em 1.2em;
    border: calc(6/750 * 100vw) solid #000045;
    border-radius: calc(40/750 * 100vw); }
    @media only screen and (min-width: 750px) {
      .wrap .guideline_cont, .wrap .privacy_cont {
        margin: calc(46/1075 * 100vw) auto 0;
        width: calc(850/1075 * 100vw);
        padding: 2.5em 2em 2.5em 3em;
        border: calc(6/11750 * 100vw) solid #000045;
        border-radius: calc(40/71150 * 100vw); } }
    @media only screen and (min-width: 1150px) {
      .wrap .guideline_cont, .wrap .privacy_cont {
        margin: 46px auto 0;
        width: 850px;
        border: 6px solid #000045;
        border-radius: 40px; } }
    .wrap .guideline_cont .cont, .wrap .privacy_cont .cont {
      width: calc(482/750 * 100vw);
      height: calc(508/750 * 100vw);
      overflow-y: scroll;
      padding: 0 1em 0 0; }
      @media only screen and (min-width: 750px) {
        .wrap .guideline_cont .cont, .wrap .privacy_cont .cont {
          width: calc(760/1075 * 100vw);
          height: calc(310/1075 * 100vw);
          padding: 0 2em 0 0; } }
      @media only screen and (min-width: 1150px) {
        .wrap .guideline_cont .cont, .wrap .privacy_cont .cont {
          height: 310px;
          width: 760px; } }
      .wrap .guideline_cont .cont h3, .wrap .privacy_cont .cont h3 {
        font-size: calc(24/750 * 100vw);
        margin: 1em 0 0.25em 0; }
        @media only screen and (min-width: 750px) {
          .wrap .guideline_cont .cont h3, .wrap .privacy_cont .cont h3 {
            font-size: calc(22/1075 * 100vw); } }
        @media only screen and (min-width: 1150px) {
          .wrap .guideline_cont .cont h3, .wrap .privacy_cont .cont h3 {
            font-size: 2.2rem; } }
      .wrap .guideline_cont .cont h4, .wrap .guideline_cont .cont p, .wrap .guideline_cont .cont li, .wrap .privacy_cont .cont h4, .wrap .privacy_cont .cont p, .wrap .privacy_cont .cont li {
        font-size: calc(20/750 * 100vw);
        line-height: 1.3;
        margin-bottom: 0.5em;
        text-align: justify; }
        @media only screen and (min-width: 750px) {
          .wrap .guideline_cont .cont h4, .wrap .guideline_cont .cont p, .wrap .guideline_cont .cont li, .wrap .privacy_cont .cont h4, .wrap .privacy_cont .cont p, .wrap .privacy_cont .cont li {
            font-size: calc(19/1075 * 100vw); } }
        @media only screen and (min-width: 1150px) {
          .wrap .guideline_cont .cont h4, .wrap .guideline_cont .cont p, .wrap .guideline_cont .cont li, .wrap .privacy_cont .cont h4, .wrap .privacy_cont .cont p, .wrap .privacy_cont .cont li {
            font-size: 1.9rem; } }
      .wrap .guideline_cont .cont ul, .wrap .privacy_cont .cont ul {
        margin-bottom: 1em; }
      .wrap .guideline_cont .cont li, .wrap .privacy_cont .cont li {
        padding-left: 1.25em;
        text-indent: -1.25em; }
      .wrap .guideline_cont .cont li ul, .wrap .privacy_cont .cont li ul {
        margin: 1em 0 1em 0; }
      .wrap .guideline_cont .cont .kome li, .wrap .privacy_cont .cont .kome li {
        padding-left: 1em;
        text-indent: -1em; }
      .wrap .guideline_cont .cont .list, .wrap .privacy_cont .cont .list {
        margin-left: 0.35em;
        list-style-type: disc; }
        .wrap .guideline_cont .cont .list li, .wrap .privacy_cont .cont .list li {
          list-style-type: disc;
          margin-left: 1em;
          padding-left: 0;
          text-indent: 0; }
      .wrap .guideline_cont .cont .mt-1, .wrap .privacy_cont .cont .mt-1 {
        margin-top: -1em; }
  .wrap .note {
    width: 92%;
    font-size: 2vw;
    text-align: right;
    margin: 3em auto 0; }
    @media only screen and (min-width: 750px) {
      .wrap .note {
        width: calc(960/1075 * 100vw);
        font-size: calc(13/1075 * 100vw); } }
    @media only screen and (min-width: 1150px) {
      .wrap .note {
        width: 960px;
        font-size: 1.3rem; } }
  .wrap .inquiry h2 {
    width: calc(485/750 * 100vw);
    margin: calc(100/750 * 100vw) auto 0; }
    @media only screen and (min-width: 750px) {
      .wrap .inquiry h2 {
        width: calc(437/1075 * 100vw);
        margin: calc(144/1075 * 100vw) auto 0; } }
    @media only screen and (min-width: 1150px) {
      .wrap .inquiry h2 {
        width: 437px;
        margin: 144px auto 0; } }
  .wrap .inquiry .inquiry_text01 {
    width: calc(513/750 * 100vw);
    margin: calc(60/750 * 100vw) auto 0; }
    @media only screen and (min-width: 750px) {
      .wrap .inquiry .inquiry_text01 {
        width: calc(845/1075 * 100vw);
        margin: calc(32/1075 * 100vw) auto 0; } }
    @media only screen and (min-width: 1150px) {
      .wrap .inquiry .inquiry_text01 {
        width: 845px;
        margin: 32px auto 0; } }
  .wrap .inquiry .freecall {
    width: calc(598/750 * 100vw);
    margin: calc(30/750 * 100vw) auto 0; }
    @media only screen and (min-width: 750px) {
      .wrap .inquiry .freecall {
        width: calc(537/1075 * 100vw);
        margin: calc(36/1075 * 100vw) auto 0; } }
    @media only screen and (min-width: 1150px) {
      .wrap .inquiry .freecall {
        width: 537px;
        margin: 36px auto 0; } }
  .wrap .inquiry .inquiry_text02 {
    width: calc(306/750 * 100vw);
    margin: calc(24/750 * 100vw) auto 0; }
    @media only screen and (min-width: 750px) {
      .wrap .inquiry .inquiry_text02 {
        width: calc(297/1075 * 100vw);
        margin: calc(22/1075 * 100vw) auto 0; } }
    @media only screen and (min-width: 1150px) {
      .wrap .inquiry .inquiry_text02 {
        width: 297px;
        margin: 22px auto 0; } }
  .wrap .footer {
    padding: 0 0 calc(65/750 * 100vw); }
    @media only screen and (min-width: 750px) {
      .wrap .footer {
        padding: 0 0 calc(65/1075 * 100vw); } }
    @media only screen and (min-width: 1150px) {
      .wrap .footer {
        padding: 0 0 65px; } }
    .wrap .footer .link {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      width: 25em;
      font-size: calc(25/750 * 100vw);
      margin: calc(70/750 * 100vw) auto 0; }
      @media only screen and (min-width: 750px) {
        .wrap .footer .link {
          width: 100%;
          font-size: calc(22/1075 * 100vw);
          margin: calc(50/1075 * 100vw) auto 0; } }
      @media only screen and (min-width: 1150px) {
        .wrap .footer .link {
          font-size: 22px;
          margin: 50px auto 0; } }
      .wrap .footer .link li {
        padding: 0em 0.8em;
        border-right: #ff0000 2px solid;
        margin-top: 0.7em; }
        .wrap .footer .link li a {
          font-weight: bold;
          color: #ff0000;
          text-decoration: none; }
          .wrap .footer .link li a:hover {
            opacity: 0.6; }
        .wrap .footer .link li:nth-child(2) {
          border-right: none; }
          @media only screen and (min-width: 750px) {
            .wrap .footer .link li:nth-child(2) {
              border-right: #ff0000 2px solid; } }
        .wrap .footer .link li:nth-child(4) {
          border-right: none; }
    .wrap .footer .corp_logo {
      width: calc(195/750 * 100vw);
      margin: calc(49/750 * 100vw) auto 0; }
      @media only screen and (min-width: 750px) {
        .wrap .footer .corp_logo {
          width: calc(176/1075 * 100vw);
          margin: calc(50/1075 * 100vw) auto 0; } }
      @media only screen and (min-width: 1150px) {
        .wrap .footer .corp_logo {
          width: 176px;
          margin: 50px auto 0; } }

.modal {
  display: none;
  height: 100vh;
  position: fixed;
  top: 0;
  width: 100%; }

.modal__bg {
  background: rgba(50, 50, 50, 0.75);
  height: 100vh;
  position: absolute;
  width: 100%; }

.modal__content {
  background: #fff;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: calc(650/750 * 100vw);
  height: calc(1160/750 * 100vw);
  border-radius: calc(40/750 * 100vw);
  overflow: hidden; }
  @media only screen and (min-width: 750px) {
    .modal__content {
      width: calc(800/1075 * 100vw);
      height: calc(600/1075 * 100vw);
      border-radius: calc(40/1075 * 100vw); } }
  @media only screen and (min-width: 1150px) {
    .modal__content {
      width: 800px;
      height: 600px;
      border-radius: 40px; } }
  .modal__content .cont_wrap {
    position: relative; }
    .modal__content .cont_wrap h2 {
      padding: calc(50/750 * 100vw) 0 calc(28/750 * 100vw); }
      @media only screen and (min-width: 750px) {
        .modal__content .cont_wrap h2 {
          padding: calc(30/1075 * 100vw) 0 calc(24/1075 * 100vw); } }
      @media only screen and (min-width: 1150px) {
        .modal__content .cont_wrap h2 {
          padding: 30px 0 24px; } }
      .modal__content .cont_wrap h2 img {
        height: calc(79/750 * 100vw); }
        @media only screen and (min-width: 750px) {
          .modal__content .cont_wrap h2 img {
            height: calc(55/1075 * 100vw); } }
        @media only screen and (min-width: 1150px) {
          .modal__content .cont_wrap h2 img {
            height: 55px; } }
      .modal__content .cont_wrap h2.pop01_h2 {
        background: #1e64b2; }
      .modal__content .cont_wrap h2.pop02_h2 {
        background: #328c43; }
      .modal__content .cont_wrap h2.pop03_h2 {
        background: #9e55a0; }
    .modal__content .cont_wrap .js-modal-close {
      position: absolute;
      width: calc(40/750 * 100vw);
      top: calc(27/750 * 100vw);
      right: calc(40/750 * 100vw); }
      @media only screen and (min-width: 750px) {
        .modal__content .cont_wrap .js-modal-close {
          width: calc(45/1075 * 100vw);
          top: calc(22/1075 * 100vw);
          right: calc(31/1075 * 100vw); } }
      @media only screen and (min-width: 1150px) {
        .modal__content .cont_wrap .js-modal-close {
          width: 45px;
          top: 22px;
          right: 31px; } }
    .modal__content .cont_wrap .cont {
      width: calc(576/750 * 100vw);
      height: calc(724/750 * 100vw);
      margin: calc(52/750 * 100vw) auto 0;
      padding: 0 calc(38/750 * 100vw);
      overflow-y: scroll; }
      @media only screen and (min-width: 750px) {
        .modal__content .cont_wrap .cont {
          text-align: left;
          width: calc(756/1075 * 100vw);
          height: calc(330/1075 * 100vw);
          margin: calc(21/1075 * 100vw) auto 0;
          padding: 0 calc(38/1075 * 100vw) 0 calc(25/1075 * 100vw); } }
      @media only screen and (min-width: 1150px) {
        .modal__content .cont_wrap .cont {
          width: 756px;
          height: 330px;
          margin: 21px auto 0;
          padding: 0 0px 0 25px; } }
      .modal__content .cont_wrap .cont .ph {
        width: calc(500/750 * 100vw);
        margin: 0 auto 0; }
        @media only screen and (min-width: 750px) {
          .modal__content .cont_wrap .cont .ph {
            width: calc(693/1075 * 100vw);
            margin: 0 auto 0 0; } }
        @media only screen and (min-width: 1150px) {
          .modal__content .cont_wrap .cont .ph {
            width: 693px; } }
      .modal__content .cont_wrap .cont .text {
        width: calc(500/750 * 100vw);
        margin: 2.5em auto 0;
        font-size: calc(19/750 * 100vw); }
        @media only screen and (min-width: 750px) {
          .modal__content .cont_wrap .cont .text {
            width: calc(693/1075 * 100vw);
            font-size: calc(17/1075 * 100vw);
            margin: 2.5em auto 0 0; } }
        @media only screen and (min-width: 1150px) {
          .modal__content .cont_wrap .cont .text {
            width: 693px;
            font-size: 1.7rem; } }
        .modal__content .cont_wrap .cont .text p, .modal__content .cont_wrap .cont .text h3 {
          font-weight: normal;
          font-size: calc(19/750 * 100vw); }
          @media only screen and (min-width: 750px) {
            .modal__content .cont_wrap .cont .text p, .modal__content .cont_wrap .cont .text h3 {
              font-size: calc(17/1075 * 100vw); } }
          @media only screen and (min-width: 1150px) {
            .modal__content .cont_wrap .cont .text p, .modal__content .cont_wrap .cont .text h3 {
              font-size: 1.7rem; } }
          .modal__content .cont_wrap .cont .text p sub, .modal__content .cont_wrap .cont .text h3 sub {
            vertical-align: baseline; }
        .modal__content .cont_wrap .cont .text h3 + p {
          margin-top: 0.5em; }
        .modal__content .cont_wrap .cont .text p + h3 {
          margin-top: 2em; }
    .modal__content .cont_wrap .bt {
      display: block;
      width: calc(550/750 * 100vw);
      margin: calc(56/750 * 100vw) auto 0;
      filter: drop-shadow(calc(5/750 * 100vw) calc(5/750 * 100vw) 0 #000045); }
      @media only screen and (min-width: 750px) {
        .modal__content .cont_wrap .bt {
          width: calc(366/1075 * 100vw);
          margin: calc(24/1075 * 100vw) auto 0;
          filter: drop-shadow(calc(4/1075 * 100vw) calc(4/1075 * 100vw) 0 #000045); } }
      @media only screen and (min-width: 1150px) {
        .modal__content .cont_wrap .bt {
          width: 366px;
          margin: 24px auto 0;
          filter: drop-shadow(4px 4px 0 #000045); } }
      .modal__content .cont_wrap .bt:hover {
        cursor: pointer;
        opacity: 1;
        filter: brightness(1.15) drop-shadow(calc(5/750 * 100vw) calc(5/750 * 100vw) 0 #000045); }
        @media only screen and (min-width: 750px) {
          .modal__content .cont_wrap .bt:hover {
            filter: brightness(1.15) drop-shadow(calc(4/1075 * 100vw) calc(4/1075 * 100vw) 0 #000045); } }
        @media only screen and (min-width: 1150px) {
          .modal__content .cont_wrap .bt:hover {
            filter: brightness(1.15) drop-shadow(4px 4px 0 #000045); } }
        .modal__content .cont_wrap .bt:hover img {
          opacity: 1; }
