@charset "utf-8";
/* CSS Document */

/* EC-CUBE調整用
-----------------------------------------*/

.ec-layoutRole .ec-layoutRole__contents {
    width: auto;
    display: block;
}

@media only screen and (min-width: 768px) {
.ec-layoutRole .ec-layoutRole__mainWithColumn {
    width: 100%;
}
}

/* #gift_sideの代わりに.ec-layoutRole__leftで設定 */
@media screen and (min-width:768px) {
.ec-layoutRole .ec-layoutRole__left{
    width: 220px;
}
}
@media screen and (max-width:767px) {
.ec-layoutRole .ec-layoutRole__left{
    margin-top: 60px;
}
}
.ec-blockBtn--action{
    background-color: #b9905e;
    border-color: #b9905e;
    text-decoration: none;
    -webkit-transition: all .3s;
        transition: all .3s;
}
.ec-blockBtn--action:active, .ec-blockBtn--action.active, .open > .ec-blockBtn--action.dropdown-toggle {
    background-color: #b9905e;
    border-color: #b9905e;
}
.ec-blockBtn--action:focus, .ec-blockBtn--action.focus {
    background-color: #b9905e;
    border-color: #b9905e;
}
.ec-blockBtn--action:active:hover, .ec-blockBtn--action:active:focus, .ec-blockBtn--action:active.focus, .ec-blockBtn--action.active:hover, .ec-blockBtn--action.active:focus, .ec-blockBtn--action.active.focus, .open > .ec-blockBtn--action.dropdown-toggle:hover, .open > .ec-blockBtn--action.dropdown-toggle:focus, .open > .ec-blockBtn--action.dropdown-toggle.focus {
    background-color: #b9905e;
    border-color: #b9905e;
}
@media screen and (min-width: 768px) {
.ec-blockBtn--action {
    background-color: #b9905e;
    border-color: #b9905e;
}
.ec-blockBtn--action:hover {
    background-color: #b9905e;
    border-color: #b9905e;
    opacity: .7;
}
}

.ec-favoriteRole__item a{
    font-size: 16px;
}

/* 削除ボタン */
.ec-cartRow__delColumn img,
.ec-icon img{
    font-size: 16px;
}
.ec-layoutRole .ec-layoutRole__left {
    display: block;
}
/* ==============================
共通
============================== */

.errorMessage {
    color: #DE5D50;
}
.attentionMessage {
    color: #DE5D50;
}

input[type=radio],
input[type=checkbox] {
    appearance: auto;
}

/* スライダー */

.slider{
    width: 100%;
    margin: 0px auto;
}
.slider-container {
    width: 100%;
    overflow: hidden;
    position: relative;
}

.slider img{
    object-fit: cover;
}

.slider-nav-container{
    width: 100%;
    overflow: hidden;
    padding-top: 25%;
    position: relative;
}
.slider-nav{
    width: 100%;
    height: 100%;
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
}
.slider-nav *{
    width: 100%;
    height: 100%;
}
.slider-nav img{
    object-fit: cover;
}
.slider-nav img{
    margin: 0 5px;
}

.slider-nav .video-thumb{
    object-fit: cover;
}
.ico_movie{
    width: 40px;
    height: 40px;
    right: 10px;
}

/* カラム
-----------------------------------------*/

/* ==============================
トップ
============================== */

/* メイン
-----------------------------------------*/
/* ----- ランキング ----- */
.ranking_box li:nth-child(1)::before{
    content: url("../img/gift/ico_ranking_1.png");
}
.ranking_box li:nth-child(2)::before{
    content: url("../img/gift/ico_ranking_2.png");
}
.ranking_box li:nth-child(3)::before{
    content: url("../img/gift/ico_ranking_3.png");
}

/* ----- おすすめギフト ----- */
#gm_recommend h2::before{
    content: "";
}
#gm_info h2::before{
    content: "";
}
.item_name dd{
   word-break: break-all;
}

/* お気に入り一覧
-----------------------------------------*/
.ec-favoriteRole .ec-favoriteRole__item-image {
    height: 150px;
}
@media screen and (min-width: 768px) {
.ec-favoriteRole__item a:hover, .ec-favoriteRole__item a:hover * {
    opacity: 1;
}
}

/* ギフト一覧
-----------------------------------------*/
.ec-pickupRole img{
    max-width: 100%;
    height: auto;
}
.ec-pickupRole{
    width: 100%;
    max-width: 1130px;
    margin: 10px auto 0px;
}
.ec-pickupRole__title{
    margin-bottom: 20px;
    text-align: center;
}
.ec-pickupRole__description{
    text-align: center;
    font-size: 18px;
    font-weight: bold;
}
.ec-shelfGrid .ec-shelfGrid__item-image {
    height: 150px;
}

/* ギフト詳細
-----------------------------------------*/
.btn_select{
    margin-top: 40px;
    width: 100%;
}
.btn_select{
    display: block;
    background: #d95e2c;
    color: #fff;
    border-color: #fff;
    font-size: 1.6rem;
    line-height: 50px;
    text-align: center;
}
.btn_like{
    margin-top: 20px;
    width: 100%;
}
.btn_like{
    display: block;
    border: solid 1px #b9905e;
    border-radius: 15px;
    color: #b9905e;
    border-color: #b9905e;
    line-height: 30px;
    text-align: center;
}
.btn_like::before{
    font-family: "Font Awesome 5 Free";
    font-size: 1.4rem;
    font-weight: 700;
    padding-right: 5px;
    content: "\f004";
}
.btn_select,
.btn_like{
    text-decoration: none;
    -webkit-transition: all .3s;
        transition: all .3s;
}
@media screen and (min-width: 768px) {
.btn_select:hover,
.btn_like:hover{
    opacity: .7;
}
}
@media screen and (max-width:767px){
.btn_select{
    line-height: 60px;
}
.btn_like{
    border-radius: 20px;
    line-height: 40px;
}
}
@media screen and (min-width:768px){
#recipe_name::after{
    content: url("../img/gift/recipe_chara.png");
}
}
@media screen and (max-width:767px){
#recipe_name::after{
    content: url("../img/gift/recipe_chara_sp.png");
}
}

