@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;}
.lt-1{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;}
.fs38,.fs38Pc {font-size: 3.8rem!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;}
.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;}

.fs38,.fs38Sp {font-size: 3rem!important; line-height: 1.4!important;}
.fs30,.fs30Sp {font-size: 2.5rem!important; line-height: 1.4!important;}
.fs28,.fs28Sp {font-size: 2.4rem!important; line-height: 1.4!important;}
.fs28,.fs28Sp {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;}
.lh15,.lh15Sp{line-height: 1.5!important;}
.lh14,.lh14Sp{line-height: 1.4!important;}
.lh18,.lh18Sp{line-height: 1.8!important;}
.lh2,.lh2Sp{line-height: 2.0!important;}
}

/* -----画像----- */
img {image-rendering: -webkit-optimize-contrast;}/* Google chrome image rendering */
/*pc */
@media print, screen and (min-width: 768px){
.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;}/*固定ページコンテンツサイズ使用*/

.wleft_Pc{width: 250px; margin-left:0; margin-right: 40px;}/*投稿ページコンテンツサイズ使用*/
.wright_Pc{width: 380px; margin-left:auto; margin-right: 0;}/*投稿ページコンテンツサイズ使用*/
}
 /* 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;}*/
.mt0, .mt0Pc {margin-top: 0!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;}
.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;}*/
.mt0, .mt0Sp {margin-top: 0!important;}
.mt10,.mt10Sp {margin-top: 0.8rem !important;}
.mt20,.mt20Sp {margin-top: 1.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;
}
.flexPc .wp-block-group__inner-container {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: #333;
text-decoration: underline;
}
a.whlink {
color: #fff;
text-decoration: none;
}
.e-none {
pointer-events: none!important;
}
/* PC */ @media only screen and (min-width: 768px){
  a:hover {
  color: #015e94;
  transition: .3s;
  filter:alpha(opacity=80);opacity:0.8;
  }
  a:hover div, a:hover p {
  opacity: inherit;
  }
  .noline {
  text-decoration: none;
  }
  a.hoverline:hover {
  text-decoration: underline;
  }
  a.whlink:hover {
  color: #fff;
  text-decoration: underline;
  transition: .3s;
  filter:alpha(opacity=80);opacity:0.8;
  }
}
/* -----白文字リンク----- */
.link_wh {
color: #fff;
text-decoration: none;
}
/* PC */ @media only screen and (min-width: 768px){
  .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;
}
/* PC */ @media only screen and (min-width: 768px){
  a.btn:hover , a.btn:hover img{
  opacity: 0.8;
  }
}

/* -----ボタンリンク矢印[>>]----- */
.arrow0 {
padding: 1rem;
text-align: center;
text-decoration: none;
background-color: #0e602c;
/*background-image: url(./images/d_arrow.png);*/
background-size: 10px auto;
background-position: right 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: #c4d600;
}
.arrow2::after{
left: 5px;
box-sizing: border-box;
width: 3px;
height: 3px;
border: 3px solid transparent;
border-left: 3px solid #1d1d1f;
}

/* 下向きページ内リンク */
.arrow-u{
padding: 0.5rem 2rem 1.8rem;
text-align: center;
text-decoration: none;
border: 2px solid #fff;
border-radius: 5px;
background-color: #0e602c;
box-shadow: 1px 1px 4px rgba(0,0,0,0.5);
display: block;
position: relative;
}
.arrow-u::before {
content: "";
display: block;
position: absolute;
bottom: 8px;
left: 50%;
width: 8px;
height: 8px;
border-top: 2px solid #fff;
border-right: 2px solid #fff;
transform: translateX(-50%) rotate(135deg);
}

.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;
}


/* ブラックリンク用 */
.black_btn a {
margin-left: auto;
margin-right: auto;
padding: 1rem 5rem;
color: #fff;
text-align: center;
text-decoration: none;
background: #1d1d1f;
border-radius: 100px;
position: relative;
display: inline-block;
}
.black_btn a.arrow::after{
content: "";
position: absolute;
width: 6px;
height: 6px;
border-right: 2px solid #fff;
border-top: 2px solid #fff;
transform: translateY(-50%) rotate(45deg);
right: 15px;
top: 50%;
transition: 0.3s;
}
.black_btn a.R-arrow::after{
content: "";
position: absolute;
width: 6px;
height: 6px;
border-left: 2px solid #fff;
border-bottom: 2px solid #fff;
transform: translateY(-50%) rotate(45deg);
left: 15px;
top: 50%;
transition: 0.3s;
}

.black_btn span.btn {
margin-left: auto;
margin-right: auto;
padding: 0.8rem 5rem;
color: #fff;
text-align: center;
text-decoration: none;
background: #1d1d1f;
border-radius: 50px;
display: block;
position: relative;
}
.black_btn span.arrow::after{
content: "";
position: absolute;
width: 6px;
height: 6px;
border-right: 2px solid #fff;
border-top: 2px solid #fff;
transform: translateY(-50%) rotate(45deg);
right: 15px;
top: 52%;
transition: 0.3s;
}

/* イエローリンク用 */
.yellow_btn a {
margin-left: auto;
margin-right: auto;
padding: 1rem 5rem;
color: #1d1d1f;
text-align: center;
text-decoration: none;
background: #c4d600;
border-radius: 100px;
position: relative;
display: inline-block;
}
.yellow_btn a.arrow::after{
content: "";
position: absolute;
width: 6px;
height: 6px;
border-right: 2px solid #1d1d1f;
border-top: 2px solid #1d1d1f;
transform: translateY(-50%) rotate(45deg);
right: 15px;
top: 50%;
transition: 0.3s;
}

.yellow_btn span.btn {
margin-left: auto;
margin-right: auto;
padding: 0.8rem 5rem;
color: #1d1d1f;
text-align: center;
text-decoration: none;
background: #c4d600;
border-radius: 50px;
display: block;
position: relative;
}
.yellow_btn span.arrow::after{
content: "";
position: absolute;
width: 6px;
height: 6px;
border-right: 2px solid #1d1d1f;
border-top: 2px solid #1d1d1f;
transform: translateY(-50%) rotate(45deg);
right: 15px;
top: 52%;
transition: 0.3s;
}

/* ホワイトリンク用 */
.white_btn a {
margin-left: auto;
margin-right: auto;
padding: 1rem 5rem;
color: #1d1d1f;
text-align: center;
text-decoration: none;
background-color: #fff;
border-radius: 100px;
position: relative;
display: inline-block;
}
.white_btn a.arrow::after{
content: "";
position: absolute;
width: 6px;
height: 6px;
border-right: 2px solid #1d1d1f;
border-top: 2px solid #1d1d1f;
transform: translateY(-50%) rotate(45deg);
right: 15px;
top: 50%;
transition: 0.3s;
}

.white_btn span {
margin-left: auto;
margin-right: auto;
padding: 1rem 5rem;
color: #1d1d1f;
text-align: center;
text-decoration: none;
background-color: #fff;
border-radius: 100px;
position: relative;
display: inline-block;
}
.white_btn span.arrow::after{
content: "";
position: absolute;
width: 6px;
height: 6px;
border-right: 2px solid #1d1d1f;
border-top: 2px solid #1d1d1f;
transform: translateY(-50%) rotate(45deg);
right: 15px;
top: 50%;
transition: 0.3s;
}


/* オレンジリンク用 */
.orange_btn a {
margin-left: auto;
margin-right: auto;
padding: 1rem 5rem;
color: #fff;
text-align: center;
text-decoration: none;
background: #f97d43;
border-radius: 100px;
position: relative;
display: inline-block;
}
.orange_btn a.arrow::after{
content: "";
position: absolute;
width: 6px;
height: 6px;
border-right: 2px solid #fff;
border-top: 2px solid #fff;
transform: translateY(-50%) rotate(45deg);
right: 15px;
top: 50%;
transition: 0.3s;
}

/* ブランク用リンク */
.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;
}

/* ブルーリンク用 */
.blue_btn a {
margin-left: auto;
margin-right: auto;
padding: 1rem 5rem;
color: #fff;
text-align: center;
text-decoration: none;
background: linear-gradient(70deg, #005bac 0%,#1cb5e0 100%);
border-radius: 100px;
position: relative;
display: inline-block;
}
.blue_btn a.arrow::after{
content: "";
position: absolute;
width: 6px;
height: 6px;
border-right: 2px solid #fff;
border-top: 2px solid #fff;
transform: translateY(-50%) rotate(45deg);
right: 15px;
top: 50%;
transition: 0.3s;
}

.blue_btn span.btn {
margin-left: auto;
margin-right: auto;
padding: 0.8rem 5rem;
color: #fff;
text-align: center;
text-decoration: none;
background: linear-gradient(70deg, #005bac 0%,#1cb5e0 100%);
border-radius: 50px;
display: block;
position: relative;
}
.blue_btn span.arrow::after{
content: "";
position: absolute;
width: 6px;
height: 6px;
border-right: 2px solid #fff;
border-top: 2px solid #fff;
transform: translateY(-50%) rotate(45deg);
right: 15px;
top: 52%;
transition: 0.3s;
}

.blue_btn02 span.btn {
margin-left: auto;
margin-right: auto;
padding: 0.8rem 5rem;
color: #fff;
text-align: center;
text-decoration: none;
background: #005bac;
border-radius: 0;
display: block;
position: relative;
}
.blue_btn02 span.arrow::after{
content: "";
position: absolute;
width: 6px;
height: 6px;
border-right: 2px solid #fff;
border-top: 2px solid #fff;
transform: translateY(-50%) rotate(45deg);
right: 15px;
top: 52%;
transition: 0.3s;
}




.blackbtn .blue_btn a {
color: #333;
background: #fff;
border: 2px solid #333;
border-radius: 0;
position: relative;
overflow: hidden;
outline: none;
transition: ease .2s;
}
.blackbtn .blue_btn a span {
position: relative;
z-index: 3;
color: #333;
transition: ease .2s;
}
.blackbtn .blue_btn a.arrow::after{
border-right: 2px solid #333;
border-top: 2px solid #333;
}
/* 背景変更左→右 */
.blackbtn .blue_btn a:before {
content: '';
position: absolute;
top: 0;
left: 0;
z-index: 2;
background:#333;
width: 100%;
height: 100%;
transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
transform: scale(0, 1);
transform-origin: right top;
}
/* PC */ @media only screen and (min-width: 768px){
  .blackbtn .blue_btn a:hover {
  opacity: 1;
  }
  .blackbtn .blue_btn a:hover span {
  color: #fff;
  }
  /*hoverした際の形状*/
  .blackbtn .blue_btn a:hover:before{
  transform-origin:left top;
  transform:scale(1, 1);
  }
}
/* sp */ @media only screen and (max-width: 767px){
  .blackbtn .blue_btn a {
  width: 100%!important;
  margin: 0 auto;
  }
  .all-bner .orange_btn a {
  padding: 1rem;
  }
}

/* -----ブルーリンクテキスト[>>]----- */
.blue_txtlink .arrow {
padding: 0 0 0 16px;
text-decoration: underline;
position: relative;
vertical-align: middle;
display: inline-block;
}
.blue_txtlink .arrow::before,
.blue_txtlink .arrow::after{
content: "";
width: 4px;
height: 4px;
margin: auto;
border-top: 1px solid #005bac;
border-right: 1px solid #005bac;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
vertical-align: middle;
position: absolute;
top: 0;
bottom: 0;
}
.blue_txtlink .arrow::before{
left: 3px;
width: 4px;
height: 4px;
border-top: 1px solid #005bac;
border-right: 1px solid #005bac;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
.blue_txtlink .arrow::after{
left: 7px;
}




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

/* -----テキストリンク----- */
.underline{text-decoration: underline;}
/* PC */ @media only screen and (min-width: 768px){
  a.underlineH:hover{text-decoration: underline;}
}
/* -----PDFリンク----- */
.pdf_link a {
background: url(./images/ico_pdf.png) no-repeat 0 0;
background-size: 20px auto;
padding: 0 0 0 27px;
text-decoration: underline;
color:#066;
}
.pdf_biglink a {
background: url(./images/ico_pdf.png) no-repeat 0 0;
background-size: 32px auto;
padding: 5px 0 10px 35px;
text-decoration: underline;
color:#066;
display: inline-block;
}

/* -----テキストカラー----- */
.white{color: #fff;}
.red {color: #ff0000;}
.black {color: #1d1d1f}
.gray {color: #666;}
.green {color: #b2bd46;}
.green2 {color: #c4d600;}
.yellow {color: #e9c251;}
.orange {color: #ff5100;}
.blue {color: #005bac;}
.blue2 {color:#026dba}
.mblue {color: #003366}

/* -----背景カラー----- */
.bg_wh {background-color: #fff!important;}

/* -----線カラー ------*/
.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;}
.nolink {pointer-events: none;}
.no-wrap {white-space: nowrap;}
.marker {background: linear-gradient(transparent 70%, #fed90b 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;
}

/* ----- ドットテキストボックス ----- */
.dotbox {
padding: 10px;
border: 1px dotted #ccc;
}

/*埋込動画*/
.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;
}

/* pc */
@media print, screen and (min-width: 768px){
  .dinbPc{display: inline-block;}
  .d_link p {
  top: 0px;
  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;
bottom: 80px;
z-index: 1000;
}

/*-------  ページ右下閉じるボタン付きポップアップの表示  -----*/
.sidePop{
position: relative;
margin: 0 auto;
width: 200px;
display: none;
font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック",Osaka,sans-serif !important;
}
.sidePop .sidePop__img{
position: fixed;
right: 0;
bottom: 120px;
z-index: 999;
}
.sidePop__img__inner{
width: 200px;
height: 160px;
box-sizing:border-box;
padding: 15px 10px 10px;
border-radius: 15px 0 0 15px;
box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.2);
background: url(../images/sidebnr_bg.jpg) left top / cover no-repeat;
}
.sidePop .sidePop__img__inner a{
display: block;
}
.sidePop .sidePop__img p.close{
position: absolute;
left: -7px;
top: -7px;
}
.sidePop .sidePop__img p.close a{
display: block;
width: 30px;
height: 30px;
line-height: 30px;
text-align: center;
border-radius: 50%;
background: #1d1d1f;
}
.sidePop .sidePop__img p.close a span{
display: block;
width: 1px;
height: 1px;
overflow: hidden;
}
.sidePop .sidePop__img p.close a i{
font-size: 15px;
z-index: 888;
color: #fff;
}
.sidePop_bnr01.yellow_btn a {
margin-top: 15px;
padding: 1rem 0;
}
.sidePop_bnr01.yellow_btn a.arrow::after{
right: 8px;
top: 50%;
}




/*-------トップへ戻るボタン-----*/
#page_top {
position: fixed;
bottom: 30px;
right: 30px;
z-index: 1100;
}
#page_top a.f_pt {
width: 60px;
height: 60px;
padding: 0;
font-size: 1.6rem;
font-weight: 700;
line-height: 1.5;
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;
text-align: center;
vertical-align: middle;
text-decoration: none;
letter-spacing: 0.1em;
color: #1d1d1f;
background: linear-gradient(70deg, #dce957 0%, #c4d600 100%);
border-radius: 50%;
-webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
}
#page_top a.f_pt i {
font-size: 150%;
line-height: 60px;
-webkit-transition: all .3s;
transition: all .3s;
letter-spacing: 0;
}
/* PC */ @media only screen and (min-width: 768px){
  #page_top a.f_pt:hover i {
  line-height: 55px;
  }
}
/*　問い合わせページ下記のIDでは問合せバーは非表示 */
.page-id-54 #page_top .fix_contact {display: none;}
.page-id-78 #page_top .fix_contact {display: none;}
.page-id-51 #page_top .fix_contact {display: none;}
.page-id-67 #page_top .fix_contact {display: none;}
.page-id-76 #page_top .fix_contact {display: none;}

.page-id-54 .sidePop {display: none!important;}
.page-id-78 .sidePop {display: none!important;}
.page-id-51 .sidePop {display: none!important;}
.page-id-67 .sidePop {display: none!important;}
.page-id-76 .sidePop {display: none!important;}

/* sp */
@media only screen and (max-width: 767px){
  #page_top {
  width: 100%;
  height: auto;
  position: fixed;
  left: 0;
  bottom: 0;
  }
  .fix_contact .fix_contact_inner {
  width: 100%;
  padding: 8px 0;
  }
  .fix_contact .fixlink01 {
  width: 100%;
  display: block;
  }
  .fix_contact .fixlink02 {
  width: 100%;
  display: block;
  }
  .fix_contact .fixlink01 a {
  width: 88%;
  margin: 0 auto;
  padding: 8px 1em;
  font-size: 4.6vw;
  font-weight: bold;
  display: block;
  }
  .fix_contact .fixlink02 a {
  width: 90%;
  margin: 0 auto;
  display: block;
  }
  #page_top a.f_pt {
  position: fixed;
  right: 15px;
  bottom: 70px!important;
  }
  /*　問い合わせページ下記のIDでは問合せボタン非表示 */
  .page-id-231 .fix_contact .fixlink01 a{display: none;}
  .page-id-100 .fix_contact .fixlink01 a{display: none;}
}

/* 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;}

/* 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;}
}
