.body-wrapper {
    background: #fff;
    color: #333;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.7;
    width: 960px;
    max-width: 960px;
    margin: 0 auto;
    padding: 0;
}

a {
    transition-duration: 300ms;
}

a:hover {
    opacity: 0.8;
    transition-duration: 300ms;
}

/*************header***************/
.company-top {
    position: relative;
}

.top-img {
    width: 100%;
}

h1 {
    font-size: 36px;
    font-weight: 700;
    color: #fff;
    position: absolute;
    bottom: 30px;
    right: 60px;
    letter-spacing: 0.1em;
}

.company-list {
    display: flex;
    margin: 80px 0;
}

a.company-item {
    position: relative;
    width: 320px;
    height: 320px;
    overflow: hidden;
    opacity: 0.6;
}

a.company-item:hover {
    opacity: 1;
}

a.company-item:hover .company-img {
    transform: scale(1.1);
    transition-duration: 300ms;
}

a.current {
    opacity: 1;
}

.company-img {
    width: 320px;
    height: 320px;
    object-fit: cover;
    transition-duration: 300ms;
}

.company-name-box {
    position: absolute;
    bottom: 0;
    width: 320px;
    height: 60px;
    background: rgba(51, 51, 51, 0.6);
}

.company-name {
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    text-align: center;
    line-height: 1;
    padding-top: 20px;
}

/**おしらせ**/
.notice {
    width: 100%;
    padding: 22px;
    text-align: center;
    background-color: #f4f4f4;
    margin: 80px 0;
    box-sizing: border-box;
}

/* .notice2 {
    width: 100%;
    height: 360px;
    border: 1px solid #e5e5e5;
    margin: 80px 0;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
} */

.catalog-sample {
    height: 180px;
}

/****************main*****************/
.title-center {
    font-size: 28px;
    font-weight: 700;
    text-align: center;
    margin: 48px;
    letter-spacing: 0.04em;
}

.text-align-center {
    text-align: center;
}

.title-border {
    font-size: 18px;
    line-height: 2.4;
    letter-spacing: 0.04em;
    border-top: 4px solid #333;
    border-bottom: 1px solid #333;
    margin: 72px 0 48px;
}

/**カタログギフト**/
.catalog {
    margin: 200px 0;
}

.catalog-list {
    display: flex;
    flex-wrap: wrap;
    gap: 47px;
    margin: 60px 0 110px;
}

.catalog-item {
    width: 154px;
}

.catalog-link {
    position: relative;
}

.catalog-link::after {
    position: absolute;
    right: 3px;
    bottom: 1px;
    content: url(../images/kado.png);
    z-index: 100;
}

.catalog-img {
    object-fit: cover;
    border-right: 3px double #333;
    border-bottom: 3px double #333;
}

.catalog-img2 {
    object-fit: cover;
}


/**selecao**/
.selecao .catalog-link {
    width: 154px;
    height: 188px;
}

.selecao .catalog-img {
    width: 154px;
    height: 188px;
}

.selecao .catalog-name {
    position: relative;
    height: 46px;
}

.selecao .catalog-name-en2 {
    font-size: 23px !important;
    color: #9c9c9c;
    position: absolute;
    top: -10px;
    left: 0;
}

.selecao .catalog-name-ja {
    position: absolute;
    top: 0;
    right: 0;
    font-size: 18px;
}

.selecao .catalog-name-ja2 {
    position: absolute;
    top: 0;
    right: 0;
    font-size: 15px;
}

/**just19**/
.just .catalog-link {
    width: 154px;
    height: 220px;
}

.just .catalog-img {
    width: 154px;
    height: 220px;
}

.just .catalog-name {
    position: relative;
    height: 78px;
}

.just .catalog-name-ja {
    position: absolute;
    top: 32px;
    left: 0;
    font-size: 18px;
}

/**岐阜贈答**/
.gifu .catalog-link {
    width: 154px;
    height: 189px;
}

.gifu .catalog-img {
    width: 154px;
    height: 189px;
}

.gifu .catalog-name {
    position: relative;
    height: 78px;
}

.gifu .catalog-name-ja {
    position: absolute;
    top: 32px;
    left: 0;
    font-size: 18px;
}

/**共通**/
.catalog-name-en {
    font-size: 28px;
    color: #9c9c9c;
    position: absolute;
    top: -10px;
    left: 0;
}

.catalog-number {
    width: 154px;
    border-bottom: 1px solid #333;
}

.catalog-price-main {
    font-size: 18px;
    font-weight: 700;
    line-height: 2.2;
    margin-right: 1px;
}


/**贈答品**/
.present {
    margin: 200px 0;
}

.present-item {
    text-align: center;
    margin: 0 auto;
    display: flex;
    align-items: start;
    justify-content: center;
    gap: 40px;
}

.present-link {
    position: relative;
    height: 380px;
    width: 288px;
}

.present-link::after {
    position: absolute;
    right: 3px;
    bottom: 1px;
    content: url(../images/kado.png);
    z-index: 100;
}

.present-images-small {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 40px;
    height: 170px;
    width: 520px;
}

.present-images-small-inner {
    display: flex;
    justify-content: space-between;
}

.guide-text {
    position: relative;
    padding: 3.6em 0;
    width: 520px;
    height: 240px;
    border: 1px solid #e5e5e5;
}

.pointer {
    position: absolute;
    bottom: 80px;
    left: -12px;
    animation: pointer 6s infinite 0s;
    z-index: 1000;
}

@keyframes pointer {
    0% {
        transform: translate(0, 0);
        opacity: 0;
    }

    20% {
        opacity: 100;
    }

    40% {
        transform: translate(-40px, 0);
    }

    50% {
        transform: translate(-40px, 0);
    }

    60% {
        transform: translate(-40px, 5px);
    }

    70% {
        transform: translate(-40px, 0px);
    }

    100% {
        transform: translate(-40px, 0px);
    }

}

.present-img1 {
    height: 380px;
    object-fit: cover;
    border-right: 3px double #333;
    border-bottom: 3px double #333;
    z-index: 1;
}

.present-img2 {
    height: 170px;
    object-fit: cover;
}

.present-name {
    font-size: 18px;
    border-bottom: 1px solid #333;
}

.present-text {
    color: #9c9c9c;
    ;
}

/** ご注文はこちら**/
a.privacy-link {
    color: #958646;
}

.order-guide {
    width: 960px;
    height: 260px;
    background-image: url(../images/img004.png);
    object-fit: cover;
    margin: 200px 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

/**ボタン**/

.btn {
    display: block;
    border: none;
    border-radius: 6px;
    height: 64px;
    width: 324px;
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.2);
    text-decoration: none;
    font-size: 18px;
    font-weight: 700;
    line-height: 64px;
    letter-spacing: 0.06em;
    color: #fff;
    text-align: center;
    margin: 12px auto;
}

.btn:active {
    transform: translateY(2px);
    box-shadow: none;
}

.btn-gold {
    background-color: #958646;
}

.btn-silver {
    background-color: #707070;
}
.btn-violet{
    width: 500px;
    background-color: #604A7B;
}
.text-small{
    font-size: 12px;
    font-weight: 300;
}

/**ノート＆心得**/
.note-box {
    width: 960px;
    height: 360px;
    border: 1px solid #e5e5e5;
    margin: 20px auto;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
}

.note-box img {
    width: 154px;
    object-fit: cover;
}

/**岐阜贈答からのお知らせ**/
.select-gift {
    margin-top: 200px;
    /* padding-top: 20px; */
    width: 960px;
    height: 500px;
    background-image: url(../images/img005.jpg);
    object-fit: contain;
}

.select-gift>h2{
    padding-top: 60px;
}

.select-gift>p {
    display: block;
    width: 800px;
    margin: 60px auto;
}

.select-gift-logo {
    display: inline;
    height: 24px;
    transform: translateY(3px);
    margin-right: 5px;
}

/**ご注文方法と特定商取引について**/
.order-and-sct {
    margin: 200px 0;
}

.order-flow-wrapper {
    position: relative;
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-top: 8px;
}

.flow-box {
    box-sizing: border-box;
    border: 1px solid #333;
    text-align: center;
    margin: 40px 0;
    padding: 40px;
}

.order-flow-left {
    width: 48%;
}

.btn-area {
    margin: 40px auto 20px;
}

.order-flow-right {
    width: 48%;
}

.copy-area {
    width: 300px;
    margin: 20px auto;
    text-align: left;
}

.circle {
    position: absolute;
    width: 72px;
    height: 72px;
    border-radius: 50%;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    font-size: 18px;
    text-align: center;
    line-height: 72px;
    color: #fff;
    background-color: rgba(51, 51, 51, 0.6);
}

.arrow {
    position: absolute;
    bottom: -57px;
    left: 50%;
    transform: translateX(-50%);
}

.order-flow-mail {
    margin-top: 58px;
}

.order-flow-tel {
    margin: 50px 0 140px;
}

.spaceholder {
    height: 83px;
}

/**ハーモニック**/
.harmonick{
    width: 100%;
    height: 200px;
    margin: 50px auto;
    display: flex;
    justify-content: center;
    align-items: center;
    background-image: url(../images/img006.jpg);
}

/**特定商取引**/
.border-bottom-table tr {
    border-bottom: 1px solid #e5e5e5;
}

.table-4 {
    width: 40%;
    padding: 12px 0;
}

.table-6 {
    width: 60%;
    padding: 12px 0;
}

/*************page-top***************/
#page-top {
    width: 70px;
    height: 70px;
    position: fixed;
    right: 56px;
    bottom: 56px;
    background: rgba(51, 51, 51, 0.6);
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.2);
    border-radius: 6px;
}

#page-top a {
    position: relative;
    display: block;
    width: 70px;
    height: 70px;
    text-decoration: none;
}

#page-top a::before {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: '\f102';
    font-size: 32px;
    color: #fff;
    position: absolute;
    width: 70px;
    height: 70px;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: 2px auto 18px;
    text-align: center;
}

#page-top a::after {
    content: 'page top';
    font-size: 14px;
    color: #fff;
    position: absolute;
    top: 40px;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    text-align: center;
}

/****************mailto***************/
.mailtoui-button:focus .mailtoui-button-content,
.mailtoui-button-content:hover,
.mailtoui-button-content:focus,
.mailtoui-button-copy:hover,
.mailtoui-button-copy:focus {
    background-color: #707070;
}

/***********fontawesome***************/
.fas {
    margin: 0 9px;
}