@font-face {
    font-family: 'Spoqa Han Sans';
    font-weight: 700;
    src: local('Spoqa Han Sans Bold'), local('Spoqa Han Sans Bold'),
        url('../Subset/Spoqa%20Han%20Sans%20Bold.woff2') format('woff2'),
        url('../Subset/Spoqa%20Han%20Sans%20Bold.woff') format('woff'),
        url('../Subset/Spoqa%20Han%20Sans%20Bold.ttf') format('truetype');
}
@font-face {
    font-family: 'Spoqa Han Sans';
    font-weight: 400;
    src: local('Spoqa Han Sans Regular'), local('Spoqa Han Sans Regular'),
        url('../Subset/Spoqa%20Han%20Sans%20Regular.woff2') format('woff2'),
        url('../Subset/Spoqa%20Han%20Sans%20Regular.woff') format('woff'),
        url('../Subset/Spoqa%20Han%20Sans%20Regular.ttf') format('truetype');
}
@font-face {
    font-family: 'Spoqa Han Sans';
    font-weight: 300;
    src: local('Spoqa Han Sans Light'), local('Spoqa Han Sans Light'),
        url('../Subset/Spoqa%20Han%20Sans%20Light.woff2') format('woff2'),
        url('../Subset/Spoqa%20Han%20Sans%20Light.woff') format('woff'),
        url('../Subset/Spoqa%20Han%20Sans%20Light.ttf') format('truetype');
}
@font-face {
    font-family: 'Spoqa Han Sans';
    font-weight: 100;
    src: local('Spoqa Han Sans Thin'), local('Spoqa Han Sans Thin'),
        url('../Subset/Spoqa%20Han%20Sans%20Thin.woff2') format('woff2'),
        url('../Subset/Spoqa%20Han%20Sans%20Thin.woff') format('woff'),
        url('../Subset/Spoqa%20Han%20Sans%20Thin.ttf') format('truetype');
}
body {
    font-family: 'Spoqa Han Sans', 'Spoqa Han Sans JP', 'Sans-serif';
    color: #676767;
    font-size: 1.6rem;
}
.main-visual {
    background: url(../images/bg_visual.png) no-repeat bottom center;
    background-size: cover;
    width: 100%;
    /* min-height: 21.25rem; */
    min-height: 18rem;
    position: relative;
}
.main-visual h1 {
    position: absolute;
    top: 1.5rem;
    left: 1.5rem;
    width: 6.1rem;
}
.main-visual .visual-text {
    position: absolute;
    left: 1.5rem;
    bottom: 2.5rem;
    width:24.4rem; 
}
.main-visual h1 img,
.main-visual aside img,
.main-visual .visual-text img,
.sample-wrap .sliding-wrap ul li img {
    width: 100%;
    display: block;
}
.main-visual aside {
    width: 11.9rem;
    position: absolute;
    top: 1.5rem;
    right: 1.5rem;
}
.conts-wrap01 {
    padding: 4rem 1.5rem;
    width: 100%;
}
.conts-wrap01 p img {
    display: block;
    width: 100%;
}
.sample-wrap {
    background: #e7e7e7;
    border-top: 0.1rem #dbdbdb solid;
    border-bottom: 0.1rem #dbdbdb solid;
    padding: 2rem 0;
    margin-bottom: 4rem;
}
.sample-wrap h3 {
    padding: 0 0 2rem 4.5rem;
    font-weight: bold;
    font-size: 1.7rem;
    line-height: 1.8rem;
    letter-spacing: -0.1rem;
    color: #4d4d4d;
}
.sample-wrap .sliding-wrap {
    position: relative;
    margin-left: 4.5rem;
}
.sample-wrap .sliding-wrap .page-arrow {
    position: absolute;
    left: -3rem;
    top: 2rem;
    margin-top: 0;
    z-index: 10;
    width: 2.8rem;
    background: none;
}
.sample-wrap .sliding-wrap .page-arrow img {
    width: 100%;
    display: block;
}
.sample-wrap .sliding-wrap .page-num {
    position: absolute;
    left: -4rem;
    top: 6.5rem;
    z-index: 10;
    font-size: 80%;
    width: 3.5rem;
    letter-spacing: -0.1rem;
}
.sample-wrap .sliding-wrap::after {
    content: "";
    display: block;
    clear: both;
}
.sample-wrap .sliding-wrap ul {
    float: left;
}
.sample-wrap .sliding-wrap ul li {
    float: left;
}
.sample-wrap .sliding-wrap ul li dl {
    width: 12rem;
    cursor: pointer;
}
.sample-wrap .sliding-wrap ul li dl dt span {
    background: #2c2c2c;
    display: block;
    padding: .5rem 0;
    margin-bottom: 2.5rem;
    width: 100%;
}
.sample-wrap .sliding-wrap ul li dl dt {
    font-weight: bold;
    font-size: 1.4rem;
    letter-spacing: -0.1rem;
    padding-bottom: 1.3rem;
}
.sample-wrap .sliding-wrap ul li dl dd {
    font-size: 1.3rem;
    letter-spacing: -0.1rem;
    font-weight: normal;
    display: block;
}
.prepare {
    padding: 1.5rem;
}
.prepare h3 {
    font-weight: bold;
    font-size: 1.7rem;
    line-height: 1.8rem;
    letter-spacing: -0.1rem;
    color: #4d4d4d;
    margin-bottom: 2.5rem;
}
.prepare ul li::before {
    content: "•";
    font-size: 2.3rem;
    line-height: 1.7rem;
    display: inline-block;
    width: 1.7rem;
    position: absolute;
    left: 0;
}
.prepare ul li {
    padding-bottom: 1rem;
    position: relative;
    /*list-style-position:inside;
    list-style: disc;*/
    padding-left: 1.7rem;
    line-height: 2.1rem;
    font-size: 1.4rem;
}
footer {
    background: #5a5a5a;
    padding: 2.5rem 1.5rem;
}
footer ul {}
footer ul li {
    color: rgba(255, 255, 255, .4);
    font-size: 1.3rem;
    line-height: 1.8rem;
}
.swiper-container {
    width: 100%;
    height: 100%;
}
.swiper-slide {
    /* Center slide text vertically 
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;*/
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
}
.swiper-slide:nth-child(2n) {
    width: 100%;
}
.swiper-slide:nth-child(3n) {
    width: 100%;
}
.swiper-pagination-current {
    font-weight: bold;
}

/* sample-view */
nav {
    height: 4rem;
    background: #ffffff;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    color: #242424;
    font-size: 2rem;
    letter-spacing: -0.1rem;
    border-bottom: 0.1rem #4d4d4d solid;
    position: relative;
}
nav h1 {
    position: absolute;
    top: 1.5rem;
    left: 1.5rem;
    width: 6.1rem;
}
nav h1 img {
    width: 100%;
    display: block;
}
.preview-wrap {}
.preview-wrap .preview {
    height: 21.1rem;
    min-height: 21.1rem;
}
.preview-wrap dl {
    padding: 2rem 1.5rem;
    letter-spacing: -0.1rem;
}
.preview-wrap dl dt {
    font-weight: bold;
    color: #4d4d4d;
    padding-bottom: 0.7rem;
}
.preview-wrap dl dt label {
    color: #0072bc;
    font-weight: normal;
    font-size: 1.3rem;
    display: inline-block;
    margin: 0 1rem;
}
.preview-wrap dl dd {
    color: #4d4d4d;
    font-size: 1.3rem;
}
.gap-space {
    background: #e8ebee;
    border-top: 0.1rem #e2e5e8 solid;
    border-bottom: 0.1rem #e2e5e8 solid;
    height: 1rem;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.preview-list {
    
}
.preview-list>h3 {
    padding: 2rem 1.5rem;
    font-weight: bold;
    line-height: 1.8rem;
    letter-spacing: -0.1rem;
    color: #242424;
    border-bottom: 0.1rem #e2e5e8 solid;
}
.preview-list>dl {
    margin: 1.5rem;
    display: -webkit-box;
    display: flex;
    padding-bottom: 1.5rem;
    border-bottom: 0.1rem #f2f4f6 solid;
    cursor: pointer;
}
.preview-list>dl:after {
    clear: both;
    content: "";
    display: block;
}
.preview-list>dl dt {
    width: 42%;
    border: 0.1rem #cccccc solid;
    float: left;
    position: relative;
}
.preview-list>dl dt label {
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 0.5rem 1rem;
    color: #ffffff;
    font-size: 1.3rem;
    background: rgba(0,0,0,.5);
}
.preview-list>dl dt img {
    width: 100%;
    display: block;
}
.preview-list>dl dd {
    float: right;
    width: 52%;
    padding-left: 5%;
    letter-spacing: -0.1rem;
    align-self:flex-end;
    font-size: 1.4rem;
    line-height: 1.8rem;
}
.preview-list>dl dd .thum-title {
    display: block;
    color: #242424;
    padding-bottom: 1rem;
    font-size: 1.6rem;
}