@charset "utf-8";

/* ====================================================================
 contents
==================================================================== */

/* ボックス・フレーム・グリッドなど
----------------------------------------------------------*/



/* タイトル
----------------------------------------------------------*/



/* テキスト・リンク
----------------------------------------------------------*/



/* リスト
----------------------------------------------------------*/
/* 特集リスト */
#contents .featre_list01 {
    display: -webkit-flex;
    display: flex;
    font-size: 1.4rem;
}
#contents .featre_list01 > .item {
    width: calc((100% - 40px) / 5);
    margin: 0 10px 20px 0;
    text-decoration: none;
}
#contents .featre_list01 > .item:nth-of-type(5n) {
    margin-right: 0;
}
#contents .featre_list01 > .item .thumb {
    margin: 0 0 5px;
}
#contents .featre_list01 > .item .thumb img {
    width: 100%;
}
#contents .featre_list01 > .item .title {
    margin: 0;
    text-align: center;
}
#contents .featre_list01 > .item .view {
    margin: 0;
    text-align: left;
    font-size: 1.4rem;
    color: #b28c70
}

/* おすすめ商品リスト */
#contents .recommend_list01 {
    display: -webkit-flex;
    display: flex;
}
#contents .recommend_list01 > .item {
    width: calc((100% - 240px) / 5);
    margin: 0 60px 20px 0;
    text-decoration: none;
}
#contents .recommend_list01 > .item:nth-of-type(5n) {
    margin-right: 0;
}
#contents .recommend_list01 > .item .thumb {
    margin: 0 0 5px;
}
#contents .recommend_list01 > .item .thumb img {
    width: 100%;
}
#contents .recommend_list01 > .item .title {
    margin: 0;
    text-align: center;
    line-height: 1.4;
}

/**/
#contents .recommend_list02 {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    font-size: 1.4rem;
}
#contents .recommend_list02 > .item {
    width: calc((100% - 120px) / 5);
    margin: 0 30px 20px 0;
    text-decoration: none;
}
#contents .recommend_list02 > .item:nth-of-type(5n) {
    margin-right: 0;
}
#contents .recommend_list02 > .item .thumb {
    margin: 0 0 5px;
}
#contents .recommend_list02 > .item .thumb img {
    width: 100%;
}
#contents .recommend_list02 > .item .title {
    margin: 0;
    text-align: center;
    line-height: 1.4;
}



/* カード
----------------------------------------------------------*/
#contents .hot_item01 {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
#contents .hot_item01 > .item {
    width: calc((100% - 36px) / 4);
    margin: 0 12px 20px 0;
    text-decoration: none;
}
#contents .hot_item01 > .item:nth-of-type(4n) {
    margin-right: 0;
}
#contents .hot_item01 > .item .thumb {
    margin: 0 0 5px;
}
#contents .hot_item01 > .item .thumb img {
    width: 100%;
}
#contents .hot_item01 > .item .title {
    margin: 0;
    text-align: center;
}
#contents .hot_item01 > .item .view {
    margin: 0;
    text-align: left;
    font-size: 1.4rem;
    color: #b28c70
}



/* スライダー
----------------------------------------------------------*/

/* Slider */
.slick-loading .slick-list
{
    background: #fff url('../js/slick/ajax-loader.gif') center center no-repeat;
}

/* Icons */
@font-face
{
    font-family: 'slick';
    font-weight: normal;
    font-style: normal;

    src: url('../js/slick/fonts/slick.eot');
    src: url('../js/slick/fonts/slick.eot?#iefix') format('embedded-opentype'), url('../js/slick/fonts/slick.woff') format('woff'), url('../js/slick/fonts/slick.ttf') format('truetype'), url('../js/slick/fonts/slick.svg#slick') format('svg');
}

