@charset "utf-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css?family=Lato|M+PLUS+Rounded+1c|Noto+Sans+JP:400,500&subset=japanese');
body,html {font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif"; color: #141414; margin: 0 auto; padding: 0; width: 100%; height: 100%; position: relative; font-size: 16px; font-weight: 500;}
a,a:hover,a:visited,a:focus {color: inherit; text-decoration: none; outline: 0;}
p{margin: 0 auto;}
ul {list-style: none; padding: 0; margin: 0 auto;}
h1,h2,h3,h4,h5,h6 {margin: 0 auto; font-weight: 500;}
header,nav,section,footer {overflow: hidden; position: relative; margin: 0 auto;}
img {outline: 0; max-width: 100%;}
.container {width: 1000px; margin: 0 auto; overflow: hidden; position: relative;}
.lt {font-family: 'Lato','century gothic';}
.mr {font-family: 'M PLUS Rounded 1c',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";}
input,textarea,select,button,.noto,pre {font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";}
.smooth {transform: rotate(0.05deg);}
.left {float: left;}
.right {float: right;}
.clear {clear: both; float: none;}
.pc {display: block;}
.sp,.msp {display: none;}
.red {color: #d82432;}
.bg_red {background: #d82432 !important; color: #fff !important;}
.bg_grn {background: #6c9f2f !important; color: #fff !important;}
.bg_blu {background: #2f349f !important; color: #fff !important;}
.bg_ylw {background: #ffcc00 !important; color: #fff !important;}
.f12 {font-size: 12px;}
.f13 {font-size: 13px;}

.main {border: solid #fff; border-width: 1px 0;}
.main .container {display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: space-between; justify-content: space-between; flex-wrap: wrap; height: 100%;}
.main div.left {margin-left: 8%; z-index: 10}
.bgArea {background: url("/common/images/merit/bg.png"); overflow: hidden;}
.mainTitle {border-left: 10px solid #fdd000; font-size: 24px; letter-spacing: 0.1em; padding-left: .7em; line-height: 1.4; margin: 0 auto 5%;}
.mainTxt {font-size: 14px; letter-spacing: 0.1em;}
.sectionTitle {font-size: 18px; text-align: center; width: 920px; position: relative; margin: 4% auto 5%; letter-spacing: 0.05em;}
.sectionTitle big {font-size: 24px;}
.sectionTitle:before,.sectionTitle:after {content: ""; width: 36%; border: solid #adadad; border-width: 1px 0; height: 2px; position: absolute; display: block; top: 50%;}
.sectionTitle:after {right: 0;}

/* header */
header {width: 100%;}
header a {display: inline-block;}
.headNav {overflow: hidden; padding: 3px; box-sizing: border-box;}
.headNav ul {display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: space-around; justify-content: space-around; width: 350px; box-sizing: border-box;}
.headNav a:before {content: "▶"; color: #d82432; margin-right: 5px; font-size: 10px; line-height: 1;}
.headNav a:hover {color: #d82432;}
.headArea {display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: space-between; justify-content: space-between; width: 100%; margin: 2% auto;}
.headLogo a {display: -webkit-flex; display: flex; -webkit-align-items: flex-end; align-items: flex-end; -webkit-justify-content: space-between; justify-content: space-between; line-height: 1.3;}
.headLogo p {margin-left: 1em;}
.headContact {display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: space-around; justify-content: space-around;}
.headContact .call a {font-size: 30px; line-height: 1; background: url("/common/images/call.png") left center no-repeat; letter-spacing: 0.02em; padding-left: 1.8em; margin-right: .5em;}
.headContact .call span {display: block; margin-top: 1%; font-weight: normal; letter-spacing: normal;}
.headContact .bg_red {border-radius: 7px;}
.headContact .bg_red a {width: 230px; border-radius: 10px; text-align: center; padding: 10px 0; box-sizing: border-box; font-size: 20px; line-height: 1.2; letter-spacing: 0.02em;}
.headContact .bg_red span {display: block; margin-bottom: 1%;}
.headContact .bg_red:hover {margin: 1px -1px -1px 1px;}
/* navigation */
nav:not(.pager) {background: #6c9f2f; color: #fff;}
nav ul {display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; width: 100%; box-sizing: border-box;}
nav:not(.pager) li {box-sizing: border-box; width: auto; text-align: center; border-right: 1px solid #fff; line-height: 1.2;}
nav:not(.pager) li:hover {color: #6c9f2f; background: #f9f8f5;}
nav:not(.pager) a {display: block; width: 100%; padding: 1em 1.75em; box-sizing: border-box;}
/* breadcrumb */
.breadCrumb {background: #f9f8f5;}
.breadCrumb ul {display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: flex-start; justify-content: flex-start; font-size: 12px; height: 30px; letter-spacing: 0.1em; color: #6c9f2f; width: 95%;}
.breadCrumb a {color: #000;}
.breadCrumb a:after {content: ">"; margin: 0 5px;}
/* GLH's merit */
.meritBan {background: #e6e2e1;}
.meritBan .sectionTitle:before, .meritBan .sectionTitle:after {width: 35%;}
.meritBan ul {width: 100%; display: -webkit-flex; display: flex; flex-wrap: wrap; -webkit-align-items: flex-end; align-items: flex-end; -webkit-justify-content: space-between; justify-content: space-between; margin: 35px auto 75px;}
.meritBan ul li {border-radius: 0 15px 15px 15px; border: 1px solid #ffe1e3; width: 480px; height: 173px; position: relative;}
.meritBan ul li:before {border: 55px solid transparent; border-top: 0px solid #d82432; border-left: 55px solid #d82432; content: ""; display: block; position: absolute;}
.meritBan ul li span {position: absolute; color: #fff; left: 9px; top: 2px; font-size: 18px;}
.meritBan ul li a {display: block; width: 100%; height: 100%; box-sizing: border-box; padding: 25px 40px;}
.meritBan ul li a:after {content: "もっと見る ＞"; font-size: 16px; position: absolute; bottom: 12%;}
.meritBan ul li:hover a:after {color: #6c9f2f;}
.glh01 {background: url("/common/images/merit_01.png") #fff center bottom no-repeat;}
.glh02 {background: url("/common/images/merit_02.png") #fff center bottom no-repeat;}
.glh03 {background: url("/common/images/merit_03.png") #fff center bottom no-repeat;}
.glh04 {background: url("/common/images/merit_04.png") #fff center bottom no-repeat; margin-top: 40px;}
/* firstTime of GLH */
.firstGlh ul {display: -webkit-flex; display: flex; -webkit-align-items: flex-start; align-items: flex-start; -webkit-justify-content: space-between; justify-content:  space-between; width: 960px;}
.firstGlh ul li {width: 300px;}
.firstGlh ul li a {display: block;}
.firstGlh ul li a:hover {opacity: .8; margin: 1px -1px -1px 1px;}
.firstGlh img {border: 1px solid #eee;}
.firstGlh h2 {font-size: 18px; text-align: right; padding: .2em 1em .5em; box-sizing: border-box; border-bottom: 3px solid #6c9f2f;}
.firstGlh p {padding: .5em .8em;}
/* center Apply Banner */
.firstGlh .centerApply {margin: 3% auto; padding: 2% 0 3%;}
.centerApply {text-align: center;}
.centerApply a {background: #d82432; border-radius: 7px; color: #fff; font-size: 24px; text-align: center; display: inline-block; width: 560px; box-sizing: border-box; padding: .5em 0;}
.centerApply a span {display: block; font-size: 14px;}
.centerApply a:hover {margin: 1px -1px -1px 1px;}
/* each banner for link */
.banner {text-align: center; margin: 10% auto 15%;}
.banner p {margin: 1% auto 2%; font-size: 15px; text-align: left;}
.banner a {width: 100%; display: block; border-radius: 5px; box-sizing: border-box; color: #fff; font-weight: 400;}
.banner a span {display: block;}
.banner .lt {font-size: 34px; font-weight: bold; text-align: center; background: url("/common/images/merit/call.png") #2f349f 10% center no-repeat; padding: .3em 0 .5em 1.2em; line-height: 1.2;}
.banner .lt span {font-size: 14px; font-weight: normal;}
.banner .bg_red {font-size: 26px; letter-spacing: 0.03em; padding: .5em 0; line-height: 1.3}
.banner .bg_red span {font-size: 15px;}
.banner .bg_grn {font-size: 24px; background: url("/common/images/merit/mail.png") #6c9f2f 10% center no-repeat !important; padding: .6em 0 .6em 2em; line-height: 1.4; letter-spacing: 0.03em;}
.banner .bg_grn span {font-size: 15px;}
.banner .bg_ylw {font-size: 26px; padding: .5em 0 .4em; letter-spacing: 0.02em; text-shadow: 2px 2px 0 #ffbd00;}
.banner .bg_ylw span {font-size: 16px; line-height: 1.3;}
.banner a:hover {margin: 1px -1px -1px 1px;}
/* footer */
.goToTop {display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; width: 120px; height: 45px; border-radius: 15px 15px 0 0; float: right; cursor: pointer;}
.goToTop img {margin-right: 5%;}
footer {width: 100%; background: #fafafa; border-top: 1px solid #e8dbdb; box-sizing: border-box;}
footer a {display: inline-block;}
footer dl {display: -webkit-flex; display: flex; -webkit-align-items: flex-start; align-items: flex-start; -webkit-justify-content: flex-start; justify-content: flex-start; font-size: 13px;}
footer dt {border-radius: 3px; text-align: center; width: 75px; font-size: .9em; line-height: 1; padding: .5em 0 .6em; letter-spacing: 0.02em;}
footer dd {margin-left: 1.5em; line-height: 1.3;}
footer dd p {margin: 2% auto;}
footer .left {margin: 6% auto 4%;}
footer .flogo {margin: 0 2% 7%;}
footer .right {width: 53%; display: -webkit-flex; display: flex; flex-wrap: wrap;-webkit-align-items: flex-start; align-items: flex-start; -webkit-justify-content: flex-end; justify-content: flex-end; margin: 6% auto 0;}
footer .right a {margin: 0 auto 10%; line-height: 1.2; letter-spacing: 0.03em;}
footer .right ul {margin-left: 2em;}
footer .right ul li:before {content: "-"; margin-right: 2px;}
footer .right ul li a {margin: 0 auto 4%;}
footer .right a:hover {color: #6c9f2f;}
.fnav {width: 33.3%; margin-bottom: 2%;}
.fnavTitle {font-size: 15px;display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: flex-start; justify-content: flex-start;}
.fnavTitle:before {content: "●"; color: #d82432; margin-right: .8em; font-size: .7em; line-height: 1;}
.copyright {text-align: center; letter-spacing: 0.1em;}
.copyright .container {padding: .5em 0; box-sizing: border-box;}
/* Pマーク取得 */
.f_mark {display: flex; width: 100%;}
.f_mark a + a {width: 90px; display: block; margin-left: auto; position: relative; top: -21px;}

@media screen and (min-width: 1001px) { nav:not(.pager) li:first-child {border-left: 1px solid #fff;}}
@media screen and (max-width:1000px) and (min-width: 897px) {
    .headArea {width: 98%;}
    nav:not(.pager) li:last-child {border-right: 0;}
    .meritBan ul {width: 98%;}
    .glh04 {margin-top: 18px;}
    footer .left {margin: 6% 0 4% 3%;}
    .fixed.sp {display: none !important;}    
}
@media screen and (max-width: 896px) and (min-width: 601px) {
    .headArea {height: 8vw;}
    .spNav li,.spNav a {width: 8vw; height: 8vw; display: block;}
    .fixed a {height: 8vw;}
    nav:not(.pager) {top: 8.1vw;}
    .copyright {padding-bottom: 9vw;}    
}
@media screen and (max-width: 896px) {
    body,html {font-size: 14px;}
    .pc {display: none;}
    .sp {display: inline-block;}
    .container {width: 95%;}
    .headArea {margin: 0 auto;}
    header {border-bottom: 1px solid #ddd;}
    header .container {width: 100%;}
    .headLogo .sp {position: absolute; max-height: 80%; top: 10%; left: 1%;}
    .spNav ul {display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: flex-start; justify-content: flex-start;}
    .spNav li,.spNav a {display: block;}
    .spNav li{color: transparent; font-size: 0;}
    .spNav .bg_red {background:url("/common/images/sp_apply.svg") #d82432 center 50% no-repeat !important; background-size: 75% auto !important;}
    .spNav .bg_grn {background:url("/common/images/sp_menu.svg") #6c9f2f 45% 55% no-repeat !important; background-size: 60% auto !important;}
    nav .container {width: 100%;}
    nav:not(.pager) ul {display: inline-block;}
    nav:not(.pager) {background: rgba(83, 138, 17, 0.95); position: fixed; left: 0;z-index: 9999; width: 100%; display: none;}
    nav:not(.pager) li {border-right: 0; border-bottom: 1px dotted; text-align: left;}
    nav:not(.pager) li:last-child {border-bottom: 0;}
    nav:not(.pager) .sp {display: block;}
    nav:not(.pager) a {padding: 1em;}
    nav:not(.pager) a:before {content: "▶"; font-size: .5em; margin-right: 1em;}
    .main {border-top: 0;}
    .main .container,.sectionTitle,.firstGlh ul,.firstGlh ul li {width: 100%;}
    .mainTxt {background: rgba(255,255,255,0.6); padding: 1em 1.5em; border-radius: 5px;}
    .sectionTitle:before, .sectionTitle:after {display: none;}
    .meritBan ul {margin: 0 auto 8%;}
    .meritBan ul li {margin: 1% auto;}
    .meritBan ul li a:after {font-size: .9em;}
    .firstGlh p {padding: 1em;}
    .firstGlh ul {flex-wrap: wrap}
    .firstGlh ul li {margin: 3% auto;}
    .firstGlh ul li a,footer .left,.fixed {display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: space-between; justify-content: space-between;}
    .firstGlh img {width: 40%;}
    .txtBlock {margin-left: 3%; width: 60%;}
    .txtBlock:after {content: "もっと見る ＞"; float: right; font-size: .7em;}
    .centerApply a {max-width: 100%;}
    footer .left, footer .right {width: 100%;}
    footer .right {border-bottom: 1px solid #eee;}
    footer .flogo {margin: 0 auto;}
    footer .addressBlock {margin-left: 3%;}
    footer dl {margin: 0 auto 3%; display: block;}
    footer dd {margin: 0 auto;}
    .fixed {position: fixed; bottom: .5%; left: 0; width: 100%; z-index: 999; padding: 0 1%; box-sizing: border-box; text-align: center; display: none;}
    .fixed a {display: block; padding: .5em 0; line-height: 1; border-radius: 7px; box-sizing: border-box; font-size: 0; color: transparent;}
    .fixed .left {width: 65%;}
    .fixed .right {width: 34%;}
    .fixed .left a {background: url("/common/images/sp_fix.svg") rgba(216,36,50,0.9) 50% 48% no-repeat; background-size: auto 5.5vw; border: 1px solid #ff4f5d;}
    .fixed .right a {background: url("/common/images/sp_call.svg") rgba(108,159,47,0.9) center center no-repeat; background-size: auto 5vw; border: 1px solid #6c9f2f;}
    .spTop {font-size: 1px; width: 9vw; height: 9vw; position: fixed; bottom: 10.1vw; right: 2vw; box-sizing: border-box; display: none;}
    /* Pマーク取得 */
    .f_mark {flex-direction: column;}
    .f_mark a + a {position: static; margin: 20px auto 0; }
}
@media screen and (max-width: 600px) {
    .headArea,.spNav li,.spNav a,.fixed a {height: 12vw;}
    .spNav li,.spNav a {width: 12vw;}
    nav:not(.pager) {top: 12.1vw;}
    .main div.left {margin-left: 5%}
    footer .left {flex-wrap: wrap;}
    footer .flogo {margin: 1% auto 3%;}
    footer .right,.addressBlock {display: none;}
    .copyright {padding-bottom: 12vw;}
    footer .msp {width: 100%; margin: 3% auto 0; display: block;}
    footer .msp ul {display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: space-between; justify-content: space-between; flex-wrap: wrap;}
    footer .msp li {width: 49%;}
    footer .msp a {padding: .5em; font-size: 2.5vw; width: 100%; display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: space-between; justify-content: space-between; box-sizing: border-box; font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif; letter-spacing: 0.05em;}
    footer .msp a:after {content: ">";}
    .fixed .left a {background-size: auto 6.5vw;}
    .fixed .right a {background-size: auto 6vw;} 
    .spTop {bottom: 14.1vw}
}
@media screen and (max-width: 480px) {
    br.msp {display: block;}
    .container {width: 90%;}
    .breadCrumb{display: none;}
    .sectionTitle {margin-top: 8%;}
    .main:not(.index) {border-bottom: 10px solid #f9f8f5; height: 50vw !important;}
    .mainTitle {font-size: 4.3vw; margin-bottom: 3vw; letter-spacing: normal; border-left: 1.8vw solid #fdd000; }
    .mainTxt {font-size: 3vw; letter-spacing: 0.05em;}
    .main div.left {margin: 0 5%;}
    .main .right {max-width: none; max-height: 100%;}
    .meritBan ul li {background-position: right bottom !important; background-size: auto 90%; height: 33vw;}
    .meritBan ul li a {padding: 5vw 8vw;}
    .meritBan ul li:before {border: 10vw solid transparent; border-top:0px; border-left: 10vw solid #d82432;}
    .meritBan ul li span {font-size: 3vw;}
    .firstGlh ul li a {flex-wrap: wrap;}
    .txtBlock {margin: 3% auto; width: 100%;}
    .txtBlock:after {font-size: .9em;}
    .firstGlh ul {width: 90%;}
    .firstGlh img {width: auto; margin: 0 auto;}
    .banner p {font-size: .9em;}
    .banner .bg_red,.banner .bg_ylw,.banner .bg_grn,.centerApply a,section.apply a {font-size: 5vw !important;}
    .banner .lt {font-size: 7vw; background-size: auto 55%;}
    .banner .bg_ylw span,.banner .bg_grn span,.centerApply a span,section.apply a span {font-size: 3vw !important;}
    .banner .lt span {font-size: 3.1vw;}
    .banner .bg_grn {background-size: auto 50% !important;}
    footer .msp a {padding: .5em 0; font-size: 3vw;}
    footer .flogo {width: 60%;}
}
@media screen and (max-width: 380px) {
    .sectionTitle {font-size: 5vw;}
    .sectionTitle big {font-size: 1.3em;}
    .meritBan ul {font-size: 3.5vw; letter-spacing: normal; line-height: 1.5;}
    .meritBan ul li {height: 40vw; background-size: auto 70%;}
    .meritBan ul li a {padding: 6vw;}
    .meritBan ul li a:after {bottom: 10%; background: #2f349f; border-radius: 1em; color: #fff; padding: .3em 1.5em;}
    /*.goToTop {width: 30vw; height: 10vw; font-size: 4vw; line-height: 1; border-radius: 4vw 4vw 0 0;}
    .goToTop img {max-height: 50%;}*/
    .copyright {font-size: 3vw; letter-spacing: 0.05em;}
}


