@charset "UTF-8";
/*
Theme Name: a
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video, input {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  color: #2E2E2E;
  font: inherit;
  vertical-align: baseline;
  line-height: 1.6;
  font-family:'Noto Serif JP', sans-serif, 'NotoSansJP-Thin', sans-serif;
}
/* HTML5 display-role reset for older browsers */

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}
html{
    scroll-behavior: smooth;
    overscroll-behavior-y: contain;
    -webkit-overflow-scrolling: touch;
}
body {
    line-height: 1;
}
@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
a {
  color: #2E2E2E;
  text-decoration: none;
  transition: .3s;
}

img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
img, iframe {
  vertical-align: bottom;
  max-width: 100%;
}
input[type="submit"], input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration, input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus, input[type="button"]::focus {
  outline-offset: -2px;
}
select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    outline: none;
    background: transparent;
}
.clear:after {
    content: "";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}


/*============================
    common
============================*/

.linkBtn{
    border: 1px solid #000;
    border-radius: 20px;
    margin: 0 auto;
    overflow: hidden;
}

.linkBtn a{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    transition: .3s;
}

.linkBtn a:hover{
    background-color: #000;
    color: #fff;
}

.w1181{
    width: 90%;
    max-width: 1181px;
    margin: 0 auto;
}

.flex{
    display: flex;
}

.shimashimaIntro{
    padding: 200px 0 100px;
}

.shimashimaIntro h2{
    font-size: 23px;
    margin-bottom: 70px;
    text-align: center;
}

.shimashimaIntro p{
    width: 36.86%;
    font-size: 16px;
    margin: 0 auto 50px;
}

.shimashimaIntro .linkBtn{
    width: 138.57px;
    height: 41.51px;
}

.oguraContainer{
    background-color: #f2f1f5;
    padding: 150px 0 120px;
}

.oguraWrapper h2{
    font-size: 23px;
    margin-bottom: 50px;
    text-align: center;
}

.oguraWrapper .imgBox{
    margin-bottom: 40px;
}

.oguraWrapper .spView{
    display: none;
}

.oguraWrapper h3{
    font-size: 20px;
    margin-bottom: 20px;
}

.oguraWrapper .txtBox{
    width: 50%;
}

.oguraWrapper .txtBox:first-child{
    padding-right: 60px;
    border-right: 1px solid #000;
}

.oguraWrapper .txtBox:last-child{
    padding-left: 60px;
}

.oguraWrapper .txtBox:last-child .linkBtn{
    width: 138.57px;
    height: 41.51px;
    margin: 40px 0 0 auto;
}

.shimashimaItemList{
    padding: 100px 0;
}

.shimashimaItemList ul{
    flex-wrap: wrap;
    justify-content: center;
    border: 1px solid #000;
}

.shimashimaItemList li{
    border-bottom: 1px solid #000;
    width: 33.3%;
}

.shimashimaItemList li a{
    display: block;
    width: 100%;
    height: 100%;
    padding: 10% 10% 15%;
    box-sizing: border-box;
}

.shimashimaItemList li .imgBox{
    overflow: hidden;
}

.shimashimaItemList li .imgBox img{
    transform: scale(1.0);
    transition: .3s;
}

.shimashimaItemList li:hover .imgBox img{
    transform: scale(1.2);
}

.shimashimaItemList li:nth-child(1),
.shimashimaItemList li:nth-child(4),
.shimashimaItemList li:nth-child(7),
.shimashimaItemList li:nth-child(10){
    width: 30%;
}

.shimashimaItemList li:nth-child(1) a,
.shimashimaItemList li:nth-child(4) a,
.shimashimaItemList li:nth-child(7) a,
.shimashimaItemList li:nth-child(10) a{
    padding-left: 0;
}

.shimashimaItemList li:nth-child(3n){
    width: 30%;
}

.shimashimaItemList li:nth-child(3n) a{
    padding-right: 0;
}

.shimashimaItemList li:nth-child(2),
.shimashimaItemList li:nth-child(5),
.shimashimaItemList li:nth-child(8),
.shimashimaItemList li:nth-child(11){
    border-left: 1px solid #000;
    border-right: 1px solid #000;
}

.shimashimaItemList li:nth-child(n+10){
    border-bottom: none;
}

.shimashimaItemList li a .imgBox{
    margin-bottom: 30px;
}

.shimashimaItemList li a .txtBox h2{
    font-size: 20px;
    margin-bottom: 20px;
}

.shimashimaItemList li a .txtBox p{
    font-size: 16px;
}

.styleBox{
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    margin-bottom: 20px;
}

.styleBox .styleBoxContent{
    width: 50%;
}

.styleBox .styleBoxInner{
    width: 50%;
    padding: 100px 0 90px;
}

.styleBox .styleBoxContent:first-child{
    border-right: 1px solid #000;
}

.styleBox .styleBoxContent:first-child .styleBoxInner{
    margin: 0 100px 0 auto;
}

.styleBox .styleBoxContent:last-child .styleBoxInner{
    margin: 0 auto 0 100px;
}

.styleBox .styleBoxInner .imgBox{
    margin-bottom: 40px;
}

.styleBox .styleBoxInner .txtBox h2{
    font-size: 23px;
    margin-bottom: 40px;
}

.sukiLineupContainer{
    padding: 1%;
}

.sukiLineupWrapper{
    background-color: #e7e7e7;
    padding: 250px 0 160px;
}

.sukiLineupContainer h2{
    font-size: 23px;
    text-align: center;
}

.sukiLineupContainer .contentVisual{
    margin-bottom: 200px;
}

.sukiLineupContainer .itemList{
    flex-wrap: wrap;
    margin-bottom: 80px;
}

.sukiLineupContainer li{
    width: 25%;
    margin-bottom: 80px;
    position: relative;
    z-index: 1;
}

/* .sukiLineupContainer li:after{
    display: block;
    content: "";
    width: 60%;
    height: 20px;
    background: radial-gradient(rgba(0,0,0,0.3),rgba(255,255,255,0.1));
    border-radius: 50%;
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
} */

.sukiLineupContainer li:nth-child(n+9){
    margin-bottom: 0;
}

.sukiLineupContainer li a{
    display: block;
    width: 100%;
    height: 100%;
}

.sukiLineupContainer li:nth-child(3) img{
    transform: scale(1.09);
}

.sukiLineupContainer li:nth-child(7) img{
    transform: scale(0.95);
}

.sukiLineupContainer li:nth-child(11) img{
    transform: scale(1.12);
}

.sukiLineupWrapper p{
    text-align: center;
    margin-bottom: 80px;
}

.sukiLineupWrapper .linkBtn{
    width: 138.57px;
    height: 41.51px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.snsLinks{
    padding: 220px 0 80px;
}

.snsLinks ul{
    width: 260px;
    margin: 0 auto;
    justify-content: space-between;
}

.snsLinks li{
    width: 55.23px;
    height: 55.23px;
}

.contentVisual li{
    width: 80%;
    margin: 0 auto;
}

.contentVisual li .imgBox{
    width: 50%;
    margin: 0 auto;
}

.contentVisual li .imgBox::after{
    display: block;
    content: "";
    width: 30%;
    height: 20px;
    background: radial-gradient(rgba(0,0,0,0.3),rgba(255,255,255,0.1));
    border-radius: 50%;
    position: absolute;
    bottom: 110px;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}

.contentVisual li p:first-child{
    margin-bottom: 10px;
    font-size: 20px;
    color: #919191;
}

.contentVisual li p:last-child{
    font-size: 30px;
    margin-bottom: 0;
}

.contentVisual li::after{
    display: none;
}

.swiper-container.slideShimashima{
    overflow: hidden;
}

.swiper-wrapper{
    flex-wrap: nowrap;
}

.slideShimashima .swiper-button-prev{
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23919191'%2F%3E%3C%2Fsvg%3E");
    transform: scale(2.5) translateY(-50%);
    top: 50%;
    left: 60px;
}

.slideShimashima .swiper-button-next{
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23919191'%2F%3E%3C%2Fsvg%3E");
    transform: scale(2.5) translateY(-50%);
    top: 50%;
    right: 60px;
}

@media screen and (max-width:480px){
    .mainVisual.shimashima{
        width: 100%;
        height: 100vh;
    }

    .shimashimaIntro{
        padding: 70px 0 60px;
    }

    .shimashimaIntro h2{
        font-size: 22px;
    }

    .shimashimaIntro p{
        width: 90%;
    }

    .oguraContainer{
        padding: 70px 0 60px;
    }

    .oguraWrapper h2{
        font-size: 24px;
    }

    .oguraWrapper h3{
        font-size: 20px;
    }

    .oguraWrapper .pcView{
        display: none;
    }

    .oguraWrapper .spView{
        display: block;
        position: relative;
    }

    .oguraWrapper .spView::before{
        content: "";
        display: block;
        padding-top: 100%;
    }

    .oguraWrapper .spView img{
        position: absolute;
        top: 0;
        left: 0;
    }

    .oguraWrapper>div:nth-of-type(3){
        flex-flow: column;
    }

    .oguraWrapper>div:nth-of-type(3) .txtBox{
        width: 100%;
    }

    .oguraWrapper .txtBox:first-child{
        padding-right: 0;
        border-right: none;
        border-bottom: 1px solid #000;
        padding-bottom: 50px;
        margin: 0 auto 38px;
    }

    .oguraWrapper .txtBox:last-child{
        padding-left: 0;
        margin: 0 auto;
    }

    .oguraWrapper .txtBox:last-child .linkBtn{
        margin: 40px auto 0;
    }

    .shimashimaItemList{
        padding: 30px 0 20px;
    }

    .shimashimaItemList ul{
        border: none;
        flex-wrap: nowrap;
        flex-flow: column;
    }

    .shimashimaItemList li{
        padding-bottom: 60px;
        margin-bottom: 30px;
    }

    .shimashimaItemList li a{
        padding: 0;
    }

    .shimashimaItemList li:nth-child(1),
    .shimashimaItemList li:nth-child(4),
    .shimashimaItemList li:nth-child(7),
    .shimashimaItemList li:nth-child(10){
        width: 100%;
        border-bottom: 1px solid #000;
    }

    .shimashimaItemList li:nth-child(2),
    .shimashimaItemList li:nth-child(5),
    .shimashimaItemList li:nth-child(8),
    .shimashimaItemList li:nth-child(11){
        width: 100%;
        border: none;
        border-bottom: 1px solid #000;
    }

    .shimashimaItemList li:nth-child(3n){
        width: 100%;
    }

    .shimashimaItemList li:nth-child(11),
    .shimashimaItemList li:nth-child(12){
        display: none;
    }

    .styleBox{
        flex-flow: column;
        border: none;
        margin-bottom: 0;
    }

    .styleBox .styleBoxContent{
        width: 100%;
        padding-bottom: 50px;
    }

    .styleBox .styleBoxContent:first-child{
        border: none;
        border-bottom: 1px solid #000;
        margin-bottom: 50px;
    }

    .styleBox .styleBoxContent:last-child{
        border-bottom: 1px solid #000;
    }

    .styleBox .styleBoxContent .styleBoxInner{
        width: 90%;
        padding: 0;
    }

    .styleBox .styleBoxContent:first-child .styleBoxInner{
        margin: 0 auto;
    }

    .styleBox .styleBoxContent:last-child .styleBoxInner{
        margin: 0 auto;
    }

    .styleBox .styleBoxInner .txtBox h2{
        font-size: 22px;
    }

    .sukiLineupContainer{
        padding: 0;
    }

    .sukiLineupContainer h2{
        font-size: 20px;
        margin-bottom: 80px;
    }

    .sukiLineupWrapper{
        padding: 70px 0 50px;
    }

    .swiper-container, .swiper-event{
        margin-top: 0;
    }

    .slideShimashima .swiper-button-prev{
        transform: scale(1.0);
        top: 30%;
        left: 5px;
    }

    .slideShimashima .swiper-button-next{
        transform: scale(1.0);
        top: 30%;
        right: -10px;
    }

    .sukiLineupContainer .contentVisual{
        margin-bottom: 50px;
    }

    .contentVisual li p:last-child{
        font-size: 20px;
    }
    
    .sukiLineupContainer li{
        margin-bottom: 40px;
    }

    .sukiLineupContainer li:after{
        bottom: -2px;
    }

    .sukiLineupWrapper>p{
        width: 90%;
        margin: 0 auto 80px;
        text-align: left;
    }

    .snsLinks{
        padding: 60px 0 40px;
    }

}
