.sp_block {
  display: none; }
  @media screen and (max-width: 767px) {
    .sp_block {
      display: block; } }

main {
  margin-bottom: 115px; }
  main .about_read {
    padding: 70px 0 120px;
    background: url("../img/about/about_bg.jpg") repeat top center/100%; }
    main .about_read .inner {
      max-width: 1150px;
      width: 94%;
      margin: 0 auto; }
      main .about_read .inner .read {
        margin-bottom: 50px; }
        main .about_read .inner .read .ttl {
          display: flex;
          align-items: center;
          justify-content: center;
          margin-bottom: 35px; }
          main .about_read .inner .read .ttl p {
            font-size: 44px;
            font-weight: 700;
            margin-left: 5px; }
        main .about_read .inner .read .read_txt {
          text-align: center;
          line-height: 2.3;
          font-size: 15px; }
      main .about_read .inner .check_area {
        position: relative; }
        main .about_read .inner .check_area .area_illust {
          position: absolute;
          bottom: 0;
          right: 1.4%;
          width: 24.2%; }
        main .about_read .inner .check_area .inner {
          width: 67.31%;
          margin: 0 auto;
          border-radius: 8px;
          background: #fff;
          border: 3px solid #4d779f;
          box-shadow: 3px 3px 0px #4d779f;
          padding: 35px 8% 40px;
          box-sizing: border-box; }
          main .about_read .inner .check_area .inner .ttl {
            text-align: center;
            font-size: 23px;
            color: #4D779F;
            font-weight: 500;
            margin-bottom: 30px; }
          main .about_read .inner .check_area .inner ul {
            list-style: none;
            padding: 0;
            margin: 0; }
            main .about_read .inner .check_area .inner ul li {
              font-size: 15px;
              font-weight: 500;
              position: relative;
              padding-left: 34px; }
              main .about_read .inner .check_area .inner ul li::before {
                content: "";
                background: url("../img/about/check_icon.svg") no-repeat center/100%;
                width: 21px;
                height: 20px;
                position: absolute;
                left: 0;
                top: 0; }
              main .about_read .inner .check_area .inner ul li:not(:last-of-type) {
                margin-bottom: 28px; }
  main .shop_content {
    background: #F7F7F7;
    padding: 86px 0 98px;
    margin-bottom: 75px; }
    main .shop_content h2 {
      text-align: center;
      font-size: 23px;
      font-weight: 500;
      margin-bottom: 40px; }
      main .shop_content h2::after {
        content: "";
        display: block;
        width: 44px;
        height: 5px;
        background: #4D779F;
        margin: 14px auto 0; }
    main .shop_content .point_content {
      width: 94%;
      max-width: 1044px;
      margin: 0 auto 90px; }
      main .shop_content .point_content .point_list {
        display: flex;
        align-items: flex-start;
        flex-wrap: wrap;
        align-items: stretch; }
        main .shop_content .point_content .point_list .single {
          display: flex;
          align-items: flex-start;
          flex-wrap: wrap;
          justify-content: center;
          align-items: center;
          flex-direction: column;
          width: 30.7%;
          max-width: 320px;
          background: #fff;
          border: 1px solid #7C7C7C;
          border-radius: 3px;
          padding: 30px 0; }
          @media screen and (min-width: 768px) {
            main .shop_content .point_content .point_list .single:not(:nth-of-type(3n)) {
              margin-right: calc(7.9% / 2); } }
          main .shop_content .point_content .point_list .single h3 {
            font-size: 17px;
            text-align: center;
            font-weight: 500;
            margin-bottom: 23px; }
            main .shop_content .point_content .point_list .single h3 span {
              font-size: 30px;
              font-weight: inherit;
              color: #4D779F;
              display: block; }
          main .shop_content .point_content .point_list .single .image_box {
            margin-bottom: 26px; }
            main .shop_content .point_content .point_list .single .image_box img {
              margin: 0 auto; }
          main .shop_content .point_content .point_list .single p {
            font-size: 15px;
            line-height: 1.8;
            margin-bottom: 30px;
            padding: 0 9%;
            flex-grow: 1; }
          main .shop_content .point_content .point_list .single .link_btn {
            width: 150px;
            margin: 0 auto; }
            main .shop_content .point_content .point_list .single .link_btn a {
              display: block;
              line-height: 40px;
              color: #fff;
              text-align: center;
              font-size: 14px;
              font-weight: 500;
              position: relative;
              background: #7EB0D9;
              border-radius: 20px;
              text-decoration: none; }
              main .shop_content .point_content .point_list .single .link_btn a::after {
                content: "";
                width: 6px;
                height: 6px;
                border-top: 2px solid #fff;
                border-right: 2px solid #fff;
                position: absolute;
                right: 16px;
                top: calc(50% - 3px);
                transform: rotate(45deg); }
    main .shop_content .delivery_content {
      width: 94%;
      max-width: 1044px;
      margin: 0 auto; }
      main .shop_content .delivery_content h2::after {
        background: #529B84; }
      main .shop_content .delivery_content .delivery_list {
        display: flex;
        align-items: flex-start;
        flex-wrap: wrap;
        align-items: stretch;
        margin-bottom: 34px; }
        main .shop_content .delivery_content .delivery_list .single {
          display: flex;
          align-items: flex-start;
          flex-wrap: wrap;
          align-items: center;
          justify-content: center;
          width: 30.7%;
          max-width: 320px;
          background: #fff;
          border: 1px solid #7C7C7C;
          border-radius: 3px;
          padding: 29px 42px; }
          @media screen and (min-width: 768px) {
            main .shop_content .delivery_content .delivery_list .single:not(:nth-of-type(3n)) {
              margin-right: calc(7.9% / 2); } }
          main .shop_content .delivery_content .delivery_list .single .image_box {
            width: 26%; }
          main .shop_content .delivery_content .delivery_list .single .txt {
            width: 74%; }
            main .shop_content .delivery_content .delivery_list .single .txt h3 {
              text-align: center;
              font-size: 20px;
              font-weight: 500; }
              main .shop_content .delivery_content .delivery_list .single .txt h3 span {
                font-family: forma-djr-micro,sans-serif;
                font-weight: 400;
                font-style: normal;
                font-size: 15px;
                display: block;
                margin-bottom: 3px;
                color: #529B84; }
      main .shop_content .delivery_content .delivery_txt {
        text-align: center; }
        main .shop_content .delivery_content .delivery_txt p {
          color: #fff;
          display: inline-block;
          font-size: 18px;
          line-height: 42px;
          border-radius: 5px;
          background: #63B99E;
          padding: 0 42px; }
  main .compnay {
    max-width: 1000px;
    width: 94%;
    margin: 0 auto; }
    main .compnay h2 {
      text-align: center;
      font-size: 25px;
      font-weight: 500;
      margin-bottom: 33px; }
    main .compnay table {
      width: 100%;
      border-collapse: collapse; }
      main .compnay table tr th {
        width: 34%;
        background: #F6F6F6;
        font-size: 15px;
        font-weight: 500;
        text-align: center;
        padding: 31px 0;
        border-top: 1px solid #7C7C7C;
        border-bottom: 1px solid #7C7C7C;
        border-left: 1px solid #7C7C7C; }
      main .compnay table tr td {
        width: 66%;
        font-size: 15px;
        padding: 31px 62px;
        border-top: 1px solid #7C7C7C;
        border-right: 1px solid #7C7C7C;
        border-bottom: 1px solid #7C7C7C; }
        main .compnay table tr td small {
          font-size: inherit;
          text-indent: -15px;
          padding-left: 15px;
          display: inline-block; }
  @media screen and (max-width: 1023px) {
    main .about_read .inner .check_area .inner {
      width: 64.31%; }
    main .shop_content .point_content .point_list .single h3 span {
      font-size: 26px; }
    main .shop_content .point_content .point_list .single p {
      font-size: 14px; }
    main .shop_content .delivery_content .delivery_list .single {
      padding: 30px; } }
  @media screen and (max-width: 767px) {
    main {
      margin-bottom: 12.8vw; }
      main .about_read {
        padding: 9.3333333333vw 0 12.8vw;
        background-size: cover; }
        main .about_read .inner {
          width: 90%; }
          main .about_read .inner .read .ttl {
            margin-bottom: 2.6666666667vw; }
            main .about_read .inner .read .ttl img {
              width: 48vw; }
            main .about_read .inner .read .ttl p {
              font-size: 6.9333333333vw; }
          main .about_read .inner .read .read_txt {
            font-size: 3.4666666667vw; }
          main .about_read .inner .check_area {
            padding-top: 26.6666666667vw; }
            main .about_read .inner .check_area .area_illust {
              bottom: auto;
              top: 0;
              width: 42.1333333333vw;
              left: 0;
              right: 0;
              margin: auto; }
            main .about_read .inner .check_area .inner {
              width: 100%;
              padding: 16vw 3.4666666667vw 12vw; }
              main .about_read .inner .check_area .inner .ttl {
                font-size: 4.8vw;
                margin-bottom: 5.6vw; }
              main .about_read .inner .check_area .inner ul li {
                font-size: 3.4666666667vw;
                padding-left: 5vw; }
                main .about_read .inner .check_area .inner ul li:not(:last-of-type) {
                  margin-bottom: 4vw; }
                main .about_read .inner .check_area .inner ul li::before {
                  width: 3.2vw;
                  height: 3.2vw;
                  top: 2px; }
      main .shop_content {
        padding: 16vw 0 17.6vw; }
        main .shop_content h2 {
          font-size: 4.8vw;
          margin-bottom: 9.0666666667vw; }
          main .shop_content h2::after {
            margin-top: 4vw; }
        main .shop_content .point_content {
          width: 90%;
          margin-bottom: 14.6666666667vw; }
          main .shop_content .point_content .point_list {
            display: block; }
            main .shop_content .point_content .point_list .single {
              width: 100%;
              max-width: none;
              padding: 6.6666666667vw 0 8vw; }
              main .shop_content .point_content .point_list .single:not(:last-of-type) {
                margin-bottom: 6.6666666667vw; }
              main .shop_content .point_content .point_list .single h3 {
                font-size: 4.5333333333vw;
                margin-bottom: 0; }
                main .shop_content .point_content .point_list .single h3 span {
                  font-size: 8vw; }
              main .shop_content .point_content .point_list .single .image_box img {
                width: 30.4vw; }
                main .shop_content .point_content .point_list .single .image_box img.coopervision_logo {
                  width: 50vw; }
              main .shop_content .point_content .point_list .single p {
                font-size: 3.4666666667vw;
                margin-bottom: 8vw;
                text-align: center; }
              main .shop_content .point_content .point_list .single .link_btn {
                width: 82%; }
                main .shop_content .point_content .point_list .single .link_btn a {
                  font-size: 4.2666666667vw;
                  line-height: 16vw;
                  border-radius: 8vw; }
        main .shop_content .delivery_content .delivery_list {
          display: block;
          margin-bottom: 5.3333333333vw; }
          main .shop_content .delivery_content .delivery_list .single {
            width: 100%;
            max-width: none;
            padding: 5.8666666667vw 10.9333333333vw; }
            main .shop_content .delivery_content .delivery_list .single:not(:last-of-type) {
              margin-bottom: 5.3333333333vw; }
        main .shop_content .delivery_content .delivery_txt p {
          font-size: 3.4666666667vw;
          display: block;
          width: 100%;
          padding: 0; }
      main .compnay h2 {
        font-size: 4.8vw;
        margin-bottom: 4.5333333333vw; }
      main .compnay table tbody {
        display: block; }
      main .compnay table tr {
        display: block;
        border-top: 1px solid #717171;
        padding: 4.2666666667vw 5.3333333333vw; }
        main .compnay table tr th, main .compnay table tr td {
          width: 100%;
          display: block;
          border: none;
          font-size: 3.4666666667vw;
          padding: 0;
          background: none; }
        main .compnay table tr th {
          margin-bottom: 5px;
          text-align: left; }
          main .compnay table tr th br {
            display: none; }
        main .compnay table tr td small {
          text-indent: -3.4666666667vw;
          padding-left: 3.4666666667vw; } }