/* Arrows */
.slick-prev,
.slick-next
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: calc(50% - 10px);
    z-index: 2;

    display: block;

    width: 50px;
    height: 50px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);

    cursor: pointer;

    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus
{
    color: transparent;
    outline: none;
    background: transparent;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before
{
    opacity: .7;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before
{
    opacity: .25;
}
.slick-prev:before,
.slick-next:before
{
    /*
    font-family: 'slick';
    font-size: 20px;
    line-height: 1;
    */

    color: white;

    display: block;
    width: 100%;
    height: 100%;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-prev
{
    left: -10px;
}
.slick-prev:before
{
    background: url("../img/slider_btn_prev01.png") 0 0 no-repeat;
    background-size: contain;
    content: '';
}
.slick-next
{
    right: -10px;
}
.slick-next:before
{
    background: url("../img/slider_btn_next01.png") 0 0 no-repeat;
    background-size: contain;
    content: '';
}

/* Dots */
.slick-dotted.slick-slider
{
    margin-bottom: 30px;
}
.slick-dots
{
    position: absolute;
    bottom: -25px;

    display: block;

    width: 100%;
    padding: 0;
    margin: 0;

    list-style: none;

    text-align: center;
}
.slick-dots li
{
    position: relative;

    display: inline-block;

    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;

    cursor: pointer;
}
.slick-dots li:before
{
    display: none !important;
}
.slick-dots li button
{
    font-size: 0;
    line-height: 0;

    display: block;

    width: 20px;
    height: 20px;
    padding: 5px;

    cursor: pointer;

    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus
{
    outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
    opacity: 1;
}
.slick-dots li button:before
{
    font-family: 'slick';
    font-size: 6px;
    line-height: 20px;

    position: absolute;
    top: 0;
    left: 0;

    width: 20px;
    height: 20px;

    content: '•';
    text-align: center;

    color: #bea7a9;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;

}
.slick-dots li.slick-active button:before
{
    color: #626262;
}











/**/
#contents .cart_item_list01 {
    table-layout: auto;
}
#contents .cart_item_list01 tr {}
#contents .cart_item_list01 tr td {
    width: auto;
    border: 0 none;
    border-top: 1px solid #dcdcdc;
    vertical-align: middle;
}
#contents .cart_item_list01 tr td.thumb {
    width: 164px;
    padding: 20px 10px 20px 30px;
}
#contents .cart_item_list01 tr td.thumb img {
    width: 100%;
}
#contents .cart_item_list01 tr td.name {
    padding: 20px 10px 20px 0;
    vertical-align: top;
    line-height: 1.4;
}
#contents .cart_item_list01 tr td.price {
    font-size: 1.2rem;
    text-align: right;
    white-space: nowrap;
}
#contents .cart_item_list01 tr td.price .text {
    margin: 0 80px 0 0;
}
#contents .cart_item_list01 tr td.price .num {
    margin: 0 4px;
    font-size: 1.6rem;
    font-weight: bold;
}
#contents .cart_item_list01 tr td.price .cross {
    margin: 0 0 0 20px;
    font-size: 1.6rem;
}
#contents .cart_item_list01 tr td.num {}
#contents .cart_item_list01 tr td.num .num_box {
    display: -webkit-flex;
    display: flex;
}
#contents .cart_item_list01 tr td.num .num_box select {
    -webkit-appearance: none;
    appearance: none;
    padding: 1px 18px 0 4px;
    border-radius: 0;
    background: url(../img/icon/ico_arrow_down-black01.png) calc(100% - 6px) 50% no-repeat;
    background-size: 5px auto;
}
#contents .cart_item_list01 tr td.num .num_box a {
    display: block;
    height: 30px;
    padding: 0 8px;
    background: #343434;
    color: #ffffff;
    font-size: 1.2rem;
    text-align: center;
    text-decoration: none;
    line-height: 30px;
}
#contents .cart_item_list01 tr td.delete {
    width: 1%;
    font-size: 1.2rem;
    white-space: nowrap;
}
#contents .cart_item_list01 tr td.delete a {
    display: inline-block;
    padding: 0 0 0 22px;
    background: url(../img/icon/ico_garbage-can.png) 0 50% no-repeat;
    background-size: contain;
    color: #d0d0d0;
    text-decoration: none;
}