.btn_like.disabled, .btn_like[disabled], fieldset[disabled] .btn_like {
    cursor: not-allowed;
    filter: alpha(opacity=65);
    opacity: 0.65;
    box-shadow: none;
}


/* ギフト詳細
-----------------------------------------*/
.video_block{
    display: block;
    margin: 0 100px 20px 100px;
    width: 100%;
    max-width: 500px;
}
@media screen and (max-width:1179px) {
.video_block{
    margin: 0 0 20px 0;
}
}
.video_block video{
    width: 100%;
}

/* ギフト詳細
-----------------------------------------*/
#recipe_photo{
    display: flex;
    max-width: 100%;
    margin: 0 100px 20px 100px;
}
#recipe_photo p:first-child{
    margin-right: 20px;
}
@media screen and (max-width:1179px) {
#recipe_photo{
    margin: 0 0 20px 0;
}
}

.photo_block{
    display: flex;
    margin: 0 100px 20px 100px;
}
.photo_block p:nth-child(n+2){
    margin-right: 20px;
}
@media screen and (max-width:1179px) {
.photo_block{
    margin: 0 0 20px 0;
}
}

/* ==============================
新郎新婦
============================== */

/* 新郎新婦からのご挨拶
-----------------------------------------*/
#message_photo .slider-nav {
    height: 56%;
}

/* 新郎新婦挨拶編集
-----------------------------------------*/
.couple_edit_order_list {
    margin-top: 32px;
    padding: 16px 16px 0 16px;
    border: 1px  #ccc solid;
}
.couple_edit_order_list p {
    padding-bottom: 16px;
}
.couple_edit_order_list th {
    font-weight: bold;
}

/* ==============================
ヘルプ
============================== */

/* よくあるご質問
-----------------------------------------*/

.faq-area {
    margin: 0 0 32px 0;
}

h2.faq-category {
    border-bottom: 1px solid #525263;
    margin: 0 0 15px 0;
    padding: 0 0 10px 0;
}

h2.faq-category span {
    padding: 7px 10px 2px;
    color: #525263;
    font-size: 20px;
    font-weight: bold;
}

dl.faq dt {
    margin: 0 0 15px 0;
    padding: 10px;
    border-radius: 5px;
    background-color: #F3F4F4;
    font-weight: bold;
    font-size: 18px;
}

dl.faq dd {
    margin: 0 0 20px 0;
    font-size: 16px;
}

/* ==============================
共通メッセージページ
============================== */

.message_area h1{
    text-align: center;
}
.message_area h2{
    text-align: center;
    font-size: 2rem;
    font-weight: bold;
    margin-top: 20px;
}
.message_area_box{
    margin-top: 20px;
    background: #f4f0e9;
}
@media screen and (min-width:768px) {
.message_area{
    width: 500px;
    position: absolute;
    top: 100px;
    left: 50%;
    margin-left: -250px;
}
.message_area_box{
    padding: 60px;
}
}
@media screen and (max-width:767px) {
.message_area{
    margin: 40px 20px;
}
.message_area h1{
    width: 120px;
    margin: 0 auto;
}
.message_area h2{
    font-size: 1.8rem;
}
.message_area_box{
    padding: 20px;
}
}

/* ==============================
生産者商品発送報告ページ
============================== */

.delivered_area{
    width: auto;
    text-align: center;
}
.delivered_area h1{
    text-align: center;
}
.delivered_area h2,
.delivered_area h3{
    text-align: center;
    font-size: 2rem;
    font-weight: bold;
    margin-top: 20px;
}
.delivered_area h3{
    font-size: 1.6rem;
}
.delivered_shipping_box{
    margin-top: 20px;
    text-align: center;
}
@media screen and (min-width:768px) {
.delivered_area{
    width: 600px;
    position: absolute;
    top: 100px;
    left: 50%;
    margin-left: -300px;
}
}
@media screen and (max-width:767px) {
.delivered_area{
    margin: 40px 20px;
}
.delivered_area h1{
    /* width: 120px; */
    margin: 0 auto;
}
.delivered_area h2{
    font-size: 1.8rem;
}
}

/* ==============================
    新着情報
============================== */
.news-pageHeader h1{
    border-top: none;
    border-bottom: 1px solid #ccc;
    margin: 10px 16px 4px;
    padding: 8px;
    font-size: 32px;
    font-weight: bold;
}
.news-pulishDate {
    font-size: 16px;
    margin: 10px 16px 48px;
    text-align: right;
}
.news-url a {
    display: block;
    position: relative;
    padding: 12px 0;
}
@media screen and (max-width:767px){
.news-pageHeader h1{
    margin: 0 0 8px;
    border-bottom: 1px dotted #ccc;
    border-top: 1px solid #ccc;
    padding: 8px 0 12px;
    font-size: 16px;
    font-weight: bold;
}
.news-pulishDate {
    font-size: 12px;
}
}