#prd_detail {
  margin: 0 auto;
  width: 100%;
  min-width: 900px;
  max-width: 1080px;
  padding: 50px 30px 100px;
  overflow: hidden;
  color: #464646;
  display: flex; }
  @media (min-width: 861px) and (max-width: 900px) {
    #prd_detail {
      padding: 30px 10px;
      width: auto; }
      #prd_detail .box_right {
        margin-left: 20px !important; } }
  @media (max-width: 860px) {
    #prd_detail {
      margin: 0 auto;
      width: 100%;
      min-width: auto;
      flex-flow: column;
      padding: 0 1em; }
      #prd_detail .box_right {
        margin-top: 0;
        margin-left: 0 !important; } }
  #prd_detail .box {
    position: relative;
    width: 100%; }
  #prd_detail .prd_name {
    margin: 0;
    font-size: 31px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: -1px;
    overflow: hidden; }
    @media (max-width: 860px) {
      #prd_detail .prd_name {
        font-size: 28px; } }
  #prd_detail .box_left p.title {
    margin: 0 0 20px;
    font-size: 20px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.12rem; }
  #prd_detail .box_left .prd_img_wrap {
    position: relative;
    width: 100%;
    height: 300px;
    background: white;
    box-shadow: 0 0 24px rgba(0, 0, 0, 0.13);}
    @media (max-width: 860px) {
      #prd_detail .box_left .prd_img_wrap {
        height: 300px; } }
    #prd_detail .box_left .prd_img_wrap > img {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%); }
    #prd_detail .box_left .prd_img_wrap .percent {
      position: absolute;
      top: 20px;
      left: 20px;
      width: 64px;
      height: 64px;
      border-radius: 50% 50% 10% 50%;
      background: #64A4FE;
      display: flex;
      align-items: center;
      justify-content: center;
      background-size: contain;
      color: white;
      text-align: center;
      line-height: 1;
      font-size: 24px;
      font-weight: 700; }
      @media (max-width: 860px) {
        #prd_detail .box_left .prd_img_wrap .percent {
          width: 60px;
          height: 60px;
          font-size: 20px; } }
  #prd_detail .box_left .prd_desc h4 {
    color: #333;
    font-size: 24px;
    font-weight: 500;
    padding-bottom: 8px; }
  #prd_detail .box_left .prd_desc .table {
    width: 100%;
    border-top: 1px solid rgba(58, 58, 58, 0.8); }
    #prd_detail .box_left .prd_desc .table th, #prd_detail .box_left .prd_desc .table td {
      border-bottom: 1px solid rgba(58, 58, 58, 0.1);
      line-height: 1.6;
      padding: 7px 15px;
      font-size: 16px;
      color: #737373; }
  #prd_detail .box_left .prd_desc p {
    font-size: 16px;
    color: #737373;
    line-height: 1.5; }
  #prd_detail .box_left .prd_desc ul.info_list {
    margin-top: 20px;
    letter-spacing: -0.2px;
    text-indent: -15px;
    margin-left: 15px; }
    #prd_detail .box_left .prd_desc ul.info_list > li {
      line-height: 1.6;
      margin: 0 0 5px; }
      #prd_detail .box_left .prd_desc ul.info_list > li.bold {
        font-weight: 500; }
  #prd_detail .box_right {
    margin-left: 50px; }
    #prd_detail .box_right p.title {
      margin: 0;
      font-size: 18px;
      font-weight: 700;
      line-height: 1;
      letter-spacing: -0.1px; }
    #prd_detail .box_right .price_info {
      line-height: 24px;
      height: 24px; }
    #prd_detail .box_right form {
      margin-top: 20px;
      font-size: 15px; }
      #prd_detail .box_right form .product_list {
        margin: 15px 0 0; }
        #prd_detail .box_right form .product_list > li {
          position: relative;
          padding: 10px 20px;
          border: 1px solid rgba(58, 58, 58, 0.1);
          margin-bottom: 10px;
          display: flex;
          line-height: 34px; }
          #prd_detail .box_right form .product_list > li:last-of-type {
            margin-bottom: 0; }
          @media (max-width: 860px) {
            #prd_detail .box_right form .product_list > li {
              display: block; }
              #prd_detail .box_right form .product_list > li .quantity_price {
                position: absolute;
                bottom: 10px;
                right: 20px; } }
          @media (max-width: 375px) {
            #prd_detail .box_right form .product_list > li {
              padding: 10px; } }
          #prd_detail .box_right form .product_list > li .price_name {
            min-width: 80px;
            font-weight: 500; }
            @media (max-width: 860px) {
              #prd_detail .box_right form .product_list > li .price_name {
                display: block; } }
          #prd_detail .box_right form .product_list > li .quantity_wrap {
            margin-right: 10px;
            flex-flow: row;
            position: relative;
            height: 34px;
            display: flex; }
            #prd_detail .box_right form .product_list > li .quantity_wrap > input {
              display: inline-block;
              width: 50px;
              border: none;
              line-height: 34px;
              height: 100%;
              text-align: center;
              font-weight: 500;
              font-size: 15px; }
              @media (max-width: 860px) {
                #prd_detail .box_right form .product_list > li .quantity_wrap > input {
                  width: 40px; } }
            #prd_detail .box_right form .product_list > li .quantity_wrap .quantity_btn {
              display: inline-block;
              border: none;
              cursor: pointer;
              position: relative;
              width: auto;
              height: 34px;
              padding: 0 17px;
              background-color: #f5f5f5;
              outline: none;
              font-family: 'Noto Sans KR', sans-serif;
              font-weight: 500;
              transition: background .2s ease-in-out; }
              #prd_detail .box_right form .product_list > li .quantity_wrap .quantity_btn.up10 {
                margin-left: 5px;
                background: #64A4FE;
                color: white; }
                @media (max-width: 860px) {
                  #prd_detail .box_right form .product_list > li .quantity_wrap .quantity_btn.up10 {
                    padding: 0 16px;
                    margin-left: 7px; } }
              #prd_detail .box_right form .product_list > li .quantity_wrap .quantity_btn.down::before, #prd_detail .box_right form .product_list > li .quantity_wrap .quantity_btn.up::before {
                position: absolute;
                top: 50%;
                left: 50%;
                width: 11px;
                height: 1px;
                margin: -1px 0 0 -6px;
                background-color: #555555;
                content: ''; }
              #prd_detail .box_right form .product_list > li .quantity_wrap .quantity_btn.down:hover, #prd_detail .box_right form .product_list > li .quantity_wrap .quantity_btn.up:hover {
                background-color: #c1c2c3; }
              #prd_detail .box_right form .product_list > li .quantity_wrap .quantity_btn.up::after {
                position: absolute;
                top: 50%;
                left: 50%;
                width: 1px;
                height: 11px;
                margin: -6px 0 0 -1px;
                background-color: #555555;
                content: ''; }
          #prd_detail .box_right form .product_list > li .quantity_price {
            flex-grow: 1;
            text-align: right;
            line-height: 34px;
            font-size: 15px;
            font-weight: 500; }
            #prd_detail .box_right form .product_list > li .quantity_price > span {
              font-size: 16px;
              margin-right: 3px; }
      #prd_detail .box_right form .point_wrapper {
        margin-top: 10px;
        width: 100%;
        display: flex;
        flex-flow: row;
        line-height: 34px; }
        #prd_detail .box_right form .point_wrapper .point_input_wrap {
          position: relative;
          width: 150px;
          height: 34px;
          min-width: 150px; }
          #prd_detail .box_right form .point_wrapper .point_input_wrap #point_input {
            float: right;
            width: 100%;
            line-height: 34px;
            text-align: right;
            padding: 0 25px 0 10px;
            font-size: 15px; }
          #prd_detail .box_right form .point_wrapper .point_input_wrap .unit {
            position: absolute;
            top: 0;
            right: 10px;
            color: #333; }
        #prd_detail .box_right form .point_wrapper > div:last-of-type {
          width: 100%;
          position: relative;
          display: flex;
          flex-flow: row;
          justify-content: flex-end; }
        @media (max-width: 860px) {
          #prd_detail .box_right form .point_wrapper {
            flex-flow: column; }
            #prd_detail .box_right form .point_wrapper #point_input {
              float: left; }
            #prd_detail .box_right form .point_wrapper > div:last-of-type {
              justify-content: flex-start; } }
    #prd_detail .box_right .price_info {
      margin-top: 30px;
      font-family: "Noto Sans KR", sans-serif; }
    #prd_detail .box_right .sale_price {
      font-size: 24px;
      color: #333;
      font-family: "Noto Sans KR", sans-serif;
      letter-spacing: 0.5px; }
    #prd_detail .box_right .raw_price {
      position: relative;
      margin-left: 5px;
      font-size: 18px;
      color: #999;
      font-family: "Noto Sans KR", sans-serif; }
      #prd_detail .box_right .raw_price::after {
        display: block;
        content: ' ';
        position: absolute;
        left: 0;
        bottom: 9px;
        width: 100%;
        height: 1px;
        background: #999; }
    #prd_detail .box_right .clear_btn {
      position: absolute;
      top: 0;
      right: 0;
      outline: none;
      border: none;
      padding: 0 17px;
      cursor: pointer;
      font-size: 16px;
      line-height: 1;
      height: 46px;
      background-color: #64A4FE;
      color: white;
      transition: background .2s ease-in-out; }
      @media (max-width: 860px) {
        #prd_detail .box_right .clear_btn {
          height: 36px;
          font-size: 14px; } }
      #prd_detail .box_right .clear_btn:hover {
        background-color: #ccc; }
    #prd_detail .box_right .pay_type_wrapper {
      margin-top: 13px;
      display: flex;
      line-height: 24px;
      align-items: center; }
    #prd_detail .box_right .radio_label {
      position: relative; }
      #prd_detail .box_right .radio_label [type=radio] {
        opacity: 0;
        position: absolute; }
        #prd_detail .box_right .radio_label [type=radio] + span {
          padding-left: 25px;
          margin-right: 20px; }
          #prd_detail .box_right .radio_label [type=radio] + span::before {
            display: block;
            content: ' ';
            position: absolute;
            top: 50%;
            left: 0;
            width: 18px;
            height: 18px;
            border-radius: 9px;
            border: 1px solid rgba(58, 58, 58, 0.2);
            transform: translateY(-50%); }
        #prd_detail .box_right .radio_label [type=radio]:checked + span::after {
          display: block;
          content: ' ';
          position: absolute;
          top: 50%;
          left: 9px;
          width: 8px;
          height: 8px;
          border-radius: 4px;
          transform: translate(-50%, -50%);
          background: #1445bc; }
    #prd_detail .box_right .pay_type_desc {
      margin-top: 5px;
      padding: 10px 20px 10px 10px;
      background: #f1f2f4;
      display: none;
      line-height: 1.8;
      overflow: hidden;
      font-size: 13px; }
      #prd_detail .box_right .pay_type_desc .limit_err_msg {
        color: #f56c6c; }
    #prd_detail .box_right .pay_price_list > li {
      overflow: hidden;
      line-height: 40px;
      border-bottom: 1px solid #ededed;
      font-size: 16px; }
      #prd_detail .box_right .pay_price_list > li > div {
        float: right;
        font-size: 16px; }
        #prd_detail .box_right .pay_price_list > li > div > span {
          font-family: 'Noto Sans KR', sans-serif;
          font-size: 16px;
          margin-right: 3px; }
    #prd_detail .box_right #pay_check {
      transform: scale(1.2);
      margin: 0 5px 0 0; }
    #prd_detail .box_right .tot_price_wrap {
      display: flex;
      align-items: baseline;
      float: right;
      text-align: right;
      font-family: 'Noto Sans KR', sans-serif;
      font-size: 24px;
      line-height: 40px;
      color: #64A4FE; }
      #prd_detail .box_right .tot_price_wrap .desc {
        margin-right: 10px;
        padding-right: 10px;
        font-size: 15px;
        color: #999;
        line-height: 40px; }
      #prd_detail .box_right .tot_price_wrap .tot_price {
        font-family: 'Noto Sans KR', sans-serif;
        margin-right: 5px;
        font-size: 32px;
        font-weight: 700; }
    #prd_detail .box_right .check_link {
      margin: 0 2px;
      text-decoration: underline;
      cursor: pointer;
      font-size: 14px;
      font-weight: 500;
      color: #E66F6F; }
    #prd_detail .box_right .btn_pay {
      display: block;
      width: 100%;
      height: 60px;
      margin-bottom: 60px;
      font-size: 24px;
      font-weight: bold;
      line-height: 60px;
      letter-spacing: -0.5px;
      outline: none;
      border: none;
      background: #64A4FE;
      color: #ffffff;
      cursor: pointer; }
      #prd_detail .box_right .btn_pay:disabled {
        background: #C0C4CC;
        cursor: not-allowed; }

#agreement_popup {
  width: 100%;
  max-width: 400px;
  max-height: 80%;
  overflow: scroll; }
  #agreement_popup .agreement_list {
    display: block; }
    #agreement_popup .agreement_list > li {
      display: block;
      text-indent: -15px;
      margin-left: 15px;
      margin-bottom: 5px; }

#phone_auth_popup {
  max-width: 94%;
  width: 360px; }
  #phone_auth_popup input {
    width: 100%;
    padding: 0 10px;
    line-height: 40px;
    height: 40px; }
    #phone_auth_popup input:disabled {
      background: #f1f1f1; }
  #phone_auth_popup p {
    text-align: left; }
  #phone_auth_popup .row {
    display: flex; }
    @media (max-width: 860px) {
      #phone_auth_popup .row {
        font-size: 13px; } }
  #phone_auth_popup #btn_receive {
    margin: 0;
    padding: 0 10px;
    width: 100px;
    min-width: 100px; }
  #phone_auth_popup #auth_input {
    width: 100%;
    display: block;
    padding: 0 10px; }
  #phone_auth_popup #remain_time {
    margin-top: 10px;
    text-align: left; }
