@charset "utf-8";



/* index2024 */

@media (min-width: 641px) {.sp{display:none !important;}}
@media (max-width: 640px) {.pc{display:none !important;}}




/* article */

main > article {
    width:100%;
    padding:0;
    display:flex; flex-flow:row wrap; justify-content:center; align-content:center; align-items:center; flex-direction:column;
}
main > article > section {
    width:90%;
    max-width:1200px;
    margin:100px auto 0;
    padding:0;
    display:flex; flex-flow:row wrap; justify-content:space-between; align-content:center; align-items:center;
}
main > article > section > img {width:50%;}
main > article > section > div {width:45%;}

main > article > section h2 {
    width:100%;
    margin:0 0 20px;
    font-size:0.8rem;
    font-weight:400;
    text-align:center;
    line-height:1.4;
}
main > article > section h2 span {
    display:block;
    /*
    font-family: YakuHanMP, 'EB Garamond', 'Noto Serif JP', '游明朝', YuMincho, 'Hiragino Mincho ProN W3', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
    */
    font-family:YakuHanJP, 'Helvetica Neue', Helvetica, Arial, Verdana, Roboto, 'Noto Sans JP', '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Hiragino Sans W3', 'Meiryo UI', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-size:2.3rem;
}
main > article > section > div p {text-align:center;}
main > article > section > div a {margin:20px auto 0;}

@media (min-width: 641px) {
    
    main > article > section:nth-child(even) > img {order:2;}
    main > article > section:nth-child(even) > div {order:1;}
}

@media (max-width: 640px) {
    
    main > article {padding:50px 0 80px;}
    
    main > article > section {
        padding:110px 0 0;
        position:relative;
    }
    main > article > section > img ,
    main > article > section > div {width:100%;}
    
    main > article > section > img {}
    
    main > article > section > div {margin:20px 0 0;}
    main > article > section > div a {width:360px;}
    
    main > article > section h2 {
        margin:0;
        font-size:1.1rem;
        line-height:1.3;
        position:absolute; top:0; left:0;
    }
    main > article > section h2 span {
        font-size:3rem;
    }
}



/* topics */

#topics {
    width:100%;
    margin-top:0;
    display:flex; flex-flow:row wrap; justify-content:center; align-content:center; align-items:center; flex-direction:column;
}
#topics a.btn {width:300px; margin:25px 0 0;}

@media (max-width: 640px) {
    
    #topics .postList article a {width:100%;}
    #topics a.btn {margin:80px 0 0;}
}



/* bridalfair */

#bridalfair ul {
    width:100%;
    margin:20px 0 100px;
    display:flex; flex-flow:row wrap; justify-content:space-between; align-content:center; align-items:center;
}
#bridalfair li {
    width:32%;
}
#bridalfair a {
    display:block;
    position:relative;
}

#bridalfair li a span {
    width: 100%;
	height:100%;
    display:flex; flex-flow:row wrap; justify-content:center; align-content:center; align-items:center;
    position:absolute; top:0; bottom:0; left:0; right:0;
	color:#fff;
	font-size:1.25em;
	font-weight:normal;
	line-height:1.5;
	text-align:center;
	text-decoration:none;
    background:rgba(95,90,85,.5);
    transition: .3s;
    z-index:10;
}
#bridalfair li a:hover span {background:rgba(95,90,85,.3);}

#bridalfair li a span::before {
    content:"";
    width:100%;
    height:40px;
    margin:0 0 10px;
}
#bridalfair li img {transition: .2s; z-index:1;}
#bridalfair li img:hover {opacity: .8;}

#bridalfair li:nth-child(2) a span::before {background:url("../img/index2024/fair01.svg") top center no-repeat; background-size:contain;}
#bridalfair li:nth-child(3) a span::before {background:url("../img/index2024/fair02.svg") top center no-repeat; background-size:contain;}

@media (max-width: 640px) {
    
    #bridalfair li {width:49%;}
    #bridalfair li:nth-child(1) {width:100%; margin-bottom:12px;}
}



/* fairBox */

#fairBox {
    width:90%;
    max-width:850px;
    margin-bottom:100px;
    padding:0;
}
#fairBox #fairCat {width:100%;}
#fairBox #fairCat .inner {padding:0;}
#fairBox #fairCat ul {width:100%;}
#fairBox #calendar {width:100%;}
#fairBox #calendar .inner {padding:0;}
#fairBox #calendar table a {display:inline;}

#fairBox p.comment {
    width:100%;
    margin: 0 auto 30px;
    display:flex; flex-flow:row wrap; justify-content:center; align-content:center; align-items:center;
    text-align:center;
    line-height:1.5;
}
#fairBox p.comment span {
    padding:10px 20px;
    border-radius:20px;
    background:#ffdae7;
}

@media (max-width: 640px) {
    
    #fairBox #fairCat h2 {position:relative; margin-top:60px;}
    #fairBox #calendar h2 {position:relative;}
    #fairBox #fairCat ul li {width:48%; margin:0;}
    #fairBox #fairCat ul li a {width:100%;}
    
    #fairBox p.comment {margin:120px auto 0;}
}



/* article > a */

article > a.month-banner {
    width:90%;
    max-width:700px;
    margin:100px 0 0;
}
article > a.month-banner:hover {opacity: .6;}

article > a.stamp_rally {
    width:90%;
    max-width:700px;
}
article > a.stamp_rally img {width:100%;}
article > a.stamp_rally:hover {opacity: .6;}

article a.weddingpark-award {
    width:90%;
    max-width:450px;
    margin:50px 0 0;
    font-size:1.2rem;
    text-align:center;
    text-decoration:none;
}
article a.weddingpark-award h3 {
    color:#4d4d4d;
    font-weight:normal;
}
article a.weddingpark-award img {
    width:100%;
    max-width:300px;
    margin:10px 0 20px;
}
article a.weddingpark-award span {
    display:block;
    color:#fff;
    font-size:0.9rem;
    background:#3d2b05;
    transition: .2s;
}
article a.weddingpark-award:hover h3 {color:#4d4d4d;}
article a.weddingpark-award:hover span {
    background:#c99b40;
}

@media (max-width: 640px) {
    
    article a.weddingpark-award {max-width:100%;}
}



/* access */

#access {display:flex; flex-flow:row wrap; justify-content:center; align-content:center; align-items:center; flex-direction:column;}
#access iframe {
    width:100%;
    max-width:1080px;
    height:350px;
    margin:10px auto 40px;
    display:block;
}
#access dl {text-align:center;}
#access dl dt {
    font-size:0.95rem;
    font-weight:700;
}
#access dl dd {line-height:1.7;}
#access dl a {
    display:block;
    font-family: YakuHanMP, 'Playfair Display', 'Noto Serif JP', '游明朝', YuMincho, 'Hiragino Mincho ProN W3', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
	font-size: 2em;
	text-decoration:none;
}
#access dl a .svg {
	width: 0.75em;
	height:0.75em;
	margin:0 8px 8px 0;
	stroke-width: 1.5px;
	vertical-align:middle;
}
#access a.btn {
    width:300px;
    margin:25px 0 0;
}

@media (max-width: 640px) {
    
    #access iframe {height:200px;}
}



/* bannerList */

ul.bannerList {
	width:100%;
	margin:100px auto 0;
    padding: 0 0 150px;
}
ul.bannerList li a {padding:0 10px; display:block;}
ul.bannerList li a img {max-width:100%;}
ul.bannerList li a:hover {opacity:.6;}

ul.bannerList .slick-dots {bottom:100px;}
ul.bannerList .slick-dots li{width:auto;}
ul.bannerList .slick-dots li:hover button,
ul.bannerList .slick-dots li.slick-active button {background:none;}
ul.bannerList .slick-dots li button:before {font-size:15px;}

.slick-dotted.slick-slider {margin-bottom:0 !important;}

@media (max-width: 640px) {
    
    ul.bannerList {margin:80px auto 0;}
    ul.bannerList li {width:100%;}
}


/* bannerList-noSlide */

ul.bannerList-noSlide {
	width:90%;
	max-width:1000px;
	margin:100px auto 0;
    padding: 0 0 150px;
	display:flex; flex-flow:row wrap; justify-content:space-between; align-content:center; align-items:center;
}
ul.bannerList-noSlide li {width:49%; margin:0 0 20px;}
ul.bannerList-noSlide li a {display:block;}
ul.bannerList-noSlide li a img {max-width:100%;}
ul.bannerList-noSlide li a:hover {opacity:.6;}

@media (max-width: 640px) {
	
	ul.bannerList-noSlide li {width:49%;}
}


