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

/*
 オリジナルリセットcss
 ----------------------------------------------------------- */
* {box-sizing: border-box;}
html, body, blockquote, form {margin: 0;padding: 0;}
blockquote, code, embed, iframe, img, input, object, pre, table, td, textarea, video {max-width: 100%;height: auto;}
a img, form, fieldset {border: none;}
input, button, select {vertical-align: middle;}
textarea {overflow: auto;vertical-align: top;}
abbr {cursor: help;border-bottom: 1px dotted #bbb;}
blockquote p, button, input, li h1, li h2, li h3, li h4, li h5, li h6, li li, li p, select, td p, th p {font-size: 100%;}
p{margin-bottom:0;}
img{display: block;}

/*
 デバイス共通
 ----------------------------------------------------------- */
html{
  font-size: 62.5%;
}
body{
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "游ゴシック体", YuGothic, "YuGothic M", sans-serif;
  /*font-family: "Yu Mincho", YuMincho, HG明朝B, "MS Mincho", serif;*/
  font-size: 1.8rem;
  line-height:1.65;
  color:#000000;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
  word-break: normal;
  line-break: strict;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
@media screen and (max-width: 767px){
  body{font-size: 1.6rem;line-height: 1.4;}
}

a,a img{transition: all .3s;}
a:hover,a img:hover{opacity: 0.7;}
.m0a{margin:0 auto;}
.posr{position: relative;}
.posa{position: absolute;}
.imgr{display: block;max-width: 100%;height: auto;}

@media screen and (max-width: 767px){
  .sp_scroll{width: 100%;overflow-x: scroll;}
  .sp_scroll > *{min-width: 768px;}
}

/*
 テキスト関連
 ----------------------------------------------------------- */
.fwb{font-weight:bold!important;}
.underline{text-decoration:underline;}
.font_xs{font-size: 0.666em;}/*12px*/
.font_s{font-size: 0.777em;}/*14px*/
.font_m{font-size: 1.333em;}/*24px*/
.font_l{font-size: 2.222em;}/*40px*/
.font_xl{font-size: 3.333em;}/*60px*/
.tac{text-align: center!important;}
.tal{text-align: left!important;}
.tar{text-align: right!important;}
.shadow{text-shadow:0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff;}
.font_min {font-family: "Yu Mincho", YuMincho, HG明朝B, "MS Mincho", serif;}
.font_go {font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック体", YuGothic, "YuGothic M", sans-serif;}
.indent {text-indent: -1em; padding-left: 1em;}
.note {
  position: relative;
  font-size: 0.777em;
  padding-left: 1em;
}
.note:before {
  position: absolute;
  content: "※";
  top: 0;
  left: 0;
  font-size: 1em;
  line-height: 1.554em;
}
@media (min-width: 768px) and (max-width: 959px) {
  .tab_shadow {text-shadow:0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff;}
}
@media screen and (max-width: 767px){
  .sp_tal {text-align: left!important;}
  .sp_shadow {text-shadow:0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff;}
}

/*
 余白&幅調整
 ----------------------------------------------------------- */
.mt0{margin-top: 0;}.mt5{margin-top: 5px;}.mt10{margin-top: 10px;}.mt15{margin-top: 15px;}.mt20{margin-top: 20px;}.mt30{margin-top: 30px;}.mt45{margin-top: 45px;}.mt60{margin-top: 60px;}.mt75{margin-top: 75px;}.mt90{margin-top: 90px;}.mt120{margin-top: 120px;}
.mb0{margin-bottom: 0;}.mb5{margin-bottom: 5px;}.mb10{margin-bottom: 10px;}.mb15{margin-bottom: 15px;}.mb20{margin-bottom: 20px;}.mb30{margin-bottom: 30px;}.mb45{margin-bottom: 45px!important;}.mb60{margin-bottom: 60px;}.mb75{margin-bottom: 75px;}.mb90{margin-bottom: 90px;}.mb120{margin-bottom: 120px;}
.pt0{padding-top: 0;}.pt5{padding-top: 5px;}.pt10{padding-top: 10px;}.pt15{padding-top: 15px;}.pt20{padding-top: 20px;}.pt30{padding-top: 30px;}.pt45{padding-top: 45px;}.pt60{padding-top: 60px;}.pt75{padding-top: 75px;}.pt90{padding-top: 90px;}.pt120{padding-top: 120px;}
.pb0{padding-bottom: 0;}.pb5{padding-bottom: 5px;}.pb10{padding-bottom: 10px;}.pb15{padding-bottom: 15px;}.pb20{padding-bottom: 20px;}.pb30{padding-bottom: 30px;}.pb45{padding-bottom: 45px;}.pb60{padding-bottom: 60px;}.pb75{padding-bottom: 75px;}.pb90{padding-bottom: 90px;}.pb120{padding-bottom: 120px;}

.pl0{padding-left:0;}
.pr0{padding-right:0;}
.ph0{padding-left:0;padding-right:0;}
.ph15{padding-left:15px;padding-right:15px;}

@media screen and (max-width: 767px){
  .spmt0{margin-top: 0;}.spmt5{margin-top: 5px;}.spmt10{margin-top: 10px;}.spmt15{margin-top: 15px;}.spmt20{margin-top: 20px;}.spmt30{margin-top: 30px;}.spmt45{margin-top: 45px;}.spmt60{margin-top: 60px;}
  .spmb0{margin-bottom: 0;}.spmb5{margin-bottom: 5px;}.spmb10{margin-bottom: 10px;}.spmb15{margin-bottom: 15px!important;}.spmb20{margin-bottom: 20px;}.spmb30{margin-bottom: 30px;}.spmb45{margin-bottom: 45px;}.spmb60{margin-bottom: 60px;}
  .sppt0{padding-top: 0;}.sppt5{padding-top: 5px;}.sppt10{padding-top: 10px;}.sppt15{padding-top: 15px;}.sppt20{padding-top: 20px;}.sppt30{padding-top: 30px;}.sppt45{padding-top: 45px;}.sppt60{padding-top: 60px;}
  .sppb0{padding-bottom: 0;}.sppb5{padding-bottom: 5px;}.sppb10{padding-bottom: 10px;}.sppb15{padding-bottom: 15px;}.sppb20{padding-bottom: 20px;}.sppb30{padding-bottom: 30px;}.sppb45{padding-bottom: 45px;}.sppb60{padding-bottom: 60px;}

  .sppl0{padding-left:0;}
  .sppr0{padding-right:0;}
  .spph0{padding-left:0;padding-right:0;}
}

@media screen and (max-width: 767px){
  .spwd50{width: 50%!important;}
  .spwd60{width: 60%!important;}
  .spwd70{width: 70%!important;}
  .spwd80{width: 80%!important;}
  .spwd90{width: 90%!important;}
}

/*
 見出し
 ----------------------------------------------------------- */
h1, h2, h3 {
  letter-spacing: -0.05em;
  line-height: 1.4;
}
h2{
  margin: 0;
  padding: 0 0 45px 0;
  text-align: center;
}
@media screen and (max-width: 767px){
    h2{
        padding: 0 0 15px 0;
    }
}
h3{
  margin: 0;
  padding: 0;
}

/*
 ボタン
 ----------------------------------------------------------- */
.btn{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: block;
  background: #25ad38;
  margin:0 auto;
  border: 3px solid #25ad38;
  border-radius: 5px;
  color: #fff;
  font-weight: bold;
  font-size: 190%;
  font-family: inherit;
  padding: 5px;
  transition: all 0.2s ease;
  cursor: pointer;
  -webkit-box-shadow: 0px 10px 0px #197827;
  box-shadow: 0px 10px 0px #197827;
  text-align: center;
  padding: 10px 0;
  position: relative;
  width: 100%;
}
.btn a,
.btn a:link,
.btn a:visited{color: #FFF;}
.btn:focus {
  color: #FFF;
  text-decoration: none;
}
.btn:hover {
  background: #45ba55;
  border: 3px solid #45ba55;
  -webkit-box-shadow: 0px 10px 0px #238831;
  box-shadow: 0px 10px 0px #238831;
  color: #FFF;
  text-decoration: none;
}
.btn img {
  position: absolute;
  right: 5px;
  width: 20%;
  top: -12px;
}
.btn_gradient{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: block;
  background: #2d660a;
  background: -moz-linear-gradient( #5edd00 0%, #2d660a 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(#5edd00), to(#2d660a));
  background: -webkit-linear-gradient( #5edd00 0%, #2d660a 100%);
  background: -o-linear-gradient( #5edd00 0%, #2d660a 100%);
  background: -ms-linear-gradient( #5edd00 0%, #2d660a 100%);
  background: linear-gradient( #5edd00 0%, #2d660a 100%);
}
button {
  margin: 0 auto;
  text-align: center;
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
  width: 100%;
}
button img:hover{opacity: .7;}
@media (min-width: 768px) and (max-width: 959px) {
}
@media screen and (max-width: 767px){
}

/*
 Page Top
 ----------------------------------------------------------- */
 /*TOPへ戻る*/
.pagetop {
  display: none;
  position: fixed;
  bottom: 15px;
  right: 15px;
  z-index:9999;
}
.pagetop a {
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  background-color: #153aa1;
  border-radius:50%;
  filter:alpha(opacity=100);
  -moz-opacity: 1;
  opacity: 1;
}
.pagetop a:before {
  position: absolute;
  content: "";
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 12px solid #fff;
  top: 50%;
  right: 50%;
  transform: translateX(50%)translateY(-60%);
}
.pagetop a:hover {
  display: block;
  text-align: center;
  color: #fff;
  font-size: 12px;
  text-decoration: none;
  filter:alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7;
}
.pagetop a:link,
.pagetop a:visited {color: #fff;}

/*
 white-box
 ----------------------------------------------------------- */
.white_box {
  padding: 45px;
  background-color: #fff;
  margin-bottom: 30px;
}
.white_box:last-of-type {
  margin-bottom: 0;
}
@media (min-width: 768px) and (max-width: 959px) {
  .white_box {
    padding: 30px;
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 767px){
  .white_box {
    padding: 15px;
    margin-bottom: 15px;
  }
}

/*
 check_list
 ----------------------------------------------------------- */
.check_list li {
  position: relative;
  padding-left: 1em;
  margin-bottom: 3px;
}
.check_list li:before {
  position: absolute;
  content: "\f058";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  top: 0;
  left: 0;
  color: orange;
}
.list_border {
  border-bottom: 2px dashed #000;
}
.list_border_stop {
  border-bottom: 2px dashed #000;
  display: inline-block;
}

/*
 Fox_css追加
 ----------------------------------------------------------- */
.fx-row-gutter-s {
  margin-left: -8px;
  margin-right: -8px;
}
.fx-row-gutter-s li {
  padding-left: 8px;
  padding-right: 8px;
}

.fx-row-gutter-xs {
  margin-left: -5px;
  margin-right: -5px;
}
.fx-row-gutter-xs li {
  padding-left: 5px;
  padding-right: 5px;
}

/*
 Container / Break
 ----------------------------------------------------------- */
@media (min-width: 960px) {
  .container{
    width:960px;
    margin:0 auto;
    position:relative;
    padding-left: 15px;
    padding-right: 15px;
    box-sizing: border-box;
  }
  .p_none {display: none;}
  .pt_none {display: none;}
  .ps_none {display: none;}
  .t_none {display: block;}
  .ts_none {display: block;}
  .s_none {display: block;}
}

@media (min-width: 768px) and (max-width: 959px) {
  body{
    overflow-x: hidden;
  }
  .container{
    width:768px;
    margin:0 auto;
    position:relative;
    margin-right: auto;
    margin-left: auto;
    padding-left: 15px;
    padding-right: 15px;
    box-sizing: border-box;
  }
  .p_none {display: block;}
  .pt_none {display: none;}
  .ps_none {display: block;}
  .t_none {display: none;}
  .ts_none {display: none;}
  .s_none {display: block;}
}

@media screen and (max-width: 767px){
  body{
    overflow-x: hidden;
  }
  .container{
    margin-right: auto;
    margin-left: auto;
    padding-left: 15px;
    padding-right: 15px;
    box-sizing: border-box;
  }
  .p_none {display: block;}
  .pt_none {display: block;}
  .ps_none {display: none;}
  .t_none {display: block;}
  .ts_none {display: none;}
  .s_none {display: none;}
}

