/* -------------------------------- 

Primary style

-------------------------------- */
*, *::after, *::before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

*::after, *::before {
  content: '';
}

body {
  font-size: 16px;
  -webkit-text-size-adjust: 100%;
  line-height: 1.4446;
  font-family: Lato, "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #333333;
}

a{color:#333333; text-decoration: none; transition: all .5s ease;}


.clearfix{clear: both;}

/* -------------------------------- 

margin / padding

-------------------------------- */

.mt5{margin-top: 5px !important}
.mt10{margin-top: 10px !important}
.mt15{margin-top: 15px !important}
.mt20{margin-top: 20px !important}
.mt30{margin-top: 30px !important}
.mt40{margin-top: 40px !important}
.mt50{margin-top: 50px !important}
.mt60{margin-top: 60px !important}
.mt70{margin-top: 70px !important}
.mt80{margin-top: 80px !important}
.mt90{margin-top: 90px !important}
.mt100{margin-top: 100px !important}

.mb5{margin-bottom: 5px !important}
.mb10{margin-bottom: 10px !important}
.mb15{margin-bottom: 15px !important}
.mb20{margin-bottom: 20px !important}
.mb30{margin-bottom: 30px !important}
.mb40{margin-bottom: 40px !important}
.mb50{margin-bottom: 50px !important}
.mb60{margin-bottom: 60px !important}
.mb70{margin-bottom: 70px !important}
.mb80{margin-bottom: 80px !important}
.mb90{margin-bottom: 90px !important}
.mb100{margin-bottom: 100px !important}

.ml5{margin-left: 5px !important}
.ml10{margin-left: 10px !important}
.ml15{margin-left: 15px !important}
.ml20{margin-left: 20px !important}
.ml30{margin-left: 30px !important}
.ml40{margin-left: 40px !important}
.ml50{margin-left: 50px !important}
.ml60{margin-left: 60px !important}
.ml70{margin-left: 70px !important}
.ml80{margin-left: 80px !important}
.ml90{margin-left: 90px !important}
.ml100{margin-left: 100px !important}

.mr5{margin-right: 5px !important}
.mr10{margin-right: 10px !important}
.mr15{margin-right: 15px !important}
.mr20{margin-right: 20px !important}
.mr30{margin-right: 30px !important}
.mr40{margin-right: 40px !important}
.mr50{margin-right: 50px !important}
.mr60{margin-right: 60px !important}
.mr70{margin-right: 70px !important}
.mr80{margin-right: 80px !important}
.mr90{margin-right: 90px !important}
.mr100{margin-right: 100px !important}

.pt5{padding-top: 5px !important}
.pt10{padding-top: 10px !important}
.pt15{padding-top: 15px !important}
.pt20{padding-top: 20px !important}
.pt30{padding-top: 30px !important}
.pt40{padding-top: 40px !important}
.pt50{padding-top: 50px !important}
.pt60{padding-top: 60px !important}
.pt70{padding-top: 70px !important}
.pt80{padding-top: 80px !important}
.pt90{padding-top: 90px !important}
.pt100{padding-top: 100px !important}

.pb5{padding-bottom: 5px !important}
.pb10{padding-bottom: 10px !important}
.pb15{padding-bottom: 15px !important}
.pb20{padding-bottom: 20px !important}
.pb30{padding-bottom: 30px !important}
.pb40{padding-bottom: 40px !important}
.pb50{padding-bottom: 50px !important}
.pb60{padding-bottom: 60px !important}
.pb70{padding-bottom: 70px !important}
.pb80{padding-bottom: 80px !important}
.pb90{padding-bottom: 90px !important}
.pb100{padding-bottom: 100px !important}

.pl5{padding-left: 5px !important}
.pl10{padding-left: 10px !important}
.pl15{padding-left: 15px !important}
.pl20{padding-left: 20px !important}
.pl30{padding-left: 30px !important}
.pl40{padding-left: 40px !important}
.pl50{padding-left: 50px !important}
.pl60{padding-left: 60px !important}
.pl70{padding-left: 70px !important}
.pl80{padding-left: 80px !important}
.pl90{padding-left: 90px !important}
.pl100{padding-left: 100px !important}

.pr5{padding-right: 5px !important}
.pr10{padding-right: 10px !important}
.pr15{padding-right: 15px !important}
.pr20{padding-right: 20px !important}
.pr30{padding-right: 30px !important}
.pr40{padding-right: 40px !important}
.pr50{padding-right: 50px !important}
.pr60{padding-right: 60px !important}
.pr70{padding-right: 70px !important}
.pr80{padding-right: 80px !important}
.pr90{padding-right: 90px !important}
.pr100{padding-right: 100px !important}

.pdg5{padding: 5px;}
.pdg10{padding: 10px;}
.pdg20{padding: 20px;}

.mgn5{margin:5px;}
.mgn10{margin:10px;}
.mgn20{margin:20px;}

/* -------------------------------- 

text

-------------------------------- */

/*--size--*/
.txt-10{font-size: 10px; line-height: 1.7;}
.txt-12{font-size: 12px; line-height: 1.7;}
.txt-14{font-size: 14px; line-height: 1.7;}
.txt-16{font-size: 16px; line-height: 1.7;}
.txt-18{font-size: 18px; line-height: 1.7;}
.txt-20{font-size: 20px; line-height: 1.7;}
.txt-22{font-size: 22px; line-height: 1.7;}
.txt-24{font-size: 24px; line-height: 1.7;}
.txt-26{font-size: 26px; line-height: 1.7;}
.txt-28{font-size: 28px; line-height: 1.7;}
.txt-30{font-size: 30px; line-height: 1.7;}
.txt-32{font-size: 32px; line-height: 1.7;}
.txt-34{font-size: 34px; line-height: 1.7;}
.txt-36{font-size: 36px; line-height: 1.7;}
.txt-1rm{font-size: 1rem; line-height: 1.7;}
.txt-1_2rm{font-size: 1.2rem; line-height: 1.7;}
.txt-1_5rm{font-size: 1.5rem; line-height: 1.7;}
.txt-2rm{font-size: 2rem; line-height: 1.7;}



/*--color--*/
.txt-nomal {font-weight: normal;}
.txt-bold  {font-weight: bold;}
.txt-white  {color: #FFFFFF;}
.txt-blue  {color: #0483d4;}
.txt-orange{color: #ee8545;}
.txt-green {color: #009a07;}
.txt-red   {color: #f54d4d;}
.txt-pink  {color: #eb5e90;}
.txt-gray  {color: #ccc;}

/*--align--*/
.al-left{text-align: left;}
.al-center{text-align: center;}
.al-right {text-align: right;}


/* -------------------------------- 

background-color

-------------------------------- */

.bg-white {width:100%; background-color: #FFFFFF;}
.bg-black {width:100%; background-color: #000000; color: #FFFFFF;}
.bg-green {width:100%; background-color: #90c31f; color: #FFFFFF;}
.bg-blue  {width:100%; background-color: #25b5d4; color: #FFFFFF;}
.bg-purple{width:100%; background-color: #945cbe; color: #FFFFFF;}
.bg-red   {width:100%; background-color: #f54d4d; color: #FFFFFF;}
.bg-pink  {width:100%; background-color: #f474bf; color: #FFFFFF;}
.bg-orange{width:100%; background-color: #eda11c; color: #FFFFFF;}
.bg-beige {background-color: #f2ece1;}

/* -------------------------------- 

background-shadow

-------------------------------- */

.bg-shadow_in {box-shadow: 0px 0px 2px 1px rgba(0,0,0,0.2) inset;}
.bg-shadow_out{box-shadow: 0 0px 5px rgba(0, 0, 0, 0.1);}


/* -------------------------------- 

animation

-------------------------------- */

.list-mov{
  opacity: 0;
  transform: translate(0px,10px); 
  -webkit-transform: translate(0px,10px);
  transition: all 3s ease;
}

.list-mov-down{
  opacity: 0;
  transform: translate(0px,-10px); 
  -webkit-transform: translate(0px,-10px);
  transition: all 3s ease;
}

.list-mov-left{
  opacity: 0;
  transform: translate(-10px,0px); 
  -webkit-transform: translate(-10px,0px);
  transition: all 3s ease;
}

.list-mov-right{
  opacity: 0;
  transform: translate(10px,0px); 
  -webkit-transform: translate(10px,0px);
  transition: all 3s ease;
}

.mov{
  opacity: 1.0;
  transform: translate(0,0px); 
  -webkit-transform: translate(0,0px);
  transition: all 3s ease;
}


/* -------------------------------- 

movie

-------------------------------- */

.movie-wrap {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}
 
.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}



/* -------------------------------- 

image

-------------------------------- */
.img-fit{
  width: 100%;
  text-align: center;
}

.img-fit img{
  width: 100%;
  height: auto;
  display: block;
}

.img-fit-mid{
  width: 100%;
  text-align: center;
}

.img-fit-mid img{
  max-width: 100%;
  height: auto;
}

.img-fit-small{
  width: 70%;
  text-align: center;
  margin:0 auto 0;
}

.img-fit-small img{
  max-width: 100%;
  height: auto;
  display: block;
}

.img-fit-h{
  height: : 100%;
  text-align: center;
}

.img-fit-h img{
  width: auto;
  max-height: 100%;
  display: block;
}

/* -------------------------------- 

pagetop

-------------------------------- */
.pagetop{
  font-size: 50px;
  color: #013e04;
  position: fixed;
  right: 20px;
  bottom: 40px;
  z-index: 2;
  transition: all .5s ease;
}


.pagetop:hover{
  transform: translateY(-10px);
}

@media only screen and (max-width: 767px) {
.pagetop{
  font-size: 50px;
  color: #013e04;
  position: fixed;
  right: 20px;
  bottom: 160px;
  z-index: 2;
  transition: all .5s ease;
}


.pagetop:hover{
  transform: translateY(-10px);
}

}

/* -------------------------------- 

LINK

-------------------------------- */

.cp_link {
  padding: 10px 0px;
  position: relative;
  display: inline-block;
  transition: .3s;
}

.cp_link::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  width: 0;
  height: 2px;
  background-color: #009a07;
  transition: .5s;
}

.cp_link:hover::after {
  width: 100%;
}

.cp_link_white {
  padding: 10px 0px;
  position: relative;
  display: inline-block;
  transition: .3s;
}

.cp_link_white::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  width: 0;
  height: 2px;
  background-color: #fff;
  transition: .5s;
}

.cp_link_white:hover::after {
  width: 100%;
}

.cp_link_gray {
  padding: 10px 0px;
  position: relative;
  display: inline-block;
  transition: .3s;
}

.cp_link_gray::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  width: 0;
  height: 2px;
  background-color: #cccccc;
  transition: .5s;
}

.cp_link_gray:hover::after {
  width: 100%;
}

/* -------------------------------- 

パンくず

-------------------------------- */

.breadcrumbs{
  font-size: 0.87rem;
  line-height: 1.7;
  margin-bottom: 30px;
}

/* -------------------------------- 

ページネーション

-------------------------------- */
#pager-area{
  width: 100%;
  margin: 0 auto 0;
}

.pagenation {
    margin: 1em auto 0;
}
.pagenation:after, .pagenation ul:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}
.pagenation ul {
    margin: 0;
}
.pagenation li {
    float: left;
    list-style: none outside none;
    margin-left: 5px;
}
.pagenation li:first-child {
    margin-left: 0;
}
.pagenation li.active {
    background-color: #009a07;
    border: 1px solid #009a07;
    border-radius: 3px;
    color: #FFFFFF;
    cursor: not-allowed;
    padding: 10px 20px;
}
.pagenation li a {
    background: none repeat scroll 0 0 #fff;
    border: 1px solid #009a07;
    border-radius: 3px;
    color: #009a07;
    display: block;
    padding: 10px 20px;
    text-decoration: none;
}
.pagenation li a:hover {
    background-color: #31ac54;
    border: 1px solid #31ac54;
    color: #FFFFFF;
    transition-duration: 500ms;
    transition-property: all;
    transition-timing-function: ease;
}

/* -------------------------------- 

sidebar

-------------------------------- */
#side{
  width: 100%;
}

#side a:hover{
  filter:alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7;  
}

#side h3{
  background-color: #31ac54;
  color: #FFFFFF;
  font-size: 18px;
  padding: 10px;
}

#side .box-read{
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis; /* Opera9,10対応 */
}

#side .w-container{
  padding: 10px;
}


#side a {
  display: block;
  overflow: hidden;
  *zoom: 1;
  padding: 8px;
  color: #313131;
  background-color: #f2f2f2;
}
#side a:hover {
  background: #31ac54;
  color: #FFF;
}
#side span {
  display: inline;
  float: right;
  font-weight: bold;
}

#side ul.children {
  background: #fff;
}

#side ul.children a {
  font-size: 0.87rem;
  background: #fff;
  color: #313131;
  border-bottom: 1px solid #ccc;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  padding: 10px;
}

#side ul.children a:hover{
  color: #009a07;
}


/* -------------------------------- 

POST

-------------------------------- */
.post p{
  font-size: 1rem;
  line-height: 1.7;
}

.midashi-1{
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1.7;
}

.midashi-green{
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  font-size: 1.5rem;
  color: #009a07;
  font-weight: bold;
  line-height: 1.7;
}

.midashi-green-center{
  width: 100%;
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  font-size: 1.2rem;
  color: #FFF;
  font-weight: bold;
  line-height: 1.7;
  text-align: center;
  background-color: #40a536;
  border:4px solid #009a07;
  padding: 20px 0px;
}

.box-harf-left{
  width: 49%;
  float: left;
}

.box-harf-right{
  width: 40%;
  float: right;
}

.kiyaku-txt{
  width: 100%;
  padding: 10px;
}

ol.kiyaku-list{
  width: 100%;
  list-style-type: decimal;
  margin:0px 20px;
}

ol.kiyaku-list li{
  line-height: 1.5;
  margin-bottom:10px;
}

.nyukai-link-btn{
  display: block;
  text-align: center;
  background-color: #0066d8;
  color: #FFF;
  padding: 15px 0px;
  border-radius: 40px;
}

.pdf-btn{
  width:300px;
  margin:0 auto 0; 
}

.pdf-btn a{
  display: block;
  text-align: center;
  color: #FFF;
  background-color: #009a07;
  border-radius: 40px;
  padding: 20px 0px;
}

.pdf-btn a:hover{
  opacity: 0.7;
}

