/*@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);*/
@charset "utf-8";

/* reset start ----------------------------------------------------------------*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    background:transparent;
}
 
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
    display:block;
}
 
ul,li,ol,dl{
    list-style:none;
}
 
blockquote, q {
    quotes:none;
}
 
blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}
 
a {
	display: inline-block;
    margin:0;
    padding:0;
}

del {
    text-decoration: line-through;
}
 
abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}
 
table {
    border-collapse:collapse;
    border-spacing:0;
}

* {
    -webkit-appearance: none;
}

/* sp img 保存禁止処理 */
img{
  touch-callout:none;
  user-select:none;
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  -moz-touch-callout:none;
  -moz-user-select:none;
}


/* reset end ----------------------------------------------------------------*/


.pcmode{}
.spmode{display: none;}
@media screen and (max-width: 1080px){
    .pcmode{display: none !important;}
    .spmode{display: inline-block;}
}

html{
        color: #000;
        font-size: 62.5%;
        /*font-family: 'Noto Sans Japanese', sans-serif;*/
        font-family: 'Noto Sans JP', sans-serif;
}

body{
        font-size: 1.6rem;
		/*font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro W3",Osaka,"ＭＳ Ｐゴシック","MS PGothic",Geneva,Arial,Verdana,sans-serif;*/
        /*font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;*/
        /*font-family: 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;*/
		letter-spacing: 1pt;
        overflow: auto;
}

/* Template_type --------------------------------------------------------------- */

/* instagram css */
#sb_instagram #sbi_images{
    /*text-align: center;*/
}

/* clearfix */
.clear:after{
		content: " "; display: block; height: 0; clear: both;
}

.object-fit{
        object-fit: cover;
        object-position: center center;
        font-family: 'object-fit: cover; object-position: center center;'
}

/* wrapper */
#wrapper{
    overflow: hidden;
}

/* header */
#header{
    position: absolute;
    left: 0;
    top: 0;
    z-index: 9999;
    width: 100%;
    height: 72px;
}
@media screen and (max-width: 1080px){
    #header{
        position: fixed;
        height: auto;
        background: rgba(255,255,255,0.6);
    }
}

#header .inner{
    position: relative;
    margin: 0 auto;
    width: 1400px;
}
@media screen and (max-width: 1400px){
    #header .inner{
        width: 100%;
    }
}
@media screen and (max-width: 1080px){
}

#header .h_logo,
#header .h_nav{
    position: absolute;
}
@media screen and (max-width: 1080px){
    #header .h_logo,
    #header .h_nav{
        position: static;
    }
}

#header .h_logo{
    top: 0;
    left: 0;

    width: 198px;
    height: 79px;
    text-align: center;
    line-height: 79px;
    background: rgba(255,255,255,0.8);
}
@media screen and (max-width: 1080px){
    #header .h_logo{
        width: auto;
        height: auto;
        line-height: 50px;
        text-align: center;
        background: none;
    }
}
#header .h_logo a{
    display: block;
}
#header .h_logo a img{
    vertical-align: sub;
    width: 148px;
    height: 27px;
}
@media screen and (max-width: 1080px){
    #header .h_logo a img{
       width: auto;
       max-height: 50px;
    }
}


@media screen and (max-width: 1080px){
    #header .sp_menu_btn{
            position: absolute;
            top: 0;
            right: 0;
            z-index: 100;
            width: 50px;
            height: 50px;
    }
    #header .sp_menu_btn span{
            position: relative;
            display: block;

            margin: 23px auto 0;

            width: 50%;
            height: 3px;

            background: #000;
            transition: ease 0.25s all;
    }
    #header .sp_menu_btn span:after,
    #header .sp_menu_btn span:before{
            content: "";
            position: absolute;
            left: 0;

            display: block;

            width: 100%;
            height: 3px;
            background: #000;
            transition: ease 0.25s all;
    }
    #header.type01 .sp_menu_btn span,
    #header.type01 .sp_menu_btn span:after,
    #header.type01 .sp_menu_btn span:before{
            background: #FFF;
    }
    #header .sp_menu_btn span:after{
            top: -8px;
    }
    #header .sp_menu_btn span:before{
            top: 8px;
    }
    #header .sp_menu_btn.on span{
            background: transparent;
    }
    #header .sp_menu_btn.on span:after{
            transform: rotate(-45deg);
            -webkit-transform: rotate(-45deg);
            left: auto;
            right: 0;
            top: 0px;
    }
    #header .sp_menu_btn.on span:before{
            transform: rotate(45deg);
            -webkit-transform: rotate(45deg);
            top: 0;
            left: 0;
    }
}


#header .h_nav{
    top: 24px;
    right: 42px;
}
@media screen and (max-width: 1080px){
    #header .h_nav{
        display: none;
        background: rgba(0,0,0,0.6);
    }
}

#header .h_nav .nav_list{
}
#header .h_nav .nav_list:after{
    content: " "; display: block; height: 0; clear: both;
}
#header .h_nav .nav_list li{
    float: left;
}
@media screen and (max-width: 1080px){
    #header .h_nav .nav_list li{
        float: none;
        border-bottom: 1px solid #DDD;
    }
}
#header .h_nav .nav_list li a{
    display: block;
    padding: 18px 23px;
    color: #000;
    font-weight: bold;
    font-size: 1.2rem;
    text-decoration: none;
    transition: ease 0.25s all;

    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
@media screen and (max-width: 1080px){
    #header .h_nav .nav_list li a{
        padding: 18px 10px;
    }
}
@media screen and (max-width: 1080px){
    #header .h_nav .nav_list li a{
        padding: 10px;
        color: #FFF;
        font-weight: normal;
        font-size: 1.2rem;
    }
}
#header .h_nav .nav_list li a:hover{
    opacity: 0.6;
}

#header .h_nav .nav_list li.contact a{
    margin-left: 23px;
    width:184px;

    color: #FFF;
    font-size: 1.4rem;
    text-align: center;

    background-image:-webkit-gradient(linear,-1% 44%,98% 41%,color-stop(0, rgb(55,84,152)),color-stop(1, rgb(84,160,203)));
    background-image:-webkit-linear-gradient(0deg,rgb(55,84,152) 0%,rgb(84,160,203) 100%);
    background-image:linear-gradient(90deg,rgb(55,84,152) 0%,rgb(84,160,203) 100%);
}
@media screen and (max-width: 1080px){
    #header .h_nav .nav_list li.contact a{
        width:140px;
    }
}
@media screen and (max-width: 1080px){
    #header .h_nav .nav_list li.contact a{
        width: 100%;
        margin-left: 0;
        text-align: left;
        font-size: 1.2rem;
        background: none;
    }
}

/* not top */
@media screen and (max-width: 1080px){
    #header.type01{
        /*background: rgba(0,0,0,0.6);*/
        background: rgba(55,85,153,0.8);
    }
}
#header.type01 .h_logo{
    top: 24px;
    left: 24px;

    width: auto;
    height: auto;
    line-height: 100%;
    background: none;
}
@media screen and (max-width: 1080px){
    #header.type01 .h_logo{
        top: 0;
        left: 0;
        line-height: 50px;
    }
}
#header.type01 .h_nav .nav_list li a{
    color: #FFF;
}
#header.type01 .h_nav .nav_list li.contact a{
    margin-left: 0;
    width: auto;
    font-size: 1.2rem;
    background: transparent;
    border: 0;
}
@media screen and (max-width: 1080px){
    #header.type01 .h_nav .nav_list li.contact a{
        border: 0;
    }
}








/* breadcrumbs */

#breadcrumbs{
        margin: 0 auto;
        padding: 22px 0;
        width: 960px;
}
@media screen and (max-width: 1080px){
    #breadcrumbs{
        width: calc(100% - 20px);
        padding: 10px 0;
    }
}

#breadcrumbs ol{
}
#breadcrumbs ol:after{
        content: " "; display: block; height: 0; clear: both;
}
#breadcrumbs ol li{
        position: relative;
        padding-left: 30px;
        float: left;
        color: #375599;
        font-size: 1.2rem;
        line-height: 100%;
}
@media screen and (max-width: 1080px){
    #breadcrumbs ol li{
            font-size: 1rem;
    }
}
#breadcrumbs ol li:before{
        content: "/";
        position: absolute;
        left: 13px;
        top: 0;
        display: block;
        color: #000;
}
#breadcrumbs ol li:first-child{
        padding-left: 0;
}
#breadcrumbs ol li:first-child:before{
        display: none;
}

#breadcrumbs ol li a{
        display: block;
        color: #000;
        text-decoration: none;
}
#breadcrumbs ol li a:hover{
        text-decoration: underline;
}


/* container */

.image_set{
}
.image_set:after{
        content: " "; display: block; height: 0; clear: both;
}

.image_set .left{
        float: left;
}
.image_set .right{
        float: right;
}
@media screen and (max-width: 1080px){
    .image_set .right,
    .image_set .left{
        float: none;
    }
}

/* cap */
.c01_01{
        position: relative;
        display: flex;
        justify-content: column;
        align-items: center;
        flex-direction: center;
        height: 253px;

        background-image:-webkit-gradient(linear,color-stop(0, rgb(84,160,203)),color-stop(1, rgb(55,84,152)));
        background-image:-webkit-linear-gradient(rgb(84,160,203) 0%,rgb(55,84,152) 100%);
        background-image:linear-gradient(rgb(84,160,203) 0%,rgb(55,84,152) 100%);
}
@media screen and (max-width: 1080px){
    .c01_01{
            height: 150px;
    }
}
.c01_01 .inner{
        margin: 0 auto;
        width: 960px;
}
@media screen and (max-width: 1080px){
    .c01_01 .inner{
            width: calc(100% - 40px);
    }
}
.c01_01 #pagecap{
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
}
.c01_01 .sub,
.c01_01 .main{
        display: block;
        color: #FFF;
}
@media screen and (max-width: 1080px){
    .c01_01 .sub,
    .c01_01 .main{
            text-align: center;
     }
}
.c01_01 .sub{
        margin: 50px 0 28px;
        font-size: 3.3rem;
        letter-spacing: 6px;
        line-height: 100%;
}
@media screen and (max-width: 1080px){
    .c01_01 .sub{
            margin: 40px 0 10px;
            font-size: 2rem;
            letter-spacing: 3px;
    }
}

.c01_01 .main{
        font-size: 1.4rem;
        font-weight: normal;
        letter-spacing: 2px;
}
@media screen and (max-width: 1080px){
    .c01_01 .main{
            font-size: 1rem;
            letter-spacing: 1px;
    }
}


.c02_01{
    margin: 0 0 70px;

    font-size: 2.4rem;
    font-weight: bold;
    letter-spacing: 4px;
    text-align: center;
}
@media screen and (max-width: 1080px){
    .c02_01{
        margin: 0 0 20px;
        font-size: 1.8rem;
        letter-spacing: 2px;
    }
}

.c03_01{
    position: relative;
    margin: 0 0 56px;
    padding: 0 0 0 23px;
    font-size: 2.2rem;
    letter-spacing: 3px;
    line-height: 160%;
}
@media screen and (max-width: 1080px){
    .c03_01{
        position: relative;
        margin: 0 0 20px;
        padding: 0 0 0 12px;
        font-size: 1.6rem;
        letter-spacing: 1px;
    }
}

.c03_01.type01{
    margin-bottom: 0;
}
.c03_01:before{
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;

    width: 3px;
    height: 40px;

    background-image:-webkit-gradient(linear,color-stop(0, rgba(55,84,152,0.48)),color-stop(1, rgba(84,160,203,0.48)));
    background-image:-webkit-linear-gradient(rgba(55,84,152,0.48) 0%,rgba(84,160,203,0.48) 100%);
    background-image:linear-gradient(rgba(55,84,152,0.48) 0%,rgba(84,160,203,0.48) 100%);
}
@media screen and (max-width: 1080px){
    .c03_01:before{
        height: 28px;
    }
}
.top_text01{
    margin: 0 0 60px;
    text-align: center;
    line-height: 200%;
}
@media screen and (max-width: 1080px){
    .top_text01{
        margin: 0 0 30px;
        font-size: 1.4rem;
        line-height: 160%;
    }
}


/* text */

.edit_area.type01{
        padding: 70px 0 0;
}
@media screen and (max-width: 1080px){
    .edit_area.type01{
            padding: 30px 0 0;
    }
}

.edit_area .inner{
        margin: 0 auto;
}
.edit_area .inner.w800{
        width: 800px;
}
.edit_area .inner.w960{
        width: 960px;
}
.edit_area .inner.w1080{
        width: 1080px;
}
.edit_area .inner.w1120{
        width: 1120px;
}

@media screen and (max-width: 1080px){
    .edit_area .inner.w800,
    .edit_area .inner.w960,
    .edit_area .inner.w1080,
    .edit_area .inner.w1120{
            width: calc(100% - 40px);
    }
}
@media screen and (max-width: 425px){
    .edit_area .inner.w800,
    .edit_area .inner.w960,
    .edit_area .inner.w1080,
    .edit_area .inner.w1120{
            width: calc(100% - 20px);
    }
}

.common_btn01{
}
.common_btn01.center{
        text-align: center;
}

.common_btn01 a{
    display: inline-block;
    padding-right: 5px;
    width: 218px;
    color: #FFF;
    font-size: 1.4rem;
    text-decoration: none;
    line-height: 40px;
    text-align: center;
    background: #000 url(../img/parts/right_arrow02_01.png) no-repeat right 10px top 55%;
    transition: ease 0.25s all;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.common_btn01 a:hover{
    background-color: #AAA;
    background-position: right 5px top 55%;
}
.common_btn01.opacity a{
    color: #FFF;
    border: 1px solid #FFF;
    background-color: transparent;
}
.common_btn01.opacity a:hover{
    background-color: rgba(255,255,255,0.2);
}


@media screen and (max-width: 425px){
    .common_btn01{
            text-align: center;
    }
}


.table01{
    table-layout: fixed;
    margin: 0 0 34px;
    width: 100%;
    border-collapse: collapse;
}
.table01 tr{
    border-bottom: 1px solid #D4D4D4;
}
@media screen and (max-width: 1080px){
    .table01 tr{
        border: 1px solid #D4D4D4;
    }
}

.table01 tr:nth-child(1){
    border-top: 1px solid #D4D4D4;
}


.table01 tr th,
.table01 tr td{
    padding: 15px 0;
    font-size: 1.4rem;
    line-height: 180%;

    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
@media screen and (max-width: 1080px){
    .table01 tr th,
    .table01 tr td{
        display: block;
        padding: 10px;
    }
}

.table01 tr th{
    padding-left: 90px;

    width: 320px;
    color: #666666;
    font-weight: normal;
    text-align: left;
    vertical-align: top;
}
@media screen and (max-width: 1080px){
    .table01 tr th{
        padding-left: 10px;
        width: auto;
        background: rgba(0,0,0,0.025);
        border-bottom: 1px solid #D4D4D4;
    }
}
.table01 tr td{
}
.table01 tr td .block{
    display: block;
    margin: 0 0 10px;
}




/* tab_list */


.edit_area .tab_list{
    margin: 0 0 40px;
    text-align: center;
    letter-spacing: -0.5rem;
}
@media screen and (max-width: 1080px){
    .edit_area .tab_list{
        position: relative;
        margin: 0 0 20px;
        text-align: left;
        border: 1px solid #DDD;
        border-bottom: 0;
    }
    .edit_area .tab_list:before{
        content: "";
        position: absolute;
        bottom: 0;
        display: block;
        width: 100%;
        height: 1px;
        background: #DDD;
    }
}
.edit_area .tab_list:after{
    content: " "; display: block; height: 0; clear: both;
}
.edit_area .tab_list *{
    letter-spacing: normal;
}
.edit_area .tab_list li{
    display: inline-block;
    cursor: pointer;
}
@media screen and (max-width: 1080px){
    .edit_area .tab_list li{
        width: 50%;
        border-bottom: 1px solid #DDD;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }
    .edit_area .tab_list li:nth-child(odd){
        border-right: 1px solid #DDD;
    }
}
.edit_area .tab_list li a{
    color: #000;
    text-decoration: none;
}
.edit_area .tab_list li span{
    position: relative;
    display: inline-block;
    padding: 0 35px;

    font-size: 1.4rem;
    line-height: 100%;
}
@media screen and (max-width: 1080px){
    .edit_area .tab_list li a{
        display: block;
    }
    .edit_area .tab_list li span{
        display: block;
        padding: 10px;
        text-align: center;
     }
}

.edit_area .tab_list li:hover span:after,
.edit_area .tab_list li.on span:after,
.edit_area .tab_list li.current-menu-item span:after{
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    bottom: -15px;

    margin-left: -10px;

    width:20px;
    height:3px;

    background-image:-webkit-gradient(linear,50% 130%,50% 0%,color-stop(0, rgb(55,84,152)),color-stop(1, rgb(84,160,203)));
    background-image:-webkit-linear-gradient(90deg,rgb(55,84,152) 0%,rgb(84,160,203) 100%);
    background-image:linear-gradient(0deg,rgb(55,84,152) 0%,rgb(84,160,203) 100%);
}
@media screen and (max-width: 1080px){
    .edit_area .tab_list li:hover span:after,
    .edit_area .tab_list li.on span:after,
    .edit_area .tab_list li.current-menu-item span:after{
            display: none;
    }

    .edit_area .tab_list li:hover span,
    .edit_area .tab_list li.on span,
    .edit_area .tab_list li.current-menu-item span{
        color: #FFF;
        background-image:-webkit-gradient(linear,50% 130%,50% 0%,color-stop(0, rgb(55,84,152)),color-stop(1, rgb(84,160,203)));
        background-image:-webkit-linear-gradient(90deg,rgb(55,84,152) 0%,rgb(84,160,203) 100%);
        background-image:linear-gradient(0deg,rgb(55,84,152) 0%,rgb(84,160,203) 100%);
    }
}

/* news_list */

.edit_area .news_list{
        margin: 0 0 40px;
}
.edit_area .news_list li{
        border-bottom: 1px solid #DDDDDD;
}
.edit_area .news_list li:first-child{
        border-top: 1px solid #DDDDDD;
}
.edit_area .news_list li a,
.edit_area .news_list li span.link{
        display: block;
        color: #000;
        padding: 12px 18px;
        text-decoration: none;
        transition: ease 0.25s all;
}
@media screen and (max-width: 1080px){
    .edit_area .news_list li a,
    .edit_area .news_list li span.link{
        padding: 10px;
    }
}
.edit_area .news_list li a:hover{
        background-color: #EEE;
}

.edit_area .news_list li a:after,
.edit_area .news_list li span.link:after{
        content: " "; display: block; height: 0; clear: both;
}
.edit_area .news_list li .time,
.edit_area .news_list li .category,
.edit_area .news_list li .title{
        float: left;
        display: block;
}
.edit_area .news_list li .time,
.edit_area .news_list li .category{
}

.edit_area .news_list li .time{
        color: #777;
        font-size: 1.2rem;
        line-height: 24px;
}
@media screen and (max-width: 1080px){
    .edit_area .news_list li .time{
            font-size: 1rem;
     }
}
.edit_area .news_list li .category{
        margin-left: 20px;
        margin-right: 20px;
        width: 116px;
        font-size: 1.2rem;
        text-align: center;
        line-height: 24px;
        background: #DDDDDD;
}
@media screen and (max-width: 1080px){
    .edit_area .news_list li .category{
            margin-left: 10px;
            margin-right: 10px;
            width: 116px;
            font-size: 1rem;
            text-align: center;
            line-height: 24px;
            background: #DDDDDD;
    }
}
.edit_area .news_list li .title{
        float: right;
        width: 800px;
        font-size: 1.4rem;
        line-height: 140%;
}
@media screen and (max-width: 1080px){
    .edit_area .news_list li .title{
            clear: both;
            float: none;
            width: auto;
            font-size: 1.4rem;
    }
}

.edit_area .news_list li .empty{
        display: block;
        text-align: center;
        font-size: 1.4rem;
        line-height: 140%;
}


/* pagination */
.post-pagination{
        margin: 50px auto 0;
        width: 620px;

        text-align: center;
        letter-spacing: -0.5em;
}
@media screen and (max-width: 1080px){
    .post-pagination{
            margin: 30px auto 0;
            width: auto;
    }
}
@media screen and (max-width: 425px){
    .post-pagination{
            margin: 10px auto 0;
    }
}

.post-pagination:after{
        content: " "; display: block; height: 0; clear: both;
}

.post-pagination *{
        letter-spacing: normal;
}

.post-pagination li{
        display: inline-block;
        vertical-align: top;
}
.post-pagination li.prev,
.post-pagination li.next{
        width: 60px;
        min-height: 1px;
}
@media screen and (max-width: 1080px){
    .post-pagination li.prev,
    .post-pagination li.next{
            width: 20%;
            font-size: 1.4rem;
     }
}
@media screen and (max-width: 425px){
    .post-pagination li.prev,
    .post-pagination li.next{
            width: 25%;
            font-size: 1.2rem;
     }
}


.post-pagination li.list{
        margin: 0 50px;
        width: 300px;
}
@media screen and (max-width: 1080px){
    .post-pagination li.list{
            margin: 0 10px;
            width: calc(60% - 20px);
            font-size: 1.4rem;
    }
}
@media screen and (max-width: 425px){
    .post-pagination li.list{
            width: calc(50% - 20px);
            font-size: 1.2rem;
    }
}

.post-pagination li span:empty{
        display: block;
        min-height: 1px;
}

.post-pagination li a{
        display: block;
        padding: 13px 0;
        text-align: center;
        text-decoration: none;
        transition: ease 0.25s all;
}

.post-pagination li.prev a,
.post-pagination li.next a{
        color: #000;
}
.post-pagination li.prev a{
        padding-left: 25px;
}
.post-pagination li.next a{
        padding-right: 25px;
}
.post-pagination li.prev a:hover{
        text-decoration: underline;
        background-position: left center;
}
.post-pagination li.next a:hover{
        text-decoration: underline;
        background-position: right center;
}

.post-pagination li.list a{
        color: #000;
        border: 1px solid #000;
}

.post-pagination li.list a:hover{
        color:#FFF;
        background-color: #000;
}


/*PAGINATION CSS*/

div.pagination{
        clear: both;
        text-align: center;
        margin: 60px 0 0;
}

div.pagination span,
div.pagination a{
        display: inline-block;

        margin-left: 20px;
        padding: 16px 21px;

        color: #000;
        font-size: 1.4rem;
        
        border: 1px solid #BBBBBB;

        text-decoration: none;
        transition: ease 0.25s all;
}
div.pagination a:hover,
div.pagination span{
        color: #fff;
        background-color: #000;
        border: 1px solid #000;
}

div.pagination .next,
div.pagination .prev{
        display: inline-block;
        color: #000;
        min-width: 170px;
        background: no-repeat;

        border: 1px solid #BBBBBB;

        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
}
div.pagination .next{
        background-position: right 18px center;
}
div.pagination a.next:hover{
}

div.pagination .prev{
        background-position: 18px center;
}
div.pagination a.prev:hover{
}


div.pagination a.next:hover,
div.pagination a.prev:hover{
        color: #FFF;
        border-color: #000;
        background-color: #000;
}
div.pagination span.next,
div.pagination span.prev{
        color: #000;
        border-color: #DDD;
        background: #DDDDDD;
}


.thumbnail_pagination{
        margin: 0 auto;
        padding: 40px 0 0;
        width: 845px;
        text-align: center;
        letter-spacing: -0.5em;

        border-top: 1px solid #DDDDDD;
}
.thumbnail_pagination:after{
        content: " "; display: block; height: 0; clear: both;
}

.thumbnail_pagination *{
                letter-spacing: 1px;
}

.thumbnail_pagination li{
        display: inline-block;
        width: 330px;
        min-height: 1px;
        vertical-align: top;
}
.thumbnail_pagination li a{
        display: block;
        color: #000;
        text-decoration: none;
        transition: ease 0.25s all;
}
.thumbnail_pagination li a:hover{
        opacity: 0.6;
}

.thumbnail_pagination li.list{
                margin: 20px 0 0;
        width: 190px;
        border-left: 1px solid #DDD;
        border-right: 1px solid #DDD;
}
.thumbnail_pagination li.list a{
        padding: 100px 0 20px;
        font-size: 1.4rem;
        text-align: center;
}

.thumbnail_pagination li .photo{
        display: block;
        margin: 0 auto 14px;
        width: 237px;
        text-align: center;
        background: #FAFAFA;
}
.thumbnail_pagination li .photo img{
        vertical-align: top;
}
.thumbnail_pagination li .title{
        display: block;
        margin: 0 auto;
        width: 230px;
        font-size: 1.2rem;
        text-align: left;
}



#container .footer_link_box{
        position: relative;
        padding: 84px 0;

        background-image:-webkit-gradient(linear,color-stop(0, rgba(221,221,221,0.71)),color-stop(1, rgba(153,153,153,0.71)));
        background-image:-webkit-linear-gradient(rgba(221,221,221,0.71) 0%,rgba(153,153,153,0.71) 100%);
        background-image:linear-gradient(rgba(221,221,221,0.71) 0%,rgba(153,153,153,0.71) 100%);
}
@media screen and (max-width: 1080px){
    #container .footer_link_box{
            padding: 30px 0;
    }
}

#container .footer_link_box #footerlink{
        position: absolute;
        left: 0;
        top: 0;
        z-index: 0;
        width: 100%;
        height: 100%;
}
#container .footer_link_box .list01{
        position: relative;
        z-index: 1;
        margin: 0 auto;
        width: 960px;
}
@media screen and (max-width: 1080px){
    #container .footer_link_box .list01{
             width: calc(100% - 20px);
    }
}

#container .footer_link_box .list01:after{
        content: " "; display: block; height: 0; clear: both;
}
#container .footer_link_box .list01 li{
        float: left;
        width: 460px;
        margin-left: 40px;
}
#container .footer_link_box .list01.type_requirements.type01 li{
        float: none;
        width: 514px;
        margin-left: auto;
        margin-right: auto;
}
#container .footer_link_box .list01.type_requirements.type03 li{
        float: left;
        width: 300px;
        margin-left: 20px;
}
@media screen and (max-width: 1080px){
    #container .footer_link_box .list01 li{
            float: none;
            width: auto;
            margin: 0 0 20px;
    }
    #container .footer_link_box .list01 li:last-child{
            margin-bottom: 0;
    }
    #container .footer_link_box .list01.type_requirements.type01 li{
            float: none;
            width: auto;
            margin: 0 0 20px;
    }
    #container .footer_link_box .list01.type_requirements.type03 li{
            float: none;
            width: auto;
            margin: 0 0 20px;
    }
}
#container .footer_link_box .list01 li:first-child{
        margin-left: 0;
}
#container .footer_link_box .list01.type_requirements.type03 li:first-child{
        margin-left: 0;
}

#container .footer_link_box .list01 li a{
        display: block;
        color: #000;
        text-align: center;
        text-decoration: none;
        line-height: 80px;
        background: #FFF url(../img/parts/right_arrow04_01.png) no-repeat right 40px top 50%;
        transition: ease 0.25s all;
}
@media screen and (max-width: 1080px){
    #container .footer_link_box .list01 li a{
            padding: 15px 10px;
            font-size: 1.4rem;
            line-height: 160%;
    }
}
#container .footer_link_box .list01 li a:hover{
        color: #FFF;
        background-color: #000;
        background-image: url(../img/parts/right_arrow04_02.png)
}







/* footer */
#footer{
        position: relative;
}

#footer .f_pageup{
        position: fixed;
        bottom: 100px;
        right: 60px;
        z-index: 9999;

        display: block;
        width: 44px;
        height: 44px;

        text-align: center;
        line-height: 40px;
        vertical-align: middle;

        background-image:-webkit-gradient(linear,color-stop(0, rgb(55,84,152)),color-stop(1, rgb(84,160,203)));
        background-image:-webkit-linear-gradient(rgb(55,84,152) 0%,rgb(84,160,203) 100%);
        background-image:linear-gradient(rgb(55,84,152) 0%,rgb(84,160,203) 100%);

        border-radius: 22px;

        transition: ease 0.25s all;
}
@media screen and (max-width: 1080px){
    #footer .f_pageup{
            bottom: 30px;
            right: 10px;
            width: 30px;
            height: 30px;
            line-height: 26px;
            border-radius: 15px;
    }
}
#footer .f_pageup:hover{
        border-radius: 10px;
}


#footer .f_pageup a{
        display: block;
}
#footer .f_pageup img{
        vertical-align: middle;
}





#footer .footer_inner .skin{
        margin: 0 auto;
        width: 1080px;
}
@media screen and (max-width: 1080px){
    #footer .footer_inner .skin{
            width: auto;
    }
}
#footer .footer_inner.type01{
        padding: 13px 0;
}
@media screen and (max-width: 1080px){
    #footer .footer_inner.type01{
            padding: 0;
    }
}
#footer .footer_inner.type01 .list01{
}
#footer .footer_inner.type01 .list01:after{
        content: " "; display: block; height: 0; clear: both;
}

#footer .footer_inner.type01 .list01 li{
        float: left;
        border-left: 1px solid #000;
}
@media screen and (max-width: 1080px){
    #footer .footer_inner.type01 .list01 li{
            float: none;
            border-left: 0;
            border-top: 1px solid #DDD;
    }
}

#footer .footer_inner.type01 .list01 li:first-child{
        border-left: 0;
}

#footer .footer_inner.type01 .list01 li a{
        display: block;
        padding: 3px 16px;
        color: #000;
        font-size: 1.2rem;
        line-height: 100%;
        text-decoration: none;
}
@media screen and (max-width: 1080px){
    #footer .footer_inner.type01 .list01 li a{
            padding: 10px;
     }
}

#footer .footer_inner.type01 .list01 li:first-child a{
        padding-left: 0;
}
@media screen and (max-width: 1080px){
    #footer .footer_inner.type01 .list01 li:first-child a{
        padding-left: 10px;
    }
}
#footer .footer_inner.type01 .list01 li a:hover{
        text-decoration: underline;
}


#footer .footer_inner.type02{
        background-color: #222222;
}
@media screen and (max-width: 1080px){
        #footer .footer_inner.type02{
                padding-bottom: 20px;
        }
}
#footer .footer_inner.type02 .skin{
        position: relative;
        min-height: 323px;
}
@media screen and (max-width: 1080px){
    #footer .footer_inner.type02 .skin{
            margin: 0 auto;
            width: calc(100% - 20px);
            min-height: auto;
    }
}

#footer .footer_inner.type02 .f_logo,
#footer .footer_inner.type02 .f_address,
#footer .footer_inner.type02 .f_mark,
#footer .footer_inner.type02 .f_sitemap,
#footer .footer_inner.type02 .f_contact{
        position: absolute;
}
@media screen and (max-width: 1080px){
    #footer .footer_inner.type02 .f_logo,
    #footer .footer_inner.type02 .f_address,
    #footer .footer_inner.type02 .f_mark,
    #footer .footer_inner.type02 .f_sitemap,
    #footer .footer_inner.type02 .f_contact{
            position: static;
    }
}
#footer .footer_inner.type02 .f_logo{       top: 46px; left: 5px;}
#footer .footer_inner.type02 .f_address{    top: 101px; left: 0;}
#footer .footer_inner.type02 .f_mark{       top: 186px; left: 0;}
#footer .footer_inner.type02 .f_sitemap{    top: 52px; left: 337px;}
#footer .footer_inner.type02 .f_contact{    top: 50px; right: 0;}


#footer .footer_inner.type02 .f_logo{
}
@media screen and (max-width: 1080px){
    #footer .footer_inner.type02 .f_logo{
        padding: 20px 0;
        text-align: center;
    }
}
#footer .footer_inner.type02 .f_logo a{
        display: block;
}
#footer .footer_inner.type02 .f_logo a img{
        vertical-align: top;
}

#footer .footer_inner.type02 .f_address{
}
@media screen and (max-width: 1080px){
    #footer .footer_inner.type02 .f_address{
        margin: 0 0 20px;
    }
}
#footer .footer_inner.type02 .f_address address{
        font-style: normal;
}
#footer .footer_inner.type02 .f_address p{
        margin: 0 0 12px;
        color: #FFF;
        font-size: 1.2rem;
}
@media screen and (max-width: 1080px){
    #footer .footer_inner.type02 .f_address p{
        margin-bottom: 0;
    }
}

#footer .footer_inner.type02 .f_address p .tel{
        margin-right: 30px;
}
#footer .footer_inner.type02 .f_address p .tel a{
        color: #FFF;
}


#footer .footer_inner.type02 .f_mark{
}
@media screen and (max-width: 1080px){
    #footer .footer_inner.type02 .f_mark{
        margin: 0 0 20px;
    }
}
#footer .footer_inner.type02 .f_mark .list01{
        display: flex;
        flex-wrap: wrap;
        align-items: center;
}

#footer .footer_inner.type02 .f_mark .list01 li{
        margin-left: 20px;
        text-align: center;
}
@media screen and (max-width: 767px){
    #footer .footer_inner.type02 .f_mark .list01 li{
        margin-left: 2%;
        width: 32%;
    }
}

#footer .footer_inner.type02 .f_mark .list01 li:first-child{
        margin-left: 0;
}
#footer .footer_inner.type02 .f_mark .list01 li img{
        vertical-align: top;
}
@media screen and (max-width: 767px){
    #footer .footer_inner.type02 .f_mark .list01 li img{
        max-width: 100%;
        height: auto;
    }
}

#footer .footer_inner.type02 .f_sitemap{
}

#footer .footer_inner.type02 .f_sitemap .list02{
        width: 450px;
}
@media screen and (max-width: 1080px){
    #footer .footer_inner.type02 .f_sitemap .list02{
            display: none;
            width: auto;
    }
}

#footer .footer_inner.type02 .f_sitemap .list02:after{
        content: " "; display: block; height: 0; clear: both;
}
#footer .footer_inner.type02 .f_sitemap .list02 > li{
        float: left;
}
#footer .footer_inner.type02 .f_sitemap .list02 > li:nth-child(1){width: 100px;}
#footer .footer_inner.type02 .f_sitemap .list02 > li:nth-child(2){width: 175px;}
#footer .footer_inner.type02 .f_sitemap .list02 > li:nth-child(3){width: 175px;}

@media screen and (max-width: 1080px){
    #footer .footer_inner.type02 .f_sitemap .list02 > li:nth-child(1),
    #footer .footer_inner.type02 .f_sitemap .list02 > li:nth-child(2),
    #footer .footer_inner.type02 .f_sitemap .list02 > li:nth-child(3){width: 100%;}
}

#footer .footer_inner.type02 .f_sitemap .list02 li a{
        display: block;
        padding-left: 17px;
        color: #FFF;
        font-size: 1.2rem;
        text-decoration: none;
        background: url(../img/parts/right_arrow01_01.png) no-repeat 0 center;
}
#footer .footer_inner.type02 .f_sitemap .list02 li a:hover{
        text-decoration: underline;
}

#footer .footer_inner.type02 .f_sitemap .list02 .child li{
        margin: 0 0 10px;
}

#footer .footer_inner.type02 .f_contact{
}

#footer .footer_inner.type02 .f_contact a{
        display: block;
        width:248px;

        padding: 20px 0;
        color: #FFF;
        font-size: 1.4rem;
        text-decoration: none;
        text-align: center;
        line-height: 100%;

        background-image:-webkit-gradient(linear,-1% 40%,109% 38%,color-stop(0, rgb(55,84,152)),color-stop(1, rgb(84,160,203)));
        background-image:-webkit-linear-gradient(0deg,rgb(55,84,152) 0%,rgb(84,160,203) 100%);
        background-image:linear-gradient(90deg,rgb(55,84,152) 0%,rgb(84,160,203) 100%);

        transition: ease 0.25s all;
}
@media screen and (max-width: 1080px){
    #footer .footer_inner.type02 .f_contact a{
            width:auto;
    }
}
#footer .footer_inner.type02 .f_contact a:hover{
        opacity: 0.6;
}


#footer .footer_inner.type03{
        background: #FFF;
}
#footer .footer_inner.type03 .skin{
}
#footer .footer_inner.type03 .f_copyright{
        padding: 38px 0;
        text-align: center;
        font-size: 1.2rem;
        line-height: 100%;
}

@media screen and (max-width: 1080px){
    #footer .footer_inner.type03 .f_copyright{
            padding: 10px 0;
            font-size: 1rem;
    }
}


/* instagram custom */

@media (max-width: 480px){
#sb_instagram.sbi_col_10 #sbi_images .sbi_item, #sb_instagram.sbi_col_3 #sbi_images .sbi_item, #sb_instagram.sbi_col_4 #sbi_images .sbi_item, #sb_instagram.sbi_col_5 #sbi_images .sbi_item, #sb_instagram.sbi_col_6 #sbi_images .sbi_item, #sb_instagram.sbi_col_7 #sbi_images .sbi_item, #sb_instagram.sbi_col_8 #sbi_images .sbi_item, #sb_instagram.sbi_col_9 #sbi_images .sbi_item {
    width: 50%;
}
#sb_instagram .sbi_photo{
    height: 200px !important;
}

}