@charset "UTF-8";

*,
*:before,
*:after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

/*================共通========================*/

@font-face {
    font-family: 'newpanam-medium';
    src: url('../font/NewPanamSkyline-Medium-WebXL.woff2') format('woff2'),
        url('../font/NewPanamSkyline-Medium-WebXL.woff') format('woff'),
        url('../font/NewPanamSkyline-Medium-WebXL.ttf') format('truetype'),
        url('../font/NewPanamSkyline-Medium-WebS.woff2') format('woff2'),
        url('../font/NewPanamSkyline-Medium-WebS.woff') format('woff'),
        url('../font/NewPanamSkyline-Medium-WebS.ttf') format('truetype');
    ;
}

@font-face {
    font-family: 'newpanam-regular';
    src: url('../font/NewPanamSkyline-Regular-WebXL.woff2') format('woff2'),
        url('../font/NewPanamSkyline-Regular-WebXL.woff') format('woff'),
        url('../font/NewPanamSkyline-Regular-WebXL.ttf') format('truetype'),
        url('../font/NewPanamSkyline-Regular-WebS.woff2') format('woff2'),
        url('../font/NewPanamSkyline-Regular-WebS.woff') format('woff'),
        url('../font/NewPanamSkyline-Regular-WebS.ttf') format('truetype');
}

html {
    min-width: 100%;
    overflow-x: hidden;
    margin: 0 !important;
    padding: 0;

}

body {
    color: #000;
    word-wrap: break-word !important;
    font-family: 'Noto Sans JP', 'メイリオ', sans-serif;
    font-weight: 400;
    font-style: normal;
    margin: 0;
    min-width: 100%;


}


.in {
    animation: fadeIn 3s ease 0s 1 normal;
    -webkit-animation: fadeIn 3s ease 0s 1 normal;
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}


html,

div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    vertical-align: baseline;
    background: transparent;
}

a {
    text-decoration: none;

}

button {
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
}

p,
a {
    font-family: 'Noto Sans JP', 'メイリオ', sans-serif;
    font-style: normal;

    color: #000;
    font-size: 14px;
    font-weight: 300;
    line-height: 20px;
    letter-spacing: 1px;
}

a {
    cursor: pointer;

}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: 100%;
    font-family: 'newpanam-regular', 'Noto Sans JP', 'メイリオ', sans-serif;
    letter-spacing: 1px;
    font-style: normal;
    font-weight: 300;
}

#mobile-head h1 {
    font-weight: 900;
    font-size: 20px;
    line-height: 0;
    z-index: 999;

}

h2 {
    font-size: 25px;
    line-height: 45px;
    font-weight: 300;
}

h3 {
    font-size: 24px;

    line-height: 22px;
}

h4 {
    font-size: 20px;
    margin-top: 7px;
    line-height: 14px;
}

h5 {
    font-size: 16px;
    line-height: 14px;
    display: inline-block;
}

.s-col4 h5 {
    letter-spacing: 2px;
}

.news-in h3 a {
    font-size: 24px;
    line-height: 30px;
    margin-bottom: 35px;
    font-family: 'Noto Sans JP', 'メイリオ', sans-serif;
}

ul li {
    list-style: none;
    letter-spacing: 1px;
}

img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}

.g1 {
    background: #d9d9d9;
}

.g2 {
    background: #e5e5e5;
}

.g3 {
    background: #f2f2f2;
}

.g4 {
    background: #ffffff;
}

.g5 {
    background: #ECECEC;
}

.g6 {
    background: #ededed;
}

header {

    text-align: left;
    width: 100%;
    margin: 0 auto;
    padding: 0;
    overflow: hidden;
    height: 100px;

}

.flex-col {
    display: flex;
    flex-direction: column;

}

.mail {
    position: fixed;
    top: 2vh;
    right: 2vw;
    z-index: 999;
    width: 50px;
    transition: 0.5s;
    opacity: 1;
}

.mail img:hover {
    transition: 0.5s;
    opacity: 0.5;
}

.border {
    box-sizing: border-box;
    border: 30px solid #000;
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99;
}

.works {
    position: fixed;
    bottom: 26vh;
    right: 5vw;
    z-index: 999;
}

.works p {
    font-family: 'Noto Sans JP', 'メイリオ', sans-serif;
    font-weight: 900;
    font-size: 100px;
    line-height: 100px;
    letter-spacing: 5px;
}

.main {
    position: relative;
    max-width: 1280px;
    width: 100%;
    overflow: hidden;
    margin: 0 auto;

}

.hello {
    position: absolute;
    bottom: 40%;
    left: 0;
    z-index: -1;
}

.hello p {
    font-family: 'Noto Sans JP', 'メイリオ', sans-serif;
    font-weight: 900;
    font-size: 100px;

    line-height: 100px;
    letter-spacing: 5px;
    color: #bdbdbd;
}

.swiper-wrapper {
    transition-timing-function: linear !important;
}

.swiper-slide img {
    width: 82%;
    transition: 0.5s;
    opacity: 1;
}

.swiper-slide img:hover {

    transition: 0.5s;
    opacity: 0.5;
}

.swiper-slide source {
    width: 82%;
    transition: 0.5s;
    opacity: 1;
}

.swiper-slide source:hover {

    transition: 0.5s;
    opacity: 0.5;
}

.swiper-container {
    /*width: 100vw !important;
    height: 100vh !important;*/
    /* padding: 100px 0 !important;*/
    position: absolute;
    top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width: 100vw;
}

.img-txt p,
.img-txt h2,
.img-txt a {
    position: relative;
    padding-left: 40px;
    transition: 0.5s;
    opacity: 1;

}

.img-txt a:hover {

    transition: 0.5s;
    opacity: 0.5;

}

.img-txt p::before,
.img-txt h2::before,
.img-txt a::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width: 20px;
    height: 1px;
    background-color: #000;
}

.top-slide .slide-area img {
    width: 100%;
    /*height: 620px;*/
    height: 100%;
    max-height: 620px;
    object-fit: cover;
}

.top-slide .slick-slide img {
    display: block;
    margin-bottom: 5px;
}

.top-slide ul.slick-dots {
    position: absolute;
    bottom: 44px;
    display: flex;
    justify-content: center;
    width: 100%;
}

.top-slide .slick-list {
    position: relative;
    display: block;
    overflow: inherit;
    margin: 0;
    padding: 0 0 0px;
}

.caption {
    font-size: 12px;
    line-height: 38px;
}

/*
h2.caption-dedon {
    font-size: 30px !important;
    position: relative;
    letter-spacing: 2px;
    vertical-align: baseline;
    display: inline-block;
    line-height: 23px;

}

h2.caption-dedon::after {
    content: 'DEDON';
    font-size: 14px;
    position: absolute;
    right: -77px;
    bottom: 2px;

    line-height: 13px;
    padding-left: 6px;
    letter-spacing: 1px;
    font-family: 'newpanam-regular' !important;
}

h2.caption-dedon::before {
    content: '';

    position: absolute;

    right: -12px;
    bottom: -0.5px;
    height: 17px;
    width: 1px;
    background: #000;
}*/
h2.title-main {
    font-size: 30px !important;
    position: relative;
    letter-spacing: 2px;
    vertical-align: baseline;
    display: inline-block;
    line-height: 23px;
}

.caption-title {
    font-size: 14px;
    letter-spacing: 2px;
    line-height: 14px;
    font-family: 'newpanam-regular' !important;
    position: relative;
    padding-left: 20px;
    display: inline-block;
    vertical-align: middle;
    margin-top: 1px;
}

.caption-title::before {
    content: '';
    margin-right: 10px;
    margin-left: 10px;
    height: 17px;
    width: 1px;
    position: absolute;
    background: #000;
    left: 0;
    top: -2px;
}

h3.title-main {
    font-size: 24px !important;
    position: relative;
    vertical-align: baseline;
    display: inline-block;
    letter-spacing: 2px;

}

.news h3 {
    font-size: 24px !important;
    position: relative;
    vertical-align: baseline;
    display: inline-block;
    letter-spacing: 2px;

}

*:focus {
    outline: none;
}

/*h3.caption-dedon::after {
    content: 'DEDON';
    font-size: 14px;
    position: absolute;

    right: -70px;
    bottom: 1px;

    line-height: 12px;
    padding-left: 8px;
}

h3.caption-dedon::before {
    content: '';
    font-size: 14px;
    position: absolute;

    right: -12px;
    bottom: 0px;
    height: 16px;
    width: 1px;
    background: #000;
}
*/
h4.title-main {
    font-size: 20px !important;
    position: relative;
    vertical-align: baseline;
    display: inline-block;
    letter-spacing: 2px;

}

/*h4.caption-dedon::after {
    content: 'DEDON';
    font-size: 12px;
    position: absolute;
    right: -62px;
    bottom: 0px;
    border-left: 1px solid #000;
    line-height: 12px;
    padding-left: 8px;
}
*/
h4 .caption-title {
    font-size: 12px;
    letter-spacing: 2px;
    line-height: 12px;
    font-family: 'newpanam-regular' !important;
    position: relative;
    padding-left: 20px;
    display: inline-block;
    vertical-align: middle;
}

h4 .caption-title::before {
    content: '';
    margin-right: 10px;
    margin-left: 10px;
    height: 14px;
    width: 1px;
    position: absolute;
    background: #000;
    left: 0;
    top: 0px;
}

h5.title-main {
    font-size: 16px !important;
    position: relative;
    vertical-align: baseline;
    display: inline-block;
    letter-spacing: 2px;

}

h5 .caption-title {
    font-size: 12px;
    letter-spacing: 2px;
    line-height: 12px;
    font-family: 'newpanam-regular' !important;
    position: relative;
    padding-left: 20px;
    display: inline-block;
    vertical-align: middle;
}

h5 .caption-title::before {
    content: '';
    margin-right: 10px;
    margin-left: 10px;
    height: 14px;
    width: 1px;
    position: absolute;
    background: #000;
    left: 0;
    top: 0px;
}

button {
    letter-spacing: 1px;
}


/*h5.caption-dedon::after {
    content: 'DEDON';
    font-size: 12px;
    position: absolute;
    right: -62px;
    bottom: -1px;
    border-left: 1px solid #000;
    line-height: 12px;
    padding-left: 8px;
}*/

.main-inner {

    width: 100%;
    max-width: 1160px;
    min-width: 900px;
    margin: 0 auto;
    padding: 109px 30px 78px;


}

.brand-main-inner {
    width: 100%;
    max-width: 1100px;
    min-width: 900px;
    margin: 0 auto;
    padding: 80px 0 80px;


}

.brand-main-inner2 {
    width: 100%;
    max-width: 1100px;
    min-width: 900px;
    margin: 0 auto;
    padding: 75px 0 80px;
}
.brand-main-inner2.contract {
    padding-top: 95px;
}

.contents {
    margin: 34px 0 0;
}


.contents2 {
    margin: 20px 0 0;
}

.news-in {

    background: url(../img/news.png);
    background-size: cover;
    background-repeat: no-repeat;
    margin-bottom: 3px;
    display: flex;
    align-items: center;
    justify-content: center;

    padding-top: 56.2962%;
    position: relative;

}

.news-txt-in {
    width: 100%;
    height: 100%;
    max-height: 280px;
    overflow: hidden;
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    padding: 30px 50px;
}

.news-top-item {
    display: flex;
    justify-content: space-between;

}

.news-txt-in a {
    font-size: 12px;
    line-height: 24px;
}

.news-txt-in p {
    font-size: 12px;

}

.news-txt-in .news-top-date {
    width: 105px;
    text-align: right;
}

.news-txt-in .news-top-title {
    width: 70%;
    overflow: hidden;
    white-space: nowrap;
}

.top-news-time {
    position: relative;
    padding-left: 30px;
    display: block;
}

.top-news-time::before {
    content: '';
    width: 20px;
    background: #000;
    height: 1px;
    position: absolute;
    top: 50%;
    left: 3%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

.dining-slider ul.slick-dots {
    position: absolute;
    bottom: 45px;
    display: flex;
    justify-content: center;
    width: 100%;
}

.dining-slider .slick-slide img {
    display: block;
    object-fit: cover;
    max-height: 304px;
    /*height: 100%;*/
    margin-bottom: 3px;
}

.landscape-slider {
    max-height: 147px;
    margin-bottom: 0px;
    height: 100%;
}

.landscape-slider .slick-slide img {
    display: block;
    object-fit: cover;
    max-height: 147px;
    /*    height: 100%;*/

}


/*.delivery-slider {
    max-height: 147px;
    height: 100%;
    margin-bottom: 0px;
    overflow: hidden;
}
*/
.delivery-slider .slick-slide img {
    display: block;
    object-fit: cover;
    max-height: 147px;
    margin-bottom: 0px;
    /*   height: 100%;*/
}

.s-col4 {
    width: calc(25% - 10px);
}

.s-col4 .slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0px 0 1px !important;
}

.col4 .wh-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-height: 200px;
    height: 100%;
    margin-bottom: 0px !important;
}

.relaxation-slider {
    max-height: 200px;
    /*    height: 100%;*/
    margin-bottom: 2px;
    overflow: hidden;
}

.relaxation-slider .slick-slide img {
    display: block;
    object-fit: cover;
    max-height: 200px;
    /*    height: 100%;*/
    margin-bottom: 2px;
}

.atmosphere-slider .slick-slide img {
    display: block;
    object-fit: cover;
    max-height: 200px;
    min-height: 200px;
    /*    height: 100%;*/
}

.indoor-slider {
    min-height: 150px;
}

.indoor-slider .slick-slide img,
.contract-slider .slick-slide img {
    display: block;
    object-fit: cover;
    max-height: 150px;
    min-height: 150px;
    /*    height: 100%;*/
}

.indoor-slider .slick-dots li button,
.contract-slider .slick-dots li button,
.atmosphere-slider .slick-dots li button,
.relaxation-slider .slick-dots li button,
.dining-slider .slick-dots li button {
    width: 20px !important;
    margin: 0 5px;
}

.landscape-slider .slick-dots li button,
.delivery-slider .slick-dots li button {
    width: 13px !important;
    margin: 0 3.5px;
}

.col3 {
    width: calc(33.333% - 10px);
}

.contract {
    position: relative;
    width: 100%;
    padding-top: 55.4716%;
    overflow: hidden;
}

.contract-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.col4 {
    width: calc(25% - 10px);
    /*   height: 100%;*/
    max-height: 147px;
    position: relative;
    /*    display: flex;
    align-items: center;
    justify-content: center;*/
    z-index: 1;

}

a.col4 {
    font-size: 20px;
    text-align: center;
    font-family: 'newpanam-regular' !important;
    /*padding: 20px;*/
    letter-spacing: 2px;
}

.flex-bt.contents.ali-f {
    align-items: flex-start;
}

.col4 img {}

.col-4txts {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    width: 100%;
    z-index: 1;
}

.wh-area {
    background-color: #fff;
}

.wh-txt {
    color: #fff !important;
}

.wh-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 200px;
    margin-bottom: 3px;
}

.col4 .wh-inner {

    height: 147px;

}

.wh-inner img {
    width: 212px;
}

.col4 .wh-inner img {
    width: 156px;
}

.wh-inner p {
    text-align: center;
    font-size: 18px;
    margin: 0 auto;
}

.col4 .wh-inner p {
    text-align: center;
    font-size: 13px;
    margin: 0 auto;
}

.dining {
    width: calc(50% - 10px);
    max-width: 540px;

}

.news {
    width: calc(50% - 10px);


}

.top20 {
    margin-top: 20px;
}

.flex-bt {
    display: flex;
    justify-content: space-between;
}

/* モーダルCSS */
.modalArea {
    display: none;
    position: fixed;
    z-index: 10;
    /*サイトによってここの数値は調整 */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.modalArea img {
    width: 100%;

}

.modalBg {
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.6);
}

.modalWrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 50%;
    background-color: #fff;
}

.modal-content {
    width: 600px;
    margin: 0;
    background: #fff;
    position: fixed;
    display: none;
    padding: 10px 20px 50px;
    z-index: 999;

}

#modal-overlay {
    z-index: 60;
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 120%;
    background-color: rgba(0, 0, 0, 0.75);
}

#modal-close {
    position: absolute;
    top: 21px;
    right: 2rem;
    cursor: pointer;
    width: 35px;
}

#modal-close:hover {
    opacity: 0.5;
    transition: 0.3s;
}

#modal-close img,
    {
    width: 25px;
}

#modal-content-01.modal-content {
    width: 55%;
    margin: 0;
    background: #fff;
    position: fixed;
    display: none;
    padding: 10px 75px 30px;
    z-index: 1003;
}

div#modal-content-01 {
    padding: 10px;
}

div#modal-content-01 h2 {
    text-align: center;
    font-size: 20pt;
    border-bottom: 1px solid;
    padding-bottom: 15px;
    margin-bottom: 20px;
    font-weight: 900;
}

div#modal-content-01 .label {
    font-size: 10px;

}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"] {
    width: 100%;
    border: 1px solid #000;
    height: 30px;
    margin-bottom: 10px;
    background: #fff;
}

textarea {
    width: 100%;
    height: 100px !important;

    border: 1px solid #000;
    height: 30px;

    background: #fff;
}

input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required.contactad {
    width: 80%;
}

input.wpcf7-form-control.wpcf7-text.wpcf7-tel.wpcf7-validates-as-required.wpcf7-validates-as-tel.contacttel {
    width: 80%;
}

input[type="submit"] {
    background-color: #ffffff;
    border-radius: 5px;
    padding: 10px 30px;
    border: 1px solid;
    margin: 25px 10px 10px 0;
    transition: 0.5s;
    cursor: pointer;
}

div.wpcf7-mail-sent-ok {
    border: 1px solid #000;
}

div.wpcf7-response-output {
    margin: 2em 0.5em 1em;
    padding: 0.2em 1em;

    color: #fff;
}


input[type="submit"]:hover {
    background-color: #ACACAC;
    transition: 0.5s;
}

span.wpcf7-not-valid-tip {
    color: #fff;
}


.wpcf7-form-control-wrap {
    display: block;
}

span.wpcf7-list-item {
    margin: 0 30px 0 0;
    /*項目右側の余白設定と、デフォルトの左側の余白を打ち消す*/
    position: relative;
}

.wpcf7-list-item-label {
    cursor: pointer;
    /*labelにhoverした時にカーソルを表示させる*/
    font-size: 16px;
    /*項目のフォントサイズ*/
}

.wpcf7 input[type="checkbox"] {
    opacity: 0;
    position: absolute;
    top: 5px;
    left: -3px;
    cursor: pointer;
    z-index: 99;
}

.wpcf7-list-item-label::before {
    /*チェックボックスのデザイン*/
    border: 0;
    content: "";
    display: inline-block;
    height: 15px;
    margin-right: 10px;
    position: relative;
    top: -1px;
    vertical-align: middle;
    width: 15px;
    background: #fff;
}


.wpcf7 input[type="checkbox"]:checked+.wpcf7-list-item-label::after {
    background: url("../img/contact-check.png") no-repeat center;
    background-size: contain;
    content: "";
    display: block;
    height: 11px;
    left: 2px;
    position: absolute;
    top: 8px;
    width: 11px;
}

/*input[type="checkbox"]:checked + .wpcf7-list-item-label::before {

    background-color: #e6e6e6;
}*/

.main-area {
    display: flex;
    justify-content: space-between;

}

.left-area {
    width: calc(30% - 30px);
}

.right-area {
    width: calc(70% - 30px);
    display: flex;
    flex-wrap: wrap;
}

.right-in {
    width: calc(30% - 15px);
    margin-top: 30px;
}

.red {
    width: 30px;
    height: 30px;
    background-color: #ff0000;
}

.yellow {
    width: 30px;
    height: 30px;
    background-color: #ffe000;
}

.blue {
    width: 30px;
    height: 30px;
    background-color: #0066ff;
}

.green {
    width: 30px;
    height: 30px;
    background-color: #0CCC24;
}

.colorarea {
    display: flex;
    align-items: center;
}

.colorarea li {
    font-size: 10px;
}

.single-contents {
    display: flex;
    justify-content: space-between;
    padding: 30px;
}

.single-left {
    width: calc(50% - 15px);
}

.single-right {
    width: calc(50% - 15px);
}

.single-img-area {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}

.thum img {
    object-fit: cover;

    width: 300px;
    height: 200px;
}

.single-img-area img {
    width: 200px;
    object-fit: cover;
}

.slide1 {
    height: 100vh;
    width: 100vw;
    background-color: #d2d2d2;
}

.slide2 {
    height: 100vh;
    width: 100vw;
    background-color: #888888;
}

.slide3 {
    height: 100vh;
    width: 100vw;
    background-color: #4e4e4e;
}

.flex {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.button a {
    padding: 20px 40px;
    display: block;
    margin: 0 30px;
}

a.g1 {
    background: #d2d2d2;
}

a.g2 {
    background: #888888;
}

a.g3 {
    background: #4e4e4e;
    color: #fff !important;
}

/*-----------Show Room------------*/

.showroom-inner {
    padding: 96px 50px 90px;
}


.showroom-top {
    display: flex;
    justify-content: space-between;
}

.showroom-top h4 {
    margin: 0;
    line-height: 20px;
    letter-spacing: 2px;
}

.showroom-top img {
    margin-bottom: 20px;
}

.showroom-top-item {
    max-width: 460px;
    width: 100%;
}

.showroom-top-item:first-child {
    max-width: 500px;
    width: 100%;
    padding-right: 40px;
}

.showroom-top-item:last-child {
    max-width: 500px;
    width: 100%;
    padding-left: 40px;
}

.showroom-top-item p {
    line-height: 25px;
}

.showroom-info-title {
    margin-top: 29px;
    font-weight: 500 !important;
}

.showroom-top-item img {
    opacity: 1;
    transition: 0.5s;
}

.showroom-top-item:hover img {
    opacity: 0.6;
    transition: 0.5s;
}

.shoroom-head-img {
    padding-top: 30px;
    width: 100%;
    margin: 0 auto;
    min-width: 900px;
}

.top-showroom-slide .slide-area img {
    width: 100%;
    height: 500px;
    object-fit: cover;
}

.top-showroom-slide ul.slick-dots {
    position: absolute;
    bottom: 25px;
    display: flex;
    justify-content: center;
    width: 100%;
}

.atmosphere-slider .slick-list {

    padding: 0 0 00px;
}

.showroom-contents-inner {
    padding: 70px 50px 67px;
    max-width: 1100px;
    width: 100%;
    min-width: 900px;
    margin: 0 auto;

}


.showroom-txt-area {
    width: 520px;
}

.showroom-map-area {
    width: 400px;
}

.showroom-txt-area h2 {
    font-family: 'Noto Sans JP', 'メイリオ', sans-serif !important;
    font-size: 18px;
    margin-bottom: 18px;
    font-weight: 500;
    line-height: 18px;
}

.showroom-txt-area p {
    line-height: 25px;
    margin-bottom: 6px;
}

.showroom-slide-area {
    margin-top: 80px;
}

.brand-slide-area {
    margin-top: 60px;
}

.showroom-slide-area h4 {
    margin-bottom: 9px;
    letter-spacing: 2px;
}

.brand-slide-area h4 {
    margin-bottom: 10px;
    letter-spacing: 2px;
}

.brand-slide-area2 {
    margin-top: 80px;
    letter-spacing: 2px;
}

.brand-slide-area2 .slick-list {

    padding: 0 0 0px;
}

.showroom-slide-area2 h4 {
    margin-bottom: 20px;
    letter-spacing: 2px;
}

.brand-slide-area2 h4 {
    margin-bottom: 9px;
    letter-spacing: 2px;
}

.showroom-slider .slick-slide img {
    display: inline-block;
    max-width: 160px;
    height: 160px;
    object-fit: contain;
}

.showroom-slider .slide-area.slick-slide a {
    max-width: 180px;
    height: 180px;
    display: flex;
    background: #fff;
    align-items: center;
    justify-content: center;
}

.brand-mood-slider .slick-slide,
.showroom-slider .slick-slide {

    padding: 0 5px;
}
.brand-mood-slider.portrait .slick-slide {
    padding: 0 15px 0 5px;
}

.prev-arrow,
.next-arrow {
    width: 25px;
}

.slide-arrow {
    position: absolute;
    top: 50%;
    margin-top: -15px;
}

.prev-arrow {
    left: -50px;


}

.next-arrow {
    right: -50px;
}

.showroom-slider .slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: flex;
    justify-content: space-between;
    margin-left: 0;
    margin-right: 0;
}

.showroom-slide-area .brand-mood-slider .slick-list {
    padding: 0;
}


.showroom-slider .slick-list {
    max-width: 1021px;
    padding: 0 0 0px;
    width: 100%;
}

.brand-inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.brand-items p {
    font-family: 'newpanam-regular', 'Noto Sans JP', 'メイリオ', sans-serif;
    font-weight: 400;
    line-height: 14px;
    letter-spacing: 2px;
}

.brand-items {
    width: 261px;
    margin-bottom: 44px;
    text-align: center;
}

.brand-items:last-child {

    margin-bottom: 0px;

}

.brand-img-action {
    margin: auto;
    position: relative;
    margin-bottom: 13px;
}

.brand-img-action img {
    width: 100%;
    animation-name: brand-img-action;
    -webkit-animation-name: brand-img-action;
    animation-duration: 20s;
    -webkit-animation-duration: 20s;
    animation-iteration-count: infinite;
    -webkit-animation-iteration-count: infinite;
    opacity: 0;
}

.brand-img-action .brand-item-slider1 {
    display: block;
    margin: 0 auto;
    /*mix-blend-mode: multiply;*/
}

.margin-bottom-0 {
    border-bottom: 0 !important;
    margin-bottom: 0 !important;
}

.multiply {
    mix-blend-mode: multiply;
}

.brand-img-action .brand-item-slider2 {
    animation-delay: 10s;
    -webkit-animation-delay: 10s;
    position: absolute;
    top: 0;
    left: 0;

}

@keyframes brand-img-action {
    0% {
        opacity: 0;
    }

    25.5% {
        opacity: 1;
    }

    45% {
        opacity: 1;
    }

    55% {
        opacity: 0;
    }
}

@-webkit-keyframes brand-img-action {
    0% {
        opacity: 0;
    }

    25.5% {
        opacity: 1;
    }

    45% {
        opacity: 1;
    }

    55% {
        opacity: 0;
    }
}

.brand-detail-contents-inner {
    padding: 0px 50px 00px;
}

.brand-detail-txt-area {
    max-width: 350px;
    width: calc(100% - 390px)
}

.brand-detail-txt-area h2 {
    font-size: 30px;
    margin-bottom: 27px;
    line-height: 20px;
    font-family: 'newpanam-regular', 'Noto Sans JP', 'メイリオ', sans-serif;
    letter-spacing: 2px;
}

.top30 {
    margin-top: 28px;
}

.brand-detail-txt-area h3 {
    font-size: 16px;
    font-weight: 600;
    line-height: 25px;
    font-family: 'newpanam-regular', 'Noto Sans JP', 'メイリオ', sans-serif;
    letter-spacing: 2px;

}

.brand-detail-txt-area p {
    line-height: 25px;

}

.brand-detail-txt-area a {
    text-decoration: underline;
    font-size: 16px;
    line-height: 28px;
}

.detail-txt-bottom {
    margin-bottom: 40px;
}

.brand-slider {
    margin-bottom: 35px;
}

.brand-slider .slick-list {

    padding: 0 0 0px;
}

.brand-detail-img-area {
    max-width: 600px;
    width: calc(100% - 350px);
}

video {
    width: 100%;
}

.movie-area {
    max-width: 600px;
    width: 100%;
}

.brand-slider .slick-dots li button {
    width: 40px;
    height: 2px;
    margin: 0 10px;
    background: #000;
    transition: 0.3s;
    opacity: .5;
}

.brand-mood-slider .slick-slide img {
    display: block;
    max-width: 317px;
    width: 100%;
    height: 180px;
    object-fit: cover;
}
.brand-mood-slider.portrait .slick-slide img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.brand-mood-slider .slick-list {
    width: 1021px;
    width: 100%;
}

.brand-mood-slider .slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: flex;
    justify-content: space-between;
    margin-left: auto;
    margin-right: auto;
}

.other-brand {
    display: flex;
    justify-content: space-between;
    margin-top: 42px;
}

.other-brand-item {
    width: 165px;
    display: block;

}

.catalog-inner {
    width: 800px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}

.catalog-inner a {
    line-height: 12px;
    text-align: center;
    text-decoration: underline;
    transition: 0.5s;
    opacity: 1;
    display: block;

}

.catalog-inner a:hover {
    line-height: 12px;
    text-align: center;
    text-decoration: underline;
    transition: 0.5s;
    opacity: 0.5;
}

.catalog-inner img {
    margin-bottom: 30px;
}

.catalog-item {
    width: 400px;

}

.c-i-r-inner {
    margin-bottom: 54px;
}

.catalog-item-right {
    width: 300px;
}

.mood-detail-top {
    margin-top: 30px;

}

.mood-detail-top img {
    width: 100%;

}

.mood-detail-top div {
    position: relative;
    overflow: hidden;
}

.mood-detail-top div::before {
    content: '';
    display: block;
    padding-top: 56.25%;
    /* 16:9 */
}

.mood-detail-top div img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
}

.mood-item-area {
    width: 800px;
    margin: 0 auto;

}

.mood-item-capntion-area {
    width: 800px;
    margin: 0 auto;
    margin-top: 2px;

}

.mood-item-area h2 {
    margin-bottom: 12px;
    font-size: 20px;
    line-height: 28px;
    letter-spacing: 2px;
}

.mood-item-area-img {
    margin-top: 20px;

}

/*.mood-item-area img{
     margin-bottom: 20px;
}*/
.mood-item-area .highimg img {
    max-width: 480px;
    margin: 0 auto;
    display: block;
}

.highimg-caption {
    max-width: 480px;
    margin: 0 auto;
    display: block;
}

.highimg-caption p {
    font-size: 12px;
    line-height: 15px;
}

.mood-detail-txtarea {
    margin: 70px auto 0;
    width: 800px;

}

.mood-item-capntion-area p {
    font-size: 12px;
    line-height: 15px;
}

.acd-check {
    display: none;
}

.acd-label {
    font-weight: 300;
    color: #000;
    display: inline-block;
    margin-bottom: 1px;

    position: relative;
    font-size: 14px;
    cursor: pointer;
    letter-spacing: 1px;

}

.acd-label:after {

    box-sizing: border-box;
    content: '';
    display: block;
    background: url("../img/qabutton.png");

    width: 13px;
    height: 8px;
    background-size: 100%;
    background-repeat: no-repeat;
    position: absolute;
    right: -20px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);

    transition: 0.5s;
}

.acd-content {

    display: block;
    height: 0;
    opacity: 0;
    padding: 20px 0 0 0px;
    transition: .25s;
    visibility: hidden;
    margin-bottom: 10px;
}

.acd-content p:before {
    content: 'A.';
    position: absolute;
    left: 20px;
}

.acd-content p {
    padding-left: 40px;
    position: relative;
    width: 540px;
    line-height: 30px;
    margin-top: -8px;
}

.acd-check:checked+.acd-label:after {
    content: '';
    background: url("../img/qabutton.png");

    width: 13px;
    height: 8px;
    background-size: 100%;
    background-repeat: no-repeat;
    transform: rotate(180deg);
    transition: 0.5s;
}

.acd-check:checked+.acd-label+.acd-content {
    height: auto;
    opacity: 1;
    padding: 20px 0 0 0px;
    visibility: visible;
    transition: 0.5s;
    margin-bottom: 50px;
}

.qa-inner {
    display: flex;
    justify-content: space-between;
}

.qa-img {
    width: 540px;
}

.qa-area h2 {
    font-size: 20px;
    font-weight: 400;
    line-height: 20px;

}

.qa-area h3 {
    font-size: 14px;
    font-weight: 500;
    line-height: 14px;
    margin-bottom: 19px;
}

.faq01 img {
    width: 350px;
}

.faq02 img,
.faq03 img,
.faq04 img,
.faq05 img {
    width: 140px;
}

.qa-contents {
    margin-top: 50px;
}

.news-area {
    display: flex;
    justify-content: space-between;
}

.news-sidebar {
    width: 150px
}

.news-sidebar li {
    list-style-type: none;
}

li.on-list a {
    font-weight: 500 !important;
}

.news-sidebar ul li {
    list-style: none;
    line-height: 0;
    margin-bottom: 9px;
}

.news-sidebar ul li a {
    line-height: 14px;
}

.news-contents {
    width: 950px;

}

.news-in-contents {

    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.news-single-contents {
    width: 950px;
}

.news-single-contents .case-img_full {
    width: 65%;
    padding-top: 2em;
}

.news-single-contents .case-img_small {
    width: 30%;
    padding-top: 2em;
}

.news-single-contents .case-img_logo {
    width: 20%;
    padding-top: 2em;
}

.news-thum {
    width: 375px;
    margin-bottom: 80px;
}

.news-txt {
    width: 525px;
    margin-bottom: 80px;
}

.news-txt .data {
    font-size: 16px;
    font-family: 'newpanam-regular', 'Noto Sans JP', 'メイリオ', sans-serif;
    /* letter-spacing: 1px;*/
    font-style: normal;
    font-weight: 300;
    margin-bottom: 8px;
}

.news-single-contents .data {
    font-size: 16px;
    font-family: 'newpanam-regular', 'Noto Sans JP', 'メイリオ', sans-serif;
    line-height: 16px;
    font-style: normal;
    font-weight: 300;
    margin-bottom: 8px;
}

.news-txt h2 {
    font-size: 20px;
    font-family: 'Noto Sans JP', 'メイリオ', sans-serif;
    /* letter-spacing: 1px;*/
    font-style: normal;
    font-weight: 300;
    margin-bottom: 26px;
    line-height: 20px;

}

.fvrt_head {
    display: flex;
    justify-content: space-between;
}

.fvrt_head button {
    text-decoration: underline;
}

.fvrt_head h1 {
    font-size: 20px;
    font-family: 'newpanam-regular', 'Noto Sans JP', 'メイリオ', sans-serif;
    /* letter-spacing: 1px;*/
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
}

section#favorite {
    max-width: 1100px;
    width: 100%;
    margin: 0 auto 80px;
}

.fvrt-thmb-in {
    width: 350px;
    height: 350px;
    background: #fff;
    display: flex;
    align-items: center;
}


.fvrt_achr {
    display: flex;
    /*justify-content: space-between;*/
    /*    flex-wrap: wrap;*/
    padding: 30px 0;

}

.fvrt_outline {
    border-bottom: 1px solid #fff;

}

.fvrt_outline:last-child {
    border-bottom: 0px solid #fff;
}

.fvrt_thmb {
    width: 350px;
    margin-right: 60px;
}

.fvrt_txt {
    max-width: 590px;
    width: 100%;
}

.fvrt_txt h2 a {
    font-size: 20px;
    font-family: 'newpanam-regular', 'Noto Sans JP', 'メイリオ', sans-serif;
    /* letter-spacing: 1px;*/
    font-style: normal;
    font-weight: 300;
    line-height: 35px;
    margin-bottom: 19px;
    display: block;

}

.fvrt button {
    background: #fff;
    display: block;
    padding: 1px 0 0;
    font-size: 14px;
    margin: 30px auto 0;
    width: 165px;
    height: 25px;
}

.favorite-mid {
    font-size: 20px;
    font-weight: 400;
}

.favorite-txt-left {
    width: 70px;
}

.favorite-txt-right {
    width: 520px;
}

.flex-favorite {
    width: 100%;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
}

p.favorite-contact {
    text-align: center;
    margin-top: 80px;
}

.favorite-contact a {
    font-size: 14px;
    padding: 14px 0px;
    text-align: center;
    margin: 0 auto;
    display: inline-block;
    border: 1px solid;
    width: 330px;
    height: 50px;
}

.contact-height {
    line-height: 18px !important;
}

.txt-contents {
    border-bottom: 1px solid #fff;
    margin-bottom: 40px;
}

.malinky-load-more a {
    width: 300px;
    height: 50px;
    line-height: 48px;
    font-size: 16px;
    cursor: pointer;
    text-align: center;
    background-color: #e6e6e6;
    margin: 0 auto;
    transition: all 0.1s linear;
    display: block;
}

.page-area-txt p {
    margin-bottom: 35px;
    font-size: 14px;
}

.page-area-txt h2 {
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 0;
    line-height: 14px;
}

.list-items-other {
    margin-top: 30px;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 35px;
}

.list-items-other li {
    margin-bottom: 18px;
    font-size: 14px;
}


.list-items-left {
    width: 175px;
}

.list-items-right {
    width: 925px;
}

.main-inner.cad-main-area {
    padding: 84px 0 55px;
}

.cad-sidebar {
    width: 240px;
}

.cad-sidebar .acd-content {
    display: block;
    height: 0;
    opacity: 0;
    padding: 0px 0 0 0px;
    transition: .5s;
    visibility: hidden;
    transition: 0.5s;
    margin-bottom: 10px;
}

.cad-sidebar .acd-check:checked+.acd-label+.acd-content {
    height: auto;
    opacity: 1;
    padding: 0px 0 0 0px;
    visibility: visible;
    transition: 0.2s;
    margin-bottom: 10px;
}

.cad-sidebar .acd-label:after {
    box-sizing: border-box;
    content: '';
    display: block;
    background: none;
    width: 13px;
    height: 8px;
    background-size: 100%;
    background-repeat: no-repeat;
    position: absolute;
    right: -20px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transition: 0.2s;
}

.cad-sidebar .acd-check:checked+.acd-label:after {
    content: '';
    background: none;
    width: 13px;
    height: 8px;
    background-size: 100%;
    background-repeat: no-repeat;
    transform: rotate(180deg);
    transition: 0.5s;
}

.cad-sidebar .acd-label {
    color: #000;
    display: inline-block;
    margin-bottom: 1px;
    position: relative;
    font-size: 12px;
    cursor: pointer;
}

ul.aboutmenuarea {
    margin: -5px 0;
}

.tab label {
    cursor: pointer;
    line-height: 24px;
}

.tab li {
    font-size: 12px;
}

ul.tab {
    padding-left: 13px;
}

li.activecontents label {
    font-weight: 500;
}

.cad-main {
    width: 860px;
}

.tabarea {
    display: none;
}

.activecontents {
    position: relative;
}

.cad-area {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.download-main {
    display: flex;

}

.cad-main-area h2 {
    font-size: 20px;
    line-height: 20px;
    font-family: 'Noto Sans JP', 'メイリオ', sans-serif;
    /* letter-spacing: 1px;*/
    font-style: normal;
    font-weight: 400;
    margin-bottom: 50px;
}

.cad-items {
    width: 270px;
    height: 180px;
    margin-bottom: 50px;
}

.cad-bottom-0 {
    margin-bottom: 0 !important
}

.cad-items img {
    width: 270px;
    height: 155px;
    object-fit: cover;
    margin-bottom: 10px;
}

.post_password input[type="password"] {
    border: none;
    width: 300px;
    height: 20px;
    display: block;
}

.post_password input[type="submit"] {
    background-color: #ffffff;
    border-radius: 0;
    padding: 0;
    border: none;
    margin: 15px 0;
    transition: 0.5s;
    cursor: pointer;
    width: 46px;
    height: 16px;
    font-size: 10px;
}

.password-txt {
    margin-top: 32px;
}

.password-txt p {
    line-height: 17px;
}

.contact-main .main-inner {
    padding: 109px 0 56px;
}

.contact-inner {
    width: 800px;
    margin: 0 auto;
}

.contact-top-txt {
    margin-bottom: 24px;
    padding-bottom: 22px;
    border-bottom: 1px solid #fff;

}

.contact-top-txt h2 {
    font-size: 20px;
    line-height: 20px;
    margin-bottom: 20px;
    font-weight: 400;
}

.contact-top-txt p {
    font-family: 'Noto Sans JP', 'メイリオ', sans-serif;
    font-style: normal;
    color: #000;
    font-size: 14px;
    font-weight: 300;
    line-height: 25px;
    letter-spacing: 1px;
}

.contact-top-txt a {
    text-decoration: underline;
}

.red-f {
    color: #FF0000;
}

.contactform {
    display: flex;
    flex-wrap: wrap;
}

.contact-left {
    width: 250px;
    text-align: right;
    padding-right: 40px;
    font-size: 14px !important;
    margin-bottom: 50px;
    line-height: 14px;
}

.contact-right {
    width: 550px;
    margin-bottom: 50px;
    line-height: 14px;
}

.contact-right,
.contact-right textarea,
.contact-right input,
.contact-right .lbl_cckbx {
    font-size: 14px;
}

.contact-catalog {
    line-height: 20px;
}

li.contact-right:last-child {
    margin-bottom: 0;
}

.contactform span.wpcf7-list-item {
    display: block;
    margin: 0 0 8px 0;
}

.contactform textarea {
    width: 100%;
    height: 100px !important;
    border: 0;
    height: 30px;
    background: #fff;
}

.contactform select.wpcf7-form-control.wpcf7-select.wpcf7-validates-as-required {
    width: 300px;
    height: 20px;
    border: 0;
}

.contactform input[type="text"],
.contactform input[type="email"],
.contactform input[type="tel"],
.contactform input[type="number"] {
    width: 100%;
    border: 0;
    height: 20px;
    display: block;
    margin-bottom: 0;
    background: #fff;
}

.contactform input[type="select"] {
    width: 300px;
    border: 0;
    height: 20px;
    display: block;
    margin-bottom: 0;
    background: #fff;
}

.contactform select {
    outline: none;
    border: 0;
    width: 300px;
    display: block;
    height: 20px;
    padding: 2px 3px;
}


.contactform .select {
    background: #fff;
    height: 20px;
    width: 300px;
    border-radius: 0px;
    position: relative;
    z-index: 1;
    outline: none;
    border: 0;
    font-size: 14px;
}

.contactform .select::after {
    position: absolute;
    content: "";
    width: 5px;
    height: 5px;
    right: 10px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    border-bottom: 1px solid #000;
    border-right: 1px solid #000;
    z-index: -1;
}

select {
    /* 初期化 */
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background: none;
    border: none;
    font-size: 14px;
    width: 100%;
    height: 100%;
    padding: 0 10px;
    position: relative;
}

.submit-form input[type="submit"] {
    background-color: #ffffff;
    border-radius: 0;
    width: 300px;
    height: 50px;
    font-size: 16px;
    border: 0;
    margin: 0;
    display: block;
    transition: 0.5s;
    cursor: pointer;
    margin: 0px;
    text-align: center;
    font-weight: 300;
    font-family: 'Noto Sans JP', 'メイリオ', sans-serif;
    letter-spacing: 2px;
}

.submit-form {
    display: flex;
    justify-content: space-between;
    width: 650px;
}


.mwform-radio-field {
    margin: 0 .5em;
}

.contactform input[type=checkbox] {
    appearance: none;
    display: none;
}

.contactform input[type=checkbox]+span {
    display: inline-block;
    position: relative;
    vertical-align: middle;
    cursor: pointer;
    padding-left: 36px;
}

.contactform input[type=checkbox]+span:before {

    content: "";
    display: inline-block;
    margin-right: 20px;

    color: #fff;
    background: #fff;
    border-radius: 0;
    width: 16px;
    height: 16px;
    position: absolute;
    left: 0;
    top: 0px;
}

.contactform input[type=checkbox]+span:after {

    content: "";
    display: inline-block;
    margin-right: 20px;

    color: #fff;
    background: #fff;
    border-radius: 0;
    width: 16px;
    height: 16px;
    position: absolute;
    left: 0;
    top: -1px;
}

.mw_wp_form .vertical-item+.vertical-item {
    margin-top: 16px !important;
}

.mwform-checkbox-field label,
.mwform-radio-field label {
    font-weight: 300 !important;
    margin-bottom: 0;
    font-size: 14px;
}

.contactform input[type=checkbox]:checked+span:before {

    content: "";
    background: url("../img/contact-check.png");
    background-repeat: no-repeat;
    background-size: contain;
    color: #000;
    padding: 3px;
    border-radius: 0;
    width: 10px;
    height: 10px;
    position: absolute;
    left: 3px;
    top: 3px;
    z-index: 99;
}

.news-single-contents h2 {
    font-size: 20px;
    line-height: 40px;
    font-weight: 400;
    margin-bottom: 40px;

}

.news-single-contents img {

    margin-bottom: 45px;
    max-width: 800px;
}

.pager {
    margin: 0 auto;
    text-align: center;
}

section#notFound {
    text-align: center;
}

#notFound h1 {
    font-size: 24px;
    margin-bottom: 30px;
}

#notFound p {
    margin-top: 30px;
}

.privacy-policy-area {
    max-width: 1000px;
    width: 100%;
    font-size: 14px;
}

.privacy-policy-area h2 {
    font-size: 20px;
    line-height: 20px;
    font-weight: 400;
}

.privacy-txt {
    margin-top: 40px;
    line-height: 24px;
    font-weight: 300;
}

.privacy-txt-title {
    margin-bottom: 12px;
    display: block;
}

.privacy-txt-inner {
    display: block;
    padding-left: 15px;
}

.privacy-txt-inner2 {
    display: block;
    padding-left: 30px;
}

.privacy-policy-area ul {
    padding-left: 20px;
}

.privacy-policy-area ul li {
    list-style-type: decimal;


}

strong {
    font-weight: 500 !important;
}

b {
    font-weight: 500 !important;
}

.contract .slick-dots {
    display: none;
}

.featured-area {
    margin-bottom: 35px;

}

.featured-area h3 {
    font-size: 16px;
    margin-bottom: 3px;
}

.f-area-contents {
    margin-bottom: 15px;
}

.f-area-contents .col2 {
    width: calc(50% - 10px);
}

.f-area-contents .col3 {
    width: calc(33.3333% - 10px);
}

.f-area-img-box {
    width: 75%;
    margin-left: auto;
    margin-right: auto;
}

.ali-end {
    align-items: flex-end;
}

.ali-center {
    align-items: center;
}

.f-main-img {
    margin-bottom: 10px;
}

.f-area-contents .col04 {
    width: calc(25% - 10px);
}

.f-area-contents .col80 {
    width: calc(75% - 10px);
}

.f-area-contents .col20 {
    width: calc(25% - 10px);
}

.f-area-contents img {
    margin: 0 !important;
    max-width: none;
}

.f-area-contents .size-full.w-auto {
    max-width: 100%;
    width: auto;
}

.f-area-contents .underline {
    text-decoration: underline;
}

.f-area-contents .col5 {
    width: calc(20% - 10px);
}

.f-area-contents .bottom {
    margin-bottom: 15px;
}

.f-area-contents p {
    margin-bottom: 10px;
}

.collection {
    margin-top: 35px;
}




.moodlist-main-area {
    padding: 103px ​0 55px;
}

.moodlist-sidebar {
    width: 240px;
}



ul.aboutmenuarea {
    margin: -5px 0;
}



.moodlist-main {
    width: 860px;
}

.moodlist-area {
    display: flex;
    flex-wrap: wrap;
    margin-left: -20px;
}

.download-main {
    display: flex;

}

.moodlist-main-area h2 {
    font-size: 20px;
    line-height: 20px;
    font-family: 'Noto Sans JP', 'メイリオ', sans-serif;
    /* letter-spacing: 1px;*/
    font-style: normal;
    font-weight: 400;
    margin-bottom: 50px;
}

.moodlist-items {
    width: 270px;
    height: 180px;
    margin-bottom: 50px;
    margin-left: 20px;
}

.moodlist-items.portrait {
    width: calc(25% - 20px);
    height: fit-content;
}

.moodlist-area a,
.moodlist-sidebar a {
    font-family: 'newpanam-regular', 'Noto Sans JP', 'メイリオ', sans-serif;
}

.activemoodlist a {
    /*font-weight: 500;*/
    font-family: 'newpanam-medium', 'Noto Sans JP', 'メイリオ', sans-serif;
}


.moodlist-bottom-0 {
    margin-bottom: 0 !important
}

.moodlist-items img {
    width: 270px;
    height: 155px;
    object-fit: cover;
    margin-bottom: 10px;
}

.ratio.ratio-5x7 {
    position: relative;
    margin-bottom: 10px;
}
.ratio.ratio-5x7::before {
    content: '';
    display: block;
    padding-top: 140%;
}
.moodlist-items.portrait img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.thanks {
    text-align: center;

}

.thanks a {
    margin-top: 13px;
    display: block;
}

.top15 {
    margin-top: 15px;
}


.top60 {
    margin-top: 60px;
}

.cm-book h2{
margin-bottom: 50px;
}
.cm-book-pdf {
    max-width: 300px;
    width: 100%;
    text-align: center;
    margin-top: 30px;
    cursor: pointer;
}

.cm-book-pdf a {
    text-align: center;
        text-decoration: underline;
}

.cm-book-pdf .tag_web_catalog {
    margin-top: 30px;
    display: block;
}
@charset "UTF-8";

*,
*:before,
*:after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

/*================共通========================*/

@font-face {
    font-family: 'newpanam-medium';
    src: url('../font/NewPanamSkyline-Medium-WebXL.woff2') format('woff2'),
        url('../font/NewPanamSkyline-Medium-WebXL.woff') format('woff'),
        url('../font/NewPanamSkyline-Medium-WebXL.ttf') format('truetype'),
        url('../font/NewPanamSkyline-Medium-WebS.woff2') format('woff2'),
        url('../font/NewPanamSkyline-Medium-WebS.woff') format('woff'),
        url('../font/NewPanamSkyline-Medium-WebS.ttf') format('truetype');
    ;
}

@font-face {
    font-family: 'newpanam-regular';
    src: url('../font/NewPanamSkyline-Regular-WebXL.woff2') format('woff2'),
        url('../font/NewPanamSkyline-Regular-WebXL.woff') format('woff'),
        url('../font/NewPanamSkyline-Regular-WebXL.ttf') format('truetype'),
        url('../font/NewPanamSkyline-Regular-WebS.woff2') format('woff2'),
        url('../font/NewPanamSkyline-Regular-WebS.woff') format('woff'),
        url('../font/NewPanamSkyline-Regular-WebS.ttf') format('truetype');
}

html {
    min-width: 100%;
    overflow-x: hidden;
    margin: 0 !important;
    padding: 0;

}

body {
    color: #000;
    word-wrap: break-word !important;
    font-family: 'Noto Sans JP', 'メイリオ', sans-serif;
    font-weight: 400;
    font-style: normal;
    margin: 0;
    min-width: 100%;

}


.in {
    animation: fadeIn 3s ease 0s 1 normal;
    -webkit-animation: fadeIn 3s ease 0s 1 normal;
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}


html,

div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    vertical-align: baseline;
    background: transparent;
}

a {
    text-decoration: none;

}

button {
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
}

p,
a {
    font-family: 'Noto Sans JP', 'メイリオ', sans-serif;
    font-style: normal;

    color: #000;
    font-size: 14px;
    font-weight: 300;
    line-height: 20px;
    letter-spacing: 1px;
}

a {
    cursor: pointer;

}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: 100%;
    font-family: 'newpanam-regular', 'Noto Sans JP', 'メイリオ', sans-serif;
    letter-spacing: 1px;
    font-style: normal;
    font-weight: 300;
}

#mobile-head h1 {
    font-weight: 900;
    font-size: 20px;
    line-height: 0;
    z-index: 999;

}

h2 {
    font-size: 25px;
    line-height: 45px;
    font-weight: 300;
}

h3 {
    font-size: 24px;

    line-height: 22px;
}

h4 {
    font-size: 20px;
    margin-top: 7px;
    line-height: 14px;
}

h5 {
    font-size: 16px;
    line-height: 14px;
    display: inline-block;
    margin-top: 3px;
}

.news-in h3 {
    line-height: 30px;
    margin-bottom: 35px;
    font-family: 'Noto Sans JP', 'メイリオ', sans-serif;

}

ul li {
    list-style: none;
    font-weight: 300;
    letter-spacing: 1px;
}

img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}



.flex-col {
    display: flex;
    flex-direction: column;

}

header {

    text-align: left;
    width: 100%;
    margin: 0 auto;
    padding: 0;
    overflow: hidden;
    height: 100px;

}



/*Header*/
.inner {
    width: 100%;

    display: flex;
    padding-top: 24px;
    justify-content: space-between;
    height: 100px;
    transition: 0.3s;
    -webkit-transition: 0.3s;
}

.inner p {
    font-size: 16px;
    font-weight: bold;
    font-family: 'newpanam-medium';
}

.top-logo {
    display: flex;
    align-items: center;
}

.top-logo img {
    width: 122px;
    vertical-align: middle;
    margin-right: 10px
}

.menu li {
    transition: 0.5s;
    font-family: 'newpanam-medium' !important;
}

.menu a {
    border-color: rgba(255, 255, 255, 0);
    transition: 0.5s;
    padding-bottom: 2px;
    font-size: 16px;
    font-family: 'newpanam-medium' !important;
}

.logo-main {
    width: 110px;
}

.logo-s {
    width: 263px;
    height: auto;
    margin-top: 12px;
    /*    background: url('../img/logo-cap.png');
    background-repeat: no-repeat;
    background-size: contain;*/
    display: block;
    -webkit-animation-name: logo_anime-re;
    -webkit-animation-duration: 1s;
    animation-name: logo_anime-re;
    animation-duration: 1s;
    transition: 0.2s;
    -webkit-transition: 0.2s;
}

@-webkit-keyframes logo_anime-re {
    from {
        opacity: 0;
    }

    to {
        opacity: 1 !important;
    }
}

@keyframes logo_anime-re {
    from {
        opacity: 0;
    }

    to {
        opacity: 1 !important;
    }
}

.logo-scroll .logo-s {

    display: block;
    transition: 0.2s;
    -webkit-transition: 0.2s;
    opacity: 0;
}

.head-scroll .inner {

    height: 68px;
    transition: 0.3s;
    -webkit-transition: 0.3s;
}

.top-search {

    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    opacity: 1;
    transition: 0.5s;
    -webkit-animation-name: search_anime-re;
    -webkit-animation-duration: 1s;
    animation-name: search_anime-re;
    animation-duration: 1s;
    display: flex;
    justify-content: flex-end;
}

@-webkit-keyframes search_anime-re {
    from {
        opacity: 0;
    }

    to {
        opacity: 1 !important;
    }
}

@keyframes search_anime-re {
    from {
        opacity: 0;
    }

    to {
        opacity: 1 !important;
    }
}

.search-scroll .top-search {

    -webkit-animation-name: search_anime;
    -webkit-animation-duration: 1s;
    animation-name: search_anime;
    animation-duration: 1s;
    opacity: 0;
    transition: 0.5s;
    display: none;

}

@-webkit-keyframes search_anime {
    from {
        opacity: 0;
    }

    to {
        opacity: 1 !important;
    }
}

@keyframes search_anime {
    from {
        opacity: 0;
    }

    to {
        opacity: 1 !important;
    }
}

.search-scroll #global-nav li {
    padding: 0px 0px 0px;

}

li.folder {
    position: relative;
    width: 28px;
        margin-right: 15px;
}

span#js_header_favorite {
    position: absolute;
    top: 2px;
    left: 10px;
    color: #fff;
    font-size: 9px;
}

#head-search .search {
    position: relative;
}

#head-search .search input[type="text"] {
    border: none;
    height: 20px;
    width: 206px;
    padding-left: 20px;
    background: none;
    margin: 0;

}

input[type="text"],
textarea,
select {
    outline: none;
}

.folder img {
    width: 28px;
    margin-right: 15px;

}

#head-search .search form {

    width: 206px;
    border-bottom: 1px solid #808080
}

#head-search .search img {
    width: 14px;

}

#head-search .search button {
    position: absolute;
    top: 0px;
    left: 0;
}

.container {
    background-color: #FAF6F5;
    -webkit-transition: 4s ease-in-out;
    -moz-transition: 4s ease-in-out;
    -o-transition: 4s ease-in-out;
    -khtml-transition: 4s ease-in-out;
    transition: 4s ease-in-out;

}

.top-head {
    position: fixed;
    width: 100%;
    margin: 0 auto;
    min-width: 1280px;
    z-index: 999;

    transition: 1s;
}

.top-head a,
.top-head {
    color: #808080;
    text-decoration: none;
    font-size: 13px;
    padding: 0;
    letter-spacing: 2px;
}

.top-head .inner {
    position: relative;
    width: 1100px;

    margin: 0 auto;
}

.top-head .logo {
    float: left;
    font-size: 36px;
}


#global-nav ul {
    width: 100%;
    margin: 0 auto;
    display: flex;
    margin-top: -4px;
}

#global-nav li {
    padding: 0px 0px 13px;
    text-align: center;

}

#global-nav li:nth-child(2) {
    padding-left: 20px;
}

#global-nav li:nth-child(3) {
    padding-left: 20px;
}

.fixed .inner {

    transition: 0.5s;
}

.fixed {
    position: fixed;
    top: 0;
}

.top-head.fixed .logo {
    font-size: 24px;
    color: #333;
}

.top-page-button {
    width: 100%;
    min-width: 1280px;
    position: fixed;
    z-index: 10;
    transform: translateY(0px);
    transition: 0.5s;
}

.top-page-button-scroll .top-page-button {
    transform: translateY(-53px);
    transition: 0.5s;
}

.top-page-button-scroll .top-page-button:hover {

    transform: translateY(-32px);
    transition: 0.5s;
}

.top-page-button ul {
    display: flex;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#d9d9d7+49,ffffff+51 */
    background: rgb(217, 217, 215);
    /* Old browsers */
    background: -moz-linear-gradient(left, rgba(217, 217, 215, 1) 49%, rgba(255, 255, 255, 1) 51%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(left, rgba(217, 217, 215, 1) 49%, rgba(255, 255, 255, 1) 51%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, rgba(217, 217, 215, 1) 49%, rgba(255, 255, 255, 1) 51%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#d9d9d7', endColorstr='#ffffff', GradientType=1);
    /* IE6-9 */

    justify-content: center;
}

/*
li.g1 a {
    padding-left: 30px;
}

li.g4 a {
    padding-right: 58px;
}*/

.top-page-button li {
    width: 320px;
    /* width: 25%;*/
    text-align: center;

    font-size: 16px;
    opacity: 1;
    transition: 0.3s;
    position: relative;
}

/*.top-page-button li:hover {
    opacity: 0.8;
    transition: 0.3s;
}
*/
/*
.page-button-area {
    width: 100%;
    position: relative;
    padding: 0 !important;
}

.inner-page-button-le {
    width: 330px;
    position: absolute;
    right: 0;
}

.inner-page-button-ri {
    width: 300px;
    position: absolute;
    left: 0;
}*/

/*.top-page-button li.g1 a {
    position: absolute;
    right: 130px;
}
.top-page-button li.g4 a {
    position: absolute;
    left: 117px;
}*/
.top-page-button a,
.top-page-button p {
    display: block;
    font-size: 14px;
    padding: 5px 0;
    letter-spacing: 2px;
    font-family: 'newpanam-medium' !important;
}

.g1 {
    background: #d9d9d9;
}

.g2 {
    background: #e5e5e5;
}

.g3 {
    background: #f2f2f2;
}

.g4 {
    background: #ffffff;
}

.g5 {
    background: #ECECEC;
}


.flex {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.button a {
    padding: 20px 40px;
    display: block;
    margin: 0 30px;
}

a.g1 {
    background: #d2d2d2;
}

a.g2 {
    background: #888888;
}

a.g3 {
    background: #4e4e4e;
    color: #fff !important;
}

footer {
    background: #4d4d4d;
    padding: 58px 30px 80px;
    width: 100%;
    margin: 0 auto;
    overflow: scroll;
}

/*.footer-outin {
    min-width: 1280px;
}*/

.footer-inner {

    max-width: 1100px;

    margin: 0 auto;
}

.foot-logo {
    width: 223px;
    padding: 80px 0 76px;
}

ul.foot-menu-head {
    display: flex;
    align-items: center;
    width: 100%;
}

ul.foot-menu-head img {
    width: 21px;
    margin-right: 14px;
    margin-bottom: 3px;
}

ul.foot-menu-head li {
    color: #fff;
    text-align: center;
    line-height: 21px;
    font-size: 18px;
    padding-left: 0px;
   /* width: 366px;*/
       max-width: 366px;
    min-width: 280px;
    width: 100%;
    height: 29.5px;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
}

ul.foot-menu-head li+li {
    border-left: 0px solid #fff;
    border-right: 1px solid #fff;
}

ul.foot-menu-head a {
    font-size: 20px;
    line-height: 28px;
    font-weight: 200;
    font-family: 'Noto Sans JP', 'メイリオ', sans-serif !important;
}

footer a,
footer p {
    color: #fff;
    font-family: 'newpanam-regular' !important;
    line-height: 14px;
    letter-spacing: 2px;
}

.foot-list {
    display: flex;
    justify-content: space-between;

}

.foot-right {
    width: 768px;
    display: flex;
}

.foot-left {
    width: 329px;
    display: flex;
}

.col-r {
    width: 250px;
}
/*
.col-foot1 {
    width: 206px;
}
*/
.col-foot1 {
    max-width: 206px;
    min-width: 125px;
    width: 100%;
}
/*.col-foot2 {
    width: 286px;
}*/
.col-foot2 {
    max-width: 286px;
    min-width: 265px;
    width: 100%;
}
/*
.col-foot3 {
    width: 317px;
}*/

.col-foot3 {
    max-width: 317px;
    min-width: 180px;
    width: 100%;
}
/*.col-l {
    width: 167px;
}*/
.col-l {
    max-width: 167px;
    min-width: 130px;
    width: 100%;
}

.foot-title a {
    font-size: 20px;
    margin-bottom: 23px;
    display: block;
    margin-bottom: 15px;
}

.foot-list-menu a {
    font-size: 14px;
    letter-spacing: 2px;
}

.foot-list-menu li {
    margin-bottom: 5px;

}

.foot-title2 a {
    font-size: 20px;
    margin-top: 70px;
    display: block;


}

.m35 {
    margin-bottom: 24px;
    display: block;
}

.m85 {
    margin-top: 73px;
    display: block;
}

.product-area {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.sidebar {
    width: 160px;
}

.product-items-area {
    width: 840px;
    display: flex;
    flex-wrap: wrap;

}

.product_item {
    width: 200px;
    padding-left: 20px;
    margin-bottom: 50px;

}

.product_item p {
    margin-bottom: 25px;
}

.is-hide {
    display: none;
    opacity: 0;
    transition: 0.5s;
}

#acMenu dt {
    display: block;

    line-height: 35px;
    cursor: pointer;
}

#acMenu dd {
    display: none;
    padding-left: 20px;
    font-size: 14px;
}

#acMenu li {
    margin-bottom: 5px;
    list-style-type: none;
}

#acMenu label {
    cursor: pointer;
}

.download-area {

    position: relative;

    display: block;
    margin-top: 76px;
}

.foot-item {
    width: 38px;
    height: auto;
    position: absolute;
    bottom: 30px;
    right: 15px;
}

@media screen and (max-width: 1279px) {

    .top-head {
    position: fixed;
    width: 100%;
    margin: 0 auto;
    min-width: auto;
    z-index: 999;
    transition: 1s;
}
    .top-head .inner {
        position: relative;
    max-width: 1160px;
    width: 100%;
    margin: 0 auto;
    padding: 24px 30px 0;
}
.top-page-button {
    width: 100%;
    min-width: auto;
    position: fixed;
    z-index: 10;
    transform: translateY(0px);
    transition: 0.5s;
}

    }
/* Slider */
.slick-slider {
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0 0 10px;
}

.slick-list:focus {
    outline: none;
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.slick-track {
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}

.slick-track:before,
.slick-track:after {
    display: table;

    content: '';
}

.slick-track:after {
    clear: both;
}

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    display: none;
    float: left;

    /*height: 100%;*/
    min-height: 1px;
}

[dir='rtl'] .slick-slide {
    float: right;
}

.slick-slide img {
    display: block;
   /* margin-bottom: 5px;*/
}

.slick-slide.slick-loading img {
    display: none;
}

.slick-slide.dragging img {
    pointer-events: none;
}

.slick-initialized .slick-slide {
    display: block;
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;

    height: auto;

    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}

ul.slick-dots {
    position: absolute;
        bottom: 12px;
    display: flex;
    justify-content: center;
    width: 100%;
}

.col3 ul.slick-dots {
     bottom: 28px;
}

.col4 ul.slick-dots {
    bottom: 6px;
}

.s-col4 ul.slick-dots {
    bottom: 26px;
}

.slick-dots li button {
    font-size: 0;
}

.slick-dots li button {
    width: 40px;
    height: 2px;
    margin: 0 10px;
    background: #fff;
    transition: 0.3s;
    opacity: .5;
}

.slick-dots li.slick-active button {
    opacity: 1;
    transition: 0.3s;
}
@charset "utf-8";
/* CSS Document */

#site-search-contents {
    font-family: Arial, Roboto, "Droid Sans", "メイリオ", Meiryo, Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    padding: 10px 10px;
    margin: 0 auto;
    color: #333;
    font-size: 14px;
    line-height: 1.4
}

#site-search-contents a,
#site-search-contents a:visited {
    color: #2f8ed7;
    text-decoration: none;
}

#site-search-contents a:hover {
    text-decoration: underline;
}

#site-search-contents .site-search-input {
    width: 100%;
    max-width: 600px;
}

#site-search-contents .site-search-input-wrapper {
    position: relative;
}

#site-search-contents .site-search-input-wrapper input[type="text"] {
    width: 90%;
    padding: 10px 0px 10px 10px;
    height: 35px;
    box-sizing: border-box;
    border-radius: 3px 0px 0px 3px;
    border: solid 1px #ccc;
    margin-right: 0px;
    float: left;
}

#site-search-contents .site-search-input-wrapper input[type="text"]:hover {
    outline: 0;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, .6);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, .6);
}

#site-search-contents .site-search-input-wrapper input[type="submit"] {
    height: 35px;
    width: 10%;
    box-sizing: border-box;
    vertical-align: bottom;
    background-image: url(../images/search_bt.png) !important;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: auto 20px;
    cursor: pointer;
    border: solid 1px #ccc;
    border-radius: 0px 3px 3px 0px;
    font-size: 0;
}

#site-search-contents .site-search-input-wrapper input[type="submit"]:hover {
    background-color: #eee;
}

#site-search-contents .site-search-suggest {
    width: 100%;
    position: absolute;
    top: 34px;
    left: 0;
    z-index: 100;
}

#site-search-contents .site-search-suggest .suggest-list {
    box-sizing: border-box;
    width: 90%;
    padding: 12px 10px 0px 5px;
    border: solid 1px #ccc;
    border-radius: 0px 0px 2px 2px;
    background: #fff;
    max-width: 540px;
    box-shadow: 2px 7px 7px 0px rgba(0, 0, 0, 0.08);
}

#site-search-contents .site-search-suggest .suggest-item {
    margin-right: 10px;
    margin-bottom: 5px;
    color: #2f8ed7;
    font-weight: bold;
    display: block;
}

#site-search-contents .site-search-suggest .suggest-item:hover {
    text-decoration: underline;
    cursor: pointer;
}

#site-search-contents .result-pattern {
    width: 100%;
    margin-top: 10px;
    margin-bottom: 20px;
    overflow: hidden
}

#site-search-contents .result-pattern dl {
    box-sizing: border-box;
    margin-left: 0;
    margin-right: 0px;
    overflow: hidden;
    padding-top: 0px;
    margin-bottom: 0;
    margin-top: 0
}

#site-search-contents .result-pattern div {
    overflow: hidden
}

#site-search-contents .result-pattern dl.size-selector {
    width: 100%;
    display: flex;

    align-items: center;
    justify-content: flex-end;
}


#site-search-contents .result-pattern dl.sort-selector {
    width: 280px;
    display: block;
}

#site-search-contents .result-pattern dl dt {
    float: left;
    width: 100px;
    text-align: right;
    line-height: 1;
    padding-top: 0;
}

@-moz-document url-prefix() {
    #site-search-contents .result-pattern dl dt {
        padding-top: 0px;
    }
}

/*#site-search-contents .size-selector:before {
    position: absolute;
    content: "1ページの表示数：";
    top: 10px!important;
    left: 0;
    right: auto!important;
}*/
#site-search-contents .result-pattern dl ul {
    padding: 0;
    display: flex;
}

#site-search-contents .result-pattern dl li {
    list-style: none;
    float: left;
    margin-left: 0px;
    margin-bottom: 0;
    padding: 10px 5px;
}

#site-search-contents .result-pattern dl input[type="radio"],
#site-search-contents .result-pattern dl input[type="checkbox"] {
    display: none;
}

#site-search-contents .result-pattern dl label {
    font-size: 14px;
    margin-right: 5px;
    cursor: pointer;
    background: #eeeeee;
    padding: 5px 10px;
    border-radius: 3px;
    color: #828282;
}


#site-search-contents .size-selector label {
    font-size: 16px;

}

#site-search-contents .result-pattern dl label:last-child {
    margin-right: 0;
}

#site-search-contents .result-pattern dl input:checked+label {
    background: #2f8ed7;
    color: #ffffff;
}

#site-search-contents .result-pattern dl p {
    margin: 5px;
}

#site-search-contents .result-pattern dl.sort-selector dt {
    width: 100px;
    padding-top: 16px;
}

@-moz-document url-prefix() {
    #site-search-contents .result-pattern dl.sort-selector dt {
        padding-top: 5px;
    }
}

#site-search-contents .result-pattern dl.sort-selector dd {
    margin-left: 100px
}

#site-search-contents .sort-selector li {
    margin-top: -6px;
}


#site-search-contents .sort-selector label {
    font-size: 14px !important;
    margin-bottom: 25px;
    cursor: pointer;
    display: block;
    float: left;
    padding: 10px;
}

#site-search-contents .sort-selector #site-search-sortscore+label {
    position: relative;
    width: 62px;
    box-sizing: border-box;
    padding: 0;
}

#site-search-contents .sort-selector #site-search-sortlastmod+label {
    position: relative;
    width: 56px;
    padding: 0 11px
}

#site-search-contents .sort-selector #site-search-sortscore+label:before,
#site-search-contents .sort-selector #site-search-sortlastmod+label:before {
    box-sizing: border-box;
    position: absolute;
    background: #eeeeee;
    color: #828282;
    border-radius: 3px;
    padding: 4px 10px;
}

#site-search-contents .sort-selector #site-search-sortscore+label:before {
    content: "一致順";
    top: 3px;
    left: 0px;
}

#site-search-contents .sort-selector #site-search-sortlastmod+label:before {
    content: "更新日順";
    top: 3px;
    left: 0px;
}

#site-search-contents .sort-selector #site-search-sortscore:checked+label:before,
#site-search-contents .sort-selector #site-search-sortlastmod:checked+label:before {
    color: #ffffff;
    background: #2f8ed7;
}

#site-search-contents .site-search-summary {
    font-size: 18px;
    font-weight: bold;
    clear: both
}

#site-search-contents .site-search-summary p:before {
    content: "検索結果：";
}

#site-search-contents .site-search-summary p span.site-search-current-count {
    position: relative;
}

#site-search-contents .site-search-summary p span.site-search-current-count:after {
    content: " / ";
}

#site-search-contents .site-search-summary p span.site-search-total-count {
    position: relative;
}

#site-search-contents .site-search-summary p span.site-search-total-count:after {
    position: absolute;
    content: " 件 ";
   /* top: -3px;*/
    margin-left: 5px;
}

#site-search-contents .result-title {
    margin-top: 0px;
    margin-bottom: 10px;
}

#site-search-contents #pager {
    margin: 0 auto;
    text-align: center;
}

#site-search-contents #pager span {
    margin-right: 20px;
    font-size: 16px;
}

#site-search-contents #pager .selected {
    font-weight: bold;
}

#site-search-contents #refine-search {
    text-align: right;
}

#site-search-contents .zero-result {
    position: relative;
    height: 20px;
    margin-left: 22px;
    margin-top: 0px;
    line-height: 1.0
}

#site-search-contents .zero-result:before {
    position: absolute;
    content: "検索キーワードに一致するページは見つかりませんでした。";
}

#site-search-contents .zero-result-hint {
    position: relative;
    font-weight: bold;
    height: 20px;
    margin-top: 20px;
    margin-bottom: 20px;
}

#site-search-contents .zero-result-hint:before {
    position: absolute;
    content: "検索のヒント：";
}

#site-search-contents .zero-result-hint1 {
    position: relative;
    height: 20px;
    margin-left: 22px;
    margin-top: 0px;
    line-height: 1.0
}

#site-search-contents .zero-result-hint1:before {
    position: absolute;
    content: "キーワードに誤字・脱字がないか確認ください。";
}

#site-search-contents .zero-result-hint2 {
    position: relative;
    height: 15px;
    margin-left: 22px;
    margin-top: 0px;
    line-height: 1.0
}

#site-search-contents .zero-result-hint2:before {
    position: absolute;
    content: "別のキーワードもお試しください。";
}

#site-search-contents #site-search-error {
    padding: 20px;
    text-align: center;
}

#site-search-contents .result {
    overflow: hidden;
    clear: both;
    width: 100%;
    position: relative;
}

#site-search-contents .result:after {
    position: absolute;
    content: "";
    background: #eee;
    bottom: 10px;
    left: 0px;
    width: 100%;
    height: 1px;
    z-index: -100;
}

#site-search-contents .result-thumbnail {
    height: 224px;
    padding: 20px 20px 0px 0px;
    box-sizing: border-box;
    float: left;
    margin-right: 0px;
}

#site-search-contents .result-thumbnail img {
    width: 220px;
    height: 168px;
    display: block;
    -webkit-transition: -webkit-transform 0.2s linear;
    transition: transform 0.2s linear;
    -webkit-transform-origin: left top 0;
    transform-origin: left top 0;
    border: 1px solid #ccc;
    box-sizing: border-box;
}

#site-search-contents .result-thumbnail img:hover {
    opacity: 0.6;
    transition: 0.2s
}

#site-search-contents .result>div:first-child {
    float: right;
    padding: 20px 0px;
    width: calc(100% - 240px);
}

#site-search-contents .result-discription {
    margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
    #site-search-contents .result-pattern {
        display: block;
        width: 100%;
        overflow: hidden
    }

    #site-search-contents .result-pattern dl.size-selector {
        text-align: right;
    }

    #site-search-contents .size-selector:before {
        top: 2px;
    }

    #site-search-contents .size-selector p {
        margin-right: 0px;
    }

    #site-search-contents .sort-selector p {
        margin-top: 0px;
    }

    #site-search-contents .result-thumbnail {
        float: none;
    }

    #site-search-contents .result>div:first-child {
        float: none;
        width: 100%;
        margin-bottom: 10px;
        padding-bottom: 0;
    }
}

@media screen and (max-width: 600px) {
    #site-search-contents .result>div:first-child {
        padding-bottom: 10px;
    }

    #site-search-contents .result-thumbnail,
    #site-search-contents .result-site-path {
        display: none;
    }

    #site-search-contents .result:after {
        bottom: 0px;
    }

    #site-search-contents .zero-result {
        margin-left: 0px;
    }

    #site-search-contents .zero-result-hint1 {
        margin-left: 0px;
    }

    #site-search-contents .zero-result-hint2 {
        margin-left: 0px;
    }
}