/*
-----------------
format
-----------------
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 1px;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}
html{
    overflow-x :hidden;
}
body {
    overflow-x :hidden;
    line-height: 1.7em;
    -webkit-text-size-adjust: none;
    height: 100%;
    -webkit-print-color-adjust: exact;
}
img{
    display: block;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
a{
    text-decoration: none;
    transition: all 0.2s ease;
    -o-transition: all 0.2s ease; /* opera */
    -moz-transition: all 0.2s ease; /* firefox */
    -webkit-transition: all 0.2s ease; /* chrome, safari */
    -ms-transition: all 0.2s ease; /* ie */
}
a img{
    opacity: 1;
    transition: all 0.2s ease;
    -o-transition: all 0.2s ease; /* opera */
    -moz-transition: all 0.2s ease; /* firefox */
    -webkit-transition: all 0.2s ease; /* chrome, safari */
    -ms-transition: all 0.2s ease; /* ie */
}
a:hover{
    cursor: pointer;
}
a:hover{
    opacity: 1;
}
a:hover img{
    opacity: 1;
}

/*
-----------------
header @PC
-----------------
*/
header{
    width: 100%;
    position: relative;
    z-index:5000;
    background: #212121;
    padding: 8px 0 0 0;
}
header > div > a{
    width: 178px;
    margin: 8px 0 8px 0;
    display: block;
    z-index: 20000;
    position: relative;
}
header > div > a img{
    width: 178px;
    display: block;
}
header > div{
    width: 1080px;
    margin: 0 auto;
    position: relative;
}
header nav{
    margin: -80px 0 0 0;
}
header nav > ul{
    width: 100%;
    text-align: right;
    overflow: hidden;
}

header nav > ul > li{
    margin: 1px 1px 0 0;
    display: inline-block;
    vertical-align: top;
    transition: all 0.1s linear;
    -o-transition: all 0.1s linear; /* opera */
    -moz-transition: all 0.1s linear; /* firefox */
    -webkit-transition: all 0.1s linear; /* chrome, safari */
    -ms-transition: all 0.1s linear; /* ie */
}
header nav > ul > li > a{
    padding: 0 22px 0 22px;
    height: 87px;
    font-size:14px;
    letter-spacing: 2px;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    position: relative;
    transition: all 0s linear;
    -o-transition: all 0s linear; /* opera */
    -moz-transition: all 0s linear; /* firefox */
    -webkit-transition: all 0s linear; /* chrome, safari */
    -ms-transition: all 0s linear; /* ie */
}
header nav > ul > li > a:hover:after{
    content:"";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 7px 8px 7px;
    border-color: transparent transparent #fcc800 transparent;
    position: absolute;
    bottom: 0;
    left: 50%;
    margin: 0 0 0 -10px;
}


header nav > ul > li > a:hover{
    color: #fcc800;
    opacity: 1;
    position: relative;
}
header nav > ul > li > a:hover:before{
    content:"";
    position: absolute;
    bottom: 0;
}
header nav > ul > li.pullDown div.pullDownMenu {
    width: 100vw!important;
    margin: -1px 0 0 540px;
    padding: 36px 0 36px 0;
    visibility: hidden;
    opacity: 0;
    background: rgba(51,51,51,0.9);
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    position: absolute;
    top: 70px!important;
    left: -50vw;
    z-index: 1;
    border-top: 5px solid #fcc800;
}
header nav > ul > li.pullDown:hover div.pullDownMenu{
    top: 0;
    visibility: visible;
    opacity: 1;
}
header nav ul > li.pullDown div.pullDownMenu > div{
    width: 1080px;
    margin: 0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    position: relative;
}

header nav ul > li.pullDown div.pullDownMenu div ul{
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-content:flex-start;
    flex-wrap: wrap;
}
header nav ul > li.pullDown div.pullDownMenu div ul:after{
	content:"";
	width:100%;
	display: block;
}
header nav ul > li.pullDown div.pullDownMenu li{
    width: 47.5%;
    text-align:left;
    display: block;
    border-bottom: 1px solid #5e5e5e;
}
header nav ul > li.pullDown div.pullDownMenu li:nth-child(1), header nav ul > li.pullDown div.pullDownMenu li:nth-child(2){
	border-top: 1px solid #5e5e5e;
}
header nav ul > li.pullDown div.pullDownMenu li a{
    padding: 6px 0 6px 20px;
    font-size: 14px;
    font-weight: 300;
    color:#fff;
    display: block;
    position: relative;
}
header nav ul > li.pullDown div.pullDownMenu li a:hover{
    color: #fcc800;
}
header nav ul > li.pullDown div.pullDownMenu li a:after{
    content:"";
    width: 3px;
    height: 3px;
    margin: -4px 0 0 0;
    border-top: 2px solid #a7a7a7;
    border-right: 2px solid #a7a7a7;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 21px;
    left: 0;
}
header nav ul > li.pullDown div.pullDownMenu li a:hover:after{
    border-top: 2px solid #fcc800;
    border-right: 2px solid #fcc800;
}
header nav ul > li.pullDown div.pullDownMenu li span{
    padding: 6px 0 6px 20px;
    font-size: 14px;
    font-weight: 300;
    color:#fff;
    display: block;
    position: relative;
}
header nav ul > li.pullDown div.pullDownMenu li span:after{
    content:"";
    width: 3px;
    height: 3px;
    margin: -4px 0 0 0;
    border-top: 2px solid #a7a7a7;
    border-right: 2px solid #a7a7a7;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 21px;
    left: 0;
}

@media screen and (max-width: 1080px) {
    header{
        padding: 15px 0 15px 0;
        position: fixed;
    }
    header > div{
        width: 100%;
    }
    header > div > a{
        margin: 0;
        display: block;
    }
    header nav{
        display: none;
    }
}


/*
-----------------
hmNav @PC
-----------------
*/
#hmNav{
    display: none;
}
.hmNav{
    display: none;
}

/*
-----------------
hmNav @mobile
-----------------
*/
@media screen and (max-width: 1080px) {
    #hmNav{
        opacity: 1.0!important;
    }
    #hmNav,.hamburger__icon,.hamburger__icon:after,.hamburger__icon:before{
        -moz-transition-duration:.4!importants;
        -o-transition-duration:.4!importants;
        -webkit-transition-duration:.4!importants
    }
    .hamburger{
        display:block;
        width:83px;
        height:83px;
        position:fixed;
        top:0;
        right:0;
        z-index:10000;
        padding:12px;
        -moz-box-sizing:border-box;
        -webkit-box-sizing:border-box;
        box-sizing:border-box;
        -webkit-tap-highlight-color:transparent;
        -ms-touch-action:manipulation;
        touch-action:manipulationl;
        background: #212121;
    }
    .hamburger:hover{
        opacity: 1;
    }
    .hamburger__icon{
        position:relative;
        margin: 28px 0 0 13px;
    }
    .hamburger__icon,.hamburger__icon:after,.hamburger__icon:before{
        display:block;
        width:36px;
        height:2px;
        background-color:#fff;
        -moz-transition-property:background-color,-moz-transform;
        -o-transition-property:background-color,-o-transform;
        -webkit-transition-property:background-color,-webkit-transform;
        transition-property:background-color,transform;
        transition-duration:.4s;
    }
    .hamburger__icon:after,.hamburger__icon:before{
        position:absolute;
        content:"";
    }
    .hamburger__icon:before{
        top:-7px
    }
    .hamburger__icon:after{
        top:7px
    }
    .hamburger.active{
        background: #212121;
    }
    .hamburger.active .hamburger__icon{
        background-color:transparent
    }
    .hamburger.active .hamburger__icon:after,.hamburger.active .hamburger__icon:before{
        background-color:#fff;
    }
    .hamburger.active .hamburger__icon:before{
        -moz-transform:translateY(7px)rotate(45deg);
        -ms-transform:translateY(7px)rotate(45deg);
        -webkit-transform:translateY(7px)rotate(45deg);
        transform:translateY(7px)rotate(45deg)
    }
    .hamburger.active .hamburger__icon:after{
        -moz-transform:translateY(-7px)rotate(-45deg);
        -ms-transform:translateY(-7px)rotate(-45deg);
        -webkit-transform:translateY(-7px)rotate(-45deg);
        transform:translateY(-7px)rotate(-45deg);
    }
    #hmNav{
        z-index:15000;
        width:100%;
        height: 100vh;
        -moz-transform:scale(1);
        -ms-transform:scale(1);
        -webkit-transform:scale(1);
        transform:scale(1);
        -moz-transition-property:-moz-transform;
        -o-transition-property:-o-transform;
        -webkit-transition-property:-webkit-transform;
        transition-property:transform;
        transition-duration:.4s;
        overflow:hidden;
        -webkit-overflow-scrolling:touch;
        padding: 0 0 0 0;
    }
    .hmNav{
        width:100%;
        height: calc(100vh);
        display: block;
        background: #212121;
        overflow-y: scroll!important;
    }
    #hmNav.active{
        -moz-transform:scale(1);
        -ms-transform:scale(1);
        -webkit-transform:scale(1);
        transform:scale(1);
    }
    #hmNav li a{
        list-style-type:none;
        text-align:left;
        border-bottom: 1px solid #000;
        display: block;
    }
    #hmNav li span{
        list-style-type:none;
        text-align:left;
        border-bottom: 1px solid #000;
        display: block;
    }

	#hmNav button{
		background:transparent;border:none;cursor:pointer;outline:none;padding:0;appearance:none;
	}
	#hmNav button {
		display: block;
		cursor: pointer;
		background: #212121;
		width: 100vw;
		border-bottom: 1px solid #000;
		text-align: left;
		font-size: 16px;
		font-weight: 500;
		padding: 25px 30px 25px 20px;
		letter-spacing: 0.2em;
		font-family: 'Noto Sans Japanese', sans-serif;
		position: relative;
		margin: 0!important;
        color: #fff;
	}
    #hmNav button.is-open{
        color: #fcc800;
    }
	#hmNav button:after{
		content:"";
		width: 21px;
		height: 3px;
		background: #fff;
		position: absolute;
		right: 30px;
		top: 50%;
		-webkit-transform: rotate(-180deg);
	    transform: rotate(-180deg);
	    transition:
	    -webkit-transform     .3s ease-out,
	    transform    .3s ease-out;
	    margin: -3px 0 0 0;
	}
	#hmNav button.is-open:after{
		content:"";
		width: 21px;
		height: 3px;
		background: #fcc800;
		position: absolute;
		right: 30px;
		top: 50%;
		-webkit-transform: rotate(0deg);
	    transform: rotate(0deg);
	    transition:
	    -webkit-transform     .3s ease-out,
	    transform    .3s ease-out;
	    margin: -3px 0 0 0;
	}
	#hmNav button:before{
		content:"";
		width: 21px;
		height: 3px;
		background: #fff;
		position: absolute;
		right: 30px;
		top: 50%;
		opacity: 1;
		-webkit-transform: rotate(90deg);
	    transform: rotate(90deg);
	    transition:
	    opacity     .3s ease-out,
	    -webkit-transform     .3s ease-out,
	    transform    .3s ease-out;
	    margin: -3px 0 0 0;
	}
	#hmNav button.is-open:before{
		content:"";
		width: 21px;
		height: 3px;
		background: #fcc800;
		position: absolute;
		right: 30px;
		top: 50%;
		opacity: 0;
		-webkit-transform: rotate(0deg);
	    transform: rotate(0deg);
	    transition:
	    opacity     .3s ease-out,
	    -webkit-transform     .3s ease-out,
	    transform    .3s ease-out;
	    margin: -3px 0 0 0;
	}
	.hmNav > ul{
		border-top: 1px solid #000;
		margin: 81px 0 0 0;
	}
	#hmNav ul li ul li {
		text-align: center;
		width: 100vw;
		/* 閉じている状態 */
		padding-top: 0;
		padding-bottom: 0;
		/* 閉じるアニメーション */
		transition:
		border-top     .3s ease-out,
		padding-top    .3s ease-out,
		height    .3s ease-out,
		padding-bottom .3s ease-out;
		height: 0;
	}
	#hmNav ul li  ul.is-open li {
		/* 開いている状態 */
		height: auto;
		/* 開くアニメーション */
		transition:
		border-top     .3s ease-out,
		padding-top    .3s ease-out,
		height    .3s ease-out,
		padding-bottom .3s ease-out;
	}
	#hmNav ul li  ul > li > p {
		/* 閉じている状態 */
		line-height: 0;
		opacity: 0;
		visibility: hidden;
		/* 閉じるアニメーション */
		transition:
		line-height .3s ease-out,
		opacity     .1s linear,
		visibility  .1s linear;
	}
	#hmNav ul li  ul > li > p a{
		/* 閉じている状態 */
		line-height: 0;
		opacity: 0;
		visibility: hidden;
		/* 閉じるアニメーション */
		transition:
		line-height .3s ease-out,
		opacity     .1s linear,
		visibility  .1s linear;
		background: #212121;
		font-size: 14px;
		font-weight: 400;
		padding: 25px 30px 25px 45px;
		letter-spacing: 0.2em;
		font-family: 'Noto Sans Japanese', sans-serif;
		color: #fff;
	}
	#hmNav ul li  ul.is-open > li > p {
		/* 開いている状態 */
		line-height: 1.5;
		opacity: 1;
		visibility: visible;
		/* 開くアニメーション */
		transition:
		line-height .3s ease-out,
		opacity     .1s linear .1s,
		visibility  .1s linear .1s;
	}
	#hmNav ul li  ul.is-open > li > p a{
		/* 開いている状態 */
		line-height: 1.5;
		opacity: 1;
		visibility: visible;
		/* 開くアニメーション */
		transition:
		line-height .3s ease-out,
		opacity     .1s linear .1s,
		visibility  .1s linear .1s;
		position: relative;
	}
	#hmNav ul li  ul.is-open > li > p a:after{
	    content:"";
	    width: 7px;
	    height: 7px;
	    margin: -5px 0 0 0;
	    border-top: 3px solid #fcc800;
	    border-right: 3px solid #fcc800;
	    -webkit-transform: rotate(45deg);
	    transform: rotate(45deg);
	    position: absolute;
	    top: 50%;
	    left: 20px;
	}
	#hmNav ul li  ul.is-open > li:nth-child(1) > p a:after{
	    content:"";
	    width: 7px;
	    height: 7px;
	    margin: -5px 0 0 0;
	    border-top: 3px solid #fcc800;
	    border-right: 3px solid #fcc800;
	    -webkit-transform: rotate(45deg);
	    transform: rotate(45deg);
	    position: absolute;
	    top: 50%;
	    right: 50px;
	}
    #hmNav ul li  ul > li > p span{
        /* 閉じている状態 */
        line-height: 0;
        opacity: 0;
        visibility: hidden;
        /* 閉じるアニメーション */
        transition:
        line-height .3s ease-out,
        opacity     .1s linear,
        visibility  .1s linear;
        background: #212121;
        font-size: 14px;
        font-weight: 400;
        padding: 25px 30px 25px 45px;
        letter-spacing: 0.2em;
        font-family: 'Noto Sans Japanese', sans-serif;
        color: #fff;
        display: block;
    }
    #hmNav ul li  ul.is-open > li > p span{
        /* 開いている状態 */
        line-height: 1.5;
        opacity: 1;
        visibility: visible;
        /* 開くアニメーション */
        transition:
        line-height .3s ease-out,
        opacity     .1s linear .1s,
        visibility  .1s linear .1s;
        position: relative;
        text-align: left;
    }
    #hmNav ul li  ul.is-open > li > p span:after{
        content:"";
        width: 7px;
        height: 7px;
        margin: -5px 0 0 0;
        border-top: 3px solid #fcc800;
        border-right: 3px solid #fcc800;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        position: absolute;
        top: 50%;
        left: 20px;
    }
    #hmNav ul li  ul.is-open > li:nth-child(1) > p span:after{
        content:"";
        width: 7px;
        height: 7px;
        margin: -5px 0 0 0;
        border-top: 3px solid #fcc800;
        border-right: 3px solid #fcc800;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        position: absolute;
        top: 50%;
        right: 50px;
    }
.hmNav > ul > li > p a{
        /* 閉じている状態 */
        line-height: 0;
        opacity: 0;
        visibility: hidden;
        /* 閉じるアニメーション */
        transition:
        line-height .3s ease-out,
        opacity     .1s linear,
        visibility  .1s linear;
        background: #212121;
        font-size: 14px;
        font-weight: 400;
        padding: 25px 30px 25px 45px;
        letter-spacing: 0.2em;
        font-family: 'Noto Sans Japanese', sans-serif;
        color: #fff;
    }
    .hmNav > ul > li > p a{
        /* 開いている状態 */
        line-height: 1.5;
        opacity: 1;
        visibility: visible;
        /* 開くアニメーション */
        transition:
        line-height .3s ease-out,
        opacity     .1s linear .1s,
        visibility  .1s linear .1s;
    }
   .hmNav > ul > li > p a{
        /* 開いている状態 */
        line-height: 1.5;
        opacity: 1;
        visibility: visible;
        /* 開くアニメーション */
        transition:
        line-height .3s ease-out,
        opacity     .1s linear .1s,
        visibility  .1s linear .1s;
        position: relative;
    }
   .hmNav > ul > li > p a:after{
        content:"";
        width: 7px;
        height: 7px;
        margin: -5px 0 0 0;
        border-top: 3px solid #fcc800;
        border-right: 3px solid #fcc800;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        position: absolute;
        top: 50%;
        left: 20px;
    }
    .hmNav a:hover{
        color: #fcc800!important;
    }
    .hmNav span:hover{
        color: #fcc800!important;
    }
}

/*
-----------------
pageTop @PC
-----------------
*/

#pageTop{
    width: 1080px;
    margin: auto;
    text-align: right;
    position: relative;

}
#pageTop a{
    width: 64px;
    height: 64px;
    font-size: 0;
    display: inline-block;
    background: #a7a7a7;
    position: absolute;
    top: -98px;
    right: 0;
}
#pageTop a:after{
    content:"";
    width: 14px;
    height: 14px;
    margin: -4px 0 0 -7px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: absolute;
    top: 50%;
    left: 50%;
}
#pageTop a:hover{
    opacity: 1;
    background: #ffc20e;
    top: -104px;
}
@media screen and (max-width: 1080px) {
    #pageTop{
        width: 94%;
        margin: 0 auto;
    }
}
@media screen and (max-width: 480px) {
    #pageTop a{
        width: 64px;
        height: 64px;
        font-size: 0;
        display: inline-block;
        background: #a7a7a7;
        position: absolute;
        top: -98px;
        right: 50%;
        margin: 0 -32px 0 0;
    }
}

/*
-----------------
footer @PC
-----------------
*/
footer{
	width: 100%;
    background: #212121;
    color: #fff;
    padding: 22px 0 60px 0;
}
footer > div{
    width: 1080px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}
footer > div > div:nth-child(1){
    order: 2;
}
footer > div > div:nth-child(2){
    order: 1;
}
footer > div > div:nth-child(2) ul{
    display: flex;
    justify-content: space-between;
}
footer > div > div:nth-child(1) ul{
    width: 220px;
    display: flex;
    justify-content: space-between;
}
footer > div > div:nth-child(1) ul li a{
    width:38px;
    height: 38px;
    display: flex;
    justify-content: center;
    align-items: center;
}
footer > div > div:nth-child(1) ul li:nth-child(1) a:hover{
    background: #000;
}
footer > div > div:nth-child(1) ul li:nth-child(2) a:hover{
    background: #2ca7e0;
}
footer > div > div:nth-child(1) ul li:nth-child(3) a:hover{
    background: #0077b5;
}
footer > div > div:nth-child(1) ul li:nth-child(4) a:hover{
    background: #3b5998;
}
footer > div > div:nth-child(1) ul li:nth-child(5) a:hover{
    background: #ff0000;
}
footer > div > div:nth-child(1) ul li a:hover{
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
}
footer > div > div:nth-child(1) ul li a i{
    font-size: 22px;
    letter-spacing: 0;
    color: #fff;
}
footer > div > div:nth-child(2) ul li{
    padding: 0 22px 0 0;
    margin: 0 22px 0 0;
    position: relative;
}
footer > div > div:nth-child(2) ul li:after{
    content:"";
    width: 1px;
    height: 14px;
    background: #6f6f6f;
    position: absolute;
    right: 0;
    top: 50%;
    margin: -5px 0 0 0;
}
footer > div > div:nth-child(2) ul li:last-child{
    padding: 0 0 0 0;
    margin: 0 0 0 0;
}
footer > div > div:nth-child(2) ul li:last-child:after{
    background: none;
}
footer > div > div:nth-child(2) ul li a{
    font-weight: 400;
    font-size: 14px;
    color: #a7a7a7;
}
footer > div > div:nth-child(2) ul li a:hover{
    color: #ffc20e;
}
footer > div > div:nth-child(2) p{
    font-family: 'Roboto', sans-serif;
    font-size: 11px;
    color: #6f6f6f;
}
footer > div > div:nth-child(2) ul li i{
        display: none;
    }

@media screen and (max-width: 1080px) {
    footer > div{
        width: 94%;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
    }
    footer > div > div:nth-child(2) ul li{
        padding: 0 10px 0 0;
        margin: 0 10px 0 0;
        position: relative;
    }
    footer > div > div:nth-child(2) ul li a{
        font-weight: 400;
        font-size: 13px;
        color: #a7a7a7;
    }
}
@media screen and (max-width: 768px) {
    footer > div > div:nth-child(2) ul{
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        margin: 0 0 26px 0;
    }
    footer > div > div:nth-child(2) ul li{
        width: 100%;
        padding: 0 0 0 0;
        margin: 0 0 0 10px;
        position: relative;
    }
    footer > div > div:nth-child(2) ul li:hover i{
        color: #ffc20e;
    }
    footer > div > div:nth-child(2) ul li:after{
        content:"";
        width: 1px;
        height: 14px;
        background: none;
        position: absolute;
        right: 0;
        top: 50%;
        margin: -5px 0 0 0;
    }
    footer > div > div:nth-child(2) ul li:last-child{
        padding: 0 0 0 0;
        margin: 0 0 0 10px;
    }
    footer > div > div:nth-child(2) ul li:last-child:after{
        background: none;
    }
    footer > div > div:nth-child(2) p{
        font-family: 'Roboto', sans-serif;
        font-size: 11px;
        color: #6f6f6f;
        margin: 0 0 0 10px;
    }
}
/*
-----------------
main @PC
-----------------
*/
main{
    position: relative;
    margin: 0 auto 158px auto;
}

/*
-----------------
breadCrumbs @PC
-----------------
*/
.breadCrumbs{
    margin: 0 auto;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: calc(50% - 590px);
}
.breadCrumbs li{
    float: left;
    font-size: 12px;
}
.breadCrumbs li a{
    margin: 0 0 0 0;
    padding: 0 22px 0 0;
    position: relative;
    display: inline-block;
}
.breadCrumbs li a:after{
    content:"〉";
    position: absolute;
    right: 0;
}

/*
-----------------
breadCrumbs @mobile
-----------------
*/
@media screen and (max-width: 1180px){
    .breadCrumbs{
        left: 5vw;
    }
}

/*
-----------------
contentWrap @PC
-----------------
*/
.contentWrap{
    padding: 0 0 0 0;
}

/*
-----------------
contentHeader @PC
-----------------
*/
.contentHeader{
    width: 1024px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    align-content:center;
    flex-wrap: wrap;
    min-height: 320px;
}
.contentHeader h1{
    width: 100%;
    font-size: 34px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.1em;
}
.contentHeader span{
    display: block;
    font-size: 18px;
    font-weight: 500;
    padding: 13px 0 0 0;
    color: #0f4a9e;
}

/*
-----------------
contentHeader @tablet-mobile
-----------------
*/
@media screen and (max-width: 1180px){
    .contentHeader{
        width: 90vw;
        padding: 0 5vw 0 5vw;
    }
}
@media screen and (max-width: 480px){
    .contentHeader h1{
        font-size: 28px;
    }
    .contentHeader span{
        font-size: 16px;
        padding: 10px 0 0 0;
    }
}

/*
-----------------
content @PC
-----------------
*/
.contentMain{
    width: 1024px;
    margin: 80px auto 0 auto;
    padding: 0 0 40px 0;
}

/*
-----------------
contentMain @tablet-mobile
-----------------
*/
@media screen and (max-width: 1180px){
    .contentMain{
        width: 90vw;
        padding: 0 5vw 40px 5vw;
        margin: 80px auto 0 auto;
    }
}

/*
-----------------
localPageNav @PC
-----------------
*/
.localPageNav{
    width: 100vw!important;
    padding: 62px 0 68px 0;
    background: rgba(243,249,255,1);
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}
.localPageNav div{
    width: 1024px;
    margin: 0 auto;
    overflow: hidden;
}
.localPageNav div p{
    margin: 0 0 16px 0;
    padding: 0 0 0 30px;
    text-align: left;
    font-size:16px;
    position:relative;
}
.localPageNav div p:before{
    content:"";
    width: 20px;
    height: 20px;
    margin: -10px 0 0 0;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #003f98;
    position: absolute;
    top: 50%;
    left: 0;
}
.localPageNav div p:after{
    content:"";
    width: 6px;
    height: 6px;
    margin: -4px 0 0 0;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    left: 5px;
}
.localPageNav div p a{
    color:#003f98;
}
.localPageNav div ul{
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.localPageNav div ul:after{
  content:"";
  width:31.4%;
  display: block;
}
.localPageNav div ul li{
    width: 31.4%;
    margin: 10px 0 0 0;
    text-align:left;
    border: 1px solid #eeeeee;
}
.localPageNav div ul li a{
    padding: 22px 40px 22px 20px;
    font-size: 14px;
    line-height: 1;
    color:#003f98;
    background: #fff;
    display: block;
    position: relative;
}
.localPageNav div ul li a:before{
    content:"";
    width: 20px;
    margin: -10px 0 0 0;
    height: 20px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #003f98;
    position: absolute;
    top: 50%;
    right: 10px;
}
.localPageNav div ul li a:after{
    content:"";
    width: 6px;
    height: 6px;
    margin: -4px 0 0 0;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 17px;
}

/*
-----------------
localPageNav @mobile
-----------------
*/
@media screen and (max-width: 1180px){
    .localPageNav{
        padding: 50px 0 50px 0;
    }
    .localPageNav > div{
        width: 90vw!important;
        padding: 0 5vw 0 5vw;
    }
}
@media screen and (max-width: 768px){
    .localPageNav div ul li{
        width: 100%;
        margin: 10px 0 0 0;
        text-align:left;
        border: 1px solid #eeeeee;
    }
}