/* CSS Document */

/* HEAD */
#pageHeadWrap { width: 960px; margin-left: auto; margin-right: auto; height: 175px; }
#pageHeadWrap h1 { font-size: 10px; line-height: 12px; height: 12px; text-align: right; padding-top: 5px; margin-bottom: 18px; }
#pageHeadWrap #headLogo { float: left; display: block; width: 240px; height: 60px; background: url(../images/headLogo.png) no-repeat; text-indent: -9999px; overflow: hidden; margin-right: 15px; }
#pageHeadWrap #logoLtext { float: left; font-size: 14px; line-height: 140%; color: #F30; padding-top:11px; }
#pageHeadWrap #headContR { float: right; padding-top: 5px; height: 55px; }
#pageHeadWrap #headContR ul { margin: 0; padding: 0; list-style: none; font-size: 12px; line-height: 120%; padding-top: 20px; float: left; }
#pageHeadWrap #headContR ul li { float: left; background: url(../images/icon01.png) no-repeat 0 center; padding: 0 10px 0 7px; }
#pageHeadWrap #headContR ul li a { color: #333; text-decoration: none; }
#pageHeadWrap #headContR ul li a:hover { text-decoration: underline; }
#pageHeadWrap #headContR #headContact { border-left: #2D60C1 1px dotted; padding-left: 10px; float: right; height: 55px; font-size: 11px; line-height: 120%; color: #000; }
#pageHeadWrap #headContR #headContact div.mrgB5 { display: table; }
#pageHeadWrap #headContR #headContact div.mrgB5 span { display: table-cell; vertical-align: middle; text-align: right; color: #663300; font-weight: bold; }
#pageHeadWrap #headContR #headContact div.mrgB5 span:last-of-type { padding-left: 10px; }
#pageHeadWrap #headContR #headContact div.mrgB5+p { font-weight: bold; text-align: right; }
/* HEAD NAVI */
#pageHeadWrap ul#headGNavi { margin: 0; padding: 0; list-style: none; background: url(../images/gNaviLine.png) no-repeat 0 0; font-size: 15px; line-height: 20px; color: #000; }
#pageHeadWrap ul#headGNavi li { float: left; width: 150px; padding: 0 5px; background: url(../images/gNaviLine.png) no-repeat right 0; text-align: center; }
#pageHeadWrap ul#headGNavi li.link02 { letter-spacing: -1px; }
#pageHeadWrap ul#headGNavi li a { display: block; width: 150px; height: 20px; color: #000; text-decoration: none; padding-bottom: 8px; }
#pageHeadWrap ul#headGNavi li.this a,
#pageHeadWrap ul#headGNavi li a:hover { border-bottom: #2E5EC1 2px solid; }
#sNaviWrap { background-color: #3691BD; height: 50px; }
#sNaviWrap ul { width: 960px; margin: 0 auto; padding: 0; list-style: none; }
#sNaviWrap ul li { font-size: 16px; line-height: 50px; float: left; background: url(../images/icon05.png) no-repeat 0 center; padding-left: 15px; margin-right: 53px; color: #FFF; }
#sNaviWrap ul li.last { margin-right: 0; }
#sNaviWrap ul li a { color: #FFF; text-decoration: none; }

@media (max-width: 767px) {
    #sNaviWrap { display: none;}
}

/* CONTENTS */
#mainCont { width: 100%; max-width: 960px; margin-left: auto; margin-right: auto; padding: 30px 0; }
.inner01 { padding: 10px 0; }
.wrap01 { padding-bottom: 60px; }
@media (max-width: 767px) {
    .inner01 { padding: 10px; font-size: 1.4rem; }
}


/* TITLE */
/*div#h1Title { background:#2E5EC1 url(../images/contentH1Bg.jpg) no-repeat center 0; height: 125px; }
div#h1Title h1 { width: 960px; margin-left: auto; margin-right: auto; text-indent: -9999px; overflow: hidden; height: 50px; padding-top: 37px; }
.title01 { color: #391C00; font-size: 18px; line-height: 120%; font-weight: bold; border-top: #2E5EC1 3px solid; border-bottom: #CCC 1px dotted; padding: 10px 0 8px; margin-bottom: 15px; }
.title02 { color: #000; font-size: 16px; line-height: 120%; font-weight: bold; border-left: #2E5EC1 6px solid; padding-left: 5px; margin-bottom: 10px; }*/
@media (min-width: 768px) {
div#h1Title { background:#2E5EC1 url(../images/contentH1Bg.jpg) no-repeat center 0; height: 125px; }
div#h1Title h1 { width: 960px; margin-left: auto; margin-right: auto; text-indent: -9999px; overflow: hidden; height: 50px; padding-top: 37px; }
.title01 { color: #391C00; font-size: 18px; line-height: 120%; font-weight: bold; border-top: #2E5EC1 3px solid; border-bottom: #CCC 1px dotted; padding: 10px 0 8px; margin-bottom: 15px; }
.title02 { color: #000; font-size: 16px; line-height: 120%; font-weight: bold; border-left: #2E5EC1 6px solid; padding-left: 5px; margin-bottom: 10px; }
}

/* TABLE */
table.table01,
table.table01 td,
table.table01 th { border-spacing: 0px; border: none; padding: 0; border-collapse: collapse; }

/* FOOT BNR */
#footBnrArea { max-width: 960px; margin-left: auto; margin-right: auto;}
#footBnrArea a { display: inline-block; }
#footBnrArea a:hover { filter: alpha(opacity=70); -moz-opacity: 0.7; opacity: 0.7; }
#footBnrArea span.footBnr01 { display: block; float: left; width: 350px; height: 130px; background-color: #BFDFFF; margin-right: 15px; }
#footBnrArea span.footBnr02 { display: block; float: left; width: 230px; height: 130px; background-color: #BFDFFF; }
#footBnrArea span.footBnr01 a,
#footBnrArea span.footBnr02 a { display: block; height: 130px; }
#footBnrArea span.footBnr01 a:hover
#footBnrArea span.footBnr02 a:hover { filter: alpha(opacity=90); -moz-opacity: 0.9; opacity: 0.9; }
#footBnrArea hr { margin: 0px 0px; }


/* FOOT */
.btnHeadBack { position: fixed; right: 20px; bottom: 20px; z-index: 1000; cursor: pointer; }
#pageFootWrapUpper { border-top: #2E5EC1 2px solid; }
#pageFootWraplower { margin-top: 0px }
#footAddWrap { border-top: #CCC 1px solid; padding: 18px 0; }
#footAddWrap #footAddIn { width: 960px; margin-left: auto; margin-right: auto; padding: 10px 0; }
#footAddIn a#footLogo { float: left; display: block; width: 245px; height: 30px; background: url(../images/footLogo.png) no-repeat; text-indent: -9999px; overflow: hidden; }
#footAddIn #footLogo2 { float: left; display: block; width: 195px; height: 30px; background: url(../images/footLogo2.png) no-repeat; text-indent: -9999px; overflow: hidden; margin-right: 15px; }
#footAddIn #footAdd { float: left; font-size: 12px; line-height: 140%; }
#footSitemapWrap { width: 960px; margin-left: auto; margin-right: auto; padding: 10px 0; }
#footSitemapWrap ul { float: left; list-style: none; margin: 0; padding: 0; font-size: 14px; line-height: 160%; width: 200px; }
#footSitemapWrap ul.footList01 { width: 300px !important; }
#footSitemapWrap ul li { background: url(../images/icon04.png) no-repeat 0 6px; padding-left: 12px; }
#footSitemapWrap ul li ul { width: auto; }
#footSitemapWrap ul li li { background: url(../images/icon01.png) no-repeat 0 center; padding-left: 10px; float: left; margin-right: 15px; }
#footSitemapWrap ul li li.listL { width: 100px; }
#footSitemapWrap ul li a { color: #000; text-decoration: none; }
#footSitemapWrap ul li a:hover { text-decoration: underline; }
#footSitemapWrap #topLink { margin-bottom:10px;}
#footSitemapWrap #topLink a { color:#333; font-size: 1.6rem; text-decoration: underline;}
#copyright { height: 50px; background-color: #2E5EC1; text-align: center; font-size: 12px; line-height: 50px; color: #FFF; }



/* footer link *//*
#footLinkWrap { border-bottom:#2E5EC1 2px solid; }
#footLink *, #footLink *:before, #footLink *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
#footLink { padding: 30px 0 10px; width: 960px; margin-left: auto; margin-right: auto;}
#footLink .title { font-size: 2rem; font-weight: bold; margin-bottom: 20px; line-height: 1;}
#footLink ul { display: flex; display: -webkit-flex; flex-direction: row; -webkit-flex-direction: row; flex-wrap: wrap; -webkit-flex-wrap: wrap; justify-content: flex-start; -webkit-justify-content: flex-start; align-items: stretch; -webkit-align-items: stretch; align-content: stretch; -webkit-align-content: stretch; list-style-type: none; padding: 0; }
#office { margin-bottom: 30px; }
#office li { width: -webkit-calc(25% - 20px); width: calc(25% - 20px); height: 80px; border: 1px solid #999; margin-bottom: 20px; margin-right: 26px;}
#office li:nth-child(4n+4) { margin-right: 0;}
#office a { font-size: 1.6rem; color: #333; padding: 0 30px 0 10px; display: block; height: 100%; line-height: 1.4; position: relative; display: flex; align-items: center; text-decoration: none;}
#office a:after { content: ''; position: absolute; right: 15px; top: -webkit-calc(50% - 8px); top: calc(50% - 8px); width: 16px; height: 16px; border-top: 3px solid #ee6815; border-right: 3px solid #ee6815; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
#office a:hover { background-color: #F9C73D; color: #fff; text-decoration: none; -webkit-transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1); transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1);  }
#office a:hover:after { border-color: #fff; -webkit-transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1); transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1); }
#office a span { font-weight: bold;}

#special {}
#special li { width: -webkit-calc(99.9% / 3 - 20px); width: calc(99.9% / 3 - 20px); margin-bottom: 15px;}
#special a { display: block; text-align: center; font-size: 1.3rem; line-height: 1; color: #333;}
#special img { margin-bottom: 7px; width: 100%; height: auto;}
#special li:nth-child(3n+2) { margin-left: 30px; margin-right: 30px; }*/
#footLinkWrap { border-bottom:#2E5EC1 2px solid; }
#footLink *, #footLink *:before, #footLink *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
#footLink { padding: 30px 0 10px;}
#footLink .title { font-size: 2rem; font-weight: bold; margin-bottom: 20px; line-height: 1;}
#footLink ul { display: flex; display: -webkit-flex; flex-direction: row; -webkit-flex-direction: row; flex-wrap: wrap; -webkit-flex-wrap: wrap; justify-content: flex-start; -webkit-justify-content: flex-start; align-items: stretch; -webkit-align-items: stretch; align-content: stretch; -webkit-align-content: stretch; }
#office { margin-bottom: 30px; }
#office li { width: -webkit-calc(25% - 20px); width: calc(25% - 20px); height: 80px; border: 1px solid #999; margin-bottom: 20px; margin-right: 26px;}
#office a { font-size: 1.6rem; color: #333; padding: 0 35px 0 10px; display: block; height: 100%; line-height: 1.4; position: relative; display: flex; align-items: center;}
#office a:after { content: ''; position: absolute; right: 15px; top: -webkit-calc(50% - 8px); top: calc(50% - 8px); width: 16px; height: 16px; border-top: 3px solid #ee6815; border-right: 3px solid #ee6815; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
#office a span { font-weight: bold;}

#special {}
#special li { width: -webkit-calc(99.9% / 3 - 20px); width: calc(99.9% / 3 - 20px); margin-bottom: 15px;}
#special a { display: block; text-align: center; font-size: 1.3rem; line-height: 1; color: #333;}
#special img { margin-bottom: 7px;}

@media (min-width: 768px) {
	#office li:nth-child(4n+4) { margin-right: 0; }
	#office a:hover { background-color: #F9C73D; color: #fff; text-decoration: none; -webkit-transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1); transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1);  }
	#office a:hover:after { border-color: #fff; -webkit-transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1); transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1); }

    #special {}
	#special li:nth-child(3n+2) { margin-left: 30px; margin-right: 30px;}
}

@media (max-width: 767px) {
	#footLink .title { font-size: 3.2rem; }
	#footLink ul { justify-content: space-between; -webkit-justify-content: space-between; }
	#office li { width: 50%; width: -webkit-calc(50% - 10px); width: calc(50% - 10px); height: 100px; margin-left: 0; margin-right: 0; }
	#office a { font-size: 2.4rem; }
	#office a:after { right: 25px; top: -webkit-calc(50% - 14px); top: calc(50% - 14px); width: 28px; height: 28px; border-width: 5px; }

	#special li { width: 50%; width: -webkit-calc(50% - 10px); width: calc(50% - 10px);}
}

@media (max-width: 480px) {

	#footLink .title { font-size: 2.2rem; }
	#office li { height: 65px; margin-bottom: 10px; }
	#office a { font-size: 1.6rem; }
	#office a:after { right: 15px; top: -webkit-calc(50% - 10px); top: calc(50% - 10px); width: 20px; height: 20px; }

	#special li { width: 100%; margin-bottom: 10px;}
}






/* OTHER */
.mrgB60 { margin-bottom: 60px; }
.pdgB20 { padding-bottom: 20px; }
.colorC00B { color: #C00; font-weight:bold; }
.colorC00 { color: #C00; }
.colorF30 { color: #F30; }
img.imgBlock1 { display: block; vertical-align: bottom; margin-left: -10px; }
img.imgBlock { display: block; vertical-align: bottom; }


a.btn01 { display: inline-block; background: #2E5EC1 url(../images/icon02.png) no-repeat 10px 12px; font-size: 14px; line-height: 20px; color: #FFF; padding: 7px 10px 7px 20px; text-decoration: none; }
a.btn01:hover { filter: alpha(opacity=70); -moz-opacity: 0.7; opacity: 0.7; }
a.btn02 { display: inline-block; background: #FFF url(../images/icon03.png) no-repeat 6px 10px; border: #2E5EC1 2px solid; font-size: 14px; line-height: 20px; color: #000; padding: 5px 6px 5px 18px; text-decoration: none; }
a.btn02:hover { background: #3591BC url(../images/icon03.png) no-repeat 6px 10px; }



/*
    重要なお知らせ
*//*
#importantWrap { background-color: #ffd200; padding: 13px 0; }
#importantWrap .container.colWrap { display: flex; display: -webkit-flex; flex-direction: row; -webkit-flex-direction: row; flex-wrap: wrap; -webkit-flex-wrap: wrap; justify-content: space-between; -webkit-justify-content: space-between; align-items: stretch; -webkit-align-items: stretch; align-content: stretch; -webkit-align-content: stretch; width: 1000px; margin-left: auto; margin-right: auto; border-bottom: none; padding-bottom: 0; margin-bottom: 0; }
#importantWrap .title { width: 120px; }
#importantWrap .title span { font-size: 12px; color: #fff; background-color: #e84109; border-radius: 12px; display: inline-block; text-align: center; width: 100%; line-height: 2;}
#importantWrap .body { width: calc(100% - 140px); font-size: 16px; line-height: 1.6;}
#importantWrap .body a { color: #0071bc;}*/

#importantWrap { background-color: #ffd200;}
#importantWrap .container.colWrap { display: flex; display: -webkit-flex; flex-direction: row; -webkit-flex-direction: row; flex-wrap: wrap; -webkit-flex-wrap: wrap; justify-content: space-between; -webkit-justify-content: space-between; align-items: stretch; -webkit-align-items: stretch; align-content: stretch; -webkit-align-content: stretch; }
#importantWrap .title {}
#importantWrap .title span { font-size: 12px; color: #fff; background-color: #e84109; border-radius: 12px; display: inline-block; text-align: center; width: 100%; line-height: 2;}
#importantWrap .body { font-size: 16px; line-height: 1.6;}
#importantWrap .body a { color: #0071bc;}

@media (min-width: 768px) {
    #importantWrap { padding: 13px 0;}
    #importantWrap .title { width: 120px;}
    #importantWrap .body { width: calc(100% - 140px); }
}

@media (max-width: 767px) {
    #importantWrap { padding: 10px 0;}
    #importantWrap .title { width: 100%; margin-bottom: 10px; }
    #importantWrap .body { width: 100%; font-size: 14px; }
}

@media (max-width: 480px) {

}


/*------------------------------------------------------

	common

------------------------------------------------------*/
body { color: #391C00;}
a:link { text-decoration: none; }
ul { list-style: none; }
ol { list-style: decimal; }
.font-tel { font-family: 'Oswald', sans-serif; }
.font-01 { font-family: 'Noto Sans JP', sans-serif; }
img { vertical-align: bottom; width: auto; max-width: 100%; height: auto; }

@media (min-width: 768px) {
    body { min-width: 1100px;}
    header .container ,
    footer .container { max-width: 1100px; margin-left: auto; margin-right: auto; position: relative;}
}
@media (max-width: 767px) {
    header .container ,
    footer .container { width: calc(100% - 40px); margin-left: auto; margin-right: auto;}

    /* TITLE */
    div#h1Title { background:#2E5EC1 url(../images/contentH1Bg.jpg) no-repeat center 0; background-size: cover; }
    div#h1Title h1 { width: 100%; max-width: 640px; margin: 0 auto; font-size: 32px; font-weight: bold; }
    div#h1Title h1 i { color: #FFF; margin-right: 10px; margin-left: 40px; }
    .title02 { color: #391C00; border-top: #2E5EC1 4px solid; border-bottom: #CCC 2px dotted; font-size: 32px; padding-left: 20px; font-weight: bold; border-left: none;}
    .title02 a { color: #391C00; text-decoration: none; }
    .title02 a:hover { text-decoration: underline; }
    .title03 { color: #E96A1E; font-weight: bold; font-size: 26px; line-height: 150%; }
    .title04 { color: #391C00; border-top: #2E5EC1 4px solid; border-bottom: #CCC 2px dotted; font-size: 32px; line-height: 130%; padding: 10px 0 10px 20px; font-weight: bold; }
    .title05 { background-color: #2E5EC1; max-height: 60px; font-size: 32px; color: #FFF; padding-left: 20px; }

    div#h1Title h1 { font-size: 20px; padding: 20px 10px;}
    div#h1Title h1 i { margin-left: 10px; margin-right: 5px; }
    .title02 { border-top: #2E5EC1 2px solid; border-bottom: #CCC 1px dotted; font-size: 20px; padding-left: 10px; padding: 10px;}
    .title03 { font-size: 14px; line-height: 130%; }
    .title04 { border-top: #2E5EC1 2px solid; border-bottom: #CCC 1px dotted; font-size:16px; line-height: 120%; padding: 5px 0 5px 10px; }
    .title05 { font-size: 18px; padding-left: 10px; }

    .spImg1 { width: 100%; max-width: 640px; height: auto; vertical-align: bottom; }
    .spImg2 { width: calc(100% - 20px); max-width: 600px; height: auto; vertical-align: bottom; }
}

/*------------------------------------------------------

	flexbox

------------------------------------------------------*/
.colWrap { display: flex; display: -webkit-flex; flex-direction: row; -webkit-flex-direction: row; flex-wrap: wrap; -webkit-flex-wrap: wrap; justify-content: space-between; -webkit-justify-content: space-between; align-items: stretch; -webkit-align-items: stretch; align-content: stretch; -webkit-align-content: stretch; }

.col2-1 { width: 50%; width: -webkit-calc(50% - 10px); width: calc(50% - 10px); }
.col3-1 { width: 33.3%; width: -webkit-calc(99.9% / 3 - 10px); width: calc(99.9% / 3 - 10px); }
.col4-1 { width: -webkit-calc( 25% - 10px ); width: calc( 25% - 10px ); }

.colWrap .img { text-align: center;}
.colWrap .img img { width: auto; max-width: 100%; }

.col3L1 ,
.col3R1 { width: 33.3%; width: -webkit-calc(99.9% / 3 - 10px); width: calc(99.9% / 3 - 10px); }
.col3L2 ,
.col3R2 { width: 66.6%; width: -webkit-calc( 99.9% * 0.666 - 10px ); width: calc( 99.9% * 0.666 - 10px ); }

.flex-left { justify-content: flex-start; -webkit-justify-content: flex-start; }
.flex-center { align-items: center; -webkit-align-items: center; }

@media (max-width: 767px) {

	.col2-1 { width: 100%; }
	.col3-1 { width: 50%; width: -webkit-calc(50% - 10px); width: calc(50% - 10px);}
	.col4-1 { width: 50%; width: -webkit-calc(50% - 10px); width: calc(50% - 10px); }

	.col3L1 ,
	.col3R1 ,
	.col3L2 ,
	.col3R2 { width: 100%; margin-bottom: 15px; }

	.col2-1:first-child { margin-bottom: 15px; }
}


/*------------------------------------------------------

    header

------------------------------------------------------*/
header {}


#headInfo { position: relative; }
#headInfo .logo {}
#headInfo .logo a {}
#headInfo .logo img {}
#headInfo .tel { margin-top: 4px; }
#headInfo .tel address { font-style: normal; margin-right: 10px; }
#headInfo .tel dl {}
#headInfo .tel dl dt { width: 140px; height: 22px; line-height: 22px; font-size: 1.2rem; color: #fff; text-align: center; border-radius: 3px; background-color: #ed7215; margin-right: 12px; }
#headInfo .tel dl dd { line-height: 1; font-size: 3rem; }
#headInfo .tel address p { font-size: 1.1rem; color: #666; font-weight: bold; text-align: right; }
#headInfo .tel address + p { background-color: #fcfbe3; display: inline-block; border-radius: 6px; color: #ed7215; position: relative; height: 46px; font-weight: bold; padding: 5px; font-size: 1.2rem; line-height: 1.4; }
#headInfo .link { position: absolute; right: 10px; top: 5px; }
#headInfo .link a { color: #666; font-size: 1.2rem; display: block; height: 100%; border: 2px solid #dddddd; border-radius: 6px; overflow: hidden; line-height: 1.4; font-weight: bold; padding: 5px 8px; }
#headInfo .link a::after { content: url(/common/images/icon_arrow.svg); padding-left: 4px; display: inline-block; width: 20px; height: 8px; }

#spMenuBtn {}
#spMenuBtn { width: 32px; height: 32px; background-color: #2e5ec2; position: absolute; right: 5px; top: 4px; border-radius: 6px; }
#spMenuBtn span { display: block; background-color: #fff; height: 3px; margin: 5px 4px; }
#spMenuBtn span:first-child { margin-top: 7px; }


#subNav { align-items: center; -webkit-align-items: center; }
#subNav > p { color: #2e5ec2; font-weight: bold; }
#subNav nav {}
#subNav nav ul {}
#subNav nav ul li { font-size: 1.4rem; position: relative; }
#subNav nav ul li::before { content: ''; position: absolute; left: -14px; top: calc(50% - 4px); width: 7px; height: 7px; border-top: 2px solid #2e5ec2; border-right: 2px solid #2e5ec2; -webkit-transform: rotate(45deg); transform: rotate(45deg); }

#subNav nav ul li:not(:last-child) { margin-right: 44px; }
#subNav nav ul li a { color: #666; font-weight: bold; }
#subNav nav ul li a:hover { text-decoration: underline; }


#mainNav { max-width: 1100px; margin-left: auto; margin-right: auto;}
#mainNav ul { margin-bottom: 24px; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
#mainNav ul li { font-size: 1.6rem; width: calc(99.9% / 6); text-align: center; border-left: 1px solid #ccc; position: relative; box-sizing: border-box; }
#mainNav ul li:last-child { border-right: 1px solid #ccc;}
#mainNav ul li::after { content: ''; position: absolute; left: 0; right: 0; bottom: -6px; margin: auto; width: 6px; height: 6px; border-top: 2px solid #2e5ec2; border-right: 2px solid #2e5ec2; -webkit-transform: rotate(135deg); transform: rotate(135deg); }
#mainNav ul li a { color: #333; text-decoration: none; display: block; height: 100%; padding-top: 4px; font-weight: bold;}
#mainNav ul li a:hover { text-decoration: underline;}

#spMenu {}
#spMenu address { font-style: normal; padding: 10px 10px; }
#spMenu address a { color: #555; font-size: 3.2rem; line-height: 1; margin-bottom: 4px; align-items: center; -webkit-align-items: center; justify-content: flex-start; -webkit-justify-content: flex-start; }
#spMenu address span[class^='icon-'] { color: #2e5ec2; font-size: 2.6rem; vertical-align: 3px; margin-right: 6px; }
#spMenu address .tel { font-weight: 500; letter-spacing: 1px; }
#spMenu address .btn { font-size: 1.3rem; color: #555; font-weight: bold; background-color: #fff; width: calc(100% - 235px); max-width: 110px; padding: 9px 8px 8px; border-radius: 6px; overflow: hidden; border: 1px solid #ccc; display: inline-block; margin-left: 10px; box-shadow:0px 2px 0px 0px #2e5ec2; position: relative; }
#spMenu address .btn::before{ content: ''; position: absolute; width: 12px; height: 12px; -webkit-border-radius: 50%; border-radius: 50%; background: #2e5ec2; right: 6px; top: calc(50% - 6px); }
#spMenu address .btn::after{ content: ''; position: absolute; width: 5px; height: 5px; border-top: 1px solid #fff; border-right: 1px solid #fff; -webkit-transform: rotate(45deg); transform: rotate(45deg); right: 11px; top: calc(50% - 2px); }


#spMenu address .text { font-size: 1.2rem; font-weight: bold; }
#spMenu nav {}
#spMenu nav ul {}
#spMenu nav ul.main { border-top: 1px solid #2e5ec2; }
#spMenu nav ul.main li { width: calc(50% - 1px); text-align: center; margin-bottom: 1px; }
#spMenu nav ul.main li a { display: block; height: 100%; color: #fff; background-color: #2e5ec2; font-size: 1.5rem; font-weight: bold; line-height: 1.2; padding: 18px 5px; }
#spMenu nav ul.main li span { display: block; font-size: 3.5rem; margin-bottom: 5px; }
#spMenu nav ul.main li:last-child span { margin-bottom: 14px; }


#spMenu nav ul.sub li:not(:first-child) { border-top: 2px solid #2e5ec2; }
#spMenu nav ul.sub li a { display: block; height: 100%; color: #333; font-size: 1.6rem; padding: 12px 30px 12px 10px; position: relative; }
#spMenu nav ul.sub li a::after { content: ''; position: absolute; top: calc(50% - 7px); right: 14px; width: 14px; height: 14px; border-top: 3px solid #2e5ec2; border-right: 3px solid #2e5ec2; -webkit-transform: rotate(45deg); transform: rotate(45deg); }


#spMenu .link { background-color: #2e5ec2; padding: 15px 10px; }
#spMenu .link li { width: calc(50% - 10px); background-color: #fff; text-align: center; border-radius: 6px; overflow: hidden; font-size: 1.4rem; line-height: 1.2; font-weight: bold}
#spMenu .link li a { display: block; height: 100%; color: #515151; padding: 10px 5px; }

.top #sNaviWrap { display: none;}
header:not(.top) { border-bottom: none;}


@media (min-width: 768px) {
	header { border-bottom: 5px solid #e0dedb; }

    #headInfo { border-top: 10px solid #2e5ec2; }
    #headInfo .logo { margin-right: 5px; position: relative; top: -10px; }
    #headInfo .logo a:hover img { opacity: 1; }
    #headInfo .link a { transition: border 0.3s; }
    #headInfo .link a:hover { text-decoration: none; border-color: #ed7215; }

    #spMenuBtn { display: none; }

    #subNav { margin: 0 auto 18px; padding: 0 10px; }
    #subNav > p { font-size: 2.4rem; }
    #subNav nav ul li:hover a { transition: color 0.3s; color: #ed7215; }
    #subNav nav ul li:hover::before { border-color: #f9ce00; transition: border 0.3s; }


    #mainNav ul li a { transition-property: background-color, color; transition-duration: 0.3s; }
    #mainNav ul li.active a { color: #0084ce; text-decoration: none;}
    #mainNav ul li a:hover { color: #DA6D6C; background-color: #FFF6ED; text-decoration: none; transition: 0.3s; }
    #mainNav ul li.active::after { border-top-color: #0084ce; border-right-color: #0084ce; }
	#mainNav ul li:hover::after {}

    #spMenu { display: none !important; }
}

@media (max-width: 767px) {

    #headInfo { background-color: #2e5ec2; }
    #headInfo .logo img { height: 40px; width: 243px; }
    #headInfo .tel { display: none; }
    #headInfo .link { display: none; }
    #spMenuBtn { display: block; }
    #subNav > p { width: 100%; text-align: center; font-size: 1.6rem; padding: 6px 10px; background-color: #fff; color: #2e5ec2; border-bottom: 1px solid #e0dedb; }
    #subNav nav { display: none; }
    #mainNav { display: none; }
    #spMenu { display: none; }
}


/*------------------------------------------------------

    scrollNav

------------------------------------------------------*/

#scrollNav { position: fixed; background-color: #fff; width: 100%; min-width: 1100px; z-index: 101; top: 0; left: 0; -moz-transform: translateY(-128px); -webkit-transform: translateY(-128px); -o-transform: translateY(-128px); -ms-transform: translateY(-128px); -webkit-transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1); transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1); }
#scrollNav.active { -moz-transform: translateY(0px); -webkit-transform: translateY(0px); -o-transform: translateY(0px); -ms-transform: translateY(0px); box-shadow: 0px 6px 6px -3px rgba(0,0,0,0.3); }
#scrollNav > .container { justify-content: flex-end; -webkit-justify-content: flex-end; padding: 9px 0 9px; }
#scrollNav .logo { position: absolute; left: 0; top: 12px; }
#scrollNav .logo a {}
#scrollNav .logo a:hover { text-decoration: none; }
#scrollNav .logo img { width: 216px; height: 40px; margin-right: 10px; }
#scrollNav .logo p { font-size: 1.5rem; color: #2e5ec2; line-height: 1.4; font-weight: bold; padding-top: 18px;}
#scrollNav .tel { margin-top: 4px; }
#scrollNav .access { border: 2px solid #2e5ec2; border-radius: 6px; width: 120px; height: 40px; text-align: center; font-size: 1.4rem; }
#scrollNav .access a { display: block; height: 100%; color: #666; line-height: 36px; font-weight: bold; }
#scrollNav .access a:hover { transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1); background-color: #2e5ec2; text-decoration: none; color: #fff; }
#scrollNav nav { background-color: #fff; padding: 8px 0 4px; }
#scrollNav nav ul { max-width: 1020px;}
#scrollNav nav ul li { width: auto; font-size: 1.4rem; margin-bottom: 3px; position: relative; padding-left: 1em; padding-right: 60px; }
#scrollNav nav ul li::before { content: ''; position: absolute; left: 0; top: calc(50% - 5px); width: 7px; height: 7px; border-top: 2px solid #2e5ec2; border-right: 2px solid #2e5ec2; -webkit-transform: rotate(45deg); transform: rotate(45deg); transition: border 0.3s; }
#scrollNav nav ul li a { color: #2088a3; transition: color 0.3s; font-weight: bold; }
#scrollNav nav ul li:hover::before { border-color: #ed7215; }
#scrollNav nav ul li:hover a { color: #ed7215; }

@media (min-width: 768px) {

}

@media (max-width: 767px) {
    #scrollNav { display: none; }
}


/*------------------------------------------------------

    追加ヘッダーコード

------------------------------------------------------*/
header {}
header .contactTel { height: 56px; width: calc(((100% - (260px + 100px)) / 2) - 30px); position: relative; font-style: normal; line-height: 1.1; align-items: center; -webkit-align-items: center; justify-content: flex-start; -webkit-justify-content: flex-start; margin-left: 10px; margin-right: 20px; }
header .contactTel .title { align-items: center; -webkit-align-items: center; margin-right: 14px; }
header .contactTel .title span { background-color: #f5650a; display: inline-block; width: 36px; height: 36px; border-radius: 50%; line-height: 28px; text-align: center; }
header .contactTel .title img { width: 20px; height: 20px; }
header .contactTel .title p { font-size: 1.3rem; color: #ee6815; font-weight: bold; margin-left: 5px; }
header .contactTel .body {}
header .contactTel .body a { font-size: 2.8rem; color: #444; margin-bottom: 2px; display: inline-block; }
header .contactTel .body a:hover { text-decoration: none; cursor: default; }
header .contactTel .body p { font-size: 1.1rem; color: #666; letter-spacing: -1px; font-weight: bold; }

header .contactOnline { height: 56px; width: calc(((100% - (260px + 100px)) / 2) - 30px); position: relative; font-style: normal; line-height: 1.1; align-items: center; -webkit-align-items: center; justify-content: flex-start; -webkit-justify-content: flex-start; flex-flow: nowrap; }
header .contactOnline .title { align-items: center; -webkit-align-items: center; margin-right: 14px; flex-flow: nowrap; }
header .contactOnline .title span { background-color: #35a5c4; display: inline-block; width: 36px; height: 36px; border-radius: 50%; line-height: 28px; text-align: center; }
header .contactOnline .title img { width: 20px; height: 20px; }
header .contactOnline .title p { font-size: 1.3rem; color: #35a5c4; font-weight: bold; margin-left: 5px; }
header .contactOnline .body {}
header .contactOnline .body a { font-size: 1.4rem; position: relative; color: #444; display: inline-block; text-align: center; background-color: #f2efeb; font-weight: bold; padding: 11px 30px 11px 16px; letter-spacing: -1px; border-radius: 18px; }
header .contactOnline .body a::after { content: ''; position: absolute; border-left: 8px solid #35a5c4; width: 4px; height: 8px; border-bottom: 8px solid transparent; transform: rotate(135deg); top: calc(50% - 4px); right: 15px;}
header .contactOnline .body a:hover { background-color: #35a5c4; color: #f2efeb; text-decoration: none;}
header .contactOnline .body a:hover::after { border-left-color: #f2efeb;}

#scrollNav .contactTel { margin-left: 0; margin-right: 0;}


@media (min-width: 768px) {

    header .contactTel ,
    header .contactOnline { width: 330px;}

    #spMenu > .colWrap { display: none; }
    #spMenu > p { display: none;}
}

@media (max-width: 1280px) {
    #headInfo .link { display: none;}
}

@media (max-width: 767px) {

    header .contactTel { display: none;;}

    header .contactOnline { display: none;}


    #spMenu > .colWrap { margin: 10px; }

    #spMenu #spContactTel { width: calc(50% - 5px); border: 1px solid #ee7215; display: block; color: #333;}
    #spMenu #spContactTel:hover { text-decoration: none;}
    #spMenu #spContactTel .title { align-items: center; -webkit-align-items: center;  border-bottom: 1px solid #ee7215; padding: 12px 5px; justify-content: center; -webkit-justify-content: center;}
    #spMenu #spContactTel .title span { background-color: #f5650a; display: inline-block; width: 36px; height: 36px; border-radius: 50%; line-height: 28px; text-align: center; padding-right: 0;}
    #spMenu #spContactTel .title img { width: 20px; height: 20px; }
    #spMenu #spContactTel .title p { font-size: 1.4rem; color: #ee6815; font-weight: bold; margin-left: 5px; line-height: 1.2; }
    #spMenu #spContactTel > p { text-align: center; font-size: 1.2rem; padding: 10px 10px; line-height: 1.2;}

    #spMenu #spContactOnline { width: calc(50% - 5px); border: 1px solid #35a5c4; display: block; color: #333;}
    #spMenu #spContactOnline:hover { text-decoration: none;}
    #spMenu #spContactOnline .title { align-items: center; -webkit-align-items: center;  border-bottom: 1px solid #35a5c4; padding: 12px 5px; justify-content: center; -webkit-justify-content: center;}
    #spMenu #spContactOnline .title span { background-color: #35a5c4; display: inline-block; width: 36px; height: 36px; border-radius: 50%; line-height: 28px; text-align: center; padding-right: 0; }
    #spMenu #spContactOnline .title img { width: 20px; height: 20px; }
    #spMenu #spContactOnline .title p { font-size: 1.4rem; color: #35a5c4; font-weight: bold; margin-left: 5px; line-height: 1.2; }
    #spMenu #spContactOnline > p { text-align: center; font-size: 1.2rem; padding: 10px 10px; line-height: 1.2;}

    #spMenu > p { font-size: 1.3rem; padding: 5px 0 20px 10px; }

}

@media (max-width: 480px) {

}



/*------------------------------------------------------

    footer

------------------------------------------------------*/
#footLinkWrap01 { border-top: 1px solid #ccc;}
#footLinkWrap01 .mainIn {}
#footLinkWrap01 .mainIn ul {}
#footLinkWrap01 .mainIn ul li { font-size: 1.8rem; margin-left: 10px; margin-right: 10px;}
#footLinkWrap01 .mainIn ul li:not(:last-child) { border-bottom: 1px dotted #ccc;}
#footLinkWrap01 .mainIn ul li a { font-weight: bold; color: #391c00; display: block; height: 100%; padding: 10px;}
#footLinkWrap01 .mainIn ul li span { float: right;}

#footLinkWrap02 { background-color: #2e5ec2; padding: 15px;}
#footLinkWrap02 .mainIn {}
#footLinkWrap02 .mainIn ul {}
#footLinkWrap02 .mainIn ul li { font-size: 1.6rem; }
#footLinkWrap02 .mainIn ul li:not(:last-child) { width: 50%; float: left; margin-bottom: 10px;}
#footLinkWrap02 .mainIn ul li a { color: #fff; text-decoration: none; font-weight: bold;}
#footLinkWrap02 .mainIn ul li span {}

@media (max-width: 767px) {
#pageFootIn { margin: 0 auto 10px; }
#pageFootIn a { display: inline-block; text-indent: -9999px; overflow: hidden; max-height:110px; }
#pageFootIn a#footLogo { width: 205px; height: 42px; background: url(../sp/pageFootImg01.png) no-repeat; background-size: 100% auto; }
}

@media (max-width: 480px) {

}



/*------------------------------------------------------



------------------------------------------------------*/
/*
#iryoIconWrap01 { text-align: center; width: 93.75%; max-width: 600px; margin: 0 auto 40px; }
#iryoIconWrap02 { margin-bottom: 15px; }
a.iryoIconWrap03 { display: inline-block; border-bottom: #DDD 4px solid; width: 31.6665%; text-decoration: none; font-size: 24px; }
a.iryoIconWrap03.center { margin: 0 15px; }
a.iryoIconWrap03.ma { letter-spacing: -1px; }
a.iryoIconWrap03 .iryoIconIn { display: block; border: #2E5EC1 4px solid; }
a.iryoIconWrap03 .iryoIconIn .iryoIcon { display: block; background-color: #2E5EC1; border: #DDD 4px solid; padding: 20px 0; }
a.iryoIconWrap03 .iryoIconIn i { font-size: 290%; color: #FFF; line-height: 1em !important; }
a.iryoIconWrap03 p { font-size: 24px; line-height: 60px; color:#391C00; text-decoration: none; font-weight: bold; }
*/

@media (max-width: 767px) {
    #iryoIconWrap01 { text-align: center; width: calc(100% - 20px); max-width: 600px; margin: 0 auto 20px; }
    #iryoIconWrap02 { margin-bottom: 5px; }
    a.iryoIconWrap03 { display: inline-block; border-bottom: #DDD 4px solid; width: calc(99.9% / 3 - 4px); text-decoration: none; font-size: 24px; margin-bottom: 0;}
    a.iryoIconWrap03.center {}
    a.iryoIconWrap03.ma { letter-spacing: -1px; }
    a.iryoIconWrap03 .iryoIconIn { display: block; border: #2E5EC1 4px solid; }
    a.iryoIconWrap03 .iryoIconIn .iryoIcon { display: block; background-color: #2E5EC1; border: #DDD 4px solid; padding: 3px 0; font-size: 3.6rem;}
    a.iryoIconWrap03 .iryoIconIn i { color: #FFF; line-height: 1em !important; }
    a.iryoIconWrap03 p { font-size: 1.4rem; white-space: nowrap; color:#391C00; text-decoration: none; font-weight: bold; padding: 5px 0;}
}

@media (max-width: 480px) {

}
