/*
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
*/
/* 
    Created on : Feb 4, 2020, 11:10:10 AM
    Author     : dininurhayati
*/
@font-face {
    font-family: 'Noto Serif JP';
    font-style: normal;
    font-weight: normal;
    src: url('../../../resources/fonts/NotoSerifJP.ttf') format('truetype');
    font-display: swap;
}

.info-bar {
    margin-left: 2.7%;
}

.ppl-btn .login {
    padding: 0;
}

.position-search {
    float: right;
}

.ipad-only {
    display: none;
}

.thead .row {
    margin: 0 auto;
    padding: 0;
    position: relative;
}

.thead .info_bar a {
    margin-left: 3.7%;
}

.thead .clearfix {
    zoom: 1;
    padding: 6px 0;
}

.thead {
    /*border-bottom: 1px solid rgba(175,175,175,.3);*/
    background-color: #F7F7F7;
}

.clearfix:before,
.clearfix:after {
    content: '\0020';
    display: block;
    overflow: hidden;
    visibility: hidden;
    width: 0;
    height: 0;
}

.thead .info_bar {
    padding: 6px 0;
    color: #ccc;
    float: left;
}

.social a {
    color: #7a7a7a;
}

.social a {
    color: #fff;
    padding: 6px 13px;
    display: inline-block;
    margin-left: 6px;
    font-size: 14px;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
    border-left: 1px solid rgba(175, 175, 175, .3);
    line-height: 24px;
    width: 12px;
    text-align: center;
}

.social-icon-font {
    font-weight: normal;
    margin-left: -4px;
    text-align: center;
    color: #9c9c9c;
}

p:last-child {
    margin-bottom: 0;
}

.thead .social {
    float: right;
}

.thead .clearfix a img {
    width: 216px;
    transform: scale(0.899);
}

html {
    scroll-behavior: smooth;
}

.show-pc {
    display: block;
}

.show-sm {
    display: none;
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

html body,
body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
p,
body a {
    color: #121212;
    /*font-family: "Shippori Mincho", serif;*/
    font-family: "Noto Serif JP", serif;
}

.main-layout {
    overflow: hidden;
}

.content-layout::after {
    content: "";
    display: block;
    clear: both;
}

p {
    font-weight: 400;
    letter-spacing: normal;
    text-align: left;

    /*add new 07/22/20*/
    font-size: 15px;
    line-height: 1.6em;
    text-rendering: optimizeLegibility
}

p.grey-font,
a.grey-font,
h5.grey-font {
    color: #6A6A6A;
    line-height: 1.6em;
}

h1 {
    font-size: 24px;
}

h2 {
    font-size: 28px;
}

h3 {
    font-size: 20px;
}

h4 {
    font-size: 24px
}

.pad-1 {
    padding: 1em;
}

.pad-l-1 {
    padding: 1.1em;
}

.pad-r-2 {
    padding-right: 2em;
}

.pad-tb-1 {
    padding: 1em 0;
}

.pad-tb-05 {
    padding: .5em 0;
}

.margin-tb3 {
    margin: 3em auto;
}

.margin-ntb3 {
    margin: 0em auto 3em;
}

.pd-right-5 {
    padding-right: 5em;
}

.relative {
    position: relative;
}

.padding-1 {
    padding: 1em;
}

.pad-1-sm5 {
    padding: 1em;
}

.padding-1-ntb {
    padding: 0 1em;
}

.no-pad-tb {
    padding: 0 .5em;
}

.no-pad-lr {
    padding-left: 0;
    padding-right: 0;
}

/*body, body a, p {
    color: #808080;
}*/
a.active-gal {
    color: #8f5152;
    text-decoration: none;
}

a.active-news {
    color: #8f5152;
    text-decoration: none;
}

a.active-div {
    color: #8f5152;
    text-decoration: none;
}

.centered-wrapper {
    float: none !important;
    margin: auto;
}

.sameheight-wrap {
    display: flex !important;
    flex-wrap: wrap !important;
}

.sameheight-nowrap {
    display: flex;
    flex-wrap: nowrap;
}

.centered-text {
    text-align: center;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif !important;
}

.no-padding {
    padding: 0;
}

.no-padding-pc {
    padding: 0;
}

.bold {
    font-weight: bold;
}

.w100 {
    width: 100%;
}

.w70 {
    width: 70%;
}

.w50 {
    width: 50%;
}

.w28 {
    width: 28%;
}

.w17 {
    width: 17%;
}

.w13 {
    width: 13%;
}

.w12 {
    width: 12%;
}

.f-right {
    float: right;
}

body a:hover {
    color: #A2843A;
    text-decoration: none;
    transition: 500ms ease 0s;
    transition: 500ms ease 0s;
}

body .topbar-list nav a:hover,
body .topbar-list nav a:focus {
    color: #A2843A;
    text-decoration: none;
    transition: 500ms ease 0s;
}

body a:hover,
body a:focus {
    text-decoration: none;
    transition: 500ms ease 0s;
    outline: none;
}

nav ul {
    list-style: none;
}

nav.topbar ul {
    margin-top: 0;
    margin-bottom: 0;
    padding: 0;
}

nav.topbar ul li {
    display: inline-block;
    margin: 0;
    font-weight: 400;
}

nav.topbar.new-div ul li {
    /*margin: 0 20px;*/
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

nav.topbar.new-div ul li a {
    /*color: #4F4E4E; 833933;*/
    font-weight: 500;
    font-size: 14px;
    padding-top: 17px;
    padding-bottom: 17px;
    display: block;
    /*font-family: "Noto Sans JP", sans-serif;*/
}

nav.topbar.new-div ul li a:hover {
    opacity: 1;
    transition: 500ms ease 0s;
}

nav.topbar.new-div ul.topbar-ul-logo li a:hover {
    opacity: 1;
    transition: 500ms ease 0s;
}

nav.topbar.new-div ul.topbar-ul-logo li {
    margin: 0em 36px 0 7px;
    margin-right: 1em;
}

nav.topbar.new-div ul li:nth-child(2) {
    /*margin-left: 2em;*/
}

nav.topbar.new-div ul li a.active-div {
    color: #4f4e4e;
}

.new-div {
    display: flex;
    align-items: center;
    /*margin-left: 55px ;*/
}

.menu-top {
    white-space: nowrap;
    display: flex;
    align-items: center;
    margin-left: auto;
    margin-right: 45px;
    padding-bottom: 1px;
}

.menu-top ul {
    display: flex;
    align-items: center;
    gap: 32px;
}

.logo-top {
    display: flex;
    align-items: center;
}

.topbar-list .topbar-div {
    display: flex;
    min-height: 84px;
}

.new-margin ul li {
    margin: 11px 15px !important;
}

.new-div-menu nav.menu ul li.active-div {
    background-color: transparent;
}

.new-div-menu nav.menu ul li.active-div .line-none {
    border-bottom: 4px solid #8b3333;
}

.new-margin ul li {
    margin: 11px 15px !important;
}

nav.topbar.new-div ul li a.active-div .line-menu {
    border-bottom: 2px solid #8f5152;
}

.line-topbar {
    border-bottom: 1px solid #e7e7e7;
    padding-top: 0;
}

.line-none {
    border-bottom: 4px solid transparent;
}

.active-line {
    border-bottom: 4px solid #8b3333;
}

nav.topbar.new-div ul li:hover>.line-none {
    border-bottom: 4px solid #8b3333;
}

nav.topbar.new-div ul.topbar-ul-logo li a {
    padding-top: 11px;
}

.max-1260 {
    max-width: 1260px;
}

.logo-with-h1 {
    display: none;
    margin: 0px;
}

h1.title {
    margin: 0px;
}

/*---buttom to top---*/
#myButton {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 14px;
    z-index: 99;
    border: 2px solid transparent;
    outline: none;
    background-color: #292D33;
    color: black;
    cursor: pointer;
    border-radius: 0px;
    height: 4em;
    width: 4em;
    font-size: 12px;
}

body .ui-button.close-square {
    border: 1px solid transparent;
    outline: none;
    background-color: #8b3333;
    color: black;
    cursor: pointer;
    padding: 9px 0px;
    border-radius: 80px;
}

#myButton i {
    color: #fff;
    margin: 0;
    position: relative;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    font-size: 3em;
    font-weight: 700;
    line-height: 25px;
}

#myButton:hover {
    /*background-color: #f2ed68;*/
    /*background-color: #692727;*/
}

.button-language {
    width: 100%;
    font-size: 0.9em;
    text-align: left;
    background-color: #fff;
    border: none;
    padding: 0.5em;
}

.button-language:hover {
    background-color: #f1f2f7;
}

/*---buttom to top END---*/

.topbar-list {
    background-color: #fff;
    padding: 0;
    position: relative;
    border-bottom: none;
}

.topbar-list p {
    margin-top: 0;
    margin-bottom: 0;
    display: inline-block;
    margin-right: 5%;
    margin-left: 5%;
    font-weight: 600;
}

.topbar-list p.div {
    margin-top: 5px;
    margin-bottom: 5px;
}

.topbar-menu {
    background-color: #8b3333;
}

.topbar-menu nav ul li a {
    color: #fff;
    font-weight: 600;
    width: 100%;
    display: block;
    padding: 0.6em 1em;
}

.new-div-menu nav.menu ul {
    padding-left: 0;
    margin: 0;
    display: flex;
}

.new-div-menu nav.menu ul li {
    padding: 0;
    /*border-right: 1px solid #ae7171;*/
    margin: 0 18px;
    text-align: center;
}

.new-div-menu nav.menu ul li:first-child {
    /*border-left: 1px solid #ae7171;*/
    width: 13%;
}

.new-div-menu nav.menu ul li:nth-child(2) {
    width: 17%;
}

.new-div-menu nav.menu ul li:nth-child(3) {
    width: 18%;
}

.new-div-menu nav.menu ul li:nth-child(4) {
    width: 13%;
}

.new-div-menu nav.menu ul li:nth-child(5) {
    width: 17%;
}

.new-div-menu nav.menu ul li:nth-child(6) {
    width: 22%;
}

.new-div-menu.handicraft-menu nav.menu ul li:first-child {
    /*border-left: 1px solid #ae7171;*/
    width: 13%;
}

.new-div-menu.handicraft-menu nav.menu ul li:nth-child(2) {
    width: 17%;
}

.new-div-menu.handicraft-menu nav.menu ul li:nth-child(3) {
    width: 18%;
}

.new-div-menu.handicraft-menu nav.menu ul li:nth-child(4) {
    width: 14%;
}

.new-div-menu.handicraft-menu nav.menu ul li:nth-child(5) {
    width: 26%;
}

.new-div-menu nav.menu ul li:hover {
    /*background-color: #692727;*/
    transition: 500ms ease 0s;
}

.new-div-menu nav.menu {
    padding-left: .5em;
    padding-right: .5em;
    /*max-width: 1280px;*/
    margin-right: auto;
    margin-left: auto;
    display: none;
    /*block*/
    float: none;
    z-index: 1;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    /*border-bottom: 1px solid #e7e7e7;*/
}

.dropdown-category:hover .new-div-menu nav.menu,
.dropdown-category .topbar-category.active-cat {
    display: block;
}

.topbar-list .topbar-div .new-div .dropdown-category:hover .topbar-category,
.topbar-list .topbar-div .new-div .dropdown-category .topbar-category.active-cat {
    overflow: unset;
    max-height: 1000px;
    border-bottom: 1px solid #e7e7e7;
}

.topbar-category.active-cat .new-div-menu nav.menu {
    display: block;
}

.new-div-menu nav.menu a {
    float: none;
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
    text-align: left;
    padding-left: 0;
    padding-right: 0;
    text-align: center;
}

.topbar-list .topbar-div .new-div .dropdown-category .topbar-category {
    max-height: 0px;
    top: calc(100% + 1px);
    transform: translateX(-50%);
    left: 50%;
    width: 100%;
    /*max-width: 1240px;*/
    height: 62px;
}

.topbar-list.show-category {
    margin-bottom: 62px;
}

.topbar-category {
    max-height: 0;
    position: absolute;
    overflow: hidden;
    top: 100%;
    background-color: #ffffff;
    color: white;
    width: max-content;
    z-index: 4;
    transition: 500ms ease 0s;
    transform: translateX(130px);
}

.display-pc-only {
    display: block;
}

.breadcrumb-pd {
    padding: 1em;
    padding-left: 1em;
}

nav.menu ul {
    margin: 6px 0 0;
}

nav.menu ul li {
    display: inline-block;
    margin: 0.5em 1em;
    font-weight: 600;
}

nav.menu ul li a.grey-font {
    color: #808080;
}

.width-wrap {
    max-width: 1280px;
    margin-right: auto;
    margin-left: auto;
    display: block;
    float: none;
}

.topbar-width-wrap {
    max-width: 1251px;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    display: flex;
    float: unset;
}

.width-wrap-edit {
    max-width: 980px;
    margin-right: auto;
    margin-left: auto;
    display: block;
    float: none;
}

.width-wrap-member {
    max-width: 800px;
    float: none;
    margin: auto;
}

.scroll-margin-top {
    scroll-margin-top: 70px;
}

img.logo {
    width: 180px;
}

img.logo-newdiv {
    width: 227px;
    margin-right: 0;
    min-width: 130px;
    position: relative;
}

.top-img-cover {
    position: relative
}

.carousel-caption h3 {
    letter-spacing: normal;
}

.item .carousel-caption {
    width: 100%;
    position: absolute;
    bottom: 0px;
    z-index: 10;
    padding-top: 100px;
    padding-bottom: 20px;
    color: #fff;
    text-align: center;
    text-shadow: none;
    background-image: linear-gradient(to top, rgba(0, 0, 0, .7) 0, rgba(0, 0, 0, .0001) 100%);
}

.item .carousel-caption {
    right: 0%;
    left: 0%;
    padding-bottom: 45px;
}

.carousel-caption-new h3 {
    letter-spacing: normal;
}

.item .carousel-caption-new {
    width: 100%;
    position: absolute;
    bottom: 0px;
    z-index: 10;
    padding-top: 100px;
    padding-bottom: 20px;
    color: #fff;
    text-align: center;
    text-shadow: none;
    background-image: linear-gradient(to top, rgba(0, 0, 0, .7) 0, rgba(0, 0, 0, .0001) 100%);
}

.item .carousel-caption-new {
    right: 0%;
    left: 0%;
    padding-bottom: 45px;
}

.carousel-caption-detail h3 {
    letter-spacing: normal;
}

.item .carousel-caption-detail {
    width: 100%;
    position: absolute;
    bottom: 0px;
    z-index: 10;
    padding-top: 100px;
    padding-bottom: 20px;
    color: #fff;
    text-align: center;
    text-shadow: none;
    background-image: linear-gradient(to top, rgba(0, 0, 0, .7) 0, rgba(0, 0, 0, .0001) 100%);
}

.item .carousel-caption-detail {
    right: 0%;
    left: 0%;
    padding-bottom: 45px;
}

a.carousel-control.right,
a.carousel-control.left {
    background-image: none;
}

a.carousel-control .glyphicon-chevron-left,
a.carousel-control .glyphicon-chevron-right {
    font-size: 0;
}

ol.carousel-indicators .active {
    background-color: #8ec320;
}

ol.carousel-indicators li {
    background-color: #fff;
    border: 1px solid #8ec320;
}

.top-date .octagonal {
    width: 128px;
    height: 128px;
    background-color: #c01d5f;
    position: absolute;
    bottom: -2em;
    right: 5em;
    /*padding: 1em;*/
    -webkit-clip-path: polygon(45% 0, 55% 0, 100% 45%, 100% 55%, 55% 100%, 45% 100%, 0 55%, 0 45%);
    clip-path: polygon(45% 0, 55% 0, 100% 45%, 100% 55%, 55% 100%, 45% 100%, 0 55%, 0 45%);

    padding: 1.8em 1em;
}

.top-date .octagonal p {
    color: white;
    margin: 0 0 5px;
    text-align: center;
    line-height: initial;
}

.item-text-title {
    word-break: break-all;
    font-size: 16px !important;
    line-height: 23px;
}

.top-date .long-top.octagonal::after {
    content: "-";
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 46%;
    transform: translate(-50%, -50%);
}

.top-date .long-date p.month {
    margin-right: 45px;
    font-size: 24px;
    margin-bottom: 0;
}

.top-date .long-date p.day {
    font-size: 24px;
    margin-top: 31px;
    /*margin-left: 45px;*/
    position: absolute;
    margin-left: 28px;
}

.top-date .octagonal .slice {
    width: 39px;
    border-bottom: 1px solid white;
    transform: rotate(320deg);
    top: 81px;
    left: 50px;
    position: absolute;
}

.top-date p.month {
    font-size: 24px;
    margin-left: 20px;
    margin-top: -8px;
}

.top-date p.day {
    font-size: 24px;
    margin-top: 10px;
    position: absolute;
    margin-left: 54px;
}

.top-date .octagonal .slice {
    width: 39px;
    border-bottom: 1px solid white;
    transform: rotate(320deg);
    top: 72px;
    left: 43px;
    position: absolute;
}

.list-below {
    text-align: center;
    margin: 2.5em auto 0;
    border-bottom: 1px solid #e0dad7;
    padding-bottom: 1.5em;
}

.list-below p {
    display: inline-block;
    margin: auto 1em;
}

.list-below a {
    color: #4f4e4e;
    font-weight: 700;
}

.list-below a:hover {
    color: #8ec320;
    transition: 500ms ease 0s;
}

.gal-boxes {
    margin-top: 63px;
}

.gallery {
    position: relative;
}

.dis-none {
    display: none !important;
}

.sub-ttl p {
    /*font-weight: 600;*/
    text-align: center;
}

.gallery .other {
    position: absolute;
    right: 4.7em;
    top: 3em;
}

.gallery .other2 {
    position: absolute;
    left: auto;
    top: 4em;
}

.margin-gallery {
    margin: 1em auto;
}

.other2 h6 {
    color: #4f4e4e;
    font-weight: 600;
    line-height: 1.6em
}

.other2 h6 {
    display: inline-flex;
    line-height: 1.6em
}

.other h6 {
    display: inline-flex;
    line-height: 2.1em
}

.other a h6:hover {
    color: #8ec320;
    transition: 500ms ease 0s;
}

.circle-btn2 {
    height: 25px;
    width: 25px;
    border-radius: 50%;
    border: 1px solid #8ec320;
    margin-right: 9px;
}

.circle-btn {
    height: 25px;
    width: 25px;
    border-radius: 50%;
    border: 1px solid #8ec320;
    margin-left: 9px;
}

.circle-btn .fa {
    font-size: 22px;
    color: #8ec320;
    margin-left: 2px;

}

.circle-btn2 .fa {
    font-size: 22px;
    color: #8ec320;
    margin-left: 0px;
}

.gal-index .gal-boxes {
    position: relative;
}

.desc p {
    letter-spacing: normal;
    line-height: 1.6em;
}

