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

/*-----font-family-----*/
html{font-family:"Noto Sans Japanese", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;}
body{-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;}

/* -----テキスト----- */
.fwb{font-weight: bold!important;}
.fwn{font-weight: normal!important;}
.ls1{letter-spacing: 1px;}
.sup{vertical-align:super; font-weight: inherit; font-size: 60%; color: inherit; text-decoration: inherit;}
.indent1 {text-indent: -1em; padding-left: 1em;}
.indent3 {text-indent: -3em; padding-left: 3em;}
.dip_inl{display: inline;}
.dip_inb{display: inline-block;}
.dip_block{display: block;}
.mauto {margin-left:auto; margin-right:auto;}
img.alignright {margin-left: auto; margin-right: 0;}
.aligncenter {margin-left: auto; margin-right: auto;}

/*pc */
@media print, screen and (min-width: 768px){
.txtL,.txtLPc{text-align: left;}
.txtC,.txtCPc{text-align: center;}
.txtR,.txtRPc{text-align: right;}

.fsXXXLPc {font-size: 30px; line-height: 1.4;}
.fsXXLPc {font-size: 26px; line-height: 1.4;}
.fsXL,.fsXLPc {font-size: 22px;}
.fsLL,.fsLLPc {font-size: 20px;}
.fsL,.fsLPc {font-size: 1.8rem;}
.fsM,.fsMPc {font-size: 1.4rem;}
.fsS,.fsSPc {font-size: 1.3rem;}
.fsXS,.fsXSPc {font-size: 1.1rem;}

.fs40,.fs40Pc {font-size: 4.0rem!important; line-height: 1.6!important;}
.fs32,.fs32Pc {font-size: 3.2rem!important; line-height: 1.4!important;}
.fs30,.fs30Pc {font-size: 3.0rem!important; line-height: 1.4!important;}
.fs28,.fs28Pc {font-size: 2.8rem!important; line-height: 1.4!important;}
.fs26,.fs26Pc {font-size: 2.6rem!important; line-height: 1.4!important;}
.fs24,.fs24Pc {font-size: 2.4rem!important;}
.fs22,.fs22Pc {font-size: 2.2rem!important;}
.fs20,.fs20Pc {font-size: 2.0rem!important;}
.fs18,.fs18Pc {font-size: 1.8rem!important;}
.fs16,.fs16Pc {font-size: 1.6rem!important;}
.fs15,.fs15Pc {font-size: 1.5rem!important;}
.fs14,.fs14Pc {font-size: 1.4rem!important;}
.fs13,.fs13Pc {font-size: 1.3rem!important;}
.fs12,.fs12Pc {font-size: 1.2rem!important;}

.vaM,.vaMPc{vertical-align: middle;}

.lh12,.lh12Pc{line-height: 1.2!important;}
.lh14,.lh14Pc{line-height: 1.4!important;}
.lh16,.lh16Pc{line-height: 1.6!important;}
.lh18,.lh18Pc{line-height: 1.8!important;}
.lh2,.lh2Pc{line-height: 2.0!important;}
}

/*sp*/
@media only screen and (max-width: 767px){
.txtL,.txtLSp{text-align: left;}
.txtC,.txtCSp{text-align: center;}
.txtR,.txtRSp{text-align: right;}
.fsXXL,.fsXXLSp {font-size: 22px; line-height: 1.4em;}
.fsLL,.fsLLSp {font-size: 20px; line-height: 1.4em;}
.fsXL,.fsXLSp {font-size: 20px; line-height: 1.4em;}
.fsL,.fsLSp {font-size: 18px; line-height: 1.4em;}
.fsM,.fsMSp {font-size: 15px;}
.fsS,.fsSSp {font-size: 14px;}
.fsXS,.fsXSSp {font-size: 12px;}

.fs30,.fs30Sp {font-size: 2.5rem!important; line-height: 1.4!important;}
.fs28,.fs28Sp {font-size: 2.4rem!important; line-height: 1.4!important;}
.fs26,.fs26Sp {font-size: 2.2rem!important; line-height: 1.4!important;}
.fs24,.fs24Sp {font-size: 2.1rem!important;}
.fs22,.fs22Sp {font-size: 2.0rem!important;}
.fs20,.fs20Sp {font-size: 1.8rem!important;}
.fs18,.fs18Sp {font-size: 1.7rem!important;}
.fs16,.fs16Sp {font-size: 1.6rem!important;}
.fs15,.fs15Sp {font-size: 1.5rem!important;}
.fs14,.fs14Sp {font-size: 1.4rem!important;}
.fs13,.fs13Sp {font-size: 1.3rem!important;}
.fs12,.fs12Sp {font-size: 1.2rem!important;}

.vaM,.vaMSp{vertical-align: middle;}

.lh12,.lh12Sp{line-height: 1.2!important;}
.lh16,.lh16Sp{line-height: 1.6!important;}
.lh14,.lh14Sp{line-height: 1.4!important;}
.lh18,.lh18Sp{line-height: 1.8!important;}
.lh2,.lh2Sp{line-height: 2.0!important;}
}

/* -----画像----- */
/*pc */
@media print, screen and (min-width: 768px){
img {image-rendering: -webkit-optimize-contrast;}/* Google chrome image rendering */
.autoImg.fullPc {width: auto;max-width: 100%;height: auto;display: table;margin: 0 auto;}
.autoImg.lgPc {width: 80%;margin: 0 auto;display: block;}
.autoImg.mdPc {width: 50%;margin: 0 auto;display: block;}
.autoImg.smPc {width: 30%;margin: 0 auto;display: block;}
}
/*sp*/
@media only screen and (max-width: 767px){
.Img {width: 100%;height: auto;}
.autoImgSp {width: 100%;height: auto;}
.autoImg.fullSp {width: auto;max-width: 100%;height: auto;display: table;margin: 0 auto;}
.autoImg.lgSp {width: 80%;margin: 0 auto;display: block;}
.autoImg.mdSp , .autoImgSp.mdSp {width: 50%;margin: 0 auto;display: block;}
.autoImg.smSp {width: 30%;margin: 0 auto;display: block;}
}

/* -----幅----- */
.fullauto {
width: 100%;
margin-left: auto;
margin-right: auto;
display: block;
}

/* PC */
@media print, screen and (min-width:768px){
.w1200Pc{width: 1200px; margin-left:auto; margin-right: auto;}/*固定ページコンテンツサイズ使用*/
.w1100Pc{width: 1100px; margin-left:auto; margin-right: auto;}/*固定ページコンテンツサイズ使用*/
.w1000Pc{width: 1000px; margin-left:auto; margin-right: auto;}/*固定ページコンテンツサイズ使用*/
.w900Pc{width: 900px; margin-left:auto; margin-right: auto;}/*バナー用サイズ使用*/
.w800Pc{width: 800px; margin-left:auto; margin-right: auto;}/*固定ページコンテンツサイズ使用*/
}
 /* SP */
@media screen and (max-width:767px){
.w100Sp{width: 100%; margin-left:auto; margin-right: auto;}
.w95Sp{width: 95%; margin-left:auto; margin-right: auto;}
.w90Sp{width: 90%; margin-left:auto; margin-right: auto;}
.w80Sp{width: 80%; margin-left:auto; margin-right: auto;}
.w60Sp{width: 60%; margin-left:auto; margin-right: auto;}
.w50Sp{width: 50%; margin-left:auto; margin-right: auto;}
}


/* -----margin / padding----- */
.pbL {padding-bottom: 4em!important;}


/*pc*/
@media print, only screen and (min-width: 768px){
.m0{margin: 0px !important;}
/*.mtXS,.mtXSPc {margin-top: 5px !important;}
.mtS,.mt10Pc {margin-top: 10px !important;}
.mtM,.mtMPc {margin-top: 20px !important;}
.mtL,.mtLPc {margin-top: 40px !important;}
.mtXL,.mtXLPc {margin-top: 80px !important;}
.mtXXL,.mtXXLPc {margin-top: 120px !important;;}
.mbS,.mbSPc {margin-bottom: 10px !important;}*/

.mt10,.mt10Pc {margin-top: 10px !important;}
.mt20,.mt20Pc {margin-top: 20px !important;}
.mt30,.mt30Pc {margin-top: 30px !important;}
.mt40,.mt40Pc {margin-top: 40px !important;}
.mt50,.mt50Pc {margin-top: 50px !important;}
.mt60,.mt60Pc {margin-top: 60px !important;}
.mt80,.mt80Pc {margin-top: 80px !important;}
.pt10,.pt10Pc{padding-top: 10px!important;}
.pt20,.pt20Pc{padding-top: 2rem!important;}


.ptbNone,.ptbNonePc {padding: 0 !important;}

.ptbS,.ptbSPc {padding: 10px 0 !important;}
.ptbM,.ptbMPc {padding: 20px 0 !important;}
.ptbL,.ptbLPc{padding: 40px 0 !important;}
.ptbXL,.ptbXLPc {padding: 60px 0 !important;}

.pS,.pSPc {padding: 10px!important;}

.ptS,.ptSPc{padding-top: 10px!important;}
.ptM,.ptMPc{padding-top: 20px!important;}
.pbLPc{padding-bottom: 40px!important;}
.ptXL,.ptXLPc{padding-top: 60px!important;}
.pbXL,.pbXLPc{padding-bottom: 60px!important;}

.mmt10Pc{margin-top: -10px;}
.mr20 , .mr20Pc{margin-right: 20px;}
.mr40Pc{margin-right: 40px;}
.mr50Pc{margin-right: 50px;}
.mr60Pc{margin-right: 60px;}
.mr70Pc{margin-right: 70px;}
.mr80Pc{margin-right: 80px;}
}
/*sp*/
@media only screen and (max-width: 767px){
.m0{margin: 0px !important;}
/*.mtXS,.mtXSSp {margin-top: 5px !important;}
.mtS,.mtSSp {margin-top: 10px !important;}
.mtM,.mtMSp {margin-top: 15px !important;}
.mtL,.mtLSp {margin-top: 20px !important;}
.mtXL,.mtXLSp {margin-top: 40px !important;}
.mtXXL,.mtXXLSp {margin-top: 80px !important;}*/

.mt10,.mt10Sp {margin-top: 0.8rem !important;}
.mt15,.mt15Sp {margin-top: 1.5rem !important}
.mt20,.mt20Sp {margin-top: 2rem !important;}
.mt30,.mt30Sp {margin-top: 3rem !important;}
.mt40,.mt40Sp {margin-top: 4rem !important;}
.mt50,.mt50Sp {margin-top: 5rem !important;}
.mt60,.mt60Sp {margin-top: 6rem !important;}
.pt10,.pt10Sp{padding-top: 0.8rem!important;}
.pt20,.pt20Sp{padding-top: 1.8rem!important;}


.mbS,.mbSSp {margin-bottom: 10px !important;}
.ptbNone,.ptbNoneSp {padding: 0 !important;}
.ptbS,.ptbSSp {padding: 10px 0 !important;}
.ptbM,.ptbMSp {padding: 15px 0 !important;}
.ptbL,.ptbLSp {padding: 30px 0 !important;}
.ptbXL,.ptbXLSp {padding: 40px 0 !important;}

.pS,.pSSp {padding: 10px!important;}

.ptM,.ptSp{padding-top: 20px!important;}
.ptXL,.ptXLSp {padding-top: 40px!important;}
.pbXL,.pbXLSp {padding-bottom: 40px!important;}

.mr20 , .mr20Sp{margin-right: 20px;}
}

/* -----横並びボックスサイズ----- */
.fL{float:left;}
.fR{float:right;}
.flex{
display: -webkit-flex;
display: flex;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
justify-content: space-between;
}

/* -----3個横並びの場合、最後に仮装ボックスを設けて右寄せにする----- */
.flex3box::after{
content:"";
display: block;
width:31%;
}

/*pc*/
@media print, only screen and (min-width: 768px){
.fLPc{float:left;}
.fRPc{float:right;}
.flexPc{display: -webkit-flex; display: flex;
-webkit-flex-wrap: wrap; flex-wrap: wrap;
justify-content: space-between;
}
.flex1of2,.flex1of2Pc{width: 48%;}
.flex1of3Pc{width: 400px;}
.flex2of3Pc{width: 590px;}
.flex3Pc{width: 31%;}
.flex4Pc{width: 20%;}
}
/*sp*/
@media only screen and (max-width: 767px){
.fLSp{float:left;}
.fRSp{float:right;}
.flexSp{display: -webkit-flex; display: flex;
-webkit-flex-wrap: wrap; flex-wrap: wrap;
justify-content: space-between;
}
.flex1of2,.flex1of2Sp{width: 48%;}
}

/* 横幅に合わせてリサイズ、はみ出た分をトリミング */
/* pc */
@media print, screen and (min-width: 768px){
.trim{
position: relative;
overflow: hidden;
}
.trim img {
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
}
}
/* 横幅に合わせてリサイズ、はみ出た分をトリミング */
/* sp */
@media only screen and (max-width: 767px){
.trimSp{
position: relative;
overflow: hidden;
}
.trimSp img {
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
}
}

/* -----各リンク設定----- */
a {
color: #116fa1;
text-decoration: underline;
}
a:hover {
transition: .3s;
filter:alpha(opacity=70);opacity:0.7;
}
a:hover div, a:hover p {
opacity: inherit;
}
.noline {
text-decoration: none;
}
a.grlink {
color: #000;
text-decoration: none;
}
a.grlink:hover {
transition: .3s;
filter:alpha(opacity=80);opacity:0.8;
}

/* -----白文字リンク----- */
.link_wh {
color: #fff;
text-decoration: none;
}
.link_wh:hover {
color: #fff;
text-decoration: none;
}

/* -----ボタンリンク　ホバー----- */
a.btn , a.btn img{
-webkit-transition: 0.1s ease-in-out;
-moz-transition: 0.1s ease-in-out;
-o-transition: 0.1s ease-in-out;
transition: 0.1s ease-in-out;
text-decoration: none;
}
a.btn:hover , a.btn:hover img{
opacity: 0.8;
}

/* -----ボタンリンク矢印[>>]----- */
.arrow {
padding: 1rem;
text-align: center;
text-decoration: none;
background-color: #0e602c;
/*background-image: url(/uploads/images/d_arrow.png);*/
background-size: 10px auto;
background-position: right 10px center;
background-repeat: no-repeat;
display: block;
}
/* -----戻るボタンリンク矢印[<<]----- */
.R-arrow {
padding: 1rem;
text-align: center;
text-decoration: none;
background-color: #0e602c;
background-image: url(/uploads/images/r_arrow.png);
background-size: 10px auto;
background-position: left 10px center;
background-repeat: no-repeat;
display: block;
}
.arrow2{
position: relative;
display: inline-block;
padding: 0 0 0 25px;
vertical-align: middle;
}
.arrow2::before,
.arrow2::after{
position: absolute;
top: 0;
bottom: 0;
left: 0;
margin: auto auto auto 8px;
content: "";
vertical-align: middle;
}
.arrow2::before{
width: 12px;
height: 12px;
-webkit-border-radius: 50%;
border-radius: 50%;
background: #0e602c;
}
.arrow2::after{
left: 5px;
box-sizing: border-box;
width: 3px;
height: 3px;
border: 3px solid transparent;
border-left: 3px solid #fff;
}

.arrow-u2{
position: relative;
display: inline-block;
padding: 0 0 0 16px;
color: #0e602c;
vertical-align: middle;
text-decoration: none;
font-size: 15px;
}
.arrow-u2::before,
.arrow-u2::after{
position: absolute;
top: 0;
bottom: 0;
left: 0;
margin: auto auto auto 8px;
content: "";
vertical-align: middle;
}
.arrow-u2::before{
width: 12px;
height: 12px;
-webkit-border-radius: 50%;
border-radius: 50%;
background: #fff;
}
.arrow-u2::after{
left: 3px;
top: 5px;
box-sizing: border-box;
width: 3px;
height: 3px;
border: 3px solid transparent;
border-top: 5px solid #0e602c;
}

/* ブランク用リンク */
.arrow_blank{
position: relative;
display: inline-block;
padding: 0 0 0 16px;
color: #0e602c;
vertical-align: middle;
text-decoration: none;
font-size: 15px;
}
.arrow_blank::before,
.arrow_blank::after{
position: absolute;
top: 0;
bottom: 0;
left: 0;
margin: auto auto auto 8px;
content: "";
vertical-align: middle;
}
.arrow_blank::before{
width: 12px;
height: 12px;
-webkit-border-radius: 50%;
border-radius: 50%;
background: #fff;
}
.arrow_blank::after{
left: 4px;
top: 0;
box-sizing: border-box;
width: 3px;
height: 3px;
border: 3px solid transparent;
border-left: 5px solid #0e602c;
}

/* ホワイトリンク用 */
.white_btn a {
margin-left: auto;
margin-right: auto;
padding: 1rem 5rem 1rem 6rem;
color: #fff;
text-align: center;
text-decoration: none;
background-color: #7aa4de;
border-radius: 50px;
position: relative;
display: inline-block;
}
.white_btn a.arrow::before{
content: "";
display:inline-block;
width: 0;
height: 0;
border-top: solid 6px transparent;
border-right: solid 10px transparent;
border-bottom: solid 6px transparent;
border-left: solid 8px #fff;
position: absolute;
top: 50%;
left: 10%;
margin-top:-6px;
}
/* ブルーリンク用 */
.blue_btn a {
margin-left: auto;
margin-right: auto;
padding: 1rem 5rem 1rem 6rem;
color: #fff;
text-align: center;
text-decoration: none;
background-color: #116fa1;
/* border-radius: 50px; */
position: relative;
display: inline-block;
}
.blue_btn a.arrow::before{
content: "";
display:inline-block;
width: 0;
height: 0;
border-top: solid 6px transparent;
border-right: solid 10px transparent;
border-bottom: solid 6px transparent;
border-left: solid 8px #fff;
position: absolute;
top: 50%;
left: 10%;
margin-top:-6px;
}
/* ピンクリンク用 */
.pink_btn a {
margin-left: auto;
margin-right: auto;
padding: 1rem 5rem 1rem 6rem;
color: #fff;
text-align: center;
text-decoration: none;
background-color: #fe70a4;
/* border-radius: 50px; */
position: relative;
display: inline-block;
}
.pink_btn a.arrow::before{
content: "";
display:inline-block;
width: 0;
height: 0;
border-top: solid 6px transparent;
border-right: solid 10px transparent;
border-bottom: solid 6px transparent;
border-left: solid 8px #fff;
position: absolute;
top: 50%;
left: 10%;
margin-top:-6px;
}
/* オレンジリンク用 */
.orange_btn a {
  margin-left: auto;
  margin-right: auto;
  padding: 1rem 5rem 1rem 3rem;
  color: #fff;
  text-align: center;
  text-decoration: none;
  background-color: #ed6c00;
  border-radius: 100vh;
  position: relative;
  display: inline-block;
  }
  .orange_btn a.arrow::before{
  content: "";
  display:inline-block;
  width: 0;
  height: 0;
  border-top: solid 6px transparent;
  border-right: solid 10px transparent;
  border-bottom: solid 6px transparent;
  border-left: solid 8px #fff;
  position: absolute;
  top: 50%;
  left: 10%;
  margin-top:-6px;
  }
/* グリーンリンク用 */
.green_btn a {
  margin-left: auto;
  margin-right: auto;
  padding: 1rem 5rem 1rem 6rem;
  color: #fff;
  text-align: center;
  text-decoration: none;
  background-color: #006036;
  /* border-radius: 50px; */
  position: relative;
  display: inline-block;
  }
  .green_btn a.arrow::before{
  content: "";
  display:inline-block;
  width: 0;
  height: 0;
  border-top: solid 6px transparent;
  border-right: solid 10px transparent;
  border-bottom: solid 6px transparent;
  border-left: solid 8px #fff;
  position: absolute;
  top: 50%;
  left: 10%;
  margin-top:-6px;
  }
/* ワインレッドリンク用 */
.w-red_btn a {
  margin-left: auto;
  margin-right: auto;
  padding: 1rem 5rem 1rem 6rem;
  color: #fff;
  text-align: center;
  text-decoration: none;
  background-color: #862040;
  /* border-radius: 50px; */
  position: relative;
  display: inline-block;
  }
  .w-red_btn a.arrow::before{
  content: "";
  display:inline-block;
  width: 0;
  height: 0;
  border-top: solid 6px transparent;
  border-right: solid 10px transparent;
  border-bottom: solid 6px transparent;
  border-left: solid 8px #fff;
  position: absolute;
  top: 50%;
  left: 10%;
  margin-top:-6px;
  }
a.arrow-u::before{
content: "";
display:inline-block;
width: 0;
height: 0;
border-top: solid 10px #fff;
border-right: solid 8px transparent;
border-bottom: solid 10px transparent;
border-left: solid 8px transparent;
position: absolute;
top: 55%;
left: 10%;
margin-top:-6px;
}

/*---- Window links ----*/
.window::after {content: url(/uploads/images/window.png); margin: 0 0 0 3px;}

/* -----テキストリンク----- */
.underline{text-decoration: underline;}
a.underlineH:hover{text-decoration: underline;}

/* -----PDFリンク----- */
.pdf_link a {
background: url(/uploads/images/ico_pdf.png) no-repeat 0 0;
background-size: auto;
background-size: 20px auto;
padding: 0 0 0 27px;
text-decoration: underline;
color:#066;
}
.pdf_biglink a {
background: url(/uploads/images/ico_pdf.png) no-repeat 0 0;
background-size: auto;
background-size: 32px auto;
padding: 5px 0 10px 35px;
text-decoration: underline;
color:#066;
display: inline-block;
}

/* -----テキストカラー----- */
.white{color: #fff;}
.blue {color: #116fa1;}
.l-blue {color: #7aa4de;}
.s-blue {color: #90caf7;}
.pink {color: #fe70a4;}
.l-pink {color: #7aa4de;}
.s-pink {color: #90caf7;}
.black {color: #323232;}
.orange{color: #e6aa6e;}
.l-brown{color: #b3a597;}
.green{color: #006036;}
.red{color: #cf0b15;}
.w-red{color: #862040;}

/* -----背景カラー----- */
.whiteBG {background-color: #fff!important;}
.grayBG {background-color: #f7f7f7!important;}
.beigeBG {background-color: #f9f7ef!important;}

/* --ピンク背景 --*/
.pinkBG {
background: url(/uploads/images/pink_bg.jpg) left top / 150px auto repeat;
}
.pinkBG-top {
width: 100%;
padding-bottom: 100px;
background-image: url(/uploads/images/pink_bg01.png);
background-position: left bottom;
background-repeat: repeat-x;
}
.pinkBG-bottom {
padding-bottom: 2em;
background: url(/uploads/images/pink_bg02.png) left top / 802px auto repeat-x;
}
/* sp */ @media only screen and (max-width: 767px){
  .pinkBG-top {
  padding-bottom: 4em;
  background-position: left -50px bottom;
  }
  .pinkBG-bottom {
  padding-bottom: 2em;
  background-position: left -50px top;
  }
}

/* --ブルー背景 --*/
.blueBG {
background: url(/uploads/images/blue_bg.jpg) left top / 150px auto repeat;
}
.blueBG-top {
width: 100%;
padding-bottom: 100px;
background-image: url(/uploads/images/blue_bg01.png);
background-position: left bottom -2px;
background-repeat: repeat-x;
}
.blueBG-bottom {
padding-bottom: 2em;
background: url(/uploads/images/blue_bg02.png) left top / 802px auto repeat-x;
}
/* sp */ @media only screen and (max-width: 767px){
  .blueBG-top {
  padding-bottom: 4em;
  background-position: left -50px bottom;
  }
  .blueBG-bottom {
  padding-bottom: 2em;
  background-position: left -50px top;
  }
}




/* -----線カラー ------*/
.bdGray{border: 1px solid #afafa9;}
.bdnone{border: none !important;}
.gray_border {
border: 10px solid #eee;
border-radius: 15px;
padding: 60px 5%;
}
/* sp */ @media only screen and (max-width: 767px){
  .gray_border {
  border: 6px solid #eee;
  padding: 30px 5%;
  }
}

/* -----その他----- */
.db{display: block;}
.dinb{display: inline-block;}
.d_link {margin: 0; padding: 0; height: 0; position: relative; pointer-events: none;}
.kadomaru{border-radius: 10px;}
.no-wrap {white-space: nowrap;}
.marker {background: linear-gradient(transparent 70%, #f7e888 70%);}
.shadow {
box-shadow: 0 0 10px 0 #dedede;
-moz-box-shadow: 0 0 10px 0 #dedede, 0 0 10px 0 #dedede, 0 0 10px 0 #dedede;
-webkit-box-shadow: 0 0 10px 0 #dedede, 0 0 10px 0 #dedede, 0 0 10px 0 #dedede;
}

/* -----通常リストスタイル用----- */
.disc {
padding-left: 1rem;
}
.disc li {
list-style: disc;
}

/*埋込動画*/
.movie_frame {
  position: relative;
  width: 95%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 56.25%;
}
.movie_frame iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/*表・テーブルテンプレート*/
/* table01 グレーデザイン（コース） */
.table01 th, .table01 td {
line-height: 1.5;
padding: 8px;
vertical-align: middle;
}
.table01 {
border-top: 1px solid #e8e8e8;
}
.table01 th {
width: 15em;
font-weight: bold;
background-color: #e8e8e8;
}
.table01 td {border-bottom: 1px solid #e8e8e8;}
.table01 th.brR {border-right: 1px dotted #fff;}
.table01 td.brR {border-right: 1px dotted #e8e8e8;}


/* table02 ブルーカラーデザイン（年間スケジュール） */
.table02 {
width: 100%;
margin: 0 auto;
padding: 0;
border-collapse: collapse;
display: table;
}
.table02 tr {
background-color: #efefef;
padding: .35em;
border-bottom: 2px solid #fff;
}
.table02 th,
.table02 td {
padding: 0.7em 10px 0.7em 1em;
border-right: 2px solid #fff;
}
.table02 thead tr{
background-color: #116fa1;
color:#fff;
vertical-align: middle;
}
.table02 thead tr th.pink_bg {
background-color: #e6aa6e;
}
.table02 thead tr th{
text-align: center;
vertical-align: middle;
}
.table02 tbody th {
background: #d5e3f5;
color: #116fa1;
text-align: center;
vertical-align: middle;
}
.table02 .cell_txt{
text-align: left;
font-size: 1.5rem;
vertical-align: middle;
text-align: center;
}
.table02 .cell_non{
background:#fff
}
/* sp */ @media only screen and (max-width: 767px){
  .table02 th,
  .table02 td {
  padding: 0.5em 10px 0.5em 10px;
  }
  .fixed01,
  .fixed02{
    position: sticky;
    top: 0;
    left: 0;
    &:before{
      content: "";
      position: absolute;
      top: -1px;
      left: -1px;
      width: 100%;
      height: 100%;
      border: 2px solid #fff;
    }
  }
  .fixed01{
  z-index: 2;
  }
  .fixed02{
  z-index: 1;
  }
}


/* table03 ピンクカラーデザイン（合格実績一覧） */
.table03 {
background-color: #fff;
border-radius: 10px;
}
.table03 th,
.table03 td {
padding: 0.7em 1.5em 0.7em 1em;
font-weight: normal;
font-size: 1.5rem;
}
.table03 td {
text-align: right;
}
.table03 tr.thead th {
font-weight: bold;
color: #fff;
text-align: center;
background-color: #116fa1;
border-radius: 10px 10px 0 0;
}
.table03 tr.thead02 th {
font-weight: bold;
vertical-align: middle;
color: #116fa1;
}
.table03 tr:nth-child(even) {
background-color: #d5e3f5;
}
/* table03 blue-table ブルーカラーデザイン（合格実績一覧） */
.table03.blue-table tr.thead th {
background-color: #e6aa6e;
}
.table03.blue-table tr.thead02 th {
color: #e6aa6e;
}
.table03.blue-table tr:nth-child(even) {
background-color: #f8f0e3;
}
/* table03 yellow-table イエローカラーデザイン（合格実績一覧） */
.table03.yellow-table tr.thead th {
background-color: #7aa4de;
}
.table03.yellow-table tr.thead02 th {
color: #7aa4de;
}
.table03.yellow-table tr:nth-child(even) {
background-color: #e3efff;
}



/* table04 ブルーカラーデザイン（年間スケジュール） */
.table04 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  border-collapse: collapse;
  display: table;
  }
  .table04 tr {
  background-color: #efefef;
  padding: .35em;
  border-bottom: 2px solid #fff;
  }
  .table04 th,
  .table04 td {
  padding: 5px 0;
  border-right: 2px solid #fff;
  vertical-align: middle;
  }
  .table04 thead tr{
  background-color: #006036;
  color:#fff;
  vertical-align: middle;
  }
  .middleclass .table04 thead tr{
  background-color: #116fa1;
  }
  .highclass .table04 thead tr{
  background-color: #862040;
  }
  .table04 thead tr th.pink_bg {
  background-color: #e6aa6e;
  }
  .table04 thead tr th{
  font-size: 1.4rem;
  text-align: center;
  vertical-align: middle;
  }
  .table04 tbody th {
  width: 11em;
  background: #e3efe1;
  color: #006036;
  text-align: center;
  vertical-align: middle;
  }
  .middleclass .table04 tbody th {
  background: #d5e3f5;
  color: #116fa1;
  }
  .highclass .table04 tbody th {
  background: #f8dfe0;
  color: #862040;
  }
  .table04 tbody td.ar {
    background-image: url(/uploads/images/schedule/tb4_ar02.png);
    background-size: 100% 15px;
    background-position: left center;
    background-repeat: repeat-x;
    position: relative;
  }
  .table04 tbody td.ar-start {
    background-image: url(/uploads/images/schedule/tb4_ar01.png),url(/uploads/images/schedule/tb4_ar02.png);
    background-size: auto 15px, 100% 15px;
    background-position: left center, left center;
    background-repeat: no-repeat, repeat-x;
    position: relative;
  }
  .table04 tbody td.ar-end {
    background-image: url(/uploads/images/schedule/tb4_ar03.png),url(/uploads/images/schedule/tb4_ar02.png);
    background-size: auto 15px, 100% 15px;
    background-position: right center, left center;
    background-repeat: no-repeat, repeat-x;
    position: relative;
  }
  .table04 tbody td.ar-start::after,
  .table04 tbody td.ar::after {
    content: "";
    width: 1px;
    height: 7px;
    background-color: #e6aa6e;
    display: block;
    right: -1px;
    top: 50%;
    transform: translateY(-50%);
    position: absolute;
  }
  .table04 tbody td.ar-all {
    background-image: url(/uploads/images/schedule/tb4_ar05.png);
    background-size: 100% 15px;
    background-position: left center;
    background-repeat: no-repeat;
    position: relative;
  }


  .table04 .cell_txt{
  background-color: #fff4e9;
  border-right: 1px solid #fff;
  }
  .table04 .cell_non{
  background:#fff
  }
  /* sp */ @media only screen and (max-width: 767px){
    .table04 th,
    .table04 td {
    padding: 0.5em 10px 0.5em 10px;
    }
    .table04 .fixed01,
    .table04 .fixed02{
      position: sticky;
      top: 0;
      left: 0;
      &:before{
        content: "";
        position: absolute;
        top: -1px;
        left: -1px;
        width: 100%;
        height: 100%;
        border: 2px solid #fff;
      }
    }
    .table04 .fixed01{
    z-index: 2;
    }
    .table04 .fixed02{
    z-index: 1;
    }
  }




/* pc */
@media print, screen and (min-width: 768px){
.dinbPc{display: inline-block;}
.d_link p {
top: -110px;
left: 0;
position: absolute;
}
.sp_link {
pointer-events: none;
}
}

.hidden{visibility:hidden}
.cf:after {
content:"";
display:block;
clear:both;
height: 0px;
}

/* ----- ClearFix ----------	*/
.clear:after {content:" "; display:block; clear:both;}

/* サイドリンクボタン */
.side_links {
position: fixed;
right: 0;
top: 350px;
z-index: 1000;
/* display: none; */
}
.home .side_links {
display: block;
}
.page-template .side_links {
display: block;
}
.single-post .side_links {
display: block;
}
.page-template.page-id-16 .side_links {
display: none;
}
.page-template.page-id-18 .side_links {
display: none;
}
.side_links_box{
  position: relative;
}
.side_links_box .side_links_btn_close{
  position: absolute;
  top: -10px;
  left: -10px;
}
.side_links_box .side_links_btn_close:hover{
  cursor: pointer;
}

/*-------トップへ戻るボタン-----*/
#page_top {
z-index: 1000;
}
#page_top {
position: fixed;
bottom: 40px;
right: 20px;
}
#page_top a.f_pt {
width: 85px;
height: auto;
padding: 0;
position: relative;
display: inline-block;
cursor: pointer;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-transition: all 0.3s;
transition: all 0.3s;
}
#page_top a.f_pt i {
font-size: 150%;
line-height: 60px;
-webkit-transition: all .3s;
transition: all .3s;
letter-spacing: 0;
}
#page_top a.f_pt:hover i {
line-height: 55px;
}

/* sp */
@media only screen and (max-width: 767px){
  #page_top {
  width: 100%;
  height: 55px;
  display: block;
  position: fixed;
  left: 0;
  bottom: 0;
  }
  .fix_contact .fix_contact_inner {
  width: 100%;
  }
  .fix_contact .fixlink02 {
  width: 100%;
  display: inline-block;
  }
  .fix_contact .fixlink_top {
  width: 16%;
  display: inline-block;
  position: absolute;
  right: 0;
  bottom: 90px;
  }
  .fix_contact .fix_contact_inner a {
  width: 100%;
  font-size: 16px;
  font-weight: bold;
  background-position: right 3% center;
  }
  .fix_contact .fixlink02 a {
  width: 100%;
  height: 55px;
  line-height: 55px;
  padding: 0 5%;
  font-size: 4.5vw;
  color: #fff;
  text-decoration: none;
  text-align: center;
  background-color: #ed6c00;
  display: flex;
  justify-content: center;
  align-items: center;
  }
  .fix_contact .fixlink02 a img{
    padding-right: 10px;
  }
  .fix_contact .fixlink_top a {
  width: 100%;
  height: 55px;
  text-align: center;
  display: block;
  }
  .fix_contact .fixlink_top a i {
  font-size: 25px;
  line-height: 55px;
  color: #fff;
  }
  /*　問い合わせページ下記のIDでは問合せバーは非表示 */
  /* .page-id-16 #page_top .fixlink01 {display: none;} */
  .page-id-16 #page_top .fixlink02 {display: none;}
  .page-id-16 #page_top .fixlink_top {bottom: 35px;}
  /* .page-id-18 #page_top .fixlink01 {display: none;} */
  .page-id-16 #page_top .fixlink02 {display: none;}
  .page-id-18 #page_top .fixlink_top {bottom: 35px;}
}


/* sp */
@media only screen and (max-width: 767px){
  .cfSp:after {
  content:"";
  display:block;
  clear:both;
  height: 0px;
  }
  /* スマホ用表の横スクロール */
  .slide-wrap {
  overflow-x: auto;
  white-space: nowrap;
  }
}

.posiR{position: relative;}
.dot_title {
padding: 15px;
border-top: 1px dotted #000;
border-bottom: 1px dotted #000;
}

/* 404ページ */
.serchform input[type="search"]{
border: 1px solid #999;
padding: 3px 10px;
border-radius: 3px;
height: 3rem;
overflow: hidden;
}
.serchform input[type="search"]:focus {
outline: 0;
height: 2.0em;
}
.serchform input[type="submit"]{
cursor: pointer;
font-family: FontAwesome;
font-size: 1.5rem;
border: none;
background: #0e602c;
border-radius: 3px;
color: #fff;
outline : none;
width: 3.5em;
height: 3rem;
display: inline-block;
vertical-align: middle;
}

/* 項目の非表示 */
.non {display: none!important;}
.e-none {pointer-events: none;}

/* pc */
@media print, screen and (min-width: 768px){
.sp{display: none !important;}
}
/* sp */
@media only screen and (max-width: 767px){
.pc{display: none !important;}
}
/* printのみ表示 */
@media screen and (min-width: 768px){
.sp2 {display: none !important;}
}
