@charset "utf-8";
/* CSS Document */

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; vertical-align:baseline; background:transparent; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; margin-inline:0; margin-block:0; margin-block-start: 0; margin-block-end: 0;}


/* html element 62.5% font-size for REM use */
html { font-size:62.5%; }

body{ line-height:1.4; font-size:1.4rem; font-weight: 500; color:#000; font-family: "Zen Kaku Gothic New", "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
h1, h2, h3, h4, h5, h6 { font-weight:normal; }
ol, ul{ list-style-type:none; }

header { padding-top: 137px;}

/* global box-sizing */
*,*:after,*:before { -moz-box-sizing: border-box; box-sizing: border-box; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }

a:hover { opacity: 0.8; }

/*---ハンバーガーメニュー---*/
.menu-icon { position: fixed; top: 0; right: 0; z-index: 9000; }
.menu-icon .menu { width: 60px; height: 97px; margin: 0; background: #004487; }
.menu-icon .menu a { display: block; height: 100%; text-align: center; line-height: 0; position: relative; }
.menu-icon .menu a .icon:before,.menu-icon .menu a .icon:after, .menu-icon .menu a .icon span { display: block; content: ""; position: absolute; top: 40%; left: 0; right:0; margin:auto; width: 30px; height: 2px; background: #fff; transition: .3s; }
.menu-icon .menu a .icon:before { margin-top: -10px; }
.menu-icon .menu a .icon span { margin-top: 0px; }
.menu-icon .menu a .icon:after { margin-top: 10px; }
.menu-icon .menu a.close .icon { background: transparent; }
.menu-icon .menu a.close .icon:before { margin-top: 0; }
.menu-icon .menu a.close .icon:after { margin-top: 0; }
.menu-icon .menu a.close .icon:before { transform: rotate(-45deg); -webkit-transform: rotate(-45deg); }
.menu-icon .menu a.close .icon span { transform: rotate(-45deg); -webkit-transform: rotate(-45deg); }
.menu-icon .menu a.close .icon:after { transform: rotate(-135deg); -webkit-transform: rotate(-135deg); }
.menu-icon .menu a .text{ display: block; position: absolute; bottom: 30%; left: 0; right: 0; margin: auto; color:#fff; font-size: 75%; font-weight: bold; letter-spacing: 0.5pt; text-align:center; }
#mdl-nav { position: fixed; top: 0; right: 0; bottom: 0; left: 0; overflow: auto; margin: auto; padding: 30px 30px 60px; z-index:2000; display: none; background-color:rgba(1, 77, 131, 0.9); z-index: 5000; }
.nav-first { margin: 2rem 0 0.7rem 0; padding: 0.5rem 0; }
.first-item { font-size: 1.3rem; font-weight: 600; display: flex; align-items: center; justify-content: flex-start; padding: 0.5rem; margin: 0.7rem; background: #fff; color: #0088b8; text-decoration: none; border-radius: 5px; }
.nav-first-wrap { line-height: 1.6; }
.nav-first-wrap li { margin: 0.7rem 0 0.7rem 2rem; }
.nav-first-wrap li a { padding: 1rem; color: #fff; font-size: 1.3rem; font-weight: 500; text-decoration: none; }
.first-item img { height: 26px; }
.second-item { display: block; padding: 1rem; color: #fff; font-size: 1.4rem; font-weight: 500; text-decoration: none; background:#0088b8; }

.fixBar { position: fixed; width: 100%; height: 137px; top: 0; left: 0; z-index: 10; background: #fff; z-index: 100;}
.sideBanner { position: fixed; right: 0; top: 97px; z-index: 100; background: #fa7e00;}
.home .sideBanner { top: 200px; z-index: 10; background: none;}

/*レスポンシブ用*/
/*----SP----*/
@media only screen and (max-width: 766px) {
    .pconly { display:none!important; }


    header { padding-top: 70px;}
    .menu-icon .menu { height: 70px;}

    .sideBanner { width: 45px; top: 110px;}
    .sideBanner img { width: 100%; height: auto;}

    .flex { flex-wrap: wrap; }
    .w10per { width: 100%!important; }
    .w20per { width: 100%!important; }
    .w80per { width: 100%!important; }
    .w800 { width:90%!important; }
    .w1000 { width: 96%!important; }
    .w1200 { width: 100%!important; }

    .column3 { width: 90%!important; }/*1/5*/
    .column5 { width: 44%!important; }/*1/5*/

    /*
    .table01 { border: none!important; }
    .table01 tr th { display: none; }
    .table01 tr td { display: block; width: 100%; border: none!important; }
    .table01 tr td:nth-of-type(1) { background: #0088b8; color: #fff; padding: 0.5rem 1rem!important; font-weight: bold; }
    */
    .fs12 { font-size: 1.0rem!important; }
    .fs30 { font-size: 2.0rem!important; }

    .fVertical { writing-mode: horizontal-tb!important; }

    .fixBar { height: 70px;}
    .fixBar img { width: 100%; height: auto;}
}


/*----PC----*/
@media screen and (min-width: 767px) {
    .sponly { display:none!important; }
    /*#mdl-nav { display: none!important; }*/
}



/*----common----*/

.displayB{ display:block; }
.displayN{ display:none; }
.displayT{ display:table; }
.displayTC{ display:table-cell; }
.displayI{ display:inline; }
.displayIB{ display:inline-block; }

.positionA { position: absolute; }
.positionF { position: fixed; }
.positionR { position: relative; }

.z-index1 { z-index: 1; }
.z-index11 { z-index: 11; }
.z-index22 { z-index: 22; }
.z-index99 { z-index: 99; }


/*Flexbox*/
.flexNowrap { flex-wrap: nowrap; gap: 0 1em;}
.flexStart { justify-content: flex-start;}
.flexEnd { justify-content: flex-end;}
.flexCenter { justify-content: center; }
.flexAround { justify-content: space-around; }
.flexBetween { justify-content: space-between }
.alignC { align-items: center; }
.alignS { align-items: flex-start; }
.alignE { align-items: flex-end; }
.gap2per { gap: 2%;}
.gap3per { gap: 3%;}
.gap5per { gap: 5%;}
.gap10 { gap: 10px;}
.gap20 { gap: 20px;}
.gap30 { gap: 30px;}
.column1 { width: 100%;}
.column2 { width: 48%; }/*1/2*/
.column3 { width: 30%; }/*1/3*/
.column3-1 { width: 32%; }/*1/3*/
.column3-2 { width: 66%; }/*1/3*/
.column4 { width: 23%; }/*1/4*/
.column4-3 { width: 75%; }/*3/4*/
.column5 { width: 18%; }/*1/5*/

@media only screen and (max-width: 766px) {
    .column3 { width: 90%; margin: 0 auto;}/*1/3*/
    .column3-1 { width: 90%; margin: 0 auto;}/*1/3*/
    .column3-2 { width: 90%; margin: 0 auto;}/*1/3*/
    .column4 { width: 90%; margin: 0 auto;}/*1/4*/
    .column4-3 { width: 90%; margin: 0 auto;}/*3/4*/
    .column5 { width: 90%; margin: 0 auto;}/*1/5*/
}


.objCenter { margin: 0 auto; }


.w10per { width: 10%; } .w15per { width: 15%; } .w20per { width: 20%; } .w25per { width: 25%; } .w30per { width: 30%; } .w35per { width: 35%; } .w40per { width: 40%; } .w45per { width: 45%; } .w50per { width: 50%; } .w55per { width: 55%; } .w60per { width: 60%; } .w65per { width: 65%; } .w70per { width: 70%; } .w75per { width: 75%; } .w80per { width: 80%; } .w85per { width: 85%; } .w90per { width: 90%; } .w95per { width: 95%; } .w98per { width: 98%; } .w100per { width: 100%; } .wauto { width: auto; }

.w10 { width: 10px; } .w15 { width: 15px; } .w20px { width: 20px; } .w25px { width: 25px; } .w30 { width: 30px; } .w35 { width: 35px; } .w40 { width: 40px; } .w45{ width: 45px; } .w50 { width: 50px; } .w55 { width: 55px; } .w60 { width: 60px; } .w65 { width: 65px; } .w70 { width: 70px; } .w75 { width: 75px; } .w80 { width: 80px; } .w85 { width: 85px; } .w90 { width: 90px; } .w95 { width: 95px; } .w100 { width: 100px; } .w200 { width: 200px; } .w250 { width: 250px; } .w300 { width: 300px; } .w400 { width: 400px; } .w500 { width: 500px; } .w600 { width: 600px; } .w700 { width: 700px; } .w800 { width: 800px; } .w900 { width: 900px; } .w1000 { width: 1000px; } .w1100 { width: 1100px; } .w1200 { width: 1200px; } .w1300 { width: 1300px; }

@media only screen and (max-width: 766px) {
    .w300 { width: 100%; } .w400 { width: 100%; } .w500 { width: 100%; } .w600 { width: 100%; } .w700 { width: 100%; } .w800 { width: 100%; } .w900 { width: 100%; } .w1000 { width: 100%; } .w1100 { width: 100%; } .w1200 { width: 100%; } .w1300 { width: 100%; }
}


.h15 { height: 15px; } .h20 { height: 20px; } .h25 { height: 25px; } .h30 { height: 30px; } .h40 { height: 40px; } .h50 { height: 50px; } .h100 { height: 100px; } .h200 { height: 200px; } .h300 { height: 300px; } .h400 { height: 400px; } .h500 { height: 500px; } .h600 { height: 600px; } .h700 { height: 700px; } .h800 { height: 800px; } .h900 { height: 900px; } .h1000 { height: 1000px; } .hauto { height: auto; }


.image100 { display: block; width: 100%; height: auto; }
.text100R { display: block; padding: 0 15% 0 3%; }
.text100L { display: block; padding: 0 3% 0 15%; }
.radius2222 { border-radius: 20px; }
.radius0220 { border-radius: 0 20px 20px 0; }
.radius2002 { border-radius: 20px 0 0 20px; }
.radius1100 { border-radius: 10px 10px 0 0; }
.radius1111 { border-radius: 10px; }

/*Textalign*/
.textL{ text-align:left; }
.textR{ text-align:right; }
.textC{ text-align:center; }

.txtDnone { text-decoration: none; }

.fGothic { font-family: "Noto Sans JP"; }
.fMincho { font-family: "Shippori Mincho"; }
.fMontserrat { font-family: "Montserrat"; }
.fLato { font-family: "Lato"; }

.lnhght10 { line-height: 1.0; }
.lnhght12 { line-height: 1.2; }
.lnhght14 { line-height: 1.4; }
.lnhght16 { line-height: 1.6; }
.lnhght18 { line-height: 1.8; }
.lnhght20 { line-height: 2.0; }

.lttrSpc00 { letter-spacing: 0em; }
.lttrSpc01 { letter-spacing: 0.1em; }
.lttrSpc02 { letter-spacing: 0.2em; }
.lttrSpc03 { letter-spacing: 0.3em; }
.lttrSpc05 { letter-spacing: 0.5em; }
.lttrSpc08 { letter-spacing: 0.8em; }
.lttrSpc10 { letter-spacing: 1.0em; }
.lttrSpc15 { letter-spacing: 1.5em; }
.lttrSpc20 { letter-spacing: 2.0em; }
.lttrSpc25 { letter-spacing: 2.5em; }
.lttrSpc30 { letter-spacing: 3.0em; }
.lttrSpc35 { letter-spacing: 3.5em; }
.lttrSpc40 { letter-spacing: 4.0em; }
.lttrSpc45 { letter-spacing: 4.5em; }
.lttrSpc50 { letter-spacing: 5.0em; }

/*縦書き*/
.fVertical { -ms-writing-mode: tb-rl; writing-mode: vertical-rl; }

.fs10 { font-size: 1.0rem; } .fs11 { font-size: 1.1rem; } .fs12 { font-size: 1.2rem; } .fs13 { font-size: 1.3rem; } .fs14 { font-size: 1.4rem; } .fs15 { font-size: 1.5rem; } .fs16 { font-size: 1.6rem; } .fs17 { font-size: 1.7rem; } .fs18 { font-size: 1.8rem; } .fs19 { font-size: 1.9rem; } .fs20 { font-size: 2.0rem; } .fs21 { font-size: 2.1rem; } .fs22 { font-size: 2.2rem; } .fs23 { font-size: 2.3rem; } .fs24 { font-size: 2.4rem; } .fs25 { font-size: 2.5rem; } .fs26 { font-size: 2.6rem; } .fs27 { font-size: 2.7rem; } .fs28 { font-size: 2.8rem; } .fs29 { font-size: 2.9rem; } .fs30 { font-size: 3.0rem; } .fs31 { font-size: 3.1rem; } .fs32 { font-size: 3.2rem; } .fs33 { font-size: 3.3rem; } .fs34 { font-size: 3.4rem; } .fs35 { font-size: 3.5rem; } .fs36 { font-size: 3.6rem; } .fs37 { font-size: 3.7rem; } .fs38 { font-size: 3.8rem; } .fs39 { font-size: 3.9rem; } .fs40 { font-size: 4.0rem; }

.fw300 { font-weight: 300; } .fw400 { font-weight: 400; } .fw500 { font-weight: 500; } .fw600 { font-weight: 600; } .fw700 { font-weight: 700; } .fw800 { font-weight: 800; } .fw900 { font-weight: 900; }

.fc333 { color: #333; }
.fc666 { color: #666; }
.fc000 { color: #000; }
.fcWhite { color: #fff; }
.fcRed { color: #cc0202; }
.fcBlue { color: #004487; }
.fcLightBlue { color: #0088b8; }
.fcDeepPink { color: #cb5050; }
.fcPink { color: #ed5f81; }
.fcGreen { color: #0e8e86; }
.fcLightGreen { color: #7cae3f; }
.fcGold { color: #ab7e03; }
.fcOrange { color: #fa7e00; }

.bgGlay{ background: #F5F5F5; }
.bgGlay2{ background: #ccc; }
.bgBeige { background: #fafaf4; }
.bgPaleYellow { background: #EDECE8; }
.bgBlue { background: #004487; }
.bgLightBlue { background: #0088b8; }
.bgLightLightBlue { background: #e9f1f5; }
.bgDeepPink { background: #cb5050; }
.bgPink { background: #ed5f81; }
.bgGreen { background: #0e8e86; }
.bgLightGreen { background: #7cae3f; }
.bgLightLightGreen { background: #f9fff0; }
.bgGold { background: #c69200; }
.bgOrange { background: #fa7e00; }
.bgWhite { background: #fff; }
.bgBlack { background: #333; }
.bgBlack2 { background: #999; }

.markOrange { background: #FDD8B2;}

.pdng05rem { padding: 0.5rem; } .pdng1rem { padding: 1rem; } .pdng2rem { padding: 2rem; } .pdng3rem { padding: 3rem; } .pdng5rem { padding: 5rem; } .pdng7rem { padding: 7rem; } .pdng10rem { padding: 10rem; }

.pdngT05rem { padding-top: 0.5rem; } .pdngT1rem { padding-top: 1rem; } .pdngT2rem { padding-top: 2rem; } .pdngT3rem { padding-top: 3rem; } .pdngT5rem { padding-top: 5rem; } .pdngT7rem { padding-top: 7rem; } .pdngT10rem { padding-top: 10rem; }

.pdngB1rem { padding-bottom: 1rem; } .pdngB2rem { padding-bottom: 2rem; } .pdngB3rem { padding-bottom: 3rem; } .pdngB5rem { padding-bottom: 5rem; } .pdngB7rem { padding-bottom: 7rem; } .pdngB10rem { padding-bottom: 10rem; }

.pdngL1rem { padding-left: 1rem; } .pdngL2rem { padding-left: 2rem; } .pdngL3rem { padding-left: 3rem; }

.pdngR1rem { padding-right: 1rem; } .pdngR2rem { padding-right: 2rem; } .pdngR3rem { padding-right: 3rem; } .pdngR4rem { padding-right: 4rem; } .pdngR5rem { padding-right: 5rem; } .pdngR7rem { padding-right: 7rem; } .pdngR10rem { padding-right: 10rem; }

.mgn1rem { margin: 1rem; } .mgn2rem { margin: 2rem; } .mgn3rem { margin: 3rem; } .mgn4rem { margin: 4rem; } .mgn5rem { margin: 5rem; }

.mgnT1rem { margin-top: 1rem; } .mgnT2rem { margin-top: 2rem; } .mgnT3rem { margin-top: 3rem; } .mgnT4rem { margin-top: 4rem; } .mgnT6rem { margin-top: 6rem; } .mgnT10rem { margin-top: 10rem; }

.mgnB1rem { margin-bottom: 1rem; } .mgnB2rem { margin-bottom: 2rem; } .mgnB3rem { margin-bottom: 3rem; } .mgnB6rem { margin-bottom: 6rem; } .mgnB10rem { margin-bottom: 10rem; }

.mgnL1rem { margin-left: 1rem; } .mgnL2rem { margin-left: 2rem; } .mgnL3rem { margin-left: 3rem; }

.mgnR1rem { margin-right: 1rem; } .mgnR2rem { margin-right: 2rem; } .mgnR3rem { margin-right: 3rem; } .mgnR4rem { margin-right: 4rem; } .mgnR5rem { margin-right: 5rem; } .mgnR6rem { margin-right: 6rem; }

.btn { display: block; max-width: 320px; margin: 3rem auto 2rem; padding: 3rem 2rem; text-align: center; color: #fff; /*background: #0088b8;*/ font-size: 1.4rem; font-weight: 600; text-decoration: none; position: relative; border-radius: 40px; }
/*.btn::before { content: ""; margin: auto; position: absolute; top: 0; bottom: 0; right: 2rem; width: 11px; height: 11px; border-top: 2px solid #fff; border-right: 2px solid #fff; transform: rotate(45deg); }*/
.btn::before { content: ""; position: absolute; top: 50%; right: 7%; transform: translateY(-50%); box-sizing: border-box; width: 30px; height: 30px; background-image: url(../images/arrow-maru.svg); background-repeat: no-repeat; background-size: contain; background-position: center; }

.btn:hover { background: #0088b8; text-decoration: none; }

iframe.googlemap { display: block; }

.table01 { border-collapse: collapse; border: solid 1px #999; }
.table01 tr th { padding: 2rem; line-height: 1.6; font-size: 1.4rem; border: solid 1px #ccc; color: #fff; background: #0088b8; }
.table01 tr td { padding: 2rem; line-height: 1.6; font-size: 1.4rem; border: solid 1px #ccc; color: #333; background: #fff; }



/*背景2色*/
.doubleBgColor01 { background: linear-gradient(90deg, #fff 0%, #fff 50%, #fafaf4 50%, #fafaf4 100%); }
.doubleBgColor02 { background: linear-gradient(90deg, #fafaf4 0%, #fafaf4 50%, #fff 50%, #fff 100%); }


.brdBtmDsh { border-bottom: dashed 1px #ccc; }
.brdBtmDot { border-bottom: dotted 2px #ccc; }

.brdSld1White { border: solid 1px #fff; }
.brdSld2White { border: solid 2px #fff; }

.brdSld1Black { border: solid 1px #666; }


/*水平見出しテキストセンター*/
.hrzCenter { display: flex!important; align-items: center; }
.hrzCenter::before, .hrzCenter::after { content: ''; height: 1px; background-color: #666; flex-grow: 1; }
.hrzCenter::before { margin-right: 1rem; }
.hrzCenter::after { margin-left: 1rem; }

/*背景に模様*/
.pageBody .bg01 { background: url(../images/bg01.png) no-repeat center top; background-size: contain; border-radius: 10px; }
.pageBody .bg02 { background: url(../images/bg02.png) no-repeat center top; background-size: contain; padding: 50px 0; }