.desc-gall p {
    letter-spacing: normal;
    line-height: 1.6em;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.gallery-box .octagonal {
    width: 110px;
    height: 50px;
    background-color: #ed6d00;
    position: absolute;
    bottom: -13px;
    right: 10px;
    padding: .7em .5em .8em;
    -webkit-clip-path: polygon(45% 0, 55% 0, 100% 45%, 100% 55%, 55% 100%, 45% 100%, 0 55%, 0 45%);
    clip-path: polygon(45% 0, 55% 0, 100% 45%, 100% 55%, 55% 100%, 45% 100%, 0 55%, 0 45%);
}

.gallery-box .octagonal::after {
    content: "-";
    display: inline-block;
    position: absolute;
    top: 45%;
    left: 48%;
    transform: translate(-50%, -50%);
    color: #ffffff;
}

.gallery-box .octagonal.long {
    -webkit-clip-path: polygon(23% 0, 77% 0, 100% 45%, 100% 55%, 77% 100%, 23% 100%, 0 55%, 0 45%);
    clip-path: polygon(23% 0, 77% 0, 100% 45%, 100% 55%, 77% 100%, 23% 100%, 0 55%, 0 45%);
}

.gallery-box .octagonal.long.status {
    width: 70px;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.gallery-box .octagonal.long.status p {
    margin: 0;
    line-height: 1.1em;
}

.gallery-box .octagonal.short {
    width: 60px;
}

.gallery-box .octagonal.short::after {
    content: "";
}

.gallery-box .held-tag {
    width: 45px;
    height: 45px;
    background-color: #1697b0;
    border-radius: 50%;
    color: white;
    position: absolute;
    left: -10px;
    top: -12px;
    z-index: 2;
}

.gallery-box .held-tag.cancel {
    background-color: #c01d5f;
}

.gallery-box .held-tag h5 {
    text-align: center;
    margin: 16px auto;
    font-size: 13px;
    color: #fff;
}

.top-date p.month.right {
    display: none;
}

.top-date .long-top p.month.right {
    display: block;
}

.top-date p.day.endDate {
    display: none;
}

.top-date .long-top p.day.endDate {
    display: block;
}

.no-pad-lr {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/*category part*/
.category-BG {
    display: block;
    background-color: #fbf7f3;
    margin-top: 2em;
    margin-bottom: 2em;
}

/*new product slide*/
.product-box {
    text-align: left;
    padding: 20px 20px 26px;
    background: #FFF;
    box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.08);
    display: flex !important;
}

.product-index .product-boxes {
    position: relative;
}

.img-product {
    position: relative;
}

.img-product img {
    width: 100%;
    height: 185.22px;
    object-fit: cover;
}

.product-boxes .img-product img {
    border-radius: 8px;
}

.product-box .desc {
    margin: 2em auto;
    font-weight: 600;
}

.product-desc p {
    letter-spacing: normal;
    line-height: 1.6em;
    margin: 10px auto;
}

.desc-product p {
    letter-spacing: normal;
    line-height: 1.6em;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.product-box p.head {
    color: #121212;
    font-size: 18px;
    font-weight: 600;
    line-height: 140%;
    /* 25.2px */
    text-underline-position: under;
    text-decoration-color: #8a8a8a;
    margin: 0px;
}

.product-box h3.head {
    color: #121212;
    font-size: 18px;
    font-weight: 600;
    line-height: 140%;
    /* 25.2px */
    text-underline-position: under;
    text-decoration-color: #8a8a8a;
    margin: 0px;
}

.product-box .product-desc {
    margin: 0px 0px 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex: 1;
    padding-right: 9px;
}

.product-box .product-desc::after {
    content: "";
    display: inline-block;
    box-shadow: -1px 1px 0 #3F4446;
    transform: rotate(225deg) translate(0px, 0px);
    width: 10px;
    height: 10px;
    min-width: 10px;
    min-height: 10px;
}

.product-box .img-product {
    width: 100%;
    height: 0px;
    padding-bottom: 59%;
    position: relative;
}

.product-box .img-product img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    object-fit: cover;
}

.date p.day {
    float: right;
    margin-left: 25px;

}

.date p.dayleft {
    margin-left: 19px;
    margin-bottom: 0;
    margin-top: 12px;
    position: absolute;
}

.date p.dayright {
    margin-left: 69px;
    margin-bottom: 0;
    margin-top: 12px;
    position: absolute;
}

.date p.month {
    margin-bottom: 0;
    line-height: initial;
}

.left-month {
    float: left;
    margin-left: 8px;
}

.right-month {
    float: right;
    margin-right: 30px;
}

.left-month-campaign {}

.right-month-campaign {
    float: right;
    margin-right: 25px;
}

.date p {
    color: #fff;
    font-size: 18px;
}

.date .slice {
    width: 35px;
    border-bottom: 1px solid white;
    transform: rotate(-45deg);
    top: 38px;
    left: 20px;
    position: absolute;
}

.date .sliceIndexleft {
    width: 23px;
    border-bottom: 1px solid white;
    transform: rotate(320deg);
    top: 25px;
    left: 15px;
    position: absolute;
}

.date .sliceIndexright {
    width: 23px;
    border-bottom: 1px solid white;
    transform: rotate(320deg);
    top: 25px;
    right: 21px;
    position: absolute;
}

.w3-button:hover {
    color: #fff;
    background-color: #121212;
    transition: 500ms ease 0s;
}

.w3-button {
    border: none;
    display: inline-block;
    padding: 3.5px 10px;
    vertical-align: middle;
    overflow: hidden;
    text-decoration: none;
    color: #121212;
    text-align: center;
    cursor: pointer;
    white-space: nowrap;
    border: 1px solid #121212;
    border-radius: 24px;
    font-size: 12px;
    margin-bottom: 0em;
    font-weight: 400;
    line-height: 1em;
    background: #fff;
    font-family: "Noto Serif JP", serif;
    letter-spacing: 1px;
    white-space: pre-wrap;
}

.w3-button.gold {
    border: 1px solid #c5b21d;
    color: #c5b21d;
}

.w3-button.gold:hover {
    background-color: #c5b21d;
    color: #fff;
    transition: 500ms ease 0s;
}

.w3-button.red {
    border: 1px solid #e85e5d;
    color: #e85e5d;
}

.w3-button.red:hover {
    background-color: #e85e5d;
    color: #fff;
    transition: 500ms ease 0s;
}

.w3-button.violet {
    border: 1px solid #9693c7;
    color: #9693c7;
}

.w3-button.violet:hover {
    background-color: #9693c7;
    color: #fff;
    transition: 500ms ease 0s;
}

.w3-button.yellow {
    border: 1px solid #d6c027;
    color: #d6c027;
}

.w3-button.yellow:hover {
    background-color: #d6c027;
    color: #fff;
    transition: 500ms ease 0s;
}

.gallery-box .octagonal.yellow {
    background-color: #d6c027;
}

.w3-button.blue {
    border: 1px solid #1697b0;
    color: #1697b0;
}

.w3-button.blue:hover {
    background-color: #1697b0;
    color: #fff;
    transition: 500ms ease 0s;
}

.gallery-box .octagonal.blue {
    background-color: #1697b0;
}

.w3-button.purple {
    border: 1px solid #b7318c;
    color: #b7318c;
}

.w3-button.purple:hover {
    background-color: #b7318c;
    color: #fff;
    transition: 500ms ease 0s;
}

.gallery-box .octagonal.purple {
    background-color: #b7318c;
}

.w3-button.green {
    border: 1px solid #8ec320;
    color: #8ec320;
}

.w3-button.green:hover {
    background-color: #8ec320;
    color: #fff;
    transition: 500ms ease 0s;
}

.gallery-box .octagonal.green {
    background-color: #8ec320;
}

.info-section {
    background-color: #f0edeb;
    padding-top: 4em;
    padding-bottom: 4em;
}

.info-section .news a {
    color: #333;
    line-height: 1.6em;
}

.info-section .news a:hover {
    color: #8ec320;
    transition: 500ms ease 0s;
}

.info-section h5 {
    margin: 1.5em auto;
    line-height: 1.6em;
    letter-spacing: normal;
}

.info-section p {
    line-height: 1.6em;
    letter-spacing: normal;
    color: #808080;
}

.info-section h4 {
    letter-spacing: normal;
    color: #333333;
    line-height: 1.6em;
}

.info-section .circle-btn .fa {
    margin-left: 9px;
}

.other h6 {
    color: #4f4e4e;
    font-weight: 600;
}

.info-section .access {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 4.8%;
    /*border-right: 1px solid #c0bcba;*/
    width: 27%;
    display: inline-block;
}

.info-section .access .other {
    margin-top: 0em;
}

.info-section .news {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 4.8%;
    border-left: 1px solid #c0bcba;
    display: inline-block;
    width: 43%;
}

.info-section .news span.date {
    color: #8a8a8a;
    font-size: 12px;
    line-height: 1.6em;
}

.info-section .gallery-hour {
    padding: 0 4.8%;
    width: 30%;
    display: inline-block;
}

.info-section .gallery-hour .sub-floor {
    display: inline-flex;
    line-height: 2em;
}

.block {
    overflow: hidden;
    width: 100%;
    /* margin: 50px auto; */
    background: #fff;
}

.animation {
    width: auto;
    height: 100px;
    font-size: 0px;
}

.animation div {
    display: inline-block;
    width: auto;
    float: none;
    padding: 0;
}

.guide-section {
    margin: 4em auto;
}

.guide-section .head-ttl {
    margin-bottom: 2em;
}

.guide-section .head-ttl h4,
.guide-section .head-ttl h5 {
    font-weight: 600;
    letter-spacing: 1px;
}

.width-guide {
    width: 20%;
}

.guidance {
    padding: 0 1em;
    line-height: 1.6em;
}

.guidance h5 {
    border-bottom: 1px solid #c0bcba;
    padding-bottom: 1em;
    margin-bottom: 1em;
    color: #8ec320;
    font-weight: 600;
    letter-spacing: normal;
    line-height: 1.6em;
}

.guidance p {
    color: #4f4e4e;
    padding: 0 1em;
    text-align: center;
    font-weight: normal;
    letter-spacing: normal;
    margin-bottom: 0;
    line-height: 1.6em;
}

.guidance .circle-btn {
    margin: 1.5em 0;
}

.guidance .other {
    display: flex;
    align-items: center;
    justify-content: center;
}

.guidance .other h5 {
    padding: 0;
    border: none;
    font-weight: normal;
    margin: 0 0 0 1em;
}

.guidance-pad {
    padding: 0;
}

.guidance span {
    margin-right: .5em;
    font-size: 14px;
}

/*.guidance .circle-btn .fa:hover{
    color: white;
}*/
.guidance a:hover .circle-btn {
    background: #8ec320;
    transition: 500ms ease 0s;
}

.guidance a:hover .circle-btn .fa {
    color: white;
    transition: 500ms ease 0s;
}

.guidance.yellow h5 {
    color: #d6c027;
}

.guidance.yellow .circle-btn {
    border: 1px solid #d6c027;
}

.guidance.yellow .circle-btn .fa {
    color: #d6c027;
}

.guidance.yellow a:hover .circle-btn {
    background: #d6c027;
    transition: 500ms ease 0s;
}

.guidance.blue h5 {
    color: #1697b0;
}

.guidance.blue .circle-btn {
    border: 1px solid #1697b0;
}

.guidance.blue .circle-btn .fa {
    color: #1697b0;
}

.guidance.blue a:hover .circle-btn {
    background: #1697b0;
    transition: 500ms ease 0s;
}

.guidance.orange h5 {
    color: #ed6d00;
}

.guidance.orange .circle-btn {
    border: 1px solid #ed6d00;
}

.guidance.orange .circle-btn .fa {
    color: #ed6d00;
}

.guidance.orange a:hover .circle-btn {
    background: #ed6d00;
    transition: 500ms ease 0s;
}

.guidance.purple h5 {
    color: #b7318c;
}

.guidance.purple .circle-btn {
    border: 1px solid #b7318c;
}

.guidance.purple .circle-btn .fa {
    color: #b7318c;
}

.guidance.purple a:hover .circle-btn {
    background: #b7318c;
    transition: 500ms ease 0s;
}

.btmlist {
    background-color: #fFF;
    padding: 5.36px .5em 18px;
}

.btmlist ul {
    list-style: none;
    padding: 0;
}

.btmlist li {
    margin-bottom: 10px;
    font-size: 13px;
}

.width-wrap-user {
    max-width: 1140px;
    margin-right: auto;
    margin-left: auto;
    display: block;
    float: none;
}

.btmlist li a:hover {
    opacity: 0.8;
    transition: 500ms ease 0s;
}

/*.btmlist .head-ttl {
    margin-bottom: 3em;
}*/
.btmlist .head-ttl h4 {
    font-family: "Noto Serif";
    font-size: 18px;
    font-weight: 500;
    line-height: 15px;
    /* 83.333% */
    letter-spacing: 1px;
    margin-bottom: 26px;
}

/*.btmlist .item {
    padding-left: 4em;
}*/
.btmlist .item .ui-sm-6:nth-child(even) {
    margin-top: 3em;
}

.btmlist .related-item {
    margin-top: 94px;
}

.ui-20 {
    width: 20%;
    float: left;
    box-sizing: border-box;
    padding: .5em 2em;
}

.ui-25 {
    width: 25%;
    float: left;
    box-sizing: border-box;
    padding: .5em 4.5em;
}

.ui-40 {
    width: 40%;
    float: left;
    box-sizing: border-box;
    padding: .5em 2em;
}

.socmed-section {
    margin: 0 auto;
}

.head-ttl h4,
.socmed-section .head-ttl h5 {
    font-weight: 600;
    letter-spacing: 1px;
    margin-top: 3em;
}

.frame {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #e0dad7;
    display: inline-block;
    padding: 11px;
}

.frame i {
    color: #f8f5f3;
    font-size: 39px;
}

.frame .fa-twitter {
    font-size: 43px;
}

.frame .fa-facebook {
    font-size: 35px;
}

a:hover .frame {
    transition: 500ms ease 0s;
}

.footer {
    padding: 21px 0 43px;
}

.footer p {
    display: inline-block;
    font-size: 12px;
    font-weight: normal;
    margin-bottom: 0;
}

.footer p.middle {
    margin: 0 1.5em;
    padding-top: 5px;
}

.footer h6 {
    position: relative;
    color: #8a8a8a;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.6em;
}

.footer img {
    /*position: absolute;*/
    width: 91px;
    right: 3em;
    bottom: 0;
    margin-right: 48px;
}

.footer-bottom-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
}

.footer .copyright-text {
    padding-top: 13px;
}

.footer .footer-bottom-wrap p {
    padding-top: 4px;
    margin: 0px 9px;
}

.footer-bottom-wrap--links p:first-of-type {
    margin-left: 0px;
}

.footer-bottom-wrap--links p:last-of-type {
    margin-right: 0px;
}

.footer-user-template .footer img {
    width: 114px;
    margin-right: 34.5px;
}

.footer-user-template .wrap-link-with-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0px 7px;
}

.footer-user-template .footer p:last-child {
    padding-top: 7px;
}

.footer-user-template .footer {
    padding: 22px 0px 30.5px;
}

.s-icon {
    display: inline-block;
}

.s-icon p {
    margin-top: 2em;
    font-weight: 600;
    font-size: 12px;
}

.search-box {
    display: inline-flex;
    background: #fff;
    height: 35px;
    border-radius: 1.2em;
    padding: 5px;
    vertical-align: middle;
    border: 1px solid #8a8a8a;
    /*float: right;*/
    /*transition: all 0.4s;*/
    position: relative;
    width: 650px;
    /*margin-top: 3px;*/
}

/*search box top page*/
.search-box-main form {
    display: inline-flex;
    background: #fff;
    height: 35px;
    vertical-align: middle;
    float: right;
    position: relative;
    width: 100%;
    border: 1px solid #e6e6e6;
    border-radius: 5px;
    max-width: 197px;
    min-width: 180px;
}

.search-box-main input {
    width: 100%;
    border-radius: 5px;
    border: 0;
    padding-right: 3em;
    font-size: 13px;
    background: #292D33;
    color: #fff;
}

.search-box-main input.ui-inputfield {
    color: #fff;
}

.search-box-main ::-webkit-input-placeholder {
    color: #fff;
}

.search-box-main .fa-search2::before {
    content: "";
    background-image: url(../../resources/oshibana/images/icon/mag-icon-white.png);
    background-size: cover;
    height: 20px;
    width: 20px;
    display: inline-block;
    image-rendering: optimizespeed;
}

.search-box-main button {
    height: 33px;
    border-radius: 5px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    background-color: transparent !important;
    padding: 0 1.5em;
    display: inline-flex;
    align-items: center;
    margin-right: 0;
    position: absolute;
    right: 0;
    border: none !important;
}

.search-box-main .ui-button.ui-state-hover,
.search-box-main .ui-button.ui-state-focus {
    background-color: #fff;
    border-color: #fff;
    box-shadow: none;
    transition: 500ms ease 0s;
}

.search-box-main .ui-inputfield.ui-state-hover:not(.ui-state-error) {
    box-shadow: 0 0 0 0.2rem rgba(105, 39, 39, 0.25);
}

.search-box-main .ui-button.ui-button-text-only .ui-button-text {
    font-size: 14px;
    line-height: 1em;
}

.search-box-main .ui-messages {
    position: absolute;
    top: 10%;
    z-index: 3;
    left: 50%;
    transform: translateX(-50%);
    min-width: 260px;
}

.ui-button-icon-only .ui-icon,
.ui-button-text-icon-left .ui-icon,
.ui-button-text-icon-right .ui-icon .top-search-btn {
    position: absolute;
    top: 45%;
    width: 16px;
    font-size: 18px;
    margin-left: -10px;
}

.search-box-main button:hover .fa-search {
    opacity: .6;
    transition: 500ms ease 0s;
}

.search-box-main button .fa-search {
    color: #8b3333;
}

.search-box-main button .ui-button.ui-button-icon-only .ui-icon {
    margin-top: -8px;
}

.search-box-main {
    display: flex;
    align-items: center;
}

.ui-button.ui-button-icon-only .ui-icon.fa-search2 {
    margin: 0;
    left: 8px;
    top: 7px;
    width: 18px;
}

.fa-search2::before {
    content: "";
    background-image: url(../../resources/public/images/icon/mag-icon-grey.png);
    background-size: cover;
    height: 18px;
    width: 18px;
    display: inline-block;
    image-rendering: optimizespeed;
}

.login::before {
    background-image: url(../../resources/oshibana/images/icon/User.png);
    content: "";
    background-size: contain;
    height: 22px;
    width: 22px;
    display: block;
    margin-top: 0;
    background-repeat: no-repeat;
}

.button-login {
    background: transparent;
    border: none;
    width: auto;
    white-space: nowrap;
    display: flex;
}

.button-login button {
    border: none;
    background-color: white;
}

/*search box top page end*/

.topbar-list p {
    float: right;
}

body .search-box:focus-within .ui-inputfield.search-txt,
body .search-box:hover .ui-inputfield.search-txt {
    padding-left: 1em;
    display: block;
    padding-right: .1em;
    transition: 500ms ease 0s;
}

body .ui-inputfield.search-txt {
    border: none;
    background: #f0edec;
    outline: none;
    float: left;
    color: #5c5d5d;
    width: 82%;
    padding: 0;
    line-height: 1.6em;
    /*padding-left: 1em;*/

    padding-left: 0;
    display: none;
}

.search-btn {
    float: right;
    color: black;
    /*width: 40px;*/
    /*background: #f0edec;*/
    display: flex;
    justify-content: center;
    align-items: center;
    /*margin-right: 20%;*/

    position: absolute;
    min-width: 30px;
    bottom: 7px;
    right: 7px;
}

.search-box:focus-within .search-btn,
.search-box:hover .search-btn {
    margin-right: 0;
    transition: 500ms ease 0s;
}