/**/
#contents .cart_total_box01 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
    margin: 0 0 30px;
    padding: 10px;
    border: 1px solid #d5d5d5;
    background: #f0f0f0;
}
#contents .cart_total_box01 .lead {
    flex: 1 1 1px;
    font-size: 1.2rem;
}
#contents .cart_total_box01 .price {
    margin: 0 25px 0 0;
    white-space: nowrap;
}
#contents .cart_total_box01 .price .num {
    color: #d91636;
    font-size: 2.2rem;
    font-weight: bold;
}
#contents .cart_total_box01 .btn {}
#contents .cart_total_box01 .btn button {
    padding: 12px 54px 11px;
    border: 0 none;
    border-radius: 4px;
    background: #fc9208;
    color: #ffffff;
}





/*
#contents .cart_item_list01 {}
#contents .cart_item_list01 > .item {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
    padding: 20px 30px;
    border-top: 1px solid #e1e1e1;
}
#contents .cart_item_list01 > .item .thumb {
    margin: 0 10px 0 0;
}
#contents .cart_item_list01 > .item .thumb img {
    width: 124px;
}
#contents .cart_item_list01 > .item .name {

    font-size: 1.4rem;
}
#contents .cart_item_list01 > .item .name p {
    margin: 0;
}
*/






#contents .cart_deliv_table01 {
    table-layout: auto;
    font-size: 1.2rem;
}
#contents .cart_deliv_table01 tr {}
#contents .cart_deliv_table01 tr td {
    border: 0 none;
    border-bottom: 1px solid #e1e1e1;
}
#contents .cart_deliv_table01 tr td.type {
    width: 1%;
    white-space: nowrap;
}
#contents .cart_deliv_table01 tr td.type input{
    display: inline-block;
    margin: 0 5px 2px 0;
    vertical-align: middle;
}
#contents .cart_deliv_table01 tr td.address {}
#contents .cart_deliv_table01 tr td.change {
    width: 1%;
    white-space: nowrap;
}
#contents .cart_deliv_table01 tr td.delete {
    width: 1%;
    white-space: nowrap;
}





#contents .cart_title01 {
    margin: 30px 0 20px;
    border-bottom: 2px solid #969696;
    font-size: 2.2rem;
    color: #333333;
}
#contents .cart_title01.cart {
    padding-left: 40px;
    background: url(../img/icon/ico_cart.png) 0 0 no-repeat;
    background-size: 32px auto;
}
#contents .cart_title02 {
    margin: 30px 0 20px;
    border-bottom: 1px dotted #969696;
    font-size: 1.8rem;
    color: #333333;
}
#contents .cart_title03 {
    margin: 30px 0 20px;
    font-size: 3.2rem;
    text-align: center;
    color: #333333;
}


/**/
#contents .cart_pay_list01 {
    font-size: 1.2rem;
}
#contents .cart_pay_list01 > .item {
    padding: 30px 0;
    border-top: 1px solid #dadada;
}
#contents .cart_pay_list01 > .item:first-of-type {
    border-top: 0 none;
}
#contents .cart_pay_list01 > .item .pay_title {
    margin: 0 0 30px;
    font-weight: bold;
}
#contents .cart_pay_list01 > .item .pay_title input {
    display: inline-block;
    margin: 0 5px 2px 0;
    vertical-align: middle;
}
#contents .cart_pay_list01 > .item .wrap_box {
    padding: 0 0 0 20px;
}

/**/
#contents .cart_pay_credit01 {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
#contents .cart_pay_credit01 > .item {
    margin: 0 0 10px;
}
#contents .cart_pay_credit01 > .item.company {
    width: 25%;
    padding: 0 15px 0 0;
}
#contents .cart_pay_credit01 > .item.num {
    width: 35%;
    padding: 0 15px 0 0;
}
#contents .cart_pay_credit01 > .item.date {
    width: 40%;
}
#contents .cart_pay_credit01 > .item.name {
    width: 60%;
    padding: 0 15px 0 0;
}
#contents .cart_pay_credit01 > .item.split {
    width: 40%;
}

#contents .cart_pay_credit01 > .item.company select {
    width: 100%;
}







#contents #complete_area {
    margin: 0 0 90px;
}
#contents #complete_area .message {
    margin: 0 0 30px;
    text-align: center;
}
#contents #complete_area .shop_information {}
#contents #complete_area .shop_information p {
    font-size: 1.2rem;
    text-align: center;
}


#contents .cart_bnr01 {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    justify-content: center;
}
#contents .cart_bnr01 > .item {
    width: 330px;
    margin: 0 20px 20px;
}
#contents .cart_bnr01 > .item:nth-of-type(2n) {
    margin-right: 0;
}
#contents .cart_bnr01 > .item a {}
#contents .cart_bnr01 > .item a img {
    width: 100%;
}


#contents .btn_area {
    margin: 0 0 30px;
}
#contents .btn_area .btn_back01 {
    display: inline-block;
    width: 270px;
    margin: 0 10px;
    padding: 12px 10px 11px;
    border: 0 none;
    border-radius: 4px;
    background: #8c8c8c;
    color: #ffffff;
    text-decoration: none;
    -webkit-transition: all .1s ease-out;
    transition: all .1s ease-out;
}
#contents .btn_area .btn_next01 {
    display: inline-block;
    width: 270px;
    margin: 0 10px;
    padding: 12px 10px 11px;
    border: 0 none;
    border-radius: 4px;
    background: #f88d01;
    color: #ffffff;
    text-decoration: none;
    -webkit-transition: all .1s ease-out;
    transition: all .1s ease-out;
}
#contents .btn_area .btn_next01:hover {
    opacity: .7;
}
#contents .btn_area ul {}
#contents .btn_area ul li {}
#contents .btn_area ul li:before {
    display: none;
}


/**/
#contents .address_add_btn01 {
    display: inline-block;
    border: 1px solid #e1e1e1;
    padding: 7px 10px 6px;
    color: #666666;
    font-size: 1.2rem;
    text-decoration: none;
}



/* 入力内容ご確認ページ 商品リスト */
#contents .cart_item_list02 {
    table-layout: auto;
    margin: 0;
    font-size: 1.2rem;
}
#contents .cart_item_list02 tr {}
#contents .cart_item_list02 tr th {
    width: auto;
    border: 0 none;
    border-top: 1px solid #dcdcdc;
    background: none;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
}
#contents .cart_item_list02 tr td {
    width: auto;
    border: 0 none;
    border-top: 1px solid #dcdcdc;
    vertical-align: middle;
}
#contents .cart_item_list02 tr.point td {
    width: auto;
    vertical-align: middle;
    font-size: 1.4rem;
    padding: 15px 16px 14px;
}
#contents .cart_item_list02 tr td.thumb {
    width: 160px;
    padding: 20px 10px 20px 30px;
}
#contents .cart_item_list02 tr td.thumb img {
    width: 100%;
}
#contents .cart_item_list02 tr td.name {
    vertical-align: top;
    line-height: 1.4;
}
#contents .cart_item_list02 tr td.price {
    text-align: right;
    white-space: nowrap;
    vertical-align: top;
}
#contents .cart_item_list02 tr td.price_point {
    text-align: right;
    white-space: nowrap;
    vertical-align: middle;
    color:#FF0000;
    font-size: 1.2rem;
}
#contents .cart_item_list02 tr td.quantity {
    text-align: right;
    white-space: nowrap;
    vertical-align: top;
}
#contents .cart_item_list02 tr td.total {
    text-align: right;
    white-space: nowrap;
    vertical-align: top;
}

#contents td.notice_box {
    padding: 10px 16px;
}
#contents td .notice_bg {
    background: #DEEFFF;
    padding: 10px;
}

/**/
#contents .cart_total_box02 {
    margin: 0 0 10px;
    padding: 10px;
    border-top: 1px solid #d3d3d3;
    border-bottom: 1px solid #d3d3d3;
    background: #fff;
}
#contents .cart_total_box02 p {
    margin: 0;
    font-size: 1.2rem;
}
#contents .cart_total_box02 .total {
    font-size: 2.2rem;
    line-height: 1.2;
}
#contents .cart_total_box02 .total .num {
    color: #ea0361;
    font-size: 3rem;
}
#contents .cart_total_col {
    display: flex;
}
#contents .cart_total_at {
    flex:1;
}
#contents .cart_total_price {
    width: 300px;
    text-align: right;
}
#contents .cart_total_price .point_data {
    color:#FF0000;
}
#contents .appointment_point{
    font-size:1.6rem;
    text-align: right;
    margin: 0 0 30px;
    padding: 10px;
}
/*  */
#contents .cart_info_table01 {
    table-layout: auto;
    /*border-top: 1px solid #dfdfdf;*/
    font-size: 1.2rem;
}
#contents .cart_info_table01 tr {}
#contents .cart_info_table01 tr th {
    width: 176px;
    padding: 2px 20px 2px 0;
    border: 0 none;
    background: none;
    font-weight: normal;
}
#contents .cart_info_table01 tr td {
    padding: 2px 0;
    border: 0 none;
}
#contents .cart_info_table01 tr:first-of-type th,
#contents .cart_info_table01 tr:first-of-type td {
    /*padding-top: 20px;*/
}





/* 医薬品 詳細ページ 質問部分 */
#contents .option_box {}
#contents .option_box ul {}
#contents .option_box ul li {
    width: 100%;
    padding: 0;
}
#contents .option_box ul li:before {
    display: none;
}

/* オススメ動画 */
#contents .movie_slide {
     padding: 0 20px;
}
#contents .movie_slide .js_movie_slider .slick-prev,
#contents .movie_slide .js_movie_slider .slick-next {
  background: transparent;
  border: none;
  color: transparent;
  cursor: pointer;
  display: block;
  height: 55px;
  line-height: 0;
  outline: none;
  padding: 0;
  position: absolute;
  text-indent: 100%;
  top: 35%;
  /*transform: translateY(-50%);*/
  transition: all 0.35s ease-out;
  width: 55px;
  z-index: 3;
}
#contents .movie_slide .js_movie_slider .slick-prev:hover,
#contents .movie_slide .js_movie_slider .slick-next:hover {
  opacity: .45;
}
#contents .movie_slide .js_movie_slider .slick-prev:before,
#contents .movie_slide .js_movie_slider .slick-next:before {
  background-size: 55px 55px;
  content: "";
  display: block;
  height: 55px;
  opacity: 1;
  width: 55px;
}
#contents .movie_slide .js_movie_slider .slick-prev {
  left: -40px;
}
#contents .movie_slide .js_movie_slider .slick-prev:before {
  background-image: url(../../../../assets/img/slide_arrow_left.svg);
}
#contents .movie_slide .js_movie_slider .slick-next {
  right: -40px;
}
#contents .movie_slide .js_movie_slider .slick-next:before {
  background-image: url(../../../../assets/img/slide_arrow_right.svg);
}
#contents .movie_slide .js_movie_slider .slide-item {
  margin: 0 10px;
  transition: all 0.35s ease-out;
  /*height: auto;*/
}
#contents .movie_slide .js_movie_slider .slide-item a {
  text-decoration: none;
}
#contents .movie_slide__play {
  position: relative;
  transition: all 0.35s ease-out;
}
#contents .movie_slide__play:before {
  background-image: url(../../../../assets/img/icon-play.svg);
  background-size: 80px 80px;
  content: "";
  height: 80px;
  left: 50%;
  opacity: 0.75;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 80px;
  z-index: 2;
}
#contents .movie_slide__txt {
  margin: 15px 0 0;
  font-size: 1.3rem;
}
#contents .movie_slide .movie_btn {
	width: 320px;
    margin: 15px auto 0;
}
#contents .movie_slide .movie_btn a {
    border: 1px solid #653e25;
    border-radius: 3px;
    color: #653e25;
    display: block;
    margin-top: 30px;
    padding: 15px;
    position: relative;
    text-align: center;
    text-decoration: none;
}
#contents .movie_slide .movie_btn a:hover {
    color: #fff;
    background: #a38b7c;
    border: 1px solid #a38b7c;
    opacity: 1;
}
#contents .movie_slide .movie_btn a:after {
    border: 0px;
    content: "";
    height: 10px;
    margin-top: -5px;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: rotate(45deg);
    width: 10px;
    border-right: solid 1px #653e25;
    border-top: solid 1px #653e25;
}
#contents .movie_slide .movie_btn a:hover:after {
    border-right: solid 1px #fff;
    border-top: solid 1px #fff;
}