@charset 'utf-8';
/*
**********************************************************************

* style.css

*********************************************************************
*/

body
{
    background: #fff;
}

/* =========================================================
Contents
========================================================= */
#Contents
{
    position: relative;
    z-index: 0;
    text-align:left;

    overflow: hidden;

    width: 100%;
    line-height: 1.6;
}

@media only screen and (max-width: 768px)
{
    #Contents
{
}
}

/* =========================================================
common
========================================================= */
.leadTxt
{
    font-size: 32px;
    font-weight: bold;

    text-align: center;
}
.blueBtnMod
{
    line-height: 1;

    text-align: center;
}
.blueBtnMod a
{
    font-size: 18px;
    font-weight: bold;

    display: inline-block;

    padding: 5px;

    text-decoration: none;

    color: #fff;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    background: #4ec3f4;
}
.blueBtnMod a img
{
    margin-top: -2px;
    margin-left: 5px;

    vertical-align: middle;
}
.ribon img
{
    max-width: 100%;
    height: auto;
}
@media only screen and (max-width: 768px)
{
    #Contents .inner
    {
        max-width: 560px;
    }
    .leadTxt
    {
        font-size: 17px;
    }
    .blueBtnMod
    {
    }
    .blueBtnMod a
    {
        padding: 10px 15px;
    }
    .blueBtnMod a img
    {
        margin-left: 10px;
    }
}
/*
===================================*/
.kvSect
{
    padding-bottom: 50px;

    background: url(../images/bg_gray.png) repeat 0 0 #f0f0f0;
}
.kvSect .kvBlock
{
    position: relative;
}
.kvSect .kvBlock .kvbg01
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    width: 100%;
}
.kvSect .kvBlock .bgImg
{
    height: 600px;

    background: #333;
    overflow:hidden;
}
.kvSect .kvBlock .bgImg img
{
    display: none;
}
.kvSect .kvBlock.noMovie .bgImg img
{
    display: block;
}
.kvSect .kvbg02
{
    position: absolute;
    bottom: 0;
    left: 0;

    width: 100%;
}

.kvSect #KvCover
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    background: rgba(0,0,0,.3);
}

.kvSect .kvbg01 img,
.kvSect .kvbg02 img
{
    width: 100%;
    height: auto;
}
.kvSect .bgImg img,
.kvSect .bgImg video
{
    width: 100%;
    height: auto;

    vertical-align: top;
}
.kvSect .bgImg video
{
    background: #333;
}
.kvSect .kvBlock .txtImg img
{
    position: absolute;
    top: 24%;
    right: 0;
    left: 0;

    margin: auto;
}
.kvSect .leadBlock .ribon
{
    position: absolute;
    top: -190px;
    right: -10px;
}
.kvSect .leadBlock
{
    padding: 20px 30px 0;
}
.kvSect .leadBlock .leadTxt
{
    margin-bottom: 20px;
}
.kvSect .leadBlock .mainTxt01
{
    font-size: 16px;

    margin-bottom: 30px;
}
.kvSect .leadBlock .itemList
{
    text-align: center;
}
.kvSect .leadBlock .itemList li
{
    display: inline-block;

    width: 205px;
    padding: 0 45px;

    text-align: center;
}
.kvSect .leadBlock .itemList li img
{
    max-width: 100%;
    height: auto;
}
.kvSect .leadBlock .itemList li .txt
{
    width: 130px;
    height: auto;
    margin-top: 10px;
}
@media only screen and (max-width: 768px)
{
    .kvSect
    {
        padding-bottom: 30px;
    }
    .kvSect .kvBlock
    {
    }
    .kvSect .kvBlock .bgImg
    {
        height: 355px;
        min-height: inherit;
    }
    .kvSect .kvBlock .bgImg img
    {
        position: absolute;
        left: 50%;

        display: block;

        width: 768px;
        margin-left: -384px;
    }
    .kvSect .kvBlock .bgImg video
    {
        display: none;
    }

    .kvSect .kvBlock .txtImg img
    {
        top: 28%;

        width: 280px;
        height: auto;
    }
    .kvSect .leadBlock .ribon
    {
        top: -100px;
        right: 5px;

        width: 130px;
    }
    .kvSect .leadBlock
    {
        padding: 25px 15px 0;
    }
    .kvSect .leadBlock .leadTxt
    {
        margin-bottom: 5px;
    }
    .kvSect .leadBlock .mainTxt01
    {
        font-size: inherit;

        margin-bottom: 20px;
    }
    .kvSect .leadBlock .itemList
    {
    }
    .kvSect .leadBlock .itemList li
    {
        width: 32%;
        padding: 0;
    }
    .kvSect .leadBlock .itemList li img
    {
    }
    .kvSect .leadBlock .itemList li .txt
    {
    }
}
/*
===================================*/

.topicsSect .inner
{
    padding: 90px 0 95px;
}
.topicsSect .sectTit
{
    margin-bottom: 30px;

    text-align: center;
}
.topicsSect .leadTxt
{
    margin-bottom: 25px;
}
.topicsSect .mainTxt01
{
    font-size: 16px;

    margin-bottom: 25px;
    padding: 0 20px;
}
.topicsSect .infoBlock
{
    position: relative;

    margin-bottom: 60px;
    padding: 0 20px;
}
.topicsSect .infoBlock .photo
{
    position: absolute;
    top: -20px;
    right: -15px;
}
.topicsSect .infoBlock .photo .illustPen
{
    position: absolute;
    right: -20px;
    bottom: -70px;
}
.topicsSect .infoBlock .photo .illustCap
{
    position: absolute;
    right: 0;
    bottom: -80px;
}
.topicsSect .infoBlock .popTxt
{
    margin-bottom: 10px;
}
.topicsSect .infoBlock .popTxt img
{
    width: 195px;
    height: auto;
}
.topicsSect .infoBlock .itemList
{
    width: 400px;
}
.topicsSect .infoBlock .itemList li
{
    font-size: 22px;

    position: relative;

    margin-bottom: 20px;
    padding-bottom: 20px;
    padding-left: 75px;

    border-bottom: 2px dotted #4ec3f4;
    background: url(../images/top/topics_icon_list.png) no-repeat 30px 2px;
}
.topicsSect .infoBlock .itemList li.item1:after,
.topicsSect .infoBlock .itemList li.item3:after
{
    position: absolute;

    content: '';

    background: no-repeat 0 0;
}
.topicsSect .infoBlock .itemList li.item1:after
{
    top: -125px;
    left: 250px;

    width: 412px;
    height: 100px;

    background-image: url(../images/top/topics_arrow01-pc.png);
}
.topicsSect .infoBlock .itemList li.item3:after
{
    top: 45px;
    left: 290px;

    width: 160px;
    height: 44px;

    background-image: url(../images/top/topics_arrow02-pc.png);
}
.topicsSect .btmLead
{
    font-size: 24px;
    font-weight: bold;

    margin-bottom: 30px;
    padding-bottom: 25px;

    text-align: center;

    background: url(../images/top/topics_line01.png) no-repeat center bottom;
}
.topicsSect .btmLead .muryo
{
    font-size: 36px;

    color: #4ec3f4;
}
.topicsSect .consultBtn a
{
    padding: 8px 10px;
}
.topicsSect .consultBtn a img
{
    width: auto;
    height: 14px;
}
@media only screen and (max-width: 768px)
{
    .topicsSect .inner
    {
        padding: 50px 0;
    }
    .topicsSect .sectTit
    {
        margin-bottom: 0;
    }
    .topicsSect .sectTit img
    {
        width: 135px;
        height: auto;
    }
    .topicsSect .leadTxt
    {
        margin-bottom: 10px;
    }
    .topicsSect .mainTxt01
    {
        font-size: inherit;

        margin-bottom: 5px;
        padding: 0 15px;
    }
    .topicsSect .infoBlock
    {
        margin-bottom: 30px;
        padding: 0 15px;
    }
    .topicsSect .infoBlock .photo
    {
        position: relative;
        top: auto;
        right: auto;

        text-align: center;
    }
    .topicsSect .infoBlock .photo img
    {
        width: 85%;
        height: auto;
    }
    .topicsSect .infoBlock .photo .illustPen
    {
        right: 10px;
        bottom: 0;

        width: 80px;
        height: auto;
    }
    .topicsSect .infoBlock .photo .illustCap
    {
        display: none;
    }
    .topicsSect .infoBlock .popTxt
    {
        margin-left: 30px;
    }
    .topicsSect .infoBlock .popTxt img
    {
        width: 120px;
        height: auto;
    }
    .topicsSect .infoBlock .itemList
    {
        width: auto;
    }
    .topicsSect .infoBlock .itemList li
    {
        font-size: 15px;

        margin-bottom: 5px;
        padding-bottom: 5px;
        padding-left: 40px;

        background-position: 15px 2px;
        background-size: 16px 15px;
    }
    .topicsSect .infoBlock .itemList li.item1:after,
    .topicsSect .infoBlock .itemList li.item3:after
    {
    }
    .topicsSect .infoBlock .itemList li.item1:after
    {
        top: -80px;
        left: 60%;

        width: 32px;
        height: 79px;

        background-image: url(../images/top/topics_arrow01-sp.png);
        background-size: 32px auto;
    }
    .topicsSect .infoBlock .itemList li.item3:after
    {
        top: -195px;
        left: -10px;

        width: 38px;
        height: 208px;

        background-image: url(../images/top/topics_arrow02-sp.png);
        background-size: 38px auto;
    }
    .topicsSect .btmLead
    {
        font-size: inherit;

        margin: 0 15px 15px;
        padding-bottom: 20px;

        background-size: 100% auto;
    }
    .topicsSect .btmLead .muryo
    {
        font-size: 21px;
    }
    .topicsSect .consultBtn a
    {
        padding: 10px 15px;
    }
    .topicsSect .consultBtn a img
    {
    }
}
/*
===================================*/
.caseSect
{
    background: url(../images/top/case_bg.jpg) no-repeat center top;
}
.caseSect .inner
{
    padding: 80px 0 30px;
}
.caseSect .sectTit
{
    margin-bottom: 40px;

    text-align: center;
}
.caseSect .ribon
{
    position: absolute;
    top: -45px;
    left: 0;
}
.caseSect .titBlock
{
    height: 170px;
}
.caseSect .leadTxt
{
    color: #fff;
}
.caseSect .caseBlock
{
    position: relative;

    float: left;

    width: 450px;
}
.caseSect .caseBlock.case2
{
    float: right;
}
.caseSect .caseBlock .photo
{
    position: absolute;
    top: -10px;
    right: -40px;
}
.caseSect .caseBlock .leadBox
{
    width: 280px;
    min-height: 290px;
}
.caseSect .caseBlock .leadBox .blockTit
{
    margin-bottom: 10px;
    margin-left: -15px;
}
.caseSect .caseBlock .leadBox .caseLead
{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.4;

    margin-bottom: 5px;
}
.caseSect .caseBlock .leadBox .txt01
{
    font-size: 11px;

    padding-right: 20px;
}
.caseSect .caseBlock .popTxt
{
    width: 140px;
}
.caseSect .caseBlock .popTxt img
{
    max-width: 100%;
    height: auto;
}
.caseSect .caseBlock .itemList
{
    padding-right: 20px;
}
.caseSect .caseBlock .itemList li
{
    font-size: 16px;
    font-weight: bold;

    margin-bottom: 6px;
    padding-left: 10px;

    border-bottom: 1px dashed #7e7d77;
}
.caseSect .caseBlock .itemList li img
{
    margin-top: -3px;
    margin-right: 10px;

    vertical-align: middle;
}
.caseSect .caseBlock .priceTxt
{
    font-size: 18px;

    min-height: 50px;
    padding: 6px 30px 0 0;

    text-align: right;

    background: url(../images/top/case_bg_circle-pc.png) no-repeat right 0;
}
.caseSect .caseBlock .priceTxt .price
{
    font-size: 26px;
    font-weight: bold;

    display: inline-block;

    margin-left: 35px;
}
.caseSect .caseBlock .priceTxt .caution
{
    font-size: 12px;
    font-weight: bold;
}
.caseSect .btmLead
{
    font-size: 32px;
    font-weight: bold;

    clear: both;

    margin-bottom: 15px;

    text-align: center;

    color: #4ec3f4;
}
.caseSect .consultBtn a
{
    padding: 8px 10px;
}
.caseSect .consultBtn a img
{
    width: auto;
    height: 14px;
}
@media only screen and (max-width: 768px)
{
    .caseSect
    {
        background-color: #f0ece0;
        background-image: url(../images/top/case_bg-sp.jpg);
        background-position: center -70px;
        -webkit-background-size: 769px auto;
                background-size: 768px auto;
    }
    .caseSect .inner
    {
        padding: 30px 0 20px;
    }
    .caseSect .sectTit
    {
        margin-bottom: 5px;
    }
    .caseSect .sectTit img
    {
        width: 135px;
        height: auto;
    }
    .caseSect .ribon
    {
        top: -40px;
        left: 5px;

        width: 80px;
    }
    .caseSect .titBlock
    {
        height: 90px;
    }
    .caseSect .leadTxt
    {
    }
    .caseSect .sectMain
    {
        padding-top: 20px;
    }
    .caseSect .caseBlock
    {
        float: none;

        width: auto;
        padding-left: 140px;
    }


    .caseSect .caseBlock.case2
    {
        display: none;
        float: none;
    }

    .caseSect.selected2 .caseBlock.case2,
    .caseSect.selected1 .caseBlock.case1
    {
        display: block;
    }
    .caseSect.selected1 .caseBlock.case2,
    .caseSect.selected2 .caseBlock.case1
    {
        display: none;
    }

    .caseSect .caseBlock .photo
    {
        top: 35px;
        right: auto;
        left: 0;
    }
    .caseSect .caseBlock .photo img
    {
        width: 135px;
        height: auto;
    }
    .caseSect .caseBlock .leadBox
    {
        width: auto;
        min-height: inherit;
    }
    .caseSect .caseBlock .leadBox .blockTit
    {
        position: absolute;
        top: 0;
        left: 0;

        margin-bottom: 0;
        margin-left: 0;
    }
    .caseSect .caseBlock .leadBox .blockTit img
    {
        width: 75px;
        height: auto;
    }
    .caseSect .caseBlock .leadBox .caseLead
    {
        font-size: 14px;
    }
    .caseSect .caseBlock .leadBox .txt01
    {
        padding-right: 10px;
    }
    .caseSect .caseBlock .popTxt
    {
        width: 114px;
    }
    .caseSect .caseBlock .popTxt img
    {
    }
    .caseSect .caseBlock .itemList
    {
        padding-right: 10px;
    }
    .caseSect .caseBlock .itemList li
    {
        font-size: 11px;

        padding-left: 0;
    }
    .caseSect .caseBlock .itemList li img
    {
        width: 12px;
        height: auto;
        margin-right: 5px;
    }
    .caseSect .caseBlock .priceTxt
    {
        font-size: 12px;
        line-height: 1.2;

        position: absolute;
        top: 220px;
        left: 0;

        min-width: 135px;
        min-height: 50px;
        padding: 0 0;

        text-align: center;

        background: url(../images/top/case_bg_circle-sp.png) no-repeat center top;
        background-size: 130px auto;
    }
    .caseSect .caseBlock .priceTxt br
    {
        display: none;
    }
    .caseSect .caseBlock .priceTxt .price
    {
        font-size: 14px;

        display: block;

        margin-left: 0;
    }
    .caseSect .caseBlock .priceTxt .caution
    {
        display: block;
        margin-top:10px;
    }

    .caseSect .tabbtnList
    {
        padding: 10px 0;
    }
    .caseSect .tabbtnList li
    {
    }
    .caseSect.selected2 .tabbtnList li .tab1,
    .caseSect.selected1 .tabbtnList li .tab2
    {
        display: none;
    }
    .caseSect .tabbtnList li a
    {
        font-size: 13px;

        color: #4ec3f4;
        background: #fff;
    }
    .caseSect .tabbtnList li a img
    {
        width: auto;
        height: 14px;
        margin: 0;
    }
    .caseSect .btmLead
    {
        font-size: 14px;

        margin-bottom: 10px;
    }
    .caseSect .consultBtn a
    {
        padding: 10px 15px;
    }
    .caseSect .consultBtn a img
    {
    }
}
/*
===================================*/

.voiceSect
{
    background: url(../images/bg_gray.png) repeat 0 0 #f0f0f0;
}
.voiceSect .inner
{
    padding: 90px 0 55px;
}
.voiceSect .sectTit
{
    margin-bottom: 35px;

    text-align: center;
}
.voiceSect .ribon
{
    position: absolute;
    top: -40px;
    right: -10px;
}
.voiceSect .sectMain
{
    padding: 0 50px;
}
.voiceSect .leadTxt
{
    margin-bottom: 15px;
}
.voiceSect .voiceBlock
{
    position: relative;

    min-height: 150px;
    margin-bottom: 60px;
    padding: 35px 40px;

    background: #fefefe;
    box-shadow: 0 5px 10px rgba(0,0,0,.15);
}
.voiceSect .voiceBlock .photo
{
    position: absolute;
    top: -15px;
}
.voiceSect .voiceBlock .name
{
    font-size: 22px;
    font-weight: bold;

    width: 241px;
    margin-bottom: 20px;
    padding-bottom: 10px;

    background-repeat: no-repeat;
}
.voiceSect .voiceBlock .popTxt
{
    position: absolute;
    top: -20px;
}
.voiceSect .voiceBlock .txt01
{
    font-size: 18px;
    font-weight: bold;
}
.voiceSect .voice1 .photo
{
    left: -75px;
}
.voiceSect .voice1 .name
{
    margin-left: 70px;
    padding-right: 15px;

    text-align: right;

    background-image: url(../images/top/voice_voice1_line01.png);
    background-position: right bottom;
}
.voiceSect .voice1 .popTxt
{
    right: 25px;
}
.voiceSect .voice1 .txt01
{
    margin-left: 150px;
}
.voiceSect .voice2 .photo
{
    right: -80px;
}
.voiceSect .voice2 .name
{
    margin-right: 90px;
    margin-left: auto;
    padding-left: 25px;

    background-image: url(../images/top/voice_voice2_line01.png);
    background-position: left bottom;
}
.voiceSect .voice2 .popTxt
{
    left: 15px;
}
.voiceSect .voice2 .txt01
{
    margin-left: 100px;
}
@media only screen and (max-width: 768px)
{
    .voiceSect
    {
    }
    .voiceSect .inner
    {
        padding: 40px 0 10px;
    }
    .voiceSect .sectTit
    {
        margin-bottom: 5px;
    }
    .voiceSect .sectTit img
    {
        width: 135px;
        height: auto;
    }
    .voiceSect .ribon
    {
        top: -25px;
        right: 5px;

        width: 80px;
    }
    .voiceSect .sectMain
    {
        padding: 0 15px;
    }
    .voiceSect .leadTxt
    {
        margin-bottom: 10px;
    }
    .voiceSect .voiceBlock
    {
        margin-bottom: 30px;
        padding: 10px 10px;

        box-shadow: 0 2px 5px rgba(0,0,0,.15);
    }
    .voiceSect .voiceBlock .photo
    {
    }
    .voiceSect .voiceBlock .photo img
    {
        width: 120px;
        height: auto;
    }
    .voiceSect .voiceBlock .name
    {
        font-size: 13px;

        width: 120px;
        margin-bottom: 5px;
    }
    .voiceSect .voiceBlock .popTxt
    {
        position: relative;
        top: auto;
    }
    .voiceSect .voiceBlock .popTxt img
    {
        width: 170px;
        height: auto;
    }
    .voiceSect .voiceBlock .txt01
    {
        font-size: 12px;
        font-weight: normal;
        line-height: 1.4;
    }
    .voiceSect .voiceBlock .txt01 br {
        display: none;
    }
    .voiceSect .voice1 .photo
    {
        left: -20px;
    }
    .voiceSect .voice1 .name
    {
        padding-right: 10px;
    }
    .voiceSect .voice1 .popTxt
    {
        right: auto;

        margin-left: 90px;
    }
    .voiceSect .voice1 .txt01
    {
        margin-left: 100px;
    }
    .voiceSect .voice2 .photo
    {
        right: -20px;
    }
    .voiceSect .voice2 .name
    {
        margin-right: 80px;
        padding-left: 10px;
    }
    .voiceSect .voice2 .popTxt
    {
        left: auto;
    }
    .voiceSect .voice2 .txt01
    {
        margin-right: 100px;
        margin-left: 0;
    }

}
/*
===================================*/

.newsSect {
  position:relative;
}
.newsSect .inner
{
    padding: 90px 0 70px;
}
.newsSect .sectTit
{
    margin-bottom: 40px;

    text-align: center;
}
.newsSect .sectMain
{
    padding: 0 40px;
}
.newsSect:after,
.newsSect.loading {
  background: transparent url(../images/top/loading.gif) no-repeat center 200px;
}
.newsSect:after {
  content:'';
  display:block;
  width:1px;
  height:0;
  position:absolute;
  left:0;
  top:0;
}

.newsSect .newsList
{
    margin-bottom: 25px;
}
.newsSect .newsList li
{
    position: relative;

    margin-bottom: 10px;
    padding-left: 95px;
}
/*
.newsSect .newsList li:nth-child(n + 6),
.newsSect .newsList li.hide {
  display:none;
}
*/
.newsSect .newsList li a{
  color:#000;
}
.newsSect .newsList li .date
{
    font-size: 11px;
    font-weight: bold;

    position: absolute;
    top: 2px;
    left: 0;
}

.newsSect .pagination {
  padding-top:30px;
  text-align: center;
}
.newsSect .pagination a,
.newsSect .pagination span {
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 2px solid #333;
  color: #333;
  font-size: 16px;
  line-height: 26px;
  width:30px;
  height: 30px;
  margin: 0 3px 5px;
  vertical-align: top;
  text-decoration:none;
  overflow:hidden;
  background-color: #fff;
}
.newsSect .pagination span {
  background-color: #333;
  color: #ffffff;
}

.newsSect .moreBtn
{
    text-align: center;
}
.newsSect .moreBtn img
{
    width: 85px;
    height: auto;
}
@media only screen and (max-width: 768px)
{
    .newsSect .inner
    {
        padding: 40px 0;
    }
    .newsSect .sectTit
    {
        margin-bottom: 10px;
    }
    .newsSect .sectTit img
    {
        width: 135px;
        height: auto;
    }
    .newsSect .sectMain
    {
        padding: 0 15px;
    }
    .newsSect .newsList
    {
        margin-bottom: 25px;
    }
    .newsSect .newsList li
    {
        margin-bottom: 5px;
        padding-left: 0;
    }
    .newsSect .newsList li .date
    {
        position: relative;
        top: auto;
        left: auto;

        display: block;
    }
    .newsSect .moreBtn
    {
    }
    .newsSect .moreBtn img
    {
        width: 95px;
        height: auto;
    }
}
/*
===================================*/

.pickupSect
{
    background: #fff002;
}
.pickupSect .inner
{
    padding: 80px 0 80px;
}
.pickupSect .sectTit
{
    margin-bottom: 50px;

    text-align: center;
}
.pickupSect .sectMain
{
    position: relative;
}
.pickupSect .pickupList
{
    position: relative;
}
.pickupSect .pickupList .item
{
    float: left;

    text-align: center;
}
.pickupSect .pickupList.noSlide .item {
  float:none;
}
.pickupSect .pickupList .item img
{
    max-width: 100%;
    height: auto;
}
.pickupSect .pickupList .item a,
.pickupSect .pickupList .item .noLink
{
  display:block;
  width:860px;
  margin:0 auto;
  color:#333;
}
.pickupSect .pickupList .item .imgWrap {
  position:relative;
  display:block;
  width:100%;
  height:320px;
    background:#000 no-repeat center center;
    -webkit-background-size:contain;
    background-size:contain;
    overflow:hidden;
}
.pickupSect .pickupList .item .txtWrap {
  display:block;
  position:absolute;
  left:0;
  top:45%;
  width:96%;
  text-align:center;
  font-size:20px;
  font-weight:bold;
  line-height:1.2;
  padding:5px 2.1%;
  background:rgba(255,255,255,.8);
}
.pickupSect .pickupList .item.hasImg .txtWrap {
  background:transparent;
  text-indent:-9999px;
}

.pickupSect .slick-track
{
    position: relative;
}
.pickupSect .slick-arrow
{
    position: absolute;
    z-index: 10;
    top: 50%;

    width: 20px;
    height: 36px;
    margin: 0;
    margin-top: -18px;
    padding: 0;

    cursor: pointer;
    text-indent: -9999px;

    border: 0;
    background: url(../images/top/pickup_btn_prev.png) no-repeat 0 0;
}
.pickupSect .slick-prev
{
    left: -12px;

    background-image: url(../images/top/pickup_btn_prev.png);
}
.pickupSect .slick-next
{
    right: -12px;

    background-image: url(../images/top/pickup_btn_next.png);
}
.pickupSect .slick-dots
{
    /*position: absolute;
    bottom: -50px;
    left: 0;*/
    clear:both;
    padding-top:20px;
    width: 100%;

    text-align: center;
}
.pickupSect .slick-dots li
{
    display: inline-block;

    width: 6px;
    height: 6px;
    margin: 0 8px;

    cursor: pointer;
    text-indent: -9999px;

    border: 2px solid #fff;
    background: #fff;
}
.pickupSect .slick-dots li.slick-active
{
    cursor: default;

    background: #333;
}
@media only screen and (max-width: 1000px)
{
    .pickupSect .slick-prev
    {
        left: 0;
    }
    .pickupSect .slick-next
    {
        right: 0;
    }
}
@media only screen and (max-width: 768px)
{
    .pickupSect
    {
    }
    .pickupSect .inner
    {
        padding: 40px 0;
    }
    .pickupSect .sectTit
    {
        margin-bottom: 10px;
    }

    .pickupSect .sectTit img
    {
        width: 135px;
        height: auto;
    }

    .pickupSect .sectMain
    {
    }
    .pickupSect .pickupList
    {
    }
    .pickupSect .pickupList .item
    {
        padding: 0 15px;
    }
    .pickupSect .pickupList .item a,
    .pickupSect .pickupList .item .noLink
    {
      width:100%;
    }
    
    .pickupSect .pickupList .item .imgWrap {
      height:0px;
      padding-top:37.209%;
    }
    .pickupSect .pickupList .item .txtWrap {
      font-size:15px;
    }
    .pickupSect .slick-track
    {
    }
    .pickupSect .slick-arrow
    {
        display: none;
    }
    .pickupSect .slick-dots
    {
    }
    .pickupSect .slick-dots li
    {
    }
    .pickupSect .slick-dots li.slick-active
    {
    }
}
/*
===================================*/

.mediaSect
{
    background: url(../images/bg_gray.png) repeat 0 0 #f0f0f0;
}
.mediaSect .inner
{
    padding: 60px 0 80px;
}
.mediaSect .sectTit
{
    margin-bottom: 40px;

    text-align: center;
}
.mediaSect .contactBtn
{
    position: absolute;
    top: -63px;
    right: 0;
}
.mediaSect .contactBtn a
{
    font-size: 12px;

    padding: 5px 5px 4px;
}
.mediaSect .contactBtn a img
{
    margin-top: -3px;
}
.mediaSect .ribon
{
    position: absolute;
    top: -75px;
    left: 0;
}
.mediaSect .sectMain
{
    position: relative;
}
.mediaSect .leadTxt
{
    margin-bottom: 35px;
}
.mediaSect .itemList
{
    margin-top: -40px;
    margin-bottom: 50px;
    margin-left: -9px;
}
.mediaSect .itemList li
{
    font-size: 12px;

    float: left;

    width: 152px;
    margin-top: 40px;
    margin-left: 9px;
}
.mediaSect .itemList li:nth-child(6n+1) {
  clear:both;
}
.mediaSect .itemList li a {
  color:#333;
  text-decoration:none;
}
.mediaSect .itemList li img
{
    max-width: 100%;
    height: auto;
}
.mediaSect .itemList li .photo
{
    overflow: hidden;

    width: 148px;
    height: 148px;
    margin-bottom: 10px;

    text-align: center;

    border: 2px solid #fff002;
}
.mediaSect .itemList li .photo .imgWrap {
  display:block;
  width:100%;
  padding-top:100%;
  height:0;
    background: #000 no-repeat center center;
    -webkit-background-size:cover;
    background-size:cover;
}
.mediaSect .itemList li .tit {
  font-weight:bold;
  text-decoration:underline;
}
.mediaSect .itemList li a:hover .tit {
  text-decoration:none;
}

.mediaSect .itemList li .date {
  text-decoration:none;
}
.mediaSect .moreBtn
{
    text-align: center;
}
.mediaSect .moreBtn img
{
    width: 85px;
    height: auto;
}
@media only screen and (max-width: 768px)
{
    .mediaSect
    {
    }
    .mediaSect .inner
    {
        padding: 40px 0;
    }
    .mediaSect .sectTit
    {
        margin-bottom: 5px;
    }
    .mediaSect .sectTit img
    {
        width: 135px;
        height: auto;
    }
    .mediaSect .contactBtn
    {
        top: -40px;
        right: 10px;
    }
    .mediaSect .contactBtn a
    {
        font-size: 10px;

        padding: 5px 20px 5px 5px;
    }
    .mediaSect .contactBtn a img
    {
        position: absolute;
        top: 50%;
        right: 2px;

        width: 16px;
        height: auto;
        margin-top: -8px;
    }
    .mediaSect .ribon
    {
        top: -25px;
        left: 5px;

        width: 80px;
    }
    .mediaSect .sectMain
    {
        padding: 0 15px;
    }
    .mediaSect .leadTxt
    {
        margin-bottom: 10px;
    }
    .mediaSect .itemList
    {
        margin-top: -25px;
        margin-bottom: 30px;
        margin-left: -3%;
    }
    .mediaSect .itemList li
    {
        width: 30%;
        margin-top: 25px;
        margin-left: 3%;
    }
    .mediaSect .itemList li:nth-child(3n+1) {
      clear:both;
    }
    .mediaSect .itemList li img
    {
        max-width: 100%;
        height: auto;
    }
    .mediaSect .itemList li .photo
    {
        width: 100%;
        height: auto;

        border-width: 1px;
    }
    .mediaSect .moreBtn
    {
    }
    .mediaSect .moreBtn img
    {
        width: 95px;
        height: auto;
    }
}
/*
===================================*/
.schoolSect
{
    color: #fff;
    background: url(../images/top/school_bg.jpg) no-repeat center center #555;
    background-size: cover;
}
.schoolSect .inner
{
    padding: 70px 0;
}
.schoolSect .sectTit
{
    margin-bottom: 35px;

    text-align: center;
}
.schoolSect .leadTxt
{
    margin-bottom: 40px;

    text-align: center;
}
.schoolSect .movie
{
    float: left;

    width: 520px;
    margin-bottom: 50px;
}
.schoolSect .movie video
{
    width: 100%;
    height: auto;
}
.schoolSect .txtBlock
{
    float: right;

    width: 420px;
    margin-bottom: 50px;
}
.schoolSect .txtBlock .popTxt
{
    margin-bottom: 10px;
}
.schoolSect .txtBlock .popTxt img
{
    width: 100%;
    height: auto;
}
.schoolSect .txtBlock .txt01
{
    line-height: 1.8;
}
.schoolSect .btn
{
    clear: both;
}
.schoolSect .btn a
{
    padding: 8px 10px;
}
.schoolSect .btn img
{
    width: auto;
    height: 14px;
}
@media only screen and (max-width: 768px)
{
    .schoolSect
    {
    }
    .schoolSect .inner
    {
        padding: 40px 0;
    }
    .schoolSect .sectTit
    {
        margin-bottom: 10px;
    }
    .schoolSect .sectMain
    {
        padding: 0 15px;
    }
    .schoolSect .sectTit img
    {
        width: 135px;
        height: auto;
    }
    .schoolSect .leadTxt
    {
        margin-bottom: 20px;
    }
    .schoolSect .movie
    {
        float: none;

        width: auto;
        margin-bottom: 20px;

        text-align: center;
    }
    .schoolSect .txtBlock
    {
        float: none;

        width: auto;
        margin-bottom: 20px;
        padding: 0;
    }
    .schoolSect .txtBlock .popTxt
    {
        text-align: center;
    }
    .schoolSect .txtBlock .popTxt img
    {
        max-width: 315px;
    }
    .schoolSect .txtBlock .txt01
    {
    }
    .schoolSect .btn
    {
    }
    .schoolSect .btn a
    {
    }
    .schoolSect .btn img
    {
    }
}
/*
===================================*/
.mapSect .inner
{
    padding: 85px 0;
}
.mapSect .sectTit
{
    margin-bottom: 35px;

    text-align: center;
}
.mapSect .ribon
{
    position: absolute;
    top: -45px;
    right: -5px;
}
.mapSect .leadBlock
{
    width: 700px;
}
.mapSect .leadBlock .leadTxt
{
    margin-bottom: 45px;
}
.mapSect .leadBlock .telTxt
{
    font-size: 24px;
    font-weight: bold;

    margin-bottom: 15px;

    text-align: center;
}
.mapSect .leadBlock .telImg
{
    float: left;

    margin-bottom: 15px;
    margin-left: 50px;
}
.mapSect .leadBlock .telImg img
{
    width: 390px;
    height: auto;
}
.mapSect .mailBtn
{
    float: left;

    margin-left: 30px;
    padding-top: 8px;
}
.mapSect .mailBtn a
{
    padding: 10px;
}
.mapSect .mailBtn img
{
    width: auto;
    height: 14px;
}
.mapSect .mapBlock
{
    position: relative;
}
.mapSect .mapBlock .txtBox
{
    position: absolute;
    z-index: 1;
    top: 50px;
    left: 20px;
}
.mapSect .mapBlock .txtBox .prefList
{
    float: left;

    min-width: 93px;
}
.mapSect .mapBlock .txtBox .prefList dt
{
    font-size: 12px;
}
.mapSect .mapBlock .txtBox .prefList dd
{
    font-size: 16px;

    margin-top: 10px;
}
.mapSect .mapBlock .txtBox .prefList dd a
{
    font-weight: bold;

    text-decoration: none;

    color: #333;
}
.mapSect .mapBlock .txtBox .prefList dd.line a
{
    border-bottom: 2px solid #fff10d;
}
.mapSect .mapBlock .txtBox .prefList dd a:hover {
    border-bottom: 2px solid #000;
}
.mapSect .mapBlock .imgBox
{
    position: relative;
    z-index: 0;
}
.mapSect .mapBlock .map01
{
    margin-right: -50px;

    text-align: right;
}
.mapSect .mapBlock .map02
{
    position: absolute;
    bottom: 100px;
    left: 0;
}
@media only screen and (max-width: 768px)
{
    .mapSect .inner
    {
        padding: 40px 0;
    }
    .mapSect .sectTit
    {
        margin-bottom: 5px;
    }
    .mapSect .sectTit img
    {
        width: 135px;
        height: auto;
    }
    .mapSect .ribon
    {
        top: -25px;
        right: 5px;

        width: 80px;
    }
    .mapSect .leadBlock
    {
        width: auto;
    }
    .mapSect .leadBlock .leadTxt
    {
        margin-bottom: 10px;
    }
    .mapSect .leadBlock .telTxt
    {
        font-size: inherit;

        margin-bottom: 10px;
    }
    .mapSect .leadBlock .telImg
    {
        float: none;

        margin-bottom: 10px;
        margin-left: 0;

        text-align: center;
    }
    .mapSect .leadBlock .telImg img
    {
        width: 237px;
        height: auto;
    }
    .mapSect .mailBtn
    {
        float: none;

        margin-bottom: 20px;
        margin-left: 0;
    }
    .mapSect .mailBtn a
    {
    }
    .mapSect .mailBtn img
    {
    }
    .mapSect .mapBlock
    {
        margin: 0 20px;
    }


    .mapSect .mapBlock .txtBox
    {
        position: relative;
        top: auto;
        left: auto;
    }
    .mapSect .mapBlock .txtBox .prefList
    {
        width: 25%;
        min-width: inherit;
        margin-bottom: 30px;
    }
    .mapSect .mapBlock .txtBox .prefList.spTurn
    {
        clear: both;
    }
    .mapSect .mapBlock .txtBox .prefList dt
    {
        font-size: 10px;
    }
    .mapSect .mapBlock .txtBox .prefList dd
    {
        font-size: 13px;
    }
    .mapSect .mapBlock .txtBox .prefList dd a
    {
    }
    .mapSect .mapBlock .txtBox .prefList dd.line a
    {
    }

    .mapSect .mapBlock .imgBox
    {
    }


    .mapSect .mapBlock .map01
    {
        margin-right: 0;
    }
    .mapSect .mapBlock .map01 img
    {
        max-width: 100%;
        height: auto;
    }
    .mapSect .mapBlock .map02
    {
        bottom: 50%;

        width: 36%;
    }
    .mapSect .mapBlock .map02 img
    {
        max-width: 100%;
        height: auto;
    }
}
/*
===================================*/
.otherSect
{
    background: url(../images/bg_gray.png) repeat 0 0 #f0f0f0;
}
.otherSect .inner
{
    padding: 100px 0 80px;
}
.otherSect .itemList
{
    margin-top: -50px;
}
.otherSect .itemList li
{
    float: left;

    width: 33.3%;
    margin-top: 50px;
}
.otherSect .itemList li.first
{
    clear: both;
}
.otherSect .itemList li .listTit
{
    margin-bottom: 10px;

    text-align: center;
}
.otherSect .itemList li .listTit img
{
    width: 170px;
    height: auto;
}
.otherSect .itemList li .txt01
{
    padding: 0 45px;
}
@media only screen and (max-width: 768px)
{
    .otherSect
    {
    }
    .otherSect .inner
    {
        padding: 40px 0;
    }
    .otherSect .itemList
    {
        margin-top: -25px;
    }
    .otherSect .itemList li
    {
        width: 50%;
        margin-top: 25px;
    }
    .otherSect .itemList li.first
    {
        clear: none;
    }
    .otherSect .itemList li:nth-child(2n-1)
    {
        clear: both;
    }
    .otherSect .itemList li .listTit
    {
        margin-bottom: 5px;
    }
    .otherSect .itemList li .listTit img
    {
        width: 105px;
        height: auto;
    }
    .otherSect .itemList li .txt01
    {
        font-size: 13px;

        padding: 0 15px;
    }
}