body .ui-inputfield.search-txt.ui-state-focus:not(.ui-state-error) {
    border-color: transparent;
    box-shadow: 0 0 0 0;
}

.mobile-menu-list {
    display: none;
    padding: 0;
}

.mobile-menu-list.show {
    display: block;
    height: auto;
}

.topbar-mobile {
    display: none;
    ;
}

/*css of contact page*/
.contact-page {
    margin: 18px 0 3em;
}

.contact-page .head h4,
.contact-page .head p {
    letter-spacing: normal;
}

.contact-page .head {
    border-bottom: 1px solid #e0dad7;
    padding-bottom: 3em;
}

.contact-page .body {
    border-bottom: 1px solid #e0dad7;
}

.contact-page .form {
    margin-top: 0;
}

.contact-page .contact--introduction {
    margin-top: 52px;
    border-bottom: 1px solid #e0dad7;
    padding-bottom: 3em;
}

.contact-page .contact--bottom {
    padding-top: 2.5em;
}

.contact-form-pd {
    padding: .1em;
}

body .contact.ui-inputfield {
    background-color: #f7f7f7;
    border: none;
    border-radius: 0;
    border-bottom: 1px solid #cccccc;
}

.body p.required {
    float: right;
}

.body p span {
    color: #8ec320;
}

.form p {
    margin: 0;
    line-height: 2.3em;
    text-align: right;
}

.form h5 {
    margin: 0;
    text-align: right;
    font-size: 12px;
}

body .phone.ui-inputfield {
    margin-right: 2%;
}

.ui-button.cmd-button {
    border: none;
    display: inline-block;
    padding: 4px 22px;
    vertical-align: middle;
    overflow: hidden;
    text-decoration: none;
    color: #ed6d00;
    background-color: inherit;
    text-align: center;
    cursor: pointer;
    white-space: nowrap;
    border: 1px solid #ed6d00;
    border-radius: 24px;
    font-size: 12px;
    margin-bottom: 1em;
    font-family: Lato, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;

}

.cmd-button.contact-green {
    color: black;
    background: #ffffff;
    border: 1px solid #000000;
    display: flex;
    margin: 1em 25.5%;
    padding: 2px 18px;
    font-size: 14px;

}

.cmd-button.contact-green:hover {
    background: #e0dad7;
    border: 1px solid #8a8a8a;
    transition: 500ms ease 0s;
}

.head h4,
.head p {
    letter-spacing: normal;
}

.title h4 {
    color: #4f4e4e;
    font-weight: 600;
    font-size: 24px;
}

.title p {
    font-size: 13px;
    /*font-weight: 700;*/
}

.contact-page .body p.required {
    margin-top: 1em;
}

.form .ui-g-9 {
    padding-left: 1.5em;
}

/*.form .ui-g-12 {
    margin-bottom: 1.5em;
}*/
.contact-page .bottom {
    margin-top: 2em;
}

.contact-page .bottom p {
    text-align: justify;
}

.contact-page p.req span {
    font-size: 15px;
    position: relative;
    top: 0;
    color: #a22323;
    font-weight: bold;
}

/*end css of contact page*/

/*css for about page*/
.about-page {
    letter-spacing: normal;
    overflow: hidden;
    position: relative;
}

.about-page .title p {
    color: #313131;
    margin-bottom: 2em;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.8;
}

.about-page .no-pdLeft-sm {
    padding-top: 1em;
}

.about-page .w3-button {
    margin-bottom: 0;
}

ul.list-menu {
    list-style: none;
    letter-spacing: 1px;
    padding: 0;
    margin-bottom: 0;
    font-size: 12px;
    display: none;
}

ul.list-menu li {
    /*display: inline-block;*/
    display: inline !important;
}

ul.list-menu li a {
    display: inline;
}

ul.list-menu li p {
    display: inline;
    font-size: 12px;
}

ul.list-menu li.separator {
    margin: 0 0 0 1px;
}

body ul.list-menu a:hover p {
    color: #8ec320;
    transition: 500ms ease 0s;
}

.about-page .background {
    padding: 0;
}

.background .dashed-green {
    border-bottom: 1px dashed #8ec320;
    width: 220%;
    transform: rotate(153deg);
    position: absolute;
    z-index: -1;
    overflow: hidden;
    top: 10.3%;
    left: -28%;
}

.background .dashed-yellow {
    border-bottom: 1px dashed #d6c027;
    width: 220%;
    transform: rotate(198deg);
    position: absolute;
    z-index: -1;
    overflow: hidden;
    top: 34.5%;
    left: -28%;
}

.background .dashed-blue {
    border-bottom: 1px dashed #1697b0;
    width: 250%;
    transform: rotate(127deg);
    z-index: -2;
    position: absolute;
    right: -75%;
    top: 52%;
}

.background .dashed-orange {
    border-bottom: 1px dashed #ed6d00;
    width: 118%;
    position: absolute;
    transform: rotate(22deg);
    top: 65%;
    left: -5%;
    z-index: -3;
}

.background .dashed-purple {
    border-bottom: 1px dashed #b7318c;
    width: 120%;
    position: absolute;
    bottom: 21%;
    right: -9%;
    transform: rotate(149deg);
    z-index: -4;
}

.img-right {
    float: right;
}

.about-cover {
    background-image: url('../../resources/public/images/about_cover.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.cover-content {
    padding: 5em;
    padding-right: 60%;
    padding-bottom: 10em;
    text-align: center;
}

.cover-content .dashed-green {
    border-bottom: 1px dashed #8ec320;
    width: 290px;
    margin: auto;
    margin-bottom: 1.2em;
}

.top-icon {
    margin: 1.5em;
}

.top-icon img {
    margin: 0 .8em;
    image-rendering: pixelated;
}

.cover-content h4 {
    width: 310px;
    margin: auto;
    line-height: 1.6em;
    font-weight: 700;
    color: #313131;
}

.about-content {
    margin: 0;
}

.about-content .octagonal {
    margin: 0 .4em;
    width: 65px;
    height: 65px;
    background-color: #8ec320;
    padding: 15px 18px;
    -webkit-clip-path: polygon(45% 0, 55% 0, 100% 45%, 100% 55%, 55% 100%, 45% 100%, 0 55%, 0 45%);
    clip-path: polygon(45% 0, 55% 0, 100% 45%, 100% 55%, 55% 100%, 45% 100%, 0 55%, 0 45%);
    color: white;
    font-size: 25px;
    font-weight: 600;
    letter-spacing: 2px;
}

.about-content .octagonal.green {
    display: inline-block;
}

.about-content h5 {
    letter-spacing: 4px;
    color: #313131;
}

.about-content h2 {
    font-family: ヒラギノ角ゴ Pro W3;
    margin: 30px 0;
    letter-spacing: normal;
    color: #313131;
    font-size: 28px;
    display: inline-block;
}

.about-content h2 .btm {
    font-size: 16px;
    margin: 2px;
    font-weight: 700;
}

.about-content h2.feature-one {
    font-size: 22px;
}

.about-content p {
    margin-bottom: 40px;
    line-height: 2em;
    text-align: justify;
}

.maps-about {
    font-size: 20px !important;
    font-weight: bold !important;
    margin-bottom: 10px !important;
}

.margintop-maps {
    margin-top: 3em;
    padding-left: unset;
}

.icon-maps {
    margin-right: 2em;
}

.pentagon {
    clip-path: polygon(50% 0%, 100% 28%, 100% 100%, 0 100%, 0 28%);
    -webkit-clip-path: polygon(50% 0%, 100% 28%, 100% 100%, 0 100%, 0 28%);
    width: 20%;
    height: 45%;
    background-color: #8ec320;
    transform: rotate(90deg);
    position: absolute;
    z-index: -1;
    margin-left: 4.5%;
    top: -8.5%;
}

.overlap-img {
    position: relative;
}

.overlap-img img {
    position: relative;
    width: 100%;
}

.overlap-img img.lap-pic {
    float: right;
    width: 98%;
}

.pic2 .overlap-img img.lap-pic,
.pic4 .overlap-img img.lap-pic {
    float: left;
}

.about-content .title {
    padding: 1em 4em 0 1em;
    /*padding-right: 4em;*/
}

.thumb-pic1 {
    margin: 3em 0 1em;
}

.thumb-pic1 img {
    width: 100%;
    padding: .5em;
}

.pic2 .title {
    /*padding-left: 4em;*/
    /*padding-right: 1em;*/
    padding-top: 0;
}

.pic2 .icon-pic2 {
    margin-left: 7em;
    float: none;
    margin-bottom: 14px;
}

.pic2 .klin-logo {
    width: 102px;
    vertical-align: text-bottom;
    margin-left: 5em;
}

.pic2 .overlap-img img {
    left: 0;
}

.pic2 .pentagon {
    right: 1.3%;
    transform: rotate(180deg);
    top: -.7%;
    background-color: #1697b0;
}

.pic2-new .title {
    padding-left: 4em;
    padding-right: 1em;
    padding-top: 0;
}

.pic2-new .overlap-img img.lap-pic {
    float: none
}

.pic2-new .pentagon {
    top: -8%;
    left: 0.1%;
    background-color: #d6c027;
}

.pic3 .overlap-img img.lap-pic {
    float: none;
}

.pic3 .pentagon {
    top: -11.5%;
    left: -.9%;
    width: 11.67%;
    height: 50.86%;
    background-color: #ed6d00;
}

.pic4 .pentagon {
    right: 1.3%;
    transform: rotate(180deg);
    top: -.7%;
    background-color: #b7318c;
}

.about-content .octagonal.yellow {
    background-color: #d6c027;
    display: inline-block;
}

.about-content .octagonal.blue {
    background-color: #1697b0;
    display: inline-block;
}

.icon-craftingart {
    float: right;
    width: 7em;
}

.icon-pic2 {
    float: right;
    width: 35%;
}

.about-content .time,
.about-content .phone,
.about-content .mail {
    display: block;
}

.about-content .time {
    margin-bottom: 0.3em;
    display: flex;
}

.about-content .phone {
    margin-bottom: 0.3em;
    display: flex;
}

.about-content .mail {
    margin-bottom: 2em;
    display: flex;
}

.icon-on-about img {
    margin-top: 5px;
}

.about-content .time p,
.about-content .phone p,
.about-content .mail p {
    display: inline;
    margin-bottom: 0;
    margin-left: 1.2em;
}

.about-content .octagonal.orange {
    background-color: #ed6d00;
    display: inline-block;
}

.pic3 .overlap-img {
    position: relative;
    top: 7em;
    left: 39.5%;
}

.pic3 .overlap-img img {
    width: 59.3%;
}

.pic3 .title {
    top: -9.5em;
}

.pic3 .icon-pic2 {
    margin-left: 65px;
    float: none;
    margin-bottom: 14px;
}

.pic3 .cafe-logo {
    width: 102px;
    vertical-align: text-bottom;
    margin-left: 5em;
}

.thumb-pic3 {
    margin-top: 13em;
    position: relative;
    float: right;
}

.thumb-pic3 img {
    float: right;
}

.about-content .octagonal.purple {
    background-color: #b7318c;
    display: inline-block;
}

.pic4 .title {
    margin-top: 15em;
    padding-left: 4em;
    padding-right: 1em;
}

.pic4 .overlap-img img {
    left: 0;
}

.pic1,
.pic2,
.pic3,
.pic4 {
    margin: 5em 0;
}

.pic3 {
    margin-top: -6.5em;
}

.pic4 {
    margin-top: 1em;
}

.big-thumb {
    width: 60%;
}

.small-thumb {
    width: 40%;
    position: absolute;
    right: 43%;
    top: 73%;
}

/*end css for about page*/

/*add new css for top page*/
.bg-slider-top {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    width: 100%;
    height: 600px;
}

.top-img-cover .carousel-inner {
    overflow: visible;
}

.top-date .octagonal.long-top {
    -webkit-clip-path: polygon(25% 0, 75% 0, 100% 45%, 100% 55%, 75% 100%, 25% 100%, 0 55%, 0 45%);
    clip-path: polygon(25% 0, 75% 0, 100% 45%, 100% 55%, 75% 100%, 25% 100%, 0 55%, 0 45%);
    width: 188px;
    height: 128px;
    padding: .8em 1em;
}

.top-date .octagonal.long-top p.month {
    margin-right: 86px;
}

.top-date .octagonal.long-top p.month.left {
    margin-left: 6px !important;
    margin-top: 0;
}

.top-date .octagonal.long-top p.month.right {
    margin-right: 51px;
}

.top-date .octagonal.long-top .left {
    margin-right: auto !important;
    margin-left: 9px;
}

.top-date .octagonal.long-top .right {
    margin-left: auto !important;
    margin-right: 46px;
    margin-top: 0;
}

.top-date .octagonal.long-top p.day {
    margin-left: 37px;
    margin-top: 26px;
}

.top-date .octagonal.long-top p.day.endDate {
    margin-left: 116px !important;
    margin-top: 25px;
}

.endDate {
    margin-left: 8.8em !important;
}

.top-date .octogonal .long-top p.day-pos {
    position: absolute !important;
    margin-top: 31px !important;
}

.top-date .octagonal.long-top .slice {
    left: 43px;
}

.top-date .octagonal.long-top .slice-left {
    left: 34px !important;
    top: 66px !important;
}

.top-date .octagonal.long-top .slice-right {
    left: 113px !important;
    top: 67px !important;
}

.padttl-sm-nolr {
    padding-left: 1.2em;
}

/*new css 07/27/20*/
.socmed-footer .s-icon p {
    margin-top: 1em;
}

.gal-index .carousel-caption {
    padding-left: 1em;
    padding-right: 1em;
}

.gal-index .carousel-caption h3 {
    line-height: 1.4em;
    color: #ffffff;
}

.gal-index .carousel-caption-new {
    padding-left: 1em;
    padding-right: 1em;
}

.gal-index .carousel-caption-new h3 {
    line-height: 1.4em;
    color: #ffffff;
}

.gal-index .carousel-caption-detail {
    padding-left: 1em;
    padding-right: 1em;
}

.gal-index .carousel-caption-detail h3 {
    line-height: 1.4em;
    color: #ffffff;
}

/*css footer after add book*/
.btmlist .list.left-side {
    padding-right: 1em;
}

.btmlist .list.right-side {
    padding-left: 1em;
    padding-right: 5px;
}

/*css for tag page*/
/*.w3-button.black {
    border: 1px solid #4f4e4e;
    color: #4f4e4e;
}
.w3-button.black:hover {
    background-color: #4f4e4e;
    color: #fff;
    transition: 500ms ease 0s;
}*/
.tag-page .title {
    margin-bottom: 2em;
}

.tag-page {
    margin-bottom: 2em;
}

.breadcrumb-pd ul.list-menu a,
.breadcrumb-pd ul.list-menu p {
    color: #808080;
}

.category-div-part {
    display: none;
}

/*=================new footer design======================*/
#footer-smview {
    display: none;
}

.socmed-footer .head-ttl h4 {
    display: inline;
    color: #8b3333;
    position: relative;
    font-weight: normal;
}

.socmed-footer .head-ttl h4::before {
    content: "";
    height: 25px;
    border-left: 1px solid #8b3333;
    display: inline;
    position: absolute;
    left: -1em;
    transform: rotate(-45deg);
}

.socmed-footer .head-ttl h4::after {
    content: "";
    height: 25px;
    border-left: 1px solid #8b3333;
    display: inline;
    position: absolute;
    right: -1em;
    transform: rotate(45deg);
}

.socmed-footer .frame i {
    color: #8b3333;
}

.socmed-footer .frame {
    background-color: transparent;
    width: auto;
    height: auto;
    padding: 0;
}

.socmed-icon .tw {
    margin: auto 1.5em;
}

.socmed-footer .seemore {
    padding: 0 1em;
}

.footer-banner.item-container p {
    line-height: normal;
    font-size: 12px;
}

.footer-banner.item-container p.bold {
    margin-bottom: 7.5px;
    margin-top: 16px;
}

.footer-banner .footer-banner-width {
    max-width: 1188px;
}

.footer p {
    padding-top: 5px;
}

.footer-hz-line {
    border-bottom: 1px solid #e3e3e3;
}

.socmed-footer .head-ttl {
    margin-top: 2.5em;
}

.socmed-icon {
    margin: 1em auto 0;
}

.socmed-footer {
    margin-bottom: 1.5em;
}

.footer-banner.item-container {
    margin-top: 20px;
    padding-bottom: 0px;
}

p.sm-footer-sns {
    display: none;
}

.footer-vg-logo-sm {
    display: none;
}

.socmed-footer .seemore {
    text-align: center;
    border: 1px solid;
    margin: 1.5em auto 0em;
    border-radius: 50px;
    cursor: pointer;
    display: table;
    color: #4f4e4e;
    font-size: 13px;
    line-height: 23px
}

.socmed-footer .seemore:hover {
    background: #e0dad7;
}

.socmed-footer .seemore a:hover,
.socmed-footer .seemore a:focus {
    color: #4f4e4e;
}

.wrap-sub-footer .item:first-of-type {
    padding-left: 0px;
    /*width: 19.06%;*/
    /*width: 25.68%;*/
    width: 287px;
    max-width: 39%;
}

.wrap-sub-footer .item:nth-of-type(2) {
    width: 22.65%;
}

.wrap-sub-footer .item:nth-of-type(3) {
    width: 24.29%;
}

.wrap-sub-footer .item:last-of-type {
    padding-right: 0px;
    /*width: 34%;*/
    display: flex;
    /*width: 35.55%;*/
    width: 409px;
    max-width: 50%;
}

.wrap-sub-footer .item:last-of-type>div:first-of-type {
    width: 150px;
    min-width: 150px;
}

.wrap-sub-footer .item:last-of-type>div:last-of-type {
    /*width: 125px;*/
    margin-left: auto;
    width: 137px;
    min-width: 137px;
}

.socmed-icon .s-icon a:hover {
    opacity: .6;
    transition: 500ms ease 0s;
}

.s-icon .btn-sns {
    color: #973e93;
    border: 1px solid #973e93;
    border-radius: 50%;
    padding: 6.5px;
    width: 37px;
    height: 37px;
    max-width: 100px;
    margin: auto;
    margin-bottom: 0px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.socialmedia.gap-small {
    display: flex;
    gap: 7px;
}

.s-icon .btn-sns.small {
    width: 29px;
    height: 29px;
}

.btn-sns.small img {
    width: 14px;
}

.btn-sns.facebook.small img {
    width: 15px;
}

.btn-sns img {
    width: 20px;
    /* margin-right: 3px; */
    transition: .5s linear;
}

.btn-sns.twitter {
    color: #000000;
    border: 1px solid #000000;
}

.btn-sns.facebook {
    color: #395591;
    border: 1px solid #395591;
}

/*=================end new footer design======================*/
.uiGrid _51mz {
    width: 164px !important;
}

.div-dt .fb_iframe_widget iframe,
.books-page .fb_iframe_widget iframe table,
.event-page .fb_iframe_widget iframe,
.newsList-page .fb_iframe_widget iframe .uiGrid _51mz {
    /*width: 190px!important;*/
}

.div-dt .fb_iframe_widget iframe,
.books-page .fb_iframe_widget iframe table,
.event-page .fb_iframe_widget iframe,
.newsList-page .fb_iframe_widget iframe .uiGrid _51mz ._51mz ._51mw {
    /*padding-right: 20px !important;*/
}

.div-dt #twitter-widget-0,
.books-page #twitter-widget-0,
.event-page #twitter-widget-0,
.newsList-page #twitter-widget-0 {
    margin-left: -6px;
}

/*.btn-fb-width span iframe {
    padding-left: 12px;
}*/
.desc-gall {
    margin: 2em auto;
}

.gal-index .gal-boxes {
    display: flex;
    flex-wrap: wrap;
}

.object-fit-50 {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 50%;
}

.object-fit-50 img {
    position: absolute;
    width: 100%;
    height: 100% !important;
    object-fit: cover;
}

.object-fit-75 {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 75%;
}

.object-fit-75 img {
    position: absolute;
    width: 100%;
    height: 100% !important;
    object-fit: cover;
}

/*gallery archive*/
.gal-archive .ui-datagrid-column {
    padding: 0;
}

.gal-archive .gal-boxes {
    margin-top: 2.3em;
    margin-bottom: 4.5em;
}

.gallery-box .octagonal.date p {
    font-size: 14px;
}

.gallery-box .event-page .octagonal.date p {
    font-size: 14px;
}

/*new pagination*/
.list-pagi .ui-widget-content {
    background-color: transparent;
    border: none;
}

.list-pagi .ui-datagrid .ui-paginator-bottom {
    margin-top: 48px;
    text-align: center;
    background: #fff;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    padding: 0px;
}

.list-pagi .ui-paginator .ui-paginator-next,
.ui-paginator .ui-paginator-prev,
.ui-paginator .ui-paginator-last,
.ui-paginator .ui-paginator-first {
    /*padding: 1px 9px!important;*/
}

.list-pagi .ui-paginator .ui-paginator-first,
.list-pagi .ui-paginator .ui-paginator-prev,
.list-pagi .ui-paginator .ui-paginator-next,
.list-pagi .ui-paginator .ui-paginator-last {
    min-width: 45px;
    max-width: 45px;
    min-height: 45px;
    max-height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0px;
    border: 1px solid #3F4446;
    font-weight: 400;
}

.list-pagi .ui-paginator,
.list-pagi .ui-paginator .ui-paginator-next,
.list-pagi .ui-paginator .ui-paginator-last {
    border: 1px solid #3F4446;
    color: #121212;
    margin: 0px;
    border-radius: 50%;
}

.list-pagi .ui-paginator .ui-paginator-first,
.list-pagi .ui-paginator .ui-paginator-prev {
    border: 1px solid #3F4446;
    color: #121212;
    margin: 0px;
    border-radius: 50%;
}

.list-pagi .ui-paginator .ui-paginator-next:before {
    content: "次";
}

.list-pagi .ui-paginator .ui-paginator-prev:before {
    content: "前";
}

.list-pagi .ui-paginator .ui-paginator-first:before {
    content: "最初";
}

.list-pagi .ui-paginator .ui-paginator-first {
    /*    border: 1px solid #808080;
        -moz-border-radius-topright: 0px;
        -webkit-border-top-right-radius: 0px;
        border-top-right-radius: 0px;
        -moz-border-radius-bottomright: 0px;
        -webkit-border-bottom-right-radius: 0px;
        border-bottom-right-radius: 0px;
        border-radius: 0px;*/
}

.list-pagi .ui-paginator .ui-paginator-last {
    /*    border: 1px solid #808080;
        -moz-border-radius-topright: 0px;
        -webkit-border-top-right-radius: 0px;
        border-top-right-radius: 0px;
        -moz-border-radius-bottomright: 0px;
        -webkit-border-bottom-right-radius: 0px;
        border-bottom-right-radius: 0px;*/
}

.list-pagi .ui-paginator .ui-paginator-last:before {
    content: "最後";
}

.list-pagi .ui-paginator .ui-paginator-pages .ui-paginator-page {
    border: 1px solid #3F4446;
    color: #121212;
    margin: 0px;
    border-radius: 50%;
    min-width: 45px;
    max-width: 45px;
    min-height: 45px;
    max-height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0px;
    font-weight: 300;
}

.list-pagi .ui-paginator .ui-paginator-pages .ui-paginator-page:last-child {
    border: 1px solid #3F4446;
}

.list-pagi .ui-paginator .ui-paginator-pages .ui-paginator-page.ui-state-active {
    background: rgba(192, 194, 188, 0.90);
    margin-right: 0px;
    color: #121212;
    border: 1px solid rgba(192, 194, 188, 0.90);
}

.list-pagi .ui-paginator .ui-paginator-first.ui-state-disabled,
body .ui-paginator .ui-paginator-prev.ui-state-disabled,
body .ui-paginator .ui-paginator-next.ui-state-disabled,
body .ui-paginator .ui-paginator-last.ui-state-disabled {
    background-color: transparent;
}

.list-pagi .ui-paginator .ui-paginator-prev {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    margin-right: 0px;
    margin-left: 0px;
}

.list-pagi .ui-paginator .ui-paginator-pages {
    display: flex;
    gap: 14px;
}

.variable-width {
    opacity: 0;
    transition: 500ms ease 0s;
    position: relative;
    z-index: 1;
}

.loaded .variable-width {
    opacity: 1;
}

#wrap-variable-width {
    position: relative;
}

#wrap-variable-width::after {
    content: '';
    position: absolute;
    background-image: url('./../../resources/public/images/loading.gif');
    width: 50px;
    height: 50px;
    top: 50%;
    left: 50%;
    background-size: contain;
    background-position: center;
    transform: translate(-50%, -50%);
    z-index: -1;
}

.title p.top-title {
    font-size: 28px !important;
}

.title p.small-top-title {
    font-size: 15px !important;
}

.title p.title-junpro {
    /*font-family: "Noto Serif";*/
    font-size: 24px;
    font-weight: 500;
    line-height: 140%;
    /*letter-spacing: 2.4px;*/
    text-transform: uppercase;
}

.title .title-junpro {
    /*font-family: "Noto Serif";*/
    font-size: 24px;
    font-weight: 500;
    line-height: 140%;
    /*letter-spacing: 2.4px;*/
    text-transform: uppercase;
}

.title p.title-smallJapan {
    text-align: center;
    margin: auto;
    font-size: 13px;
    line-height: 1.6em;
    letter-spacing: normal;
}

.title p.title-index-junpro {
    text-align: center;
    font-family: "Noto Serif";
    font-size: 50px;
    font-weight: 300;
    line-height: 140%;
    /* 70px */
    letter-spacing: 5px;
    text-transform: uppercase;
    margin: 0px;
}

.title h2.title-index-junpro {
    text-align: center;
    font-family: "Noto Serif";
    font-size: 50px;
    font-weight: 300;
    line-height: 140%;
    /* 70px */
    letter-spacing: 5px;
    text-transform: uppercase;
    margin: 0px;
    /*text-rendering: geometricPrecision;*/
}

.title h2.title-index-junpro.font-mincho {
    font-family: "Noto Serif JP", serif;
    letter-spacing: 4px;
}

.title span.title-index-junpro {
    text-align: center;
    font-family: "Noto Serif";
    font-size: 50px;
    font-weight: 300;
    line-height: 140%;
    /* 70px */
    letter-spacing: 5px;
    text-transform: uppercase;
    margin: 0px;
    /*text-rendering: geometricPrecision;*/
    display: block;
}

.title span.title-index-junpro.font-mincho {
    font-family: "Noto Serif JP", serif;
}

.title p.title-index-smallJapan {
    text-align: center;
    margin: 5px 0px 0px;
    font-size: 16px;
    font-weight: 400;
    line-height: 160%;
    /* 25.6px */
    letter-spacing: 1.6px;
}

.title h2.title-index-smallJapan {
    text-align: center;
    margin: 5px 0px 0px;
    font-size: 16px;
    font-weight: 400;
    line-height: 160%;
    /* 25.6px */
    letter-spacing: 1.6px;
    text-rendering: geometricPrecision;
}

.title span.title-index-smallJapan {
    text-align: center;
    margin: 5px 0px 0px;
    font-size: 16px;
    font-weight: 400;
    line-height: 160%;
    /* 25.6px */
    letter-spacing: 1.6px;
    text-rendering: geometricPrecision;
    display: block;
}

.title.left p.title-index-smallJapan {
    margin: 2px 0px 0px;
}

.title.left h2.title-index-smallJapan {
    margin: 2px 0px 0px;
}

.title.left span.title-index-smallJapan {
    margin: 2px 0px 0px;
}

.title.switch-pos {
    display: flex;
    flex-direction: column-reverse;

    justify-content: flex-end;
}

.title.switch-pos .title-index-junpro {
    font-size: 16px;
    font-weight: 300;
    line-height: 140%;
    letter-spacing: 1.6px;
    margin-top: 9px;
}

.title.switch-pos .title-index-smallJapan {
    font-size: 50px;
    font-weight: 400;
    line-height: 140%;
    /*letter-spacing: 5px;*/
    letter-spacing: normal;
    margin: 0px;
}

.title.title-topics .title-index-smallJapan {
    position: relative;
    left: -16px;
}

.title--small-text-on-title {
    display: flex;
    gap: 35px;
    align-items: center;
}

.title--small-text-on-title .small-text-on-title {
    color: #4A4A4A;
    font-size: 18px;
    font-weight: 400;
    line-height: 160%;
}

.title--small-text-on-title .title-index-smallJapan {
    word-break: keep-all;
}

/*for display dropdown select at contact page*/
.book-input {
    display: none;
    transition: 500ms ease 0s;
}

.book-input.showing {
    display: block;
}

.contact-page .ui-selectonemenu {
    background: #f2f0e8;
    border-color: #f2f0e8;
}

.contact-page .ui-selectonemenu .ui-inputfield {
    background: #f2f0e8;
    border: none;
    background-color: #f7f7f7;
    border: none;
    border-radius: 0;
    border-bottom: 1px solid #cccccc;
}

body .ui-selectonemenu .ui-selectonemenu-trigger {
    padding: 0;
    width: 28px;
    text-align: center;
    background-color: #f7f7f7;
    border: none;
    border-radius: 0;
    border-bottom: 1px solid #cccccc;
}

/*body .ui-messages {
    display: flex;
    justify-content: center;
    margin-bottom: 1em;
    gap: 10px;
}*/
body .ui-messages .ui-messages-info {
    max-width: 360px;
    margin: 10px auto;
}

body .ui-messages .ui-messages-error {
    max-width: 360px;
    margin: 10px auto;
}

.padding-text-email {
    padding-left: 7px;
    padding-bottom: 7px;
}

.btn-forgot-div.delete-btn {
    display: flex;
    justify-content: flex-start;
    padding-left: 0.5em;
    padding-top: 10px;
}

.btn-forgot-div.delete-btn

/* slick slider navigation style */
.brown-circle-nav {
    position: relative;
}

.brown-circle-nav .slick-prev {
    top: 50%;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: none;
    display: flex !important;
    background: #8b3333;
    left: -5.3%;
    transform: translate(0, -50%);
    font-size: 0;
    position: absolute;
    z-index: 1;
}

.brown-circle-nav .slick-prev::before {
    box-shadow: -2px 2px 0 rgb(255, 255, 255);
    transform: rotate(45deg)translate(4px, -3px);
    width: 12px;
    font-size: 12px;
    margin: auto;
    height: 12px;
    content: "";
    opacity: 1 !important;
}

.brown-circle-nav .slick-next {
    top: 50%;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: none;
    display: flex !important;
    background: #8b3333;
    right: -5.3%;
    transform: translate(0, -50%);
    font-size: 0;
    position: absolute;
}

.brown-circle-nav .slick-next::before {
    box-shadow: -2px 2px 0 rgb(255, 255, 255);
    transform: rotate(225deg)translate(-2px, 2px);
    width: 12px;
    height: 12px;
    font-size: 12px;
    margin: auto 6px;
    content: "";
    opacity: 1 !important;
}

.brown-circle-nav .slick-prev:hover,
.brown-circle-nav .slick-prev:focus,
.brown-circle-nav .slick-next:hover,
.brown-circle-nav .slick-next:focus {
    color: inherit;
    outline: inherit;
    background: #8b3333;
}

.mini-icon {
    margin-right: 22px;
    gap: 14px;
    justify-content: end;
    display: flex;
    align-items: center;
    padding-bottom: 1px;
}

/*---------------------------------------------------Gallery Section---------------------------------------------------*/
.gallery-sec .official-date {
    color: #808080;
    font-size: 13px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-top: 16px;
}

.gallery-sec .title {
    margin-top: 0;
}

.gallery-sec .card-title {
    color: #4F4E4E;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    text-align: justify;
}

.gallery-sec .card-desc {
    color: #4F4E4E;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 180%;
    word-break: break-all;
    text-align: justify;
}

.gallery-sec .official-gal {
    /*    height: 200px;
        overflow: hidden;*/
}

.gallery-sec .off-gal {
    /*    border-radius: 10px;
        width: -webkit-fill-available;
        height: auto;
        min-height: 200px;*/
}

.gallery-sec .object-fit>img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gallery-sec .object-fit img {
    border-radius: 0.7rem;
}

.gallery-sec .object-fit {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 64.2%;
}

.gallery-sec .flex-date {
    display: flex;
    margin-top: 16px;
    margin-bottom: 12px;
    margin-left: 0;
}

.gallery-sec .flex-date .text-date {
    color: #FFFFFF;
    font-size: 13px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    display: flex;
    height: 35px;
    padding: 11px 21px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    background: #772427;
}

.application-gallery .flex-date .numb-date {
    display: flex;
    height: 35px;
    padding: 11px 20px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    flex: 1 0 0;
    border: 1px solid #E6E6E6;
    font-size: 13px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    flex-direction: column;
    flex: 1 0 0;
}

.official-gallery .previous {
    /*top: calc(50% - 55px);*/
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: none;
    display: flex !important;
    background: #8b3333;
    left: 9%;
    transform: translate(0, -50%);
    font-size: 0;
    position: absolute;
    z-index: 1;
    margin-top: 77px;
}

.official-gallery .previous::before {
    box-shadow: -2px 2px 0 rgba(255, 255, 255, 1);
    transform: rotate(45deg)translate(4px, -3px);
    width: 12px;
    font-size: 12px;
    margin: auto;
    height: 12px;
    content: "";
}

.official-gallery .scroll-x {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: scroll;
    gap: 18px;
}

.official-gallery .next {
    /*top: calc(50% - 55px);*/
    margin-top: 77px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: none;
    display: flex !important;
    background: #8b3333;
    right: 10%;
    transform: translate(0, -50%);
    font-size: 0;
    position: absolute;
}

.official-gallery .next::before {
    box-shadow: -2px 2px 0 rgba(255, 255, 255, 1);
    transform: rotate(225deg)translate(-2px, 2px);
    width: 12px;
    height: 12px;
    font-size: 12px;
    margin: auto 6px;
    content: "";
}

/*---------------------------------------------------End of Gallery Section---------------------------------------------------*/

.head {
    padding: 0;
    margin-bottom: 2em;
}

.wrapper-twitter-share {
    margin-left: -6px;
}

.wrapper-twitter-share .button-twitter-x {
    background-color: #000;
    color: #fff;
    width: 90px;
    height: 20px;
    font-size: 11.5px;
    border-radius: 1em;
    padding: 3px 12px 1px 12px;
    font-weight: 500;
    display: block;
}

.wrapper-twitter-share .button-twitter-x .icon {
    width: 11px;
    margin-right: 5px;
    margin-top: -3px;
}

.wrapper-twitter-share iframe {
    position: absolute !important;
    top: 0;
    left: 0;
    opacity: 0;
}

/*OSHIBANA*/
.section-width-full {
    display: block;
    width: 100%;
}

.section-width {
    display: block;
    width: 90%;
    margin: 0px auto;
}

.max860 {
    max-width: 860px;
    margin: 0px auto;
}

.max900 {
    max-width: 900px;
    margin: 0px auto;
}

.max920 {
    max-width: 900px;
    margin: 0px auto;
}

.max1120 {
    max-width: 1120px;
    margin: 0px auto;
}

.max1234 {
    max-width: 1234px;
    margin: 0px auto;
}

.max1250 {
    max-width: 1250px;
    margin: 0px auto;
}

.max1252 {
    max-width: 1252px;
    margin: 0px auto;
}

.max1256 {
    max-width: 1256px;
    margin: 0px auto;
}

.max1154 {
    max-width: 1154px;
    margin: 0px auto;
}

.max1118 {
    max-width: 1118px;
    margin: 0px auto;
}

.tag-book {
    border-radius: 50%;
    color: white;
    position: absolute;
    right: 0px;
    top: -24px;
    z-index: 2;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 55px;
    height: 55px;
    background-color: #ffffff;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.06);
}

.tag-book .overlap-group {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 51px;
    height: 51px;
    border-radius: 25.5px;
}

.tag-book .text-wrapper {
    font-weight: 600;
    color: #9C8982;
    font-size: 13px;
    text-align: center;
    letter-spacing: 0;
    line-height: 24px;
    white-space: nowrap;
    z-index: 2;
}

.tag-book .circle,
.tag-book .div {
    position: absolute;
    border-radius: 50%;
    border: 0.5px solid #9C8982;
}

.tag-book .circle {
    width: 51px;
    height: 51px;
}

.tag-book .div {
    width: 49px;
    height: 49px;
    top: 1px;
    left: 1px;
}

.tag-fill {
    position: absolute;
    z-index: 3;
    top: -28px;
    right: -8px;
}

.tag-fill h5 {
    position: relative;
    background: #9C8982;
    width: 55px;
    height: 55px;
    color: #FFF;
    border-radius: 50%;
    margin: 0px;
    font-size: 24px;
    font-weight: 600;
    line-height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.tag-fill h5::before {
    content: "";
    width: 51px;
    height: 51px;
    border: 0.5px solid #fff;
    position: absolute;
    top: 2px;
    left: 2px;
    border-radius: 50%;
}

.tag-fill h5::after {
    content: "";
    width: 49px;
    height: 49px;
    border: 0.5px solid #fff;
    position: absolute;
    top: 3px;
    left: 3px;
    border-radius: 50%;
}

.date {
    color: #6A6A6A;
    font-family: "Noto Serif";
    font-size: 13px;
    font-weight: 400;
    line-height: normal;
}

/*styling slick*/
.newIndex .slick-prev {
    width: 54px;
    height: 54px;
    border-radius: 50%;
    border: none;
    display: flex !important;
    background: #fff;
    font-size: 0;
    position: absolute;
    z-index: 1;
    top: unset;
    bottom: -26px;
    border: 1px solid #3F4446;
    left: 25px;
}

.newIndex .slick-prev::before {
    box-shadow: -2px 2px 0 #3F4446;
    transform: rotate(45deg)translate(4px, -3px);
    width: 12px;
    font-size: 12px;
    margin: auto;
    height: 12px;
    content: "";
}

.newIndex .slick-prev.slick-disabled:before {
    opacity: 1 !important;
}

.newIndex .slick-next {
    width: 54px;
    height: 54px;
    border-radius: 50%;
    border: none;
    display: flex !important;
    background: #fff;
    font-size: 0;
    position: absolute;
    top: unset;
    bottom: -26px;
    border: 1px solid #3F4446;
    right: unset;
    left: 93px;
    z-index: 1;
}

.newIndex .slick-next::before {
    box-shadow: -2px 2px 0 #3F4446;
    transform: rotate(225deg)translate(-2px, 2px);
    width: 12px;
    height: 12px;
    font-size: 12px;
    margin: auto 13px;
    content: "";
}

.newIndex .slick-next.slick-disabled:before {
    opacity: 1 !important;
}


.title.left p.title-index-junpro {
    text-align: left
}

.title.left h2.title-index-junpro {
    text-align: left
}

.title.left span.title-index-junpro {
    text-align: left
}

.title.left p.title-index-smallJapan {
    text-align: left
}

.title.left h2.title-index-smallJapan {
    text-align: left
}

.title.left span.title-index-smallJapan {
    text-align: left
}

.product-box a {
    display: flex;
    flex-direction: column-reverse;
    width: 100%;
}

.product-boxes .slick-track {
    display: flex;
}

.product-boxes .slick-slide {
    padding: 20px 25px;
    display: flex !important;
}

.product-boxes .slick-slide>div {
    width: 100%;
}

.lazy-product .slick-slide>div {
    display: flex;
}

/*.btn-seemore.topics{
    margin-top: -20px;
    padding-bottom: 60px;
}*/
.btn-seemore {
    display: block;
    text-align: center;
}

.btn-seemore .seemore {
    text-align: center;
    padding: 13px 37px 13px 26px;
    cursor: pointer;
    color: #fff;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: 160%;
    background: #292D33;
    min-width: 200px;
    min-height: 52px;
    margin: auto;
    position: relative;
    border: 1px solid #292D33;
    width: auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn-seemore .seemore::after {
    content: "";
    display: inline-block;
    box-shadow: -1px 1px 0 #fff;
    transform: rotate(225deg) translate(50%, 50%);
    width: 10px;
    height: 10px;
    min-width: 10px;
    min-height: 10px;
    position: absolute;
    top: calc(50% + 2px);
    right: 17px;
}

.btn-seemore.download-btn .seemore::after {
    display: none;
}

.btn-seemore.download-btn .seemore {
    padding: 13px 55px 13px 11px;
}

.download-btn .icon-download {
    width: 22px;
    position: absolute;
    top: 14px;
    right: 19px;
}

.download-btn .seemore:hover .icon-download {
    filter: brightness(0);
}

.btn-seemore .seemore:hover {
    background: #fff;
    transition: 250ms ease 0s;
    color: #292D33;
}

.btn-seemore .seemore:hover::after {
    border-left: 1px solid #292D33;
    border-bottom: 1px solid #292D33;
}

.section-title-with-hz-line {
    position: relative;
    padding-left: 20px;
}

.section-title-with-hz-line::before {
    content: "";
    position: absolute;
    width: 100vw;
    height: 1px;
    background: #000;
    display: flex;
    flex: none;
    left: calc(-100vw + -4px);
    top: 32px;
}

.page-title-with-hz-line {
    position: relative;
    padding-left: 20px;
}

h1.page-title-with-hz-line {
    margin: 0px;
}

.page-title-with-hz-line::before {
    content: "";
    position: absolute;
    width: 100vw;
    height: 1px;
    background: #000;
    display: flex;
    flex: none;
    left: calc(-100vw + -24px);
    top: 32px;
}

.page-title-with-hz-line.left {
    padding-left: 0px;
}

.bg-grey {
    background: #FAFAFA;
}

.new-article-boxes {
    display: grid;
    grid-template-columns: 370px 2fr;
    grid-template-rows: 1fr 1fr;
    grid-template-areas:
        "item1 item2"
        "item1 item3";
    gap: 18px 37px;
    width: 100%;
}

.new-article-boxes .small-box:nth-of-type(1) {
    grid-area: item1;
}

.new-article-boxes .small-box:nth-of-type(2) {
    grid-area: item2;
}

.new-article-boxes .small-box:nth-of-type(3) {
    grid-area: item3;
}

.new-article-boxes .box-border {
    display: flex;
}

.new-article-boxes .object-fit-50 {
    width: 250px;
    padding-bottom: 148px;
}

.new-article-boxes .small-box .caption-news {
    padding: 0px;
    padding-left: 20px;
    display: flex;
    flex-direction: column;
}

.new-article-boxes .small-box:first-of-type .box-border {
    flex-direction: column;
    padding: 16px 20px 21px;
}

.new-article-boxes .small-box:first-of-type .object-fit-50 {
    width: 100%;
    padding-bottom: 45.46%;
}

.new-article-boxes .small-box:first-of-type .caption-news {
    padding: 18px 0px 0px;
    flex: 1;
}

.new-article-boxes .small-box:first-of-type .thumb-title img {
    width: 45px;
    height: 45px;
    min-width: 45px;
}

.feature-gal .new-article-boxes .small-box .caption-news p {
    font-size: 14px;
    font-weight: 400;
    line-height: 150%;
    margin: 0px;
}

.feature-gal .new-article-boxes .small-box .caption-news .title-article {
    font-size: 14px;
    font-weight: 400;
    line-height: 150%;
    margin: 0px;
}

.feature-gal .new-article-boxes .small-box .caption-news h3 {
    font-size: 14px;
    font-weight: 400;
    line-height: 150%;
    margin: 0px;
    /*text-rendering: geometricPrecision;*/
}

.feature-gal .new-article-boxes .small-box .caption-news p.grey-font {
    color: #121212;
    font-size: 16px;
    font-weight: 400;
    line-height: 25.6px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.feature-gal .new-article-boxes .small-box .caption-news h3.grey-font {
    color: #121212;
    font-size: 16px;
    font-weight: 400;
    line-height: 25.6px;
}

.new-article-boxes .object-fit-50 img {
    border-radius: 6px;
}

.new-article-boxes .small-box .date {
    margin: auto 0px 0px;
    padding-top: 24px;
    padding-bottom: 1px;
}

.new-article-boxes .tag-book {
    top: -28px;
}

.bg-purple {
    background: #745A89;
}

.bg-grey-green {
    background: rgba(192, 194, 188, 0.91);
}

.official-gallery-box {
    padding: 0px 19.5px;
}

.official-gallery-box .image-card-gallery {
    border-radius: 6px;
}

.official-gallery-box .official-date {
    margin: 18px 0px 0px;
}

.official-gallery-box .card-title {
    margin: 13.8px 0px 0px;
    font-size: 15px;
    font-weight: 400;
    line-height: 160%;
    /* 24px */
}

.official-gallery-box .object-fit {
    padding-bottom: 62.5%;
    height: 0px;
    width: 100%;
    position: relative;
}

.official-gallery-box .object-fit img {
    height: 100%;
    width: 100%;
    position: absolute;
    object-fit: cover;
    left: 0px;
    top: 0px;
}

.official-gal-boxes {
    position: relative;
    margin-top: 50px;
}

.w3-button-wrap {
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
}

.product-box a:hover .img-product img {
    opacity: .6;
    transition: 500ms ease 0s;
}

.category-product {
    margin-top: 52px;
}

.category-product .title p.title-junpro {
    text-align: left;
    font-weight: 300;
    letter-spacing: 1.6px;
}

.category-product .title .title-junpro {
    text-align: left;
    font-weight: 300;
    letter-spacing: 1.6px;
    margin: 0px;
}

.category-product .list-category {
    margin-top: 18px;
}

.category-product .list-category ul {
    display: flex;
    list-style: none;
    padding: 0;
    flex-wrap: wrap;
    margin-bottom: 0;
    gap: 8px 0px;
}

.category-product .list-category li {
    margin-right: 32px;
}

.category-product .list-category li a {
    color: #121212;
    font-size: 15px;
    font-weight: 400;
    line-height: 160%;
}

.category-product .list-category li a::after {
    content: "";
    border-bottom: 1px solid;
    display: block;
    margin-top: 2px;
}

.category-product--buttons {
    display: flex;
    list-style: none;
    padding: 0;
    flex-wrap: wrap;
    margin-bottom: 0;
}

.category-product--buttons .category-product--button {
    margin-right: 32px;
    color: #121212;
    font-size: 15px;
    font-weight: 400;
    line-height: 160%;
    background: none;
    border: none;
    padding: 0px;
    font-family: "Noto Serif JP", serif;
    border-bottom: 1px solid;
    padding-bottom: 2px;
}

.category-product .list-sub-category ul {
    display: flex;
    list-style: none;
    padding: 0;
    flex-wrap: wrap;
    margin-bottom: 0;
    gap: 16px;
}

.category-product .list-sub-category li {
    display: flex;
}

.category-product .list-sub-category li a {
    color: #121212;
    font-size: 12px;
    font-weight: 300;
    line-height: 17.14px;
    border-radius: 24px;
    border: 1px solid #121212;
    padding: 5.5px 20px;
}


.category-product .link-category {
    margin-top: 9px;
    margin-left: 3px;
}

.category-product .link-category ul {
    display: flex;
    list-style: none;
    padding: 0;
    flex-wrap: wrap;
    margin-bottom: 0;
    gap: 8px 0px;
}

.category-product .link-category li {
    margin-right: 36px;
}

.category-product .link-category li a {
    color: #121212;
    font-size: 15px;
    font-weight: 400;
    line-height: 160%;
    display: flex;
    align-items: center;
}

.category-product .link-category li a::before {
    content: "";
    border-bottom: 1px solid;
    border-left: 1px solid;
    display: block;
    margin-top: 0px;
    width: 10px;
    height: 10px;
    transform: rotate(315deg);
    margin-right: 9px;
    position: relative;
    top: -2px;
}

.oshibana-news .object-fit-50 {
    padding-bottom: 62.63%;
}

.oshibana-news .caption-news .date {
    font-family: "Noto Serif";
    font-size: 13px;
    font-weight: 400;
    margin-top: 16px;
    margin-bottom: 0px;
    color: #6A6A6A;
}

.oshibana-news h3.ttl-capt {
    font-size: 18px;
    line-height: 140%;
    margin-top: 10px;
    margin-bottom: 0px;
    color: #121212;
    font-weight: 600;
}

.oshibana-news h3.ttl-capt.three-row {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.oshibana-news .caption-news p {
    color: #121212;
    font-size: 15px;
    font-weight: 400;
    line-height: 160%;
    margin-top: 10px;
    margin-bottom: 0px;
}

.oshibana-news .btn-news-top .w3-button-wrap {
    margin-top: 15px;
}

.oshibana-news .btn-news-top .link-news-detail {
    margin-bottom: 0px;
    letter-spacing: 1px;
    white-space: pre-wrap;
    margin-top: 0px;
}

.oshibana-news .object-fit-50 img {
    border-radius: 4px;
}

.bg-grey .oshibana-news .news-part-index {
    display: flex;
    width: 100%;
}

.bg-grey .oshibana-news .small-box {
    gap: 50px;
    padding-top: 11px;
    flex: 1;
}

.bg-grey .oshibana-news .title {
    margin-right: 23px;
}

.bg-grey .oshibana-news .small-box>div {
    width: calc(33.333% - 33.333px);
}

.line-vertical {
    width: 0.5px;
    height: 50px;
    background: #000;
    display: block;
    margin: auto;
}


.thumb-title {
    display: flex;
    margin-bottom: 1em;
    position: relative;
}

.thumb-title img {
    margin-right: 1em;
    border-radius: 6px;
    width: 60px;
    height: 60px;
    margin-top: 10px;
    min-width: 60px;
}

.thumb-title h3.ttl-capt {
    margin-bottom: 0 !important;
}

.thumb-title-img::before {
    content: "カタログ・教材";
    position: absolute;
    background-color: #f5b386;
    padding: 0 5px;
    left: 0;
    top: 10px;
    color: #ffffff;
    font-size: 12px;
    display: none;
}

.small-box .thumb-title-img::before {
    top: 1px;
}

.small-box .thumb-title {
    margin-bottom: 14px;
    display: flex;
    align-items: center;
}

.small-box .thumb-title img {
    width: 36px;
    height: 36px;
    min-width: 36px;
    margin-right: 18px;
    margin-top: 0px;
    object-fit: cover;
}

.small-box .thumb-title p {
    margin-bottom: 0 !important;
}

.new-article-boxes .box-border {
    position: relative;
    height: 100%;
    background-color: #ffffff;
    box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.08);
    padding: 18px;
    padding-right: 24px;
}

.oshibana-product .product-boxes {
    position: relative;
    width: calc(100% + 50px);
    margin-left: -25px;
}

/* styling form : selectOneMenu */
.styling-selectOneMenu.ui-selectonemenu {
    border-radius: 6px;
    border: 1px solid #000;
    width: 149px;

}

.styling-selectOneMenu.ui-selectonemenu.ui-state-focus {
    box-shadow: none;
    border-color: #000;
}

.styling-selectOneMenu.ui-selectonemenu .ui-selectonemenu-trigger {
    background-color: transparent;
    border: none;
}

.styling-selectOneMenu.ui-selectonemenu .ui-selectonemenu-label {
    color: #121212;
    font-size: 15px;
    font-weight: 400;
    line-height: 160%;
    font-family: "Noto Serif JP", serif;
    padding: 3px 7px;
}

.styling-selectOneMenu.ui-selectonemenu-panel {
    border: 1px solid #000;
    border-radius: 6px;
    transform: translateY(7px);
    width: 149px;
}

.styling-selectOneMenu.ui-selectonemenu-panel .ui-selectonemenu-items .ui-selectonemenu-item {
    color: #262626;
    font-family: "Noto Serif JP", serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 160%;
    letter-spacing: 1.5px;
    padding: 4px 0px;
    border-bottom: 0.5px solid rgba(0, 0, 0, 0.5);
}

.styling-selectOneMenu.ui-selectonemenu-panel .ui-selectonemenu-items {
    padding: 8px 9px;
}

.styling-selectOneMenu .ui-state-highlight {
    background-color: unset;
}

.styling-selectOneMenu.ui-selectonemenu-panel .ui-selectonemenu-items .ui-selectonemenu-item:last-of-type {
    border-bottom: none;
}

.styling-selectOneMenu.ui-selectonemenu .ui-selectonemenu-trigger::before {
    content: "";
    border-right: 1px solid;
    border-bottom: 1px solid;
    width: 8px;
    height: 8px;
    position: absolute;
    transform: rotate(45deg);
    top: 8px;
    right: 11px;
}

.styling-selectOneMenu.ui-selectonemenu .ui-selectonemenu-trigger .ui-icon-triangle-1-s {
    display: none;
}

/* global CSS for primaface widget */
body .ui-widget,
body .ui-widget .ui-widget {
    font-family: "Noto Serif JP", serif;
    color: #121212;
}

body .ui-widget-content.ui-datagrid-content-empty {
    text-align: center;
}

body .grey-input .ui-inputfield {
    background-color: #f7f7f7;
    border: none;
    border-radius: 0;
    border-bottom: 1px solid #cccccc;
}


/*for error message*/
body .ui-messages .ui-messages-error {
    background-color: #FEF0EC;
    border-color: #FEF0EC;
    color: #812E30;
    font-family: "Noto Serif JP", serif;
    position: relative;
}

body .ui-messages .ui-messages-close {
    position: relative;
    top: 6px;
}

body .ui-messages .ui-messages-error>.ui-messages-error-icon {
    order: 1;
    margin: 0;
}

body .ui-messages .ui-messages-error>ul {
    order: 2;
    margin: 0px;
}

body .ui-messages .ui-messages-error>.ui-messages-close {
    order: 3;
    position: relative;
}

body .ui-messages .ui-messages-error-summary {
    font-weight: 400;
    margin: 0px;
    -webkit-font-smoothing: antialiased;
}

body .ui-messages .ui-icon-close:before {
    content: url('/resources/oshibana/images/icon/iconamoon_close-thin.svg');
    position: relative;
    top: -5px;
}

body .ui-messages .ui-messages-error .ui-messages-error-icon:before {
    content: url('/resources/oshibana/images/icon/ep_warning.svg');
}


.oshibana-publication .tag-book {
    right: -7px;
}

.book-list-index .slick-track {
    margin-left: 0px;
    margin-right: 0px;
}

.tag-other {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.tag-other .txt {
    margin: 0px;
    color: #379D93;
    font-family: "Noto Sans JP", serif;
    font-size: 12px;
    font-weight: normal;
    line-height: 17.14px;
    letter-spacing: 1px;
}

.div-cursor:hover {
    cursor: pointer;
}

button.ui-button.button-green {
    background-color: rgb(217, 234, 211);
}

/*@media screen and (max-width:1440px) {
    .wrap-btn-to-store {
        display: flex;
        padding-right: 9.5em;
    }
}*/


.oshibana-product .slick-next {
    left: unset;
    right: 25px;
}

.oshibana-product .slick-prev {
    left: unset;
    right: 93px;
}

.oshibana-product .slick-prev,
.oshibana-product .slick-next {
    top: -90px;
}

.oshibana-product .wrapper-product-boxes {
    max-width: 1252px;
}

.oshibana-product .slick-list {
    max-width: 1170px;
    margin: 0px auto;
}

@media screen and (max-width: 1300px) {

    .pic2 .icon-pic2 {
        margin-left: 4em;
    }

    .pic2 .klin-logo {
        margin-left: 1em;
    }

    .pic3 .icon-pic2 {
        margin-left: 12px;
    }

    .pic3 .cafe-logo {
        margin-left: 1em;
    }
}

@media screen and (max-width: 1200px) {
    nav.topbar ul li {
        margin: 0 0.5em;
    }

    .search-box-main ::-webkit-input-placeholder {
        color: #fff;
        display: none;
    }

    .search-box-main form {
        min-width: 30px;
    }
}

/*md screen*/
@media screen and (max-width: 1024px) {
    .mini-icon {
        /*    padding-right: 15px;
            width: 100%;
            gap: 15px;
            justify-content: end;
            align-items: center;
            display: flex;*/
        /*margin-right: 30px;*/
    }

    .gallery .other {
        right: 4em;
        top: 5em;
    }

    .guidance {
        padding: 0 2em;
    }

    /*    .btmlist .item {
            padding-left: 2em;
        }*/
    img.logo-newdiv {
        margin-right: 0px;
    }

    nav.menu ul {
        padding: 0;
    }

    nav.topbar ul li {
        /*margin: 2px!important;*/
    }

    nav.topbar.new-div ul li {
        margin: 0 10px;
    }

    .dropdown-category {
        margin-left: 0 !important;
    }

    nav.topbar.new-div .topbar-category ul li {
        margin: 0 18px;
    }

    nav.menu ul li {
        margin: 0.5em .5em;
    }

    .search-box {
        float: right;
        width: 50%;
        margin: inherit;
    }

    .search-txt {
        padding-left: 7px;
        width: 78%;
    }

    /*css for about page*/
    .about-content {
        margin: 2em 0;
    }

    .about-content .title {
        padding-right: 1em;
    }

    .pic2 .title {
        padding-left: 1em;
    }

    .pic3 {
        margin-top: -11em;
    }

    .pic4 {
        margin-top: 0em;
    }

    .pic4 .title {
        padding-left: 1em;
        margin-top: 8em;
    }

    .pic3 .title {
        top: -5em;
    }

    .cover-content {
        padding-right: 40%;
    }

    .pentagon {
        top: -7.5%;
    }

    /*add new css for top page*/
    .bg-slider-top {
        height: 500px;
    }

    .top-date .octagonal {
        right: 1em;
    }

    .top-date .octagonal {
        width: 110px;
        height: 110px;
        padding: .8em 1em;
    }

    .top-date .octagonal p {
        margin-bottom: 0;
    }

    .top-date .octagonal.long-top {
        height: 110px;
    }

    .top-date .octagonal.long-top p.day {
        margin-left: 43px;
    }

    .top-date .octagonal.long-top p.month {
        margin-right: 55px;
        margin-left: 30px;
    }

    .top-date .octagonal.long-top .slice-right {
        left: 110px !important;
        top: 64px !important;
    }

    .top-date p.month {
        margin-left: 10px;
        margin-top: -1px;
    }

    .top-date p.day {
        margin-left: 41px;
        margin-top: 19px;
    }

    .top-date .octagonal .slice {
        top: 61px;
        left: 32px;
    }

    .endDate {
        margin-left: 7.8em !important;
    }

    /*css for tag page*/
    .tag-page .news-item img {
        /*height: 106px;*/
    }

    .cmd-button.contact-green {
        margin: 1em 34%;
        justify-content: center;
        display: table;
    }

    /*OSHIBANA*/
    .wrap-sub-footer .item:nth-of-type(3) {
        width: 22.29%;
    }

    .wrap-sub-footer .item:last-of-type {
        /*width: 36%;*/
    }
}

/*md screen*/
@media screen and (max-width: 1024px) {
    nav.topbar.new-div ul.topbar-ul-logo li {
        margin: 0em 12px 0 0px;
    }

    .breadcrumb-pd {
        padding-left: .7em;
    }

    .btn-sns img {
        width: 18px;
    }

    .btn-sns {
        width: 30px;
        height: 30px;
    }

    /*OSHIBANA*/
    .new-article-boxes {
        grid-template-columns: 280px 2fr;
        gap: 18px;
    }

    .new-article-boxes .small-box .date {
        padding-top: 14px;
    }

    .menu-top nav ul {
        gap: 20px;
        padding-left: 15px;
    }

    .menu-top {
        margin-right: 25px;
    }

    .search-box-main form {
        min-width: unset;
    }
}

/*for topbar only*/
@media screen and (max-width: 950px) {
    nav.topbar.new-div ul li {
        /*margin: 0 2px;*/
    }

    .about-page {
        margin-top: 16px;
    }

    .cmd-button.contact-green {
        margin: 1em 47.5%;
    }

    .new-topbar-row1 img.logo-japan {
        width: 168px;
        min-width: unset;
    }

    .thead.topbar-pc {
        display: none;
    }

    .topbar-mobile.thead .new-topbar-row1 {
        display: flex;
        justify-content: space-between;
        margin: 0px auto;
        width: 100%;
        float: none;
    }

    .topbar-mobile.thead {
        background-color: #FFF;
        align-items: center;
        padding: 0 15px;
        padding-right: 10px;
    }
}

@media screen and (max-width: 950px) {
    .text-clamp-footer {
        display: -webkit-box;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .login::before {
        height: 20px;
        width: 20px;
    }

    .margin-gallery {
        margin: 0 auto 0;
    }

    /*topbar mobile*/
    .topbar-mobile {
        display: block;
    }

    .topbar-menu,
    .topbar-list,
    .topbar-menu-list {
        display: none;
    }

    .topbar-mobile i {
        float: right;
        color: #737373;
        font-size: 45px;
        margin: 10px auto;
    }

    #topbar-list-div .topbar-mobile i,
    #topbar-list-books .topbar-mobile i {
        /*margin: auto;*/
    }

    .topbar-mobile {
        padding: 0;
    }

    .wrap-topbar {
        width: 100%;
        float: none;
        margin: auto;
    }

    #topbar-list-div .wrap-topbar,
    #topbar-list-books .wrap-topbar {
        margin: 0 auto;
        display: table;
    }

    img.logo {
        width: 32%;
    }

    #topbar-list-div .topbar-mobile img.logo,
    #topbar-list-books .topbar-mobile img.logo {
        width: 221px;
        /*margin-left: 1em;*/
        margin-left: 1.5em;
    }

    .search-box-sm {
        display: inline-flex;
        background: #f0edec;
        height: 35px;
        border-radius: 1.2em;
        padding: 5px 10px;
        border: 1px solid #8a8a8a;
        float: none;
        position: relative;
        width: 100%;
        margin: 2em 0;
    }

    .search-txt-sm {
        width: 100%;
        background: #f0edec;
        border: #f0edec;
    }

    .search-btn-sm {
        margin-left: 10px;
    }

    input.search-txt-sm:focus {
        outline: 0;
    }

    .topbar-sm ul {
        padding: 0;
    }

    .topbar-sm li {
        margin: 1.05em 0;
        font-weight: 700;
    }

    .topbar-sm li a {
        margin: 0 2em;
        color: #808080;
        font-weight: normal;
    }

    .topbar-sm li:first-child {
        margin: 1.2em 0 1.05em;
    }

    .topbar-sm li.border-btm {
        border-bottom: 1px solid #e0e0e0;
    }

    .menu-sm {
        margin: 1.2em 0 2em;
        ;
    }

    .menu-sm ul {
        padding: 0;
        border-top: 1px solid #e0dad7;
    }

    .menu-sm li {
        margin: .5em 0;
        font-weight: 600;
    }

    .topbar-mobile .barsCorner .material-icons {
        line-height: .5em;
        font-size: 60px;
        margin-top: 7px;
        width: 46px;
        overflow: hidden;
        /*margin-right: 12px;*/
        margin-right: 21px;
    }

    .topbar-mobile .timesCorner .material-icons {
        font-size: 46px;
        width: 41px;
        margin-top: 0;
        /*margin-right: 9px;*/
        margin-right: 22px;
        color: #ffffff;
    }

    .topbar-mobile .timesCorner .material-icons::before {
        position: absolute;
        content: "";
        height: 84px;
        width: 84px;
        background-color: #4f4e4e;
        z-index: -1;
        top: 0;
        right: 0;
    }

    .topbar-mobile .topbar-sm-topside {
        margin: 1.25em 0 0;
        border-bottom: 1px solid #e0e0e0;
        padding-bottom: 1.25em;
    }

    #topbar-list-books .topbar-mobile .topbar-sm-topside {
        /*border-bottom: 1px solid transparent;*/
    }

    .search-box-main .ui-button.ui-button-icon-only .ui-button-text {
        display: none;
    }
}

/*ipad screen*/

@media screen and (max-width: 768px) {
    .oshibana-article .new-article-boxes {
        display: flex;
        padding: 20px 5%;

        overflow: auto;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }

    .oshibana-article .new-article-boxes::-webkit-scrollbar {
        width: 0;
        height: 0;
    }

    .oshibana-publication .tag-book {
        top: -9px;
    }

    .text-clamp-footer {
        /*        display: -webkit-box;
                -webkit-line-clamp: 1;
                -webkit-box-orient: vertical;
                overflow: hidden;*/
    }

    .login::before {
        height: 20px;
        width: 20px;
    }

    .margin-gallery {
        margin: 0 auto 0;
    }

    /*topbar mobile*/
    .topbar-mobile {
        display: block;
        padding: 0;
    }

    .topbar-menu,
    .topbar-list,
    .topbar-menu-list {
        display: none;
    }

    .topbar-mobile i {
        float: right;
        color: #737373;
        font-size: 45px;
        margin: 10px auto;
    }

    #topbar-list-div .topbar-mobile i,
    #topbar-list-books .topbar-mobile i {
        /*margin: auto;*/
    }

    .wrap-topbar {
        width: 100%;
        float: none;
        margin: auto;
    }

    #topbar-list-div .wrap-topbar,
    #topbar-list-books .wrap-topbar {
        margin: 0 auto;
        display: table;
    }

    img.logo {
        width: 32%;
    }

    #topbar-list-div .topbar-mobile img.logo,
    #topbar-list-books .topbar-mobile img.logo {
        width: 221px;
        /*margin-left: 1em;*/
        margin-left: 1.5em;
    }

    .search-box-sm {
        display: inline-flex;
        background: #f0edec;
        height: 35px;
        border-radius: 1.2em;
        padding: 5px 10px;
        border: 1px solid #8a8a8a;
        float: none;
        position: relative;
        width: 100%;
        margin: 2em 0;
    }

    .search-txt-sm {
        width: 100%;
        background: #f0edec;
        border: #f0edec;
    }

    .search-btn-sm {
        margin-left: 10px;
    }

    input.search-txt-sm:focus {
        outline: 0;
    }

    .topbar-sm ul {
        padding: 0;
    }

    .topbar-sm li {
        margin: 1.05em 0;
        font-weight: 700;
    }

    .topbar-sm li a {
        margin: 0 2em;
        color: #808080;
        font-weight: normal;
    }

    .topbar-sm li:first-child {
        margin: 1.2em 0 1.05em;
    }

    .topbar-sm li.border-btm {
        border-bottom: 1px solid #e0e0e0;
    }

    .menu-sm {
        margin: 1.2em 0 2em;
        ;
    }

    .menu-sm ul {
        padding: 0;
        border-top: 1px solid #e0dad7;
    }

    .menu-sm li {
        margin: .5em 0;
        font-weight: 600;
    }

    .topbar-mobile .barsCorner .material-icons {
        line-height: .5em;
        font-size: 60px;
        margin-top: 7px;
        width: 46px;
        overflow: hidden;
        /*margin-right: 12px;*/
        margin-right: 21px;
    }

    .topbar-mobile .timesCorner .material-icons {
        font-size: 46px;
        width: 41px;
        margin-top: 0;
        /*margin-right: 9px;*/
        margin-right: 22px;
        color: #ffffff;
    }

    .topbar-mobile .timesCorner .material-icons::before {
        position: absolute;
        content: "";
        height: 84px;
        width: 84px;
        background-color: #4f4e4e;
        z-index: -1;
        top: 0;
        right: 0;
    }

    .topbar-mobile .topbar-sm-topside {
        margin: 1.25em 0 0;
        border-bottom: 1px solid #e0e0e0;
        padding-bottom: 1.25em;
    }

    #topbar-list-books .topbar-mobile .topbar-sm-topside {
        /*border-bottom: 1px solid transparent;*/
    }

    .search-box-main .ui-button.ui-button-icon-only .ui-button-text {
        display: none;
    }

    /*OSHIBANA*/
    .title p.title-index-junpro {
        font-size: 35px;
    }

    .title h2.title-index-junpro {
        font-size: 35px;
    }

    .title span.title-index-junpro {
        font-size: 35px;
    }

    .title.switch-pos .title-index-smallJapan {
        font-size: 35px;
    }

    .title.title-topics .title-index-smallJapan {
        position: relative;
        left: -11px;
    }

    .section-title-with-hz-line::before {
        top: 24px;
    }

    .page-title-with-hz-line::before {
        top: 24px;
    }

    .new-article-boxes .box-border {
        flex-direction: column;
    }

    .new-article-boxes .small-box:first-of-type .object-fit-50 {
        width: 100%;
        padding-bottom: 55.48%;
    }

    .new-article-boxes .object-fit-50 {
        width: 100%;
        padding-bottom: 55.48%;
    }

    .new-article-boxes .small-box {
        width: 41vw;
        min-width: 41vw;
    }

    .new-article-boxes .small-box:first-of-type .box-border {
        padding: 16px 16px 21px;
    }

    .new-article-boxes .small-box .box-border {
        padding: 16px 16px 21px;
    }

    .new-article-boxes .small-box .date {
        padding-top: 24px;
    }

    .new-article-boxes .small-box .caption-news {
        padding: 18px 0px 0px;
        flex: 1;
    }

    .product-boxes .slick-slide {
        padding: 18px 18px 20px 0px;
    }

    .official-gallery-box {
        padding: 0px 9px;
    }

    .bg-grey .oshibana-news .title {
        margin-right: 20px;
    }

    .bg-grey .oshibana-news .small-box {
        gap: 18px;
    }

    .bg-grey .oshibana-news .small-box>div {
        width: calc(33.333% - 12px);
    }

    .oshibana-product .product-boxes {
        width: calc(100% + 18px);
        margin-left: -9px;
    }

    .oshibana-product .product-boxes .slick-list {
        overflow: visible;
    }

    .new-article-boxes .tag-book {
        top: -15px;
    }

    body .ui-messages .ui-messages-error {
        margin-bottom: 0;
    }

    /*}*/

    /*for topbar only*/
    /*@media screen and (max-width: 900px) {
        .application-gallery .flex-date .numb-date, .application-gallery .flex-date .text-date {
            padding: 11px 6px;
        }
        nav.topbar.new-div ul li {
            margin: 0 2px;
        }
        nav.topbar.new-div ul li:nth-child(2) {
            margin-left: 5px;
        }
        .cmd-button.contact-green {
            margin: 1em 30%;
            justify-content: center;
            display: table;
        }
        nav.topbar.new-div .topbar-category ul li {
            margin: 0 10px;
        }
        nav.topbar.new-div ul.topbar-ul-logo li a {
            padding-top: 16px;
            display: none;
        }
        .thead .info_bar {
            display: none
        }
        .thead .row {
            display: flex;
            align-items: center;
            padding: 1em 15px;
        }
    }*/

    /*ipad screen*/
    /*@media screen and (max-width: 820px){
        .margin-gallery {
            margin: -7px auto 0;
        }
    }*/

    /*@media screen and (max-width: 768px){*/
    .application-gallery .flex-date .numb-date,
    .application-gallery .flex-date .text-date {
        padding: 11px 6px;
        font-size: 10px;
    }

    .login::before {
        height: 20px;
        width: 20px;
    }

    .button-login {
        align-self: center;
    }

    .gallery-box .octagonal.date p {
        /*font-size: 18px;*/
    }

    .date p {
        font-size: 14px;
    }

    .date .sliceIndex {
        width: 35px;
        border-bottom: 1px solid white;
        transform: rotate(-45deg);
        top: 30px;
        left: 20px;
        position: absolute;
    }

    .top-date .octagonal {
        height: 100px;
    }

    /*    .top-date .octagonal.long-top .slice{
            top: 51px;
        }*/
    .ui-25 {
        padding: .5em 2em;
    }

    .gallery .other {
        right: 3em;
    }

    .margin-gallery {
        margin: -7px auto 1em;
    }

    .guidance {
        padding: 0;
    }

    .info-section .access {
        width: 50%;
        padding-right: 6.8%;
    }

    .info-section .gallery-hour {
        width: 50%;
        padding: 0 0 0 6.8%;
    }

    .info-section .news {
        width: 100%;
        border-left: none;
        padding-left: 0;
        margin-top: 3em;
    }

    /*css for top bar search*/
    .search-box-main {
        display: flex;
        width: auto;
        margin-right: 16px;
        margin-bottom: 0;
    }

    /*topbar mobile*/
    .topbar-menu,
    .topbar-list,
    .topbar-menu-list {
        display: none;
    }

    .topbar-mobile i {
        float: right;
        color: #737373;
        font-size: 45px;
        margin: 10px auto;
    }

    #topbar-list-div .topbar-mobile i,
    #topbar-list-books .topbar-mobile i {
        margin: auto;
    }

    .wrap-topbar {
        width: 100%;
        float: none;
        margin: auto;
    }

    #topbar-list-div .wrap-topbar,
    #topbar-list-books .wrap-topbar {
        margin: 0 auto;
        display: table;
    }

    img.logo {
        width: 32%;
    }

    #topbar-list-div .topbar-mobile img.logo,
    #topbar-list-books .topbar-mobile img.logo {
        width: 221px;
        margin-left: 1em;
        margin-left: 1.5em;
    }

    .search-box-sm {
        display: inline-flex;
        background: #f0edec;
        height: 35px;
        border-radius: 1.2em;
        padding: 5px 10px;
        border: 1px solid #8a8a8a;
        float: none;
        position: relative;
        width: 100%;
        margin: 2em 0;
    }

    .search-txt-sm {
        width: 100%;
        background: #f0edec;
        border: #f0edec;
    }

    .search-btn-sm {
        margin-left: 10px;
    }

    input.search-txt-sm:focus {
        outline: 0;
    }

    .topbar-sm ul {
        padding: 0;
    }

    .topbar-sm li {
        margin: 1.05em 0;
        font-weight: 700;
    }

    .topbar-sm li a {
        margin: 0 2em;
        color: #808080;
        font-weight: normal;
    }

    .topbar-sm li:first-child {
        margin: 1.2em 0 1.05em;
    }

    .topbar-sm li.border-btm {
        border-bottom: 1px solid #e0e0e0;
    }

    .menu-sm {
        margin: 1.2em 0 2em;
        ;
    }

    .menu-sm ul {
        padding: 0;
        border-top: 1px solid #e0dad7;
    }

    .menu-sm li {
        margin: .5em 0;
        font-weight: 600;
    }

    .topbar-mobile .barsCorner .material-icons {
        line-height: .5em;
        font-size: 60px;
        margin-top: 7px;
        width: 46px;
        overflow: hidden;
        margin-right: 12px;
        margin-right: 21px;
    }

    .topbar-mobile .timesCorner .material-icons {
        font-size: 46px;
        width: 41px;
        margin-top: 0;
        margin-right: 9px;
        margin-right: 22px;
        color: #ffffff;
    }

    .topbar-mobile .timesCorner .material-icons::before {
        position: absolute;
        content: "";
        height: 84px;
        width: 84px;
        background-color: #4f4e4e;
        z-index: -1;
        top: 0;
        right: 0;
    }

    .topbar-mobile .topbar-sm-topside {
        margin: 1.25em 0 0;
        border-bottom: 1px solid #e0e0e0;
        padding-bottom: 1.25em;
    }

    #topbar-list-books .topbar-mobile .topbar-sm-topside {
        border-bottom: 1px solid transparent;
    }

    .search-box-main .ui-button.ui-button-icon-only .ui-button-text {
        display: none;
    }

    /*css of contact page*/
    .w100md {
        width: 100%;
    }

    .contact-page .form {
        margin-top: 0em;
    }

    /*css for about page*/
    .pic1,
    .pic2,
    .pic3,
    .pic4 {
        margin: 4em 0;
    }

    .about-content {
        margin: 4em 0;
    }

    .pic3 {
        margin-top: -3em;
    }

    .pic4 {
        margin-top: 6em;
    }

    .pic3 .overlap-img {
        top: 7em;
    }

    .pic3 .icon-pic2 {
        margin-left: 0;
    }

    .pic3 .cafe-logo {
        margin-left: 0;
    }

    .pentagon {
        top: -6.5%;
    }

    /*add new css for top page*/
    .bg-slider-top {
        height: 400px;
    }

    /*css footer after add book*/
    .btmlist .ui-20 {
        width: 33.333%;
    }

    .btmlist .ui-40 {
        width: 67%;
    }

    .btmlist .list.right-side {
        padding-left: 2em;
    }

    .btmlist .item {
        padding: .5em;
    }

    /*tag page css*/
    .tag-page .news-item img {
        height: 95px;
    }

    /*category div part*/
    .category-div-part {
        display: block;
    }

    .gal-index .item .carousel-caption {
        padding-top: 0;
    }

    .gal-index .item .carousel-caption-new {
        padding-top: 0;
    }

    .gal-index .item .carousel-caption-detail {
        padding-top: 0;
    }

    .top-img-cover .gal-index.carousel-inner {
        margin-top: 16px;
    }


    /*    .search-box-main form {
            max-width: unset;
            height: 31px;
            min-width: 0;
        }
        .about-page {
            margin-top: 16px;
        }
        .cmd-button.contact-green {
            margin: 1em 47.5%;
        }
        .title p.title-junpro {
            margin-top: 2em;
        }
        .new-topbar-row1 img.logo-japan {
            width: 186px;
            min-width: unset;
            margin-bottom: 4px;
        }
        .thead.topbar-pc{
            display: none;
        }
        .topbar-mobile.thead .new-topbar-row1 {
            display: flex;
            justify-content: space-between;
            margin: 10px auto 10px;
            width: 91.5%;
            float: none;
        }
        .topbar-mobile.thead{
            background-color: #F7F7F7;
        }*/
}

/*mobile screen*/
@media only screen and (max-width : 40.063em) {
    .scroll-margin-top {
        scroll-margin-top: 0px;
    }

    .text-clamp-footer {
        /*        display: -webkit-box;
                -webkit-line-clamp: 1;
                -webkit-box-orient: vertical;
                overflow: hidden;*/
    }

    .gallery-sec .scroll-x {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: scroll;
        -ms-overflow-style: none;
        /* IE and Edge */
        scrollbar-width: none;
        /* Firefox */
    }

    .gallery-sec .scroll-x .gallery-box {
        border: none;
    }

    .gallery-sec .scroll-x::-webkit-scrollbar {
        display: none;
    }

    .gallery-sec .sm-btn {
        margin-top: 25px !important;
    }

    .application-gallery-sm .flex-date .text-date {
        padding: 11px 11px;
        font-size: 13px;
    }

    .application-gallery-sm .flex-date .numb-date {
        padding: 11px 5px;
        font-size: 14px;
    }

    .official-gallery .display-flex {
        display: grid;
    }

    .thead.topbar-pc {
        display: none;
    }

    .topbar-mobile.thead .new-topbar-row1 {
        display: flex;
        justify-content: space-between;
        margin: 0 auto;
        width: 100%;
        float: none;
        height: 59px;
        align-items: center;
        padding-top: 1px;
    }

    p {
        font-size: 14px;
    }

    .no-padding-pc {
        padding: 8px;
    }

    .show-pc {
        display: none;
    }

    .date .sliceIndex {
        width: 35px;
        border-bottom: 1px solid white;
        transform: rotate(-45deg);
        top: 32px;
        left: 20px;
        position: absolute;
    }

    .show-sm {
        display: block;
    }

    .icon-pic2 {
        width: 30%;
        margin-top: 1em;
    }

    .pic2 .icon-pic2 {
        float: right;
        margin-bottom: 0px;
    }

    .about-cover {
        background-image: url('../../resources/public/images/about_cover-sm.jpg');
    }

    .cover-wh-sm {
        background: rgb(255, 255, 255);
        background: rgba(255, 255, 255, 0.75);
        padding: 2em;
        margin: 2em 16px;
    }

    .logo-cover-sm {
        width: 100%;
        margin: auto;
    }

    .top-icon {
        margin: 1.5em 0;
    }

    .top-icon img {
        margin: 0 1em 0 0;
        width: 13%;
    }

    .width-guide {
        width: 100%;
    }

    .pad-1-sm5 {
        padding: .5em;
    }

    .contact-page .head {
        padding-left: 0;
        padding-right: 0;
    }

    .date p {
        font-size: 16px;
    }

    .top-date p.day {
        margin-top: -7px;
    }

    .top-date p.day {
        font-size: 24px;
        margin-top: 23px;
        /*margin-left: 45px;*/
        position: absolute;
        margin-left: 28px;
    }

    .top-date .octagonal.long-top p.day {
        margin-left: 24px;
    }

    .endDate {
        margin-left: 4.8em !important;
    }

    .top-date .octagonal.long-top {
        width: 138px;
        height: 90px;
    }

    .top-date .octagonal.long-top p.day.endDate {
        margin-left: 77px !important;
    }

    .pad-sm-def {
        padding: .5em 16px;
    }

    .pad-sm-def-0 {
        padding: 0 16px;
    }

    .pad-sm-nolr {
        padding: .5em 0;
    }

    .padttl-sm-nolr {
        padding: .5em 0;
    }

    .padlr-9sm {
        padding-left: 9px !important;
        padding-right: 9px !important;
    }

    .guide-section {
        padding-left: 16px;
        padding-right: 16px;
        margin: 1em auto 1em;
    }

    h1 {
        font-size: 24px;
    }

    h2 {
        font-size: 22px;
    }

    h3 {
        font-size: 18px;
    }

    h4 {
        font-size: 16px
    }

    .breadcrumb-pd {
        padding: 12px 0;
    }

    img.logo {
        width: 40%;
    }

    #topbar-list-div .topbar-mobile img.logo,
    #topbar-list-books .topbar-mobile img.logo {
        width: 155px;
        margin-left: 1em;
    }

    #topbar-list-div .wrap-topbar,
    #topbar-list-books .wrap-topbar {
        margin: auto;
    }

    .topbar-mobile-books .search-box-main form {
        margin-top: 1.2em;
        margin-bottom: 1.55em;
    }

    .sm-no-pad-lr {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .no-pdLeft-sm {
        padding-left: 0;
    }

    .socmed-icon .tw {
        margin: auto 2em;
    }

    .info-section .access {
        width: 100%;
    }

    .info-section .gallery-hour {
        width: 100%;
        padding: 0;
        margin-top: 1em;
    }

    .info-section .news {
        width: 100%;
        margin-top: 0em;
    }

    .item .carousel-caption h3 {
        font-size: 18px;
    }

    .item .carousel-caption {
        padding-bottom: 3em;
    }

    .item .carousel-caption-new h3 {
        font-size: 18px;
    }

    .item .carousel-caption-new {
        padding-bottom: 3em;
    }

    .item .carousel-caption-detail h3 {
        font-size: 18px;
    }

    .item .carousel-caption-detail {
        padding-bottom: 3em;
    }

    .top-date p.month {
        font-size: 16px;
        margin-left: 12px;
    }

    .top-date p.day {
        font-size: 16px;
    }

    .top-date .octagonal {
        width: 90px;
        height: 90px;
        bottom: -2.5em;
    }

    .top-date .octagonal.long-top p.month {
        margin-left: 14px;
        position: absolute;
    }

    .top-date .octagonal.long-top .right {
        margin-left: 69px !important;
    }

    .top-date .octagonal.long-top .slice-left {
        left: 26px !important;
        top: 55px !important;
    }

    .top-date .octagonal.long-top .slice-right {
        left: 82px !important;
        top: 55px !important;
    }

    .top-date .octagonal p {
        margin-bottom: 0;
    }

    .top-date .octagonal .slice {
        width: 30px;
        left: 28px;
        top: 54px;
    }

    .top-date .octagonal {
        right: 1em;
    }

    /*    .top-date .octagonal.long-top p.month{
            margin-right: 80px;
        }*/
    .top-date .octagonal.long-top p.left {
        float: left;
    }

    .top-date .octagonal.long-top p.right {
        float: right;
    }

    .top-date .octagonal img {
        padding-top: 5px;
    }

    .list-below {
        margin-top: 1.5em;
    }

    .list-below p {
        line-height: 2em;
        text-align: left;
    }

    .gallery .other {
        top: 3em;
        right: 4.5%;
    }

    .gallery .other2 {
        position: absolute;
        left: 1em;
        top: 0.5em;
    }

    .gal-boxes-wrap {
        overflow-x: scroll;
    }

    .gal-boxes {
        margin-top: 3em;
    }

    .gal-boxes-wrap .gal-boxes {
        display: inline-flex;
        margin: 25px 0 0px;
        padding-left: 0px;
        width: 640px;
    }

    .gal-boxes-wrap .gal-boxes_sm {
        display: inline-flex;
        margin: 0 0 28px;
        padding-left: 0px;
    }

    .gal-boxes-wrap .gal-boxes_sm img.top-img {
        border-top-left-radius: .7rem;
        border-top-right-radius: .7rem;
    }

    .product-boxes-wrap {
        overflow-y: hidden;
    }

    .product-boxes {
        margin-top: 3em;
    }

    .product-boxes-wrap .product-boxes {
        display: inline-flex;
        margin: 25px 0 0px;
        padding-left: 0px;
        width: 640px;
    }

    .product-boxes-wrap .product-boxes_sm {
        display: inline-flex;
        margin: 0 0 7px;
        padding-left: 0px;
    }

    .product-boxes-wrap .product-boxes_sm img.top-img {
        border-radius: 10px;
    }

    .info-section .gallery-hour .sub-floor {
        float: right;
        font-size: 12px;
        color: #4f4e4e;
        font-weight: 600;
    }

    .info-section .access {
        border-right: none;
        border-bottom: 1px solid #c0bcba;
        padding-bottom: 0.5em;
    }

    .info-section .news {
        padding-left: 0;
        margin-top: 1em;
        display: inline-flex;
    }

    .info-section .other {
        float: none;
        ;
    }

    .info-section .access .other {
        margin-top: 0;
        float: none;
    }

    .info-section .access h5:last-of-type {
        margin-bottom: 1em;
    }

    .info-section .news h5:last-of-type {
        margin-bottom: 1em;
    }

    .info-section .access {
        padding-right: inherit;
        display: inline-flex;
    }

    .ui-20 {
        width: inherit;
        padding: .5em 0;
    }

    .ui-20.ui-sm-6 {
        width: 50%;
    }

    .ui-25 {
        width: inherit;
        padding: .5em 0em;
    }

    .ui-25.ui-sm-6 {
        width: 50%;
    }

    .ui-40 {
        padding: .5em 0;
    }

    .ui-40.ui-sm-12 {
        width: 100%;
    }

    /*    .btmlist .item {
            padding: 1em;
        }*/
    /*    .btmlist .item:nth-child(even) {
            padding-left: 2em;
        }*/
    .btmlist .head-ttl {
        margin-bottom: 0px;
    }

    .btmlist .item .item-sm-left {
        padding-left: 0;
        padding-right: 1em;
        float: left;
    }

    .btmlist .item .item-sm-right {
        padding-left: 1em;
        float: right;
        padding-right: 0;
    }

    .btmlist .item .ui-sm-6:nth-child(even) {
        margin-top: 0em;
    }

    .btmlist li:last-of-type {
        margin-bottom: 0;
    }

    .btmlist .visit-info {
        width: 100%;
    }

    .btmlist .head-ttl h4 {
        margin-top: 0;
        font-size: 16px;
        font-weight: 500;
        line-height: 15px;
        margin-bottom: 14px;
    }

    .guidance {
        margin-bottom: 1.5em;
        padding: 0 2em;
        max-width: 305px;
        margin-left: auto;
        margin-right: auto;
        display: flex;
    }

    .margin-gallery {
        margin: 1.2em auto 1em;
    }

    .guidance h5 {
        padding-bottom: .5em;
        margin-bottom: .5em;
        text-align: left;
    }

    .guidance-pad {
        padding: 2.7em 0 0;
    }

    .guidance .circle-btn {
        margin: 0 0 .5em auto;
    }

    .guidance .other {
        display: block;
        align-items: center;
        justify-content: center;
    }

    .guidance .other h5 {
        padding: 0;
        border: none;
        font-weight: normal;
        margin: 0 0 0 1.2em;
        word-break: keep-all;
    }

    .footer p {
        font-size: 11px;
    }

    .copy-sm {
        display: flex;
        display: -webkit-flex;
        flex-direction: column-reverse;
        margin-bottom: 0.5em;
    }

    .frame {
        width: 45px;
        height: 45px;
    }

    .s-icon p {
        font-size: 12px;
        margin-top: 1em;
    }

    .btn-sns img {
        width: 15px;
    }

    .s-icon .btn-sns {
        width: 29px;
        height: 29px;
    }

    .topbar-mobile i {
        font-size: 30px;
        margin: 4px auto;
    }

    #topbar-list-div .topbar-mobile i,
    #topbar-list-books .topbar-mobile i {
        /*margin: 2px auto;*/
    }

    .carousel-inner>.item>img {
        height: 17.5em !important;
    }

    .gallery-box {
        /*padding: .5em 16px;*/
    }

    .gallery-box:last-child {
        /*padding: .5em 16px;*/
    }

    .product-box {
        /*padding: .5em 16px;*/
    }

    .product-box:last-child {
        /*padding: .5em 16px;*/
        padding: 20px 15px 25px;
    }

    .product-box .desc {
        margin: 1em auto;
    }

    .guidance p {
        padding: 0;
        text-align: left;
    }

    .info-section {
        padding-top: 2em;
        padding-bottom: 2em;
        padding-left: 16px;
        padding-right: 16px;
    }

    .info-section h5 {
        margin: 1.5em auto;
        width: 150%;
    }

    .head-ttl h4,
    .socmed-section .head-ttl h5 {
        margin-top: 1.8em;
    }

    .socmed-section {
        margin-bottom: 1em;
        padding-left: 16px;
        padding-right: 16px;
        margin-top: 1em;
    }

    .item-container {
        padding-right: 16px;
        padding-left: 16px;
        padding-top: 0;
    }

    .item-container .hz-line {
        border-bottom: 1px solid #e0dad7;
        width: 100%;
        margin: auto;
        margin-bottom: 1em;
    }

    .carousel-inner>.item>img {
        width: auto;
        max-width: none !important;
    }

    .pad-sm-def-div {
        padding: 0 16px;
    }

    .gal-index .gal-boxes.sm-gal-index-pagi {
        width: 100%;
    }

    .gal-boxes-wrap .gal-boxes.sm-gal-index-pagi .gallery-box {
        width: 100%;
        max-width: unset;
        min-width: unset;
    }

    .sm-gal-index-pagi .desc-gall {
        margin: 2em auto 1em;
    }

    .list-pagi.sm-gal-index-pagi .ui-datagrid .ui-paginator-bottom {
        margin-bottom: 2.3em;
    }

    .line-vertical {
        height: 24px;
    }

    /*css of contact page*/
    .contact-page .form {
        padding: 0;
    }

    .form p {
        text-align: left;
    }

    .form h5 {
        text-align: left;
    }

    .w70 {
        width: 100%
    }

    .w50 {
        width: 100%
    }

    .w17 {
        width: 27%;
    }

    .w13 {
        width: 23%;
    }

    .w12 {
        width: 22%;
    }

    .w28 {
        width: 38%;
    }

    /*    .form .ui-g-12 {
            margin-bottom: .5em;
        }*/
    .contact-page .form {
        margin-top: 0em;
    }

    .contact-page .body {
        padding-left: 0;
        padding-right: 0;
    }

    .contact-form-pd {
        padding: .1em 0;
    }

    .contact-page {
        margin-top: 21px;
    }

    .contact-page .contact--introduction {
        margin-top: 28px;
    }

    /*css for about page*/
    .cover-content {
        margin: auto;
        padding: 1.5em 0;
    }

    .pic1,
    .pic2-new,
    .pic2,
    .pic3,
    .pic4 {
        margin: 0;
        border-bottom: 1px solid #d2d2d2;
        padding-bottom: 20px;
        padding-left: 0;
        padding-right: 0;
    }

    .pic4 {
        margin: 5px auto 0;
        border-bottom: none;
    }

    .about-content {
        margin: 0;
    }

    .pic1 .title {
        padding: 0;
    }

    .pic2 .title {
        padding: 0;
    }

    .pic2-new .title {
        padding: 0;
    }

    .pic3 .overlap-img {
        position: relative;
        left: inherit;
        top: inherit;
    }

    .pic3 .title {
        top: inherit;
        padding: 0;
    }

    .thumb-pic3 {
        margin-top: 10px;
        padding: 0;
    }

    .pic4 .title {
        margin-top: 0;
        padding: 0;
    }

    .thumb-pic1 {
        margin: 0;
    }

    .big-thumb {
        width: 75%;
    }

    .small-thumb {
        width: 60%;
        right: 40%;
    }

    .background .dashed-green {
        top: 15%;
        left: -40%;
    }

    .about-page .title p {
        margin-bottom: 5px;
        font-size: 14px;
    }

    /*add new css for about page 11/13/20*/
    .about-content .time p,
    .about-content .phone p,
    .about-content .mail p {
        margin-bottom: 0;
    }

    .icon-on-about img {
        margin-top: 2px;
    }

    /*end add new css for about page 11/13/20*/
    .thumb-pic1 .ui-g-3:nth-child(odd) img {
        padding-left: 0;

    }

    .thumb-pic1 .ui-g-3:nth-child(even) img {
        padding-right: 0;

    }

    .icon-craftingart {
        width: 65px;
    }

    .background .dashed-purple {
        bottom: 17%;
    }

    .about-content h2 {
        font-size: 24px;
        margin: 25px 0 27px;
    }

    .pic3 .icon-pic2 {
        float: right;
    }

    .pic3 .cafe-logo {
        float: right;
        margin: 15px 0;
    }

    .overlap-img img.lap-pic,
    .pic3 .overlap-img img.lap-pic {
        width: 100%;
        float: right;
        margin-bottom: 20px;
    }

    .pentagon,
    .pic3 .pentagon {
        left: -0.5%;
        top: -13%;
        width: 20%;
        height: 45%;
    }

    .pic3 .pentagon {
        left: -2.5%;
        top: -13%;
    }

    .pic2-new .pentagon {
        top: -14%;
        left: -1%;
    }

    .pic2 .pentagon,
    .pic4 .pentagon {
        top: -5%;
        left: 79%;
    }

    .about-content .time.feature-third {
        margin-bottom: 0.3em;
        margin-top: 20em;
    }

    .about-page .list-menu p {
        margin-bottom: 0
    }

    .about-content .mail {
        margin-bottom: 20px;
    }

    /*add new css for top page*/
    .bg-slider-top {
        height: 265px;
    }

    .top-date .octagonal.long-top .slice {
        /*        left: 35px;
                top: 50px;*/

        left: 30px;
        top: 60px;
    }

    .top-date .octagonal.long-top {
        width: 145px;
    }

    /*css footer after add book*/
    .btmlist .list.right-side {
        padding-left: 0em;
    }

    /*    .top-date .octagonal.long-top {
            width: auto;
        }*/
    .gal-index .title h2 {
        font-size: 24px;
        margin-top: 0.5em;
    }

    ul.list-menu li p {
        font-size: 12px;
        line-height: 1.6em;
    }

    ul.list-menu li.separator {
        margin: 0;
    }

    .info-section .gallery-hour .other h6 {
        margin: 0;
    }

    .other h6 {
        margin-top: 5px;
        float: right;
    }

    .topbar-mobile .barsCorner .material-icons {
        font-size: 38px;
        width: 28px;
        margin-right: 12px;
    }

    .topbar-mobile .timesCorner .material-icons {
        font-size: 26px;
        width: 28px;
        margin-top: 3px;
        margin-right: 7px;
    }

    .topbar-mobile .topbar-sm-topside {
        margin-top: .5em;
        padding-bottom: .5em;
    }

    .topbar-mobile .timesCorner .material-icons::before {
        height: 48px;
        width: 48px;
    }

    .topbar-sm li a {
        margin: 0 1.5em;
    }

    /*css footer after add book*/
    .btmlist .list.right-side {
        padding-left: 0em;
        margin-top: 8px;
    }

    /*css for tag page*/
    .tag-page .title {
        margin-bottom: 1em;
    }

    /*tag page css*/
    .tag-page .news-item img {
        height: 230px;
    }

    /*archive gallery*/
    .gal-archive .gal-boxes {
        margin-top: 1.5em;
        margin-bottom: 2.5em;
    }

    .mar-Top {
        margin-top: 1.5em;
    }


    /*=================new footer design for SM======================*/
    .footer-smview .wrap-foot-btn .foot-sm-btn:last-child {
        border-right: none;
    }

    .footer-smview .foot-sm-btn {
        background-color: #f8dbc1;
        border-right: 1px solid #fff;
        cursor: pointer;
    }

    .footer-smview .foot-sm-btn p {
        text-align: center;
        margin: 11.5px 0;
        font-weight: bold;
    }

    .btmlist {
        /*        padding: 35px 32px;
                background-color: #fbf7f3;*/
        padding: 42px 0px 0px;
    }

    .btmlist li {
        margin-bottom: 16px;
    }

    .btmlist ul {
        margin-bottom: 0;
    }

    .list li {
        margin-bottom: 7px;
        font-size: 13px;
        /*        width: 50%;
                float: left;*/
    }

    .list-last li {
        margin-bottom: 10px;
        font-size: 13px;
        width: 100%;
        float: left;
    }

    #footer-pcview {
        display: none;
    }

    #footer-smview {
        display: block;
    }

    .footer-smview .foot-sm-btn:hover {
        background-color: #fbf7f3;
    }

    p.sm-footer-sns {
        display: block;
        text-align: center;
        margin-bottom: 18px;
        word-break: keep-all;
    }

    .socmed-footer .head-ttl {
        margin-top: 31px;
    }

    .socmed-icon {
        margin: 11px auto;
        padding: 0;
    }

    .frame i {
        font-size: 36px;
    }

    .footer-banner.item-container {
        margin-top: 41px;
    }

    .footer-vg-logo-sm {
        display: block;
        width: 100%;
    }

    .footer-vg-logo {
        display: none;
    }

    .footer {
        padding: 34px 0 13px;
    }

    .footer img {
        /*width: 30%;*/
        display: block;
        margin: 20px auto 0px;
        position: unset;
        width: 105px;
    }

    .footer p.middle {
        margin: 0 0.5em;
    }

    .socmed-footer .head-ttl h4 {
        font-size: 16px;
    }

    .socmed-footer .seemore {
        padding: 0 1.3em;
    }

    .footer-banner.item-container p.sm-mg {
        margin: 0px;
    }

    .category-div-part::-webkit-scrollbar {
        width: 0px;
        background: transparent;
        /* make scrollbar transparent */
        height: 0;
    }

    .cmd-button.contact-green {
        margin: 1em auto;
    }

    .wrap-sub-footer {
        display: flex;
        flex-wrap: wrap;
        gap: 36px 0px;
    }

    .wrap-sub-footer .item:first-of-type {
        width: 50%;
        padding-top: 0px;
        padding-bottom: 0px;
        max-width: unset;
    }

    .wrap-sub-footer .item:nth-of-type(2) {
        width: 50%;
        padding-top: 0px;
        padding-right: 0px;
        padding-bottom: 0px;
        padding-left: 23px;
    }

    .wrap-sub-footer .item:nth-of-type(3) {
        width: 50%;
        padding-top: 0px;
        padding-bottom: 0px;
        padding-left: 0px;
    }

    .wrap-sub-footer .item:last-of-type {
        width: 50%;
        flex-direction: column;
        padding-top: 0px;
        padding-bottom: 0px;
        padding-right: 0px;
        padding-left: 23px;
    }

    .wrap-sub-footer .item:last-of-type>div:first-of-type {
        width: 100%;
        min-width: unset;
    }

    .wrap-sub-footer .item:last-of-type>div:last-of-type {
        width: 100%;
        margin-left: 0px;
    }

    .btmlist .list.left-side {
        padding-right: 0px;
    }

    .btmlist .related-item {
        margin-top: 29px;
    }

    .btmlist li a {
        line-height: 18px;
    }

    .footer-banner .footer-banner-width>div {
        padding: 0px;
        width: calc(50% - 7px);
    }

    .footer-banner .footer-banner-width {
        display: flex;
        flex-wrap: wrap;
        gap: 18px 14px;
    }

    .footer-banner.item-container p.bold {
        margin: 6px 0px 4px;
    }

    .footer-bottom-wrap--links {
        max-width: 300px;
    }

    .footer .copyright-text {
        padding-top: 12px;
        font-size: 10px;
    }

    .footer .footer-bottom-wrap p {
        margin: 0px 6px;
        padding-top: 3px;
    }

    .footer-user-template .footer img {
        margin-right: auto;
    }

    .footer-user-template .wrap-link-with-logo {
        padding: 0 15px;
    }

    /*=================end new footer design for SM======================*/

    .gal-boxes-wrap .gal-boxes .gallery-box {
        min-width: 87vw;
        max-width: 87vw;
    }

    .gal-boxes-wrap .gal-boxes.width-1content .gallery-box {
        min-width: 100vw;
        max-width: 100vw;
        width: 100%;
    }

    .gal-boxes-wrap.scroll-1content {
        overflow-x: hidden;
    }

    .gal-index .gal-boxes {
        flex-wrap: nowrap;
    }

    .sm-slider {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .sm-slider::-webkit-scrollbar {
        width: 0px;
        background: transparent;
        height: 0;
    }

    .gal-index.no-date-event.margin-gallery {
        margin-top: 2em;
        margin-bottom: 1em;
    }

    .gal-index.margin-gallery {
        margin-bottom: 0;
    }

    .product-boxes-wrap .gal-boxes .gallery-box {
        min-width: 87vw;
        max-width: 87vw;
    }

    .product-index .product-boxes {
        flex-wrap: nowrap;
    }

    .product-index.no-date-event.margin-gallery {
        margin-top: 2em;
        margin-bottom: 1em;
    }

    .product-index.margin-gallery {
        margin-bottom: 0;
    }

    #wrap-variable-width::after {
        display: none;
    }

    .title p.title-junpro {
        /*        text-align: center;
                font-family: a-otf-jun-pro, sans-serif;
                font-style: normal;
                font-weight: 200;
                font-size: 18px;
                margin: auto;*/
        font-size: 18px;
        font-weight: 500;
        line-height: 140%;
        /* 25.2px */
        letter-spacing: 1.8px;
    }

    .title p.title-smallJapan {
        text-align: center;
        margin: auto;
        font-size: 13px;
        line-height: 1.5em;
        letter-spacing: normal;
    }

    .title h6 {
        text-align: right;
    }

    .news-title h6 {
        text-align: right;
    }

    body .ui-messages {
        width: auto;
        font-size: 12px;
    }

    .sm-scrollbar-large {
        display: flex;
        overflow: auto;
    }

    .sm-scrollbar-large>div {
        width: 87vw;
        min-width: 87vw;
        max-width: 87vw;
        margin-right: 16px;
    }

    .no-pad-sm {
        padding: 0;
    }

    .top-img-cover .gal-index.carousel-inner {
        margin-top: 0;
    }

    .title p.title-index-junpro {
        font-size: 24px;
        font-weight: 300;
        letter-spacing: 2.4px;
        line-height: 125%;
        padding-top: 2px;
        padding-bottom: 1.5px;
    }

    .title h2.title-index-junpro {
        font-size: 24px;
        font-weight: 300;
        letter-spacing: 2.4px;
        line-height: 125%;
        padding-top: 2px;
        padding-bottom: 1.5px;
    }

    .title span.title-index-junpro {
        font-size: 24px;
        font-weight: 300;
        letter-spacing: 2.4px;
        line-height: 125%;
        padding-top: 2px;
        padding-bottom: 1.5px;
    }

    .title p.title-index-smallJapan {
        font-size: 16px;
        font-weight: 400;
        line-height: 160%;
        letter-spacing: 1.6px;
        margin: 0px;
    }

    .title h2.title-index-smallJapan {
        font-size: 16px;
        font-weight: 400;
        line-height: 160%;
        letter-spacing: 1.6px;
        margin: 0px;
    }

    .title span.title-index-smallJapan {
        font-size: 16px;
        font-weight: 400;
        line-height: 160%;
        letter-spacing: 1.6px;
        margin: 0px;
    }

    .title.left p.title-index-smallJapan {
        margin: 1px 0px 0px;
    }

    .title.left h2.title-index-smallJapan {
        margin: 1px 0px 0px;
    }

    .title.left span.title-index-smallJapan {
        margin: 1px 0px 0px;
    }

    .title.switch-pos .title-index-smallJapan {
        font-size: 24px;
        font-weight: 300;
        letter-spacing: normal;
        line-height: 125%;
        padding-top: 0px;
        padding-bottom: 1.5px;
    }

    .title.switch-pos .title-index-junpro {
        margin-top: 3px;
    }

    .title.title-topics .title-index-smallJapan {
        left: -7px;
    }

    .section-width {
        width: 100%;
        padding: 0px 15px;
    }

    .new-article-boxes .small-box {
        width: auto;
        min-width: auto;
    }

    .btn-seemore .seemore {
        padding: 11px 32px 11px 20px;
        min-height: 48px;
    }

    .btn-seemore .seemore::after {
        /*top: 17px;*/
        right: 18px;
    }

    .section-title-with-hz-line {
        padding-left: 36px;
    }

    .section-title-with-hz-line::before {
        left: calc(-100vw + 25px);
        top: 17px;
    }

    .page-title-with-hz-line {
        padding-left: 36px;
    }

    .page-title-with-hz-line::before {
        display: none;
    }

    .official-gal-boxes {
        margin-top: 16px;
    }

    .product-box .product-desc {
        margin-bottom: 20px;
        padding-right: 3px;
    }

    .product-box p.head {
        padding-right: 1.2em;
    }

    .product-box h3.head {
        padding-right: 1.2em;
    }

    .official-gallery-box .card-title {
        margin-top: 12px;
    }

    .category-product {
        margin-top: 28px;
    }

    .category-product .list-category li a {
        font-size: 14px;
    }

    .category-product .list-category li {
        margin-right: 16px;
    }

    .category-product--buttons .category-product--button {
        margin-right: 16px;
        font-size: 14px;
    }

    .category-product--buttons {
        gap: 8px 0px;
    }

    .category-product .title p.title-junpro {
        font-size: 16px;
        font-weight: 400;
        letter-spacing: 1.6px;
    }

    .category-product .title .title-junpro {
        font-size: 16px;
        font-weight: 400;
        letter-spacing: 1.6px;
    }

    .category-product .list-category {
        margin-top: 10px;
    }

    .oshibana-news .caption-news .date {
        margin: 0px;
    }

    .oshibana-news h3.ttl-capt.three-row {
        margin-top: 0px;
        font-size: 18px;
        font-weight: 600;
        line-height: 140%;
        /* 25.2px */
    }

    .oshibana-news .caption-news p {
        margin-top: 8px;
        margin-bottom: 12px;
    }

    .oshibana-news .btn-news-top .w3-button-wrap {
        margin-top: 0px;
        margin-right: 12px;
    }

    .bg-grey .oshibana-news .news-part-index {
        flex-direction: column;
    }

    .bg-grey .oshibana-news .small-box {
        gap: 0px;
        flex-wrap: wrap;
        padding-top: 0px;
        margin-top: 18px;
    }

    .bg-grey .oshibana-news .small-box>div {
        width: 100%;
    }

    .w3-button {
        font-size: 12px;
        padding: 3px 11px 4px;
    }

    /* pagination syle smartphone*/
    .list-pagi .ui-paginator .ui-paginator-first,
    .list-pagi .ui-paginator .ui-paginator-prev,
    .list-pagi .ui-paginator .ui-paginator-next,
    .list-pagi .ui-paginator .ui-paginator-last {
        min-width: 36px;
        max-width: 36px;
        min-height: 36px;
        max-height: 36px;
        font-size: 12px;
    }

    .list-pagi .ui-paginator .ui-paginator-pages .ui-paginator-page {
        min-width: 36px;
        max-width: 36px;
        min-height: 36px;
        max-height: 36px;
        font-size: 12px;
    }

    .list-pagi .ui-datagrid .ui-paginator-bottom {
        gap: 10px;
    }

    .list-pagi .ui-paginator .ui-paginator-pages {
        gap: 10px;
    }

    /* styling form : selectOneMenu */
    .styling-selectOneMenu.ui-selectonemenu .ui-selectonemenu-label {
        padding: 5px 7px;
        font-size: 12px;
    }

    .styling-selectOneMenu.ui-selectonemenu-panel {
        /*transform: translateY(34px);*/
    }

    .styling-selectOneMenu.ui-selectonemenu-panel .ui-selectonemenu-items .ui-selectonemenu-item {
        font-size: 12px;
    }


    .bg-grey .oshibana-news .small-box>div:not(:first-of-type) .box-border {
        margin-top: 19px;
        padding-top: 20px;
        border-top: 1px solid #E6E6E6;
        border-radius: 0px;
    }

    .bg-grey .oshibana-news .small-box>div:not(:first-of-type) a {
        display: flex;
        align-items: flex-start;
    }

    .bg-grey .oshibana-news .small-box>div:not(:first-of-type) .object-fit-50 {
        width: 99px;
        padding-bottom: 62px;
        min-width: 99px;
    }

    .bg-grey .oshibana-news .small-box>div:not(:first-of-type) .tag-book {
        right: 0px;
        top: 4px;
        left: 57px;
    }

    .news-part-index .small-box>div:not(:first-of-type) .caption-news {
        padding-top: 0px;
        padding-left: 14px;
    }

    .news-part-index h3.ttl-capt.three-row {
        order: 1;
        width: 100%;
    }

    .news-part-index .caption-news p {
        order: 2;
        width: 100%;
    }

    .btn-news-top.nd.float-position {
        order: 3
    }

    .news-part-index .caption-news .date {
        order: 4
    }

    .news-part-index .caption-news {
        padding: 12px 0px 0px;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }

    .bg-grey .oshibana-news .small-box .caption-news p {
        display: none;
    }

    .bg-grey .oshibana-news .small-box>div:not(:first-of-type) h3.ttl-capt.three-row {
        font-size: 16px;
        font-weight: 600;
        line-height: 140%;
        margin-bottom: 9px;
        margin-top: -4px;
    }

    .bg-grey .oshibana-news .small-box>div:first-of-type .caption-news .btn-news-top {
        order: 1;
        margin-bottom: 9px;
    }

    .bg-grey .oshibana-news .small-box>div:first-of-type .caption-news .date {
        order: 2;
        margin-bottom: 9px;
    }

    .bg-grey .oshibana-news .small-box>div:first-of-type h3.ttl-capt.three-row {
        order: 3;
    }

    .bg-grey .oshibana-news .small-box>div:first-of-type .caption-news p {
        order: 4;
        margin-top: 6px;
        margin-bottom: 0px;
    }

    .bg-grey .oshibana-news .small-box>div:first-of-type .caption-news {
        padding-top: 16px;
    }

    .oshibana-publication .tag-book {
        top: -27px;
        right: 0px;
    }

    .new-article-boxes .small-box .box-border {
        width: 84vw;
        margin-right: 0px;
        min-width: 84vw;
        max-width: 84vw;
    }

    .newIndex .slick-next {
        width: 35px;
        height: 35px;
        left: 43px;
    }

    .newIndex .slick-prev {
        width: 35px;
        height: 35px;
        left: 0px;
    }

    .newIndex .slick-next::before {
        box-shadow: -1.5px 1.5px 0 #3F4446;
        width: 8px;
        height: 8px;
        margin: auto 6px;
    }

    .newIndex .slick-prev::before {
        box-shadow: -1.5px 1.5px 0 #3F4446;
        width: 8px;
        height: 8px;
        /*margin: auto 6px;*/
    }

    .tag-book {
        width: 45px;
        height: 45px;
    }

    .tag-book .text-wrapper {
        font-size: 10px;
    }

    .tag-book .circle {
        width: 42px;
        height: 42px;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .tag-book .div {
        width: 40px;
        height: 40px;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .tag-book .overlap-group {
        width: 45px;
        height: 45px;
        border-radius: 50%;
    }

    .tag-fill h5 {
        width: 45px;
        height: 45px;
        font-size: 18px;
    }

    .tag-fill h5::before {
        width: 41.727px;
        height: 41.727px;
        top: 1.64px;
        left: 1.64px;
    }

    .tag-fill h5::after {
        width: 40.091px;
        height: 40.091px;
        top: 2.45px;
        left: 2.45px;
    }

    .oshibana-product .product-boxes {
        width: 100%;
        margin-left: 0px;
        margin-top: 0px;
    }

    .oshibana-product .slick-slider .slick-prev,
    .oshibana-product .slick-slider .slick-next {
        top: unset;
        bottom: calc(100% + 71px);
    }

    .oshibana-product .slick-slider .slick-prev {
        left: unset;
        right: 43px;
    }

    .oshibana-product .slick-slider .slick-next {
        left: unset;
        right: 0px;
    }

    .oshibana-product .product-boxes .slick-list {
        padding-right: 0px;
        padding-bottom: 0px;
    }

    .category-product .list-sub-category ul {
        gap: 10px;
    }

    .category-product .list-sub-category li a {
        padding: 5px 14px;
    }

    .title h2.title-index-junpro.font-mincho {
        letter-spacing: normal;
    }

    .category-product .link-category li a {
        font-size: 14px;
    }

    .category-product .link-category li {
        margin-right: 22px;
    }

    .category-product .link-category {
        margin-top: 0px;
    }

    .title--small-text-on-title {
        flex-direction: column;
        align-items: flex-start;
        gap: 5px;
    }

    .title--small-text-on-title .small-text-on-title {
        font-size: 14px;
        padding-left: 36px;
    }

    .lazy-product.product-boxes .slick-slide {
        width: 89vw;
    }
}

@media only screen and (max-width : 425px) {
    .cover-content .dashed-green {
        width: 100%;
    }

    .cover-content h4 {
        font-size: 14px;
        text-align: left;
        width: 100%;
    }
}

@media only screen and (max-width : 320px) {
    .application-gallery-sm .flex-date .numb-date {
        padding: 11px 5px;
        font-size: 13px;
    }

    .topbar-mobile i {
        margin: auto;
    }

    .pentagon,
    .pic3 .pentagon {
        top: -14%;
    }

    .about-content .time.feature-third {
        margin-top: 17em;
    }
}

@media print {
    a[href]:after {
        content: none !important;
    }
}

/* button link block from CMS (wrapper-btns-feature / button-normal) - used on guide detail and other pages */
.wrapper-btns-feature {
    margin-top: 1em;
    margin-bottom: 1em;
}

.wrapper-btns-feature .button-normal {
    display: inline-block;
    padding: 0.75em 1.5em;
    background-color: #333333;
    color: #fff !important;
    text-decoration: none !important;
    font-weight: 700;
    border-radius: 24px;
    text-align: center;
    transition: background-color 0.2s ease;
}

.wrapper-btns-feature .button-normal:hover {
    background-color: #222222;
    color: #fff !important;
}

.wrapper-btns-feature .button-normal .button-normal-text,
.wrapper-btns-feature .button-normal p.button-normal-text {
    margin: 0;
    color: inherit;
    text-decoration: none;
    font-size: 16px;
    line-height: 1.4;
}

/* same button style when anchor has class "link" (e.g. from editor) */
.media2 .wrapper-btns-feature a.link {
    display: inline-block;
    padding: 0.75em 1.5em;
    background-color: #333333;
    color: #fff !important;
    text-decoration: none !important;
    font-weight: 700;
    border-radius: 24px;
    text-align: center;
    transition: background-color 0.2s ease;
}

.media2 .wrapper-btns-feature a.link:hover {
    background-color: #333333;
    color: #fff !important;
}

.media2 .wrapper-btns-feature a.link .button-normal-text,
.media2 .wrapper-btns-feature a.link p {
    margin: 0;
    color: inherit;
    text-decoration: none;
    font-size: 16px;
    line-height: 1.4;
}