/*
Theme Name:narutaki_sp
Description:鳴滝酒造スマホ用
Author:maru-sin.co.jp
Version:1.0
*/

@import url(https://fonts.googleapis.com/css?family=Lato:400,700);
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);

body{
    font-family: "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, Lato, "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    color: #333;
    margin: 0;
    line-height: 1.75;
    font-size: .875rem;
    font-weight: 300;
}
div,p{
    
    box-sizing: border-box;
}
ul{
    padding-left: 0;
    list-style: none;
    font-size: 0;
}
li{
    font-size: .875rem;
}
a{
    text-decoration: none;
    color: #333;
}
a:hover{
    text-decoration: underline;
}
a img{
    transition:  opacity .3s;
}
a:hover img{
    opacity: .7;
}
img{
    max-width: 100%;
}
.cf:after {
    content:" ";
    display:block;
    clear:both;
}
.serif{
    font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", Georgia, "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}
.o{
    font-family: serif;
}
/*.vertical{
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
}*/
.container{
    padding: 0 20px;
}
.same-height{
    display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}
.pc{
    display: none;
}
.lang-en{
    display: none;
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", sans-serif;
}
.lang-en.serif, .serif .lang-en{
    font-family: Georgia, Times New Roman, serif;
}


/* iOSでのデフォルトスタイルをリセット */
button {
  border-radius: 0;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  cursor: pointer;
    padding: 0;
    background: transparent;
}
button::-webkit-search-decoration {
  display: none;
}
button::focus {
  outline-offset: -2px;
}


/*header*/
header{
    position: fixed;
    z-index: 1000;
    top: 0;
    width: 100%;
    box-shadow: 0 2px 4px rgba(0,0,0,.3);
}
header .logo{
    background-image: url(images/bg_header.jpg);
    background-size: cover;
    margin: 0;
    padding: 15px 20px;
    line-height: 0;
    position: relative;
}
header button{
    position: absolute;
    top: 22px;
    right: 20px;
}
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
    width: 28px;
    height: 17px;
}
.menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #333;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  top: 8px;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}
.menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(8px) rotate(-45deg);
  transform: translateY(8px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-8px) rotate(45deg);
  transform: translateY(-8px) rotate(45deg);
}
header .menu{
    display: none;
    height: calc(100vh - 60px);
    background-image: url(images/bg_header_menu.jpg);
    overflow-y: scroll;
    border-top: solid 1px rgba(61,61,114,.5);
}
header .menu li{
    border-bottom: solid 1px rgba(61,61,114,.5);
}
header .menu li a{
    display: block;
    padding: .8em 20px;
    position: relative;
}
header .menu li a:after{
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto;
    vertical-align: middle;
    width: 7px;
    height: 7px;
    border-top: 1px solid #3d3d72;
    border-right: 1px solid #3d3d72;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
header .tel{
    display: block;
    text-align: center;
    margin-top: 15px;
    border: 1px solid #3d3d72;
    padding: 18px;
}
header .tel img{
    vertical-align: bottom;
}
header .contact{
    display: block;
    text-align: center;
    background-image: url(images/bg_header_contact.jpg);
    background-size: cover;
    margin-top: 15px;
    padding: 20px 10px;
}
header .contact:last-of-type{
    margin-bottom: 30px;
}
header .contact img{
    vertical-align: bottom;
}
header .language{
    margin: 30px 0 15px;
    font-size: 0;
}
header .language a{
    font-size: 1rem;
    line-height: 3;
    display: inline-block;
    width: 48%;
    text-align: center;
    border: 1px solid #3d3d72;
    box-sizing: border-box;
}
header .language .jp{
    margin-right: 4%;
}
main{
    margin-top: 60px;
}

/*スライド*/
.swiper-container img{
    width: 100%;
    vertical-align: bottom;
}

/*トップメッセージ*/
#topMessage{
    background-image: url(images/bg_top_message.jpg);
    background-size: cover;
    background-position: center;
    padding: 60px 0 50px;
    text-align: center;
}

/*トップトピックス*/
#topTopics{
    background-image: url(images/bg_top_topics1.jpg);
    background-size: cover;
    background-position: center;
    padding: 25px 20px;
}
#topTopics .language{
    margin: 0 0 15px;
    font-size: 0;
}
#topTopics .language a{
    font-size: 1rem;
    line-height: 1;
    display: inline-block;
    width: 48%;
    text-align: center;
    /*border: 1px solid #3d3d72;*/
    box-sizing: border-box;
    /*background-image: url(images/bg_header.jpg);*/
    color: #fff;
    text-decoration: underline;
}
#topTopics .language .jp{
    margin-right: 4%;
}
#topTopics .bannerArea{
    margin-bottom: 15px;
    text-align: center;
}
#topTopics .bannerArea img{
    vertical-align: bottom;
    width: 100%;
}
#topTopics .topicsArea{
    background-image: url(images/bg_top_topics2.jpg);
    background-size: cover;
    background-position: center;
    padding: 20px 15px 15px;
    text-align: center;
}
#topTopics .topicsArea h2{
    line-height: 1;
    margin: 0 0 10px;
}
#topTopics .topicsArea li{
    border-bottom: solid 1px #d4b572;
    text-align: left;
    padding: .8em 0;
    line-height: 1.5;
}
#topTopics .topicsArea li:first-child{
    border-top: solid 1px #d4b572;
}
#topTopics .topicsArea li .date{
    color: #666;
}
#topTopics .topicsArea li p{
    margin: .2em 0 0;
}
#topTopics .topicsArea > a{
    margin-top: 15px;
    display: inline-block;
}
#topTopics .topicsArea > a img{
    vertical-align: bottom;
}

/*トップ受賞歴*/
#topPrize{
    /* 表示画像の高さ ÷ 表示画像の幅 × 100 */
    padding-top: 69.33%;
    background-image: url(images/bg_top_prize.jpg);
    background-size: contain;
    background-position: top;
    background-repeat: no-repeat;
    position: relative;
}
#topPrize .topPrize-heading{
    position: absolute;
    top: 0;
    left: 0;
}
#topPrize .topPrize-heading h2{
    margin: 20px 0 10px;
}
#topPrize .topPrize-heading h2 img{
    vertical-align: bottom;
}

/*トップ商品紹介*/
#topProduct{
    background-image: url(images/bg_top_product2.png),url(images/bg_top_product1.jpg);
    background-size: auto,contain;
    background-repeat: no-repeat,repeat-y;
    background-position: top 3px right,center;
    padding: 20px 20px 50px;
    text-align: center;
    color: #fff;
}
#topProduct h2{
    margin: 18px 0 10px;
}
#topProduct h2 + p{
    margin: 0 0 40px;
}
#topProduct li:not(:last-child){
    margin-bottom: 50px;
}
#topProduct li .productImageArea{
    position: relative;
}
#topProduct li .productImage{
    width: 100%;
}
#topProduct li .productName-b{
    position: absolute;
    top: -15px;
    right: 9px;
}
#topProduct li .productName{
    position: absolute;
    top: -19px;
    right: 14px;
}
@media (max-width: 340px){
    #topProduct li .productName-b,#topProduct li .productName{
        width: 19%;
        height: auto;
    }
}
#topProduct li p{
    margin: .3em 0 1.2em;
}

/*トップコンテンツ*/
.topContentsImage{
    font-size: 0;
}
.topContentsImage img{
    width: 100%;
}
.topContents{
    text-align: center;
    color: #fff;
    background-image: url(images/bg_top_contents2.png),url(images/bg_top_contents1.jpg);
    background-size:75%,cover;
    background-position: top 30% center,center;
    background-repeat: no-repeat,repeat;
    padding: 30px 0 25px;
}
.topContents h2{
    margin: 0 0 20px;
    line-height: 1;
}
.topContents h2 img{
    vertical-align: bottom;
}
.topContents p{
    margin: 0 0 20px;
    text-align: left;
}
.topContents a img{
    vertical-align: bottom;
}


/*トップ動画　PV紹介*/
#topmovie{
    background-image: url(images/bg_top_product2.png),url(images/bg_top_product1.jpg);
    /*background-size: auto,contain;*/
    background-repeat: no-repeat,repeat-y;
    background-position: top 3px right,center;
    padding: 20px 20px 50px;
    text-align: center;
    color: #fff;
}
#topmovie h2{
    margin: 18px 0 10px;
}
#topmovie h2 + p{
    margin: 0 0 40px;
}

/*トップ下部*/
#topBottom{
    background-image: url(images/bg_top_bottom.jpg);
    background-size: cover;
    background-position: center;
    padding: 35px 20px 30px;
}
#topBottom #facebook{
    margin-bottom: 42px;
    text-align: center;
}
#topBottom #facebook h2{
    margin: 0;
}
#topBottom #facebook h2 img{
    vertical-align: bottom;
}
#topBottom li{
    margin-bottom: 20px;
}
#topBottom li a{
    display: block;
    padding: 0 6px 6px 0;
}
#topBottom li a img{
    vertical-align: bottom;
    box-shadow: 6px 6px 0 #b41d1d;
    width: 100%;
}
/* ↓facebookなし設定 */
#topBottom{
    padding-top: 50px;
}
#topBottom #facebook{
    display: none;
}
/* ↑facebookなし設定 */

/*footer*/
footer{
    background-image: url(images/bg_footer.jpg);
    background-size: cover;
    background-position: center;
    color: #fff;
    padding: 22px 20px 0;
}
footer .footerMenu li{
    border-top: solid 1px rgba(255,255,255,.3);
}
footer .footerMenu li:last-child{
    border-bottom: solid 1px rgba(255,255,255,.3);
}
footer .footerMenu li a{
    color: #fff;
    display: block;
    padding: .8em 10px;
    position: relative;
}
footer .footerMenu li a:after{
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto;
    vertical-align: middle;
    width: 7px;
    height: 7px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
footer dl{
    margin: 35px 0 30px;
    text-align: center;
}
footer dl dt{
    margin-bottom: 10px;
}
footer dl dd{
    margin-left: 0;
    line-height: 1.8;
}
footer dl dd a{
    color: #fff;
}
footer .sns{
    display: block;
    width: 40px;
    margin: 0 auto 20px;
}
footer .copyright{
    border-top: solid 1px rgba(255,255,255,.3);
    font-size: .625rem;
    padding: 2em 0;
    text-align: center;
    color: #ccc;
}

/*サブページ*/
.subpage .subTopimage{
    text-align: center;
    height: 150px;
    background-size: cover;
    background-position: bottom;
}
.subpage .subTop{
    margin: 0;
    line-height: 150px;
}
.subpage .subTop img{
    width: 22px;
    vertical-align: middle;
}
.subpage .breadcrumb{
    background-image: url(../pc/images/bg_breadcrumb.jpg);
    background-size: cover;
    padding: .5em 20px;
    color: #fff;
    font-size: .8rem;
    line-height: 1.5;
}
.subpage .breadcrumb a{
    color: #fff;
}
.subpage-bg{
    background-image: url(../pc/images/bg_sub1.png),url(../pc/images/bg_sub2.jpg);
    background-position: top;
    background-size: 180%,auto;
    box-sizing: border-box;
    padding: 50px 0 100px;
}
.subpage section:not(:last-child){
    margin-bottom: 80px;
}
.subpage section h2{
    text-align: center;
    margin: 0 0 20px;
}

/*サブ会社概要*/
#company .subTopimage{
    background-image: url(../pc/images/bg_subh_company.jpg);
}
#company #subGreeting h2 img{
    width: 174px;
}
#company #subGreeting .cf > img{
    width: 100%;
}
#company #subGreeting .cf p{
    margin: 10px 0;
    line-height: 2;
}
#company #subGreeting .cf p:last-child{
    text-align: right;
}
#company #subHistory h2 img{
    width: 49px;
}
#company #subHistory .history-img img{
    width: 100%;
    vertical-align: bottom;
}
#company #subHistory .history-text{
    margin: 1.5em 0 1.7em;
    line-height: 2;
}
#company #subHistory .history-content:last-child .history-text{
    margin-bottom: 0;
}
#company #info h2 img{
    width: 103px;
}
#company #info table{
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
}
#company #info table tr{
    border-top: solid 1px #d4b572;
}
#company #info table tr:last-child{
    border-bottom: solid 1px #d4b572;
}
#company #info table th{
    text-align: left;
    font-weight: normal;
    padding: .5em 0;
    line-height: 1.5;
    width: 5em;
}
#company #info table td{
    padding: .5em 0;
    line-height: 1.5;
}
#company #info table td a{
    color: #17499c;
    text-decoration: underline;
}
#company #info .cf img{
    width: 100%;
    margin-bottom: 20px;
    vertical-align: bottom;
}
#company #karatsu h2 img{
    width: 280px;
}
#company #karatsu > p{
    margin: 0 0 2em;
}
#company #karatsu h3{
    text-align: center;
    font-weight: normal;
    font-size: 1.125rem;
    margin: 0 0 1em;
    line-height: 1.3;
}
#company #karatsu li:not(:last-child){
    margin-bottom: 20px;
}
#company #karatsu li:nth-child(4){
    margin-bottom: 40px;
}
#company #karatsu li img{
    width: 100%;
    vertical-align: bottom;
}
#company #karatsu .photo li .teikyo{
    font-size: .75rem;
    margin: 0;
    text-align: right;
}
#company #karatsu .banner{
    margin-top: 70px;
}

/*サブこだわり*/
#kodawari .subTopimage{
    background-image: url(../pc/images/bg_subh_kodawari.jpg);
}
#kodawari .subpage-bg{
    padding-top: 0;
}
#kodawari .subTop img{
    width: 46px;
}
#kodawari h2 img{
    margin: 0;
}
#kodawari #kodawari-narutaki{
    background-image: url(../pc/images/bg_sub_kodawari.png);
    background-size: cover;
    background-position: center;
    padding-top: 50px;
    padding-bottom: 50px;
    margin-bottom: 80px;
}
#kodawari #kodawari-narutaki h2{
    margin: 0 0 15px;
}
#kodawari #kodawari-narutaki h2 img{
    width: 224px;
}
#kodawari #kodawari-narutaki p{
    margin: 0;
    line-height: 2;
    font-size: 1rem;
}
#kodawari .kodawariContent .cf{
    position: relative;
}
#kodawari .kodawariContent h2{
    position: absolute;
    top: -15px;
    right: 20px;
}
#kodawari .kodawariContent:nth-of-type(even) h2{
    right: auto;
    left: 20px;
}
#kodawari .kodawariContent h2 img{
    width: 58px;
}
#kodawari .kodawariContent h2 + img + p{
    margin: 15px 0 0;
}
#kodawari .kodawariContent h2 + img{
    width: 100%;
}
#kodawari .kodawariContent li{
    padding-top: 90px;
    position: relative;
    display: inline-block;
    vertical-align: top;
    margin-top: 30px;
}
#kodawari .kodawariContent li:before{
    content: "";
    display: block;
    width: 80px;
    height: 80px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    background-size: cover;
}
#kodawari .kodawariContent li:nth-child(1):before{
    background-image: url(../pc/images/i_kodawari1.png);
}
#kodawari .kodawariContent li:nth-child(2):before{
    background-image: url(../pc/images/i_kodawari2.png);
}
#kodawari .kodawariContent li:nth-child(3):before{
    background-image: url(../pc/images/i_kodawari3.png);
}
#kodawari .kodawariContent li h3{
    text-align: center;
    font-size: 1.2rem;
    line-height: 1.2;
    margin: 1em 0 .5em;
}
#kodawari .kodawariContent li p{
    margin: 0;
}
#kodawari .kodawariContent li img{
    width: 100%;
    vertical-align: bottom;
}
#kodawari-kome h2 img{
    box-shadow: 4px 4px 0 #d4b572;
}
#kodawari-mizu h2 img{
    box-shadow: 4px 4px 0 #1e50a1;
}
#kodawari-waza h2 img{
    box-shadow: 4px 4px 0 #b41d1d;
}

/*サブ商品紹介*/
#product .subTopimage{
    background-image: url(../pc/images/bg_subh_product.jpg);
}
#product section{
    margin-top:-100px;
  padding-top:100px;
}
#product h2{
    position: relative;
    margin-bottom: 12px;
}
#product h2 .ruby{
    position: absolute;
    font-size: .7rem;
    font-weight: 300;
    top: -18px;
    left: 0;
    right: 0;
    margin: auto;
}
#product h2 + p{
    text-align: center;
    margin: 0 0 30px;
}
#product ul{
    margin: 0 -1%;
}
#product li{
    text-align: center;
    width: 50%;
    display: inline-block;
    padding: 0 1%;
    box-sizing: border-box;
}
#product li:not(:nth-last-child(-n+2)){
    margin-bottom: 30px;
}
#product li img{
    vertical-align: bottom;
}
#product .productName{
    font-size: 1.1rem;
    font-weight: bold;
    margin: 14px 0 8px;
    line-height: 1.25;
}
#product .productDescription{
    font-size: .8rem;
    margin: 0;
    text-align: left;
}
#product .productSize{
    font-size: .8rem;
    margin: 5px 0 0;
}
#product #taiko h2 img{
    width: 100px;
}
#product #kunonfukuhana h2 img{
    width: 141px;
}
#product #taki h2 img{
    width: 22px;
}
#product #shochu h2 img{
    width: 104px;
}
#product #umeshu h2 img{
    width: 49px;
}
#product .productBtn{
    text-align: center;
}
#product .productBtn p{
    margin: 1em 0 0;
    color: #cb0c0c;
}
#product .productBtn a:not(:last-child){
    display: block;
    margin-bottom: 3px;
}

/*サブ受賞歴*/
#prize .subTopimage{
    background-image: url(../pc/images/bg_subh_prize.jpg);
}
#prize .subpage-bg{
    padding-top: 0;
}
#prize .bgimg{
    /* 表示画像の高さ ÷ 表示画像の幅 × 100 */
    padding-top: 65%;
    background-size: contain;
    background-position: top;
    background-repeat: no-repeat;
    position: relative;
}
#prize .bgimg a{
    display: block;
    margin: 10px auto;
    text-align: center;
}
#prize .explanation h3{
    text-align: center;
    font-size: 1.2rem;
    margin: 30px 0 0;
}
#prize .explanation p{
    margin: 10px 0 0;
}
#prize #zenkoku .bgimg{
    background-image: url(../pc/images/bg_sub_prize1.jpg);
}
#prize #zenkoku .bgimg h2{
    position: absolute;
    top: 20px;
    left: 0;
    padding: 0 5px;
}
#prize #zenkoku .bgimg h2 img{
    width: 256px;
}
#prize #otherPrize .bgimg{
    background-image: url(../pc/images/bg_sub_prize2.jpg);
}
#prize #otherPrize .bgimg h2{
    position: absolute;
    top: 25px;
    left: 0;
    padding: 0 10px;
}
#prize #otherPrize .bgimg h2 img{
    width: 355px;
}
#prize #mainly h2{
    margin-bottom: 0;
}
#prize #mainly h2 img{
    width: 126px;
    vertical-align: bottom
}
#prize #mainly h2 + p{
    margin: 0 0 30px;
    text-align: center;
}
#prize #mainly table{
    width: 100%;
    text-align: center;
    border-collapse: collapse;
}
#prize #mainly table tr{
    border-bottom: solid 1px rgba(212,181,114,.6);
    line-height: 1.25;
}
#prize #mainly table tr:first-child{
    border-top: solid 1px rgba(212,181,114,.6);
}
#prize #mainly table td{
    padding: 1em .25em;
    font-size: .8rem;
}

/*サブお店*/
#store .subTopimage{
    background-image: url(../pc/images/bg_subh_store.jpg);
}
#store .subTop img{
    /*width: 45px;*/
    width: 27px;
}
#store h2 + p{
    text-align: center;
    margin: 0 0 20px;
    line-height: 1.5;
}
#store h3{
    font-size: 1.2rem;
    margin: 1em 0 .2em;
    text-align: center;
}
#store table{
    width: 100%;
    border-collapse: collapse;
}
#store table thead{
    background: rgba(212,181,114,.6);
    font-size: .9rem;
    line-height: 1.1;
}
#store table thead th{
    padding: .5em;
}
#store table thead th:first-child{
    width: 25%;
}
#store table thead th:last-child{
    border-right: solid 1px rgba(212,181,114,.6);
    width: 25%
}
#store table tbody tr{
    border-bottom: solid 1px rgba(212,181,114,.6);
    text-align: left;
    line-height: 1.2;
}
#store table tbody tr td{
    border-right: solid 1px rgba(212,181,114,.6);
    padding: .5em;
    font-size: .8rem;
}
#store table tbody tr td:first-child{
    border-left: solid 1px rgba(212,181,114,.6);
    width: 25%;
}
#store table tbody tr td:last-child{
    width: 25%;
}
#store table tbody tr td a{
    color: #17499c;
    text-decoration: underline;
}
#store #buy h2 img{
    width: 121px;
}
#store #drink h2 img{
    width: 123px;
}

/*サブトピックス*/
#topics .subTopimage{
    background-image: url(../pc/images/bg_subh_topics.jpg);
}
#topics .subTop img{
    width: 79px;
}
#topics li{
    border-bottom: solid 1px #d4b572;
    text-align: left;
    padding: .8em 0;
    line-height: 1.5;
}
#topics li:first-child{
    border-top: solid 1px #d4b572;
}
#topics li .date{
    color: #666;
}
#topics li p{
    margin: .2em 0 0;
}
#topics .single-date{
    color: #666;
    margin: 0;
}
#topics .single-heading{
    margin: 1rem 0;
    line-height: 1.4;
    font-size: 1.2rem;
}
#topics .subpage-bg p a{
    color: #17499c;
    text-decoration: underline;
}
#topics .subpage-bg p img{
    max-width: 100%;
    height: auto;
}

/*ページネーション*/
.pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 40px 0 0;
    position: relative;
    font-size: 13px;
}

.pagination span, .pagination a {
    display: block;
    width: auto;
    margin: 4px;
    padding: 8px;
    border: 1px solid #3d3d72;
    background: rgba(255,255,255,.5);
    text-decoration: none;
    text-align: center;
    line-height: 16px;
}

/* ページ番号 */
.pagination .pager{
    width: 32px;
}

/* ホバー時 & 現在のページ */
.pagination a:hover,
.pagination .current  {
    color: #fff;
    border-color: #3d3d72;
    background-color: #3d3d72;
}

/* 前へ */
.pagination a.before {
    margin-right: 16px;
}
/* 次へ */
.pagination a.next {
    margin-left: 16px;
}
/* 最初へ */
.pagination a.first {}
/* 最後へ */
.pagination a.last {}

/* Page x / y */
.pagination span.page_num {
    display: none;
}

/*お問い合わせ*/
#contact .subTopimage,#thanks .subTopimage{
    background-image: url(../pc/images/bg_subh_contact.jpg);
}
form .form-group {
    margin-bottom: 1.5rem;
}
.form-control {
    display: block;
    width: 100%;
    padding: .375rem .75rem;
    font-size: 1rem;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
    box-sizing: border-box;
}
form .control-label{
    position: relative;
    line-height: 1.5;
    min-height: 2.25rem;
    margin-bottom: 0;
    padding: .375rem 2.6rem 0 0;
}
form .hissu:after{
    content: "必須";
    position: absolute;
    font-size: .7em;
    border: solid 1px #ed2214;
    top: 0;
    bottom: 0;
    margin: auto 1em;
    display: inline-block;
    height: 1.6em;
    line-height: 1.6em;
    padding: 0 .5em;
    color: #ed2214;
}
form .confirmSubmit{
    width: 100%;
    height: 3rem;
    color: #fff;
    background: #3d3d72;
    font-size: 1.2rem;
    display: block;
    margin: 2em auto 0;
    padding: 0;
    transition:  opacity .3s;
    border: 0;
    border-radius: 0;
    -webkit-appearance: none;
}
form .confirmSubmit:hover{
    cursor: pointer;
    opacity: .7;
}

.row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
label,.input_name,.input_email,.input_content{
    position: relative;
    width: 100%;
    min-height: 1px;
    box-sizing: border-box;
}
#contact .privacypolicy{
    margin: 30px 0 0
}

/* =========================================
   【SP用】必須マークの縦潰れ防止
========================================= */
.hissu,
.control-label.hissu,
.control-label.hissu::after,
.hissu::after {
    white-space: nowrap !important;
}

/* =========================================
   【SP用】生年月日（スマホ用コンパクト横並び）
========================================= */
.custom-birth-wrap {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    width: 100% !important;
    margin-top: 5px !important;
}

.custom-birth-wrap p {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 0 !important;
    width: 100% !important;
}

.birth-item {
    display: inline-flex !important;
    align-items: center !important;
    white-space: nowrap !important;
}

.birth-item .wpcf7-form-control-wrap {
    display: inline-block !important;
    width: auto !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
}

.birth-item input.birth-input-year {
    width: 75px !important;
    margin: 0 !important;
    text-align: center;
}

.birth-item input.birth-input-sm {
    width: 55px !important;
    margin: 0 !important;
    text-align: center;
}

.birth-text {
    margin-left: 3px !important;
    white-space: nowrap !important;
}

/* =========================================
   【SP用】ご住所・郵便番号（縦積み＋郵便番号横並び）
========================================= */
.custom-address-wrap {
    width: 100% !important;
    margin-top: 5px !important;
}

.custom-address-wrap p {
    margin: 0 !important;
}

.zip-row {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    margin-bottom: 8px !important;
    width: 100% !important;
}

.zip-row p {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
}

.zip-row .wpcf7-form-control-wrap {
    display: inline-block !important;
    width: auto !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
}

.zip-row input.zip-input-1 {
    width: 55px !important;
    margin: 0 !important;
    text-align: center;
}

.zip-row input.zip-input-2 {
    width: 70px !important;
    margin: 0 !important;
    text-align: center;
}

.zip-mark {
    margin-right: 5px !important;
    white-space: nowrap !important;
}

.zip-hyphen {
    margin: 0 5px !important;
    white-space: nowrap !important;
}

.address-row {
    width: 100% !important;
}

.address-row input.address-input-main {
    width: 100% !important;
    box-sizing: border-box !important;
}

/*ふるさとチョイス*/
.furusato {
    text-align: center;
    margin-top: 35px;
}
.furusato img{
    vertical-align: middle;
    max-width: 100%;
    height: auto;
}
.furusato-sp {
    text-align: center;
    margin: 30px 0 15px;
}
.furusato-sp img{
    vertical-align: middle;
    max-width: 100%;
    height: auto;
}