@charset "UTF-8";

/*================================================

universal

================================================*/

/*------------------------------------------------
font
------------------------------------------------*/

@font-face{
	font-family: "Original Yu Gothic";
	src: local("Yu Gothic");
	font-weight: 300;
}

@font-face{
	font-family: "Original Yu Gothic";
	src: local("Yu Gothic");
	font-weight: 500;
}

@font-face{
	font-family: "Original Yu Gothic";
	src: local("Yu Gothic");
	font-weight: bold;
}

@font-face {
	font-family: "Yu Mincho";
	src: local("Yu Mincho Demibold");
	font-weight: 500;
}

@font-face {
	font-family: "Source Han Serif JP";
	src: url("../font/SourceHanSerifJP/SourceHanSerif-Heavy.otf") format("opentype");
	font-weight: 600;
}

@font-face {
	font-family: "Helvetica Neue";
	src: local("Helvetica Neue Regular");
	font-weight: 100;
}

@font-face {
	font-family: "Helvetica Neue";
	src: local("Helvetica Neue Regular");
	font-weight: 200;
}


.italic{
	font-style: italic; 
}


* , :after, :before {
    box-sizing: border-box
}

html {
    font-family: sans-serif;
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -ms-overflow-style: scrollbar;
    -webkit-tap-highlight-color: transparent
}

@-ms-viewport {
    width: device-width
}


body {
    font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 1rem;
    font-weight: normal;
    line-height: 1.7;
    margin: 0;
    text-align: left;
    color: #3c3c3c;
    background-color: #fff
}

a, a:visited {
    color: #83bd40;
    text-decoration: none;
    outline: 0;
    -webkit-transition: color .1s linear;
    -moz-transition: color .1s linear;
    -o-transition: color .1s linear;
    -ms-transition: color .1s linear;
    transition: color .1s linear
}

a:hover, a:focus {
    color: #72a439
}



/*IE10 or more*/
@media all and (-ms-high-contrast: none) {
	html {
		font-family: Verdana, Meiryo, sans-serif;
	}
}

@media all and (-ms-high-contrast: active) {
	html {
		font-family: Verdana, Meiryo, sans-serif;
	}
}

.threeLeader {
	font-family: "Original Yu Gothic", "Yu Gothic", YuGothic, Meiryo, "M+ 1p";
}



li{	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Original Yu Gothic", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
	font-weight: normal;}

p{	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Original Yu Gothic", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
	font-weight: normal;}

table{
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Original Yu Gothic", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
	font-weight: normal;}







.btn{
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Original Yu Gothic", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
	/*color:#077082;  border:1px solid #077082;*/
	color:#72a439;
	border:1px solid #72a439;
}


.btn:hover {  
  /*border:1px solid #077082; background-color: #007677;*/ color: #fff;
}
.btn:link .btn:active .btn:disabled  {
  color: #fff; background: #72a439; border:1px solid #72a439;
}


.btn, a.btn, btn, input[type="submit"], input[type="reset"], input[type="btn"],
.action_btn, a.action_btn, input.action_btn[type="submit"],
input.action_btn[type="btn"] {
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Original Yu Gothic", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    /*background: #83bd40;*/
    background: #f5f5f5;
    color: #83bd40;
    border:1px solid #83bd40; 
    padding: 10px 20px;
    text-align: center;
    cursor: pointer;
    /*font-family: Montserrat;*/
    font-weight: bold;
    font-size: 16px;
    text-transform: uppercase;
    display: inline-block;
    -webkit-transition: all 200ms ease 0s;
    -moz-transition: all 200ms ease 0s;
    -ms-transition: all 200ms ease 0s;
    -o-transition: all 200ms ease 0s;
    transition: all 200ms ease 0s;
    -webkit-appearance: none;
    -webkit-border-radius: 4px;
    -khtml-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
        /*-webkit-box-shadow: inset 0 -3px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: inset 0 -3px rgba(0, 0, 0, 0.1);
    box-shadow: inset 0 -3px rgba(0, 0, 0, 0.1);*/
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

a.btn, a.action_btn, a {
    cursor: default
}

a.btn[href], a.action_btn[href], a[href] {
    cursor: pointer
}

a.btn:hover, btn:hover, input[type="submit"]:hover, input[type="reset"]:hover,
input[type="btn"]:hover, .action_btn:hover, input.action_btn[type="submit"]:hover,
input.action_btn[type="btn"]:hover {
    background: #72a439;
    -webkit-transition: all 200ms ease 0s;
    -moz-transition: all 200ms ease 0s;
    -ms-transition: all 200ms ease 0s;
    -o-transition: all 200ms ease 0s;
    transition: all 200ms ease 0s
}








footer{
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Original Yu Gothic", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
}





/* dl 
-------------------------------------------------- */
dl,dt,dd{font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Original Yu Gothic", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;}

dl.dl-horizontal {
    margin-bottom: 0;
	font-weight: normal;
}

dl.dl-horizontal dt {
    width: 200px;
    float: left;
    padding-right: 20px;
    text-align: left;
    overflow: hidden;
    text-overflow: inherit;
    white-space: normal
}

dl.dl-horizontal dd {
    margin-bottom: 0;
    margin-left: 200px
}

dl.dl-horizontal dt, dl.dl-horizontal dd {
    padding: 10px 0;
    line-height: 180%;
    text-align: justify;
}

@media (max-width: 767px) {
    dl.dl-horizontal dt, dl.dl-horizontal dd {
        padding: 5px 0;
        border: none;
        width: auto;
        float: none;
        margin-left: 0
    }
}


dl.dl-table ,
dl.dl-table dt,
dl.dl-table dd {
  box-sizing: border-box;
}

dl.dl-table  {
  background: #f8f9fa;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  border-left: 1px solid #ccc;
}

dl.dl-table dt,
dl.dl-table dd {
  padding: 10px 10px 0 10px;
  border-top: 1px solid #ccc;
  margin:0;
}

dl.dl-table dt {
  float: left;
}
dl.dl-table dd {
  background: #fff;
  padding-bottom: 10px;
  border-left: 1px solid #ccc;
}
dl.dl-table dd:after {
  content: '';
  display: block;
  clear: both;
}



dl.col-15 dt {
  width: 15%;
}
dl.col-15 dd{
  margin-left: 85%;
}	
dl.col-20 dt {
  width: 20%;
}
dl.col-20 dd{
  margin-left: 20%;
}	
dl.col-25 dt {
  width: 25%;
}
dl.col-25 dd{
  margin-left: 25%;
}		
dl.col-30 dt {
  width: 30%;
}
dl.col-30 dd{
  margin-left: 30%;
}	
dl.col-35 dt {
  width: 35%;
}
dl.col-35 dd{
  margin-left: 35%;
}
dl.col-40 dt {
  width: 40%;
}
dl.col-40 dd{
  margin-left: 40%;
}
dl.col-45 dt {
  width: 45%;
}
dl.col-45 dd{
  margin-left: 45%;
}
dl.col-50 dt {
  width: 50%;
}
dl.col-50 dd{
  margin-left: 50%;
}
dl.col-55 dt {
  width: 55%;
}
dl.col-55 dd{
  margin-left: 55%;
}
dl.col-60 dt {
  width: 60%;
}
dl.col-60 dd{
  margin-left: 60%;
}
dl.col-65 dt {
  width: 65%;
}
dl.col-65 dd{
  margin-left: 65%;
}


dl.dl-horizontal > :first-child, dl.dl-horizontal > :nth-child(2) {
    border-top: none
}

dl.dl-horizontal dt, dl.dl-horizontal dd {
    border-top: 1px solid #eceeef
}

@media (max-width: 767px) {
    dl.dl-horizontal dt, .blog-detail > dl.dl-horizontal dd {
        border: none
    }
}



/* ページ内リンクのポジション修正
-------------------------------------------------- */
@-webkit-keyframes modify{
      0% { padding-top: 80px; margin-top: -80px; }
    100% { padding-top: 0; margin-top: 0; }
}
@keyframes  modify{
      0% { padding-top: 80px; margin-top: -80px; }
    100% { padding-top: 0; margin-top: 0; }
}

.anchorlink:target {
    -webkit-animation: modify 0.1s;
    animation: modify 0.1s;
}


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



a img {
	opacity: 1.0;
    filter: alpha(opacity=100); /* For IE8 and earlier */

}

a img:hover {
    opacity: 0.5;
    filter: alpha(opacity=50); /* For IE8 and earlier */
}



/* スマホ非表示要素
-------------------------------------------------- */
@media screen and (max-width: 480px){
.spNone { display: none;}
}
@media screen and (max-width: 767px){
.tbNone { display: none;}
}
@media screen and (min-width: 760px){
.pcNone { display: none;}
}

/* テキストの色（既定）
-------------------------------------------------- */
.text-blue{color: #0000ff;}

.text-red{color: #ff0000;}

.text-dkred{color: #4a0c0c;}




/* iframe（可変）
-------------------------------------------------- */
/* iframe要素内でサイズ指定している場合は必要なし 
.iframe {
  width: 560px;
  height: 315px;
}*/
/* CSSでレスポンシブ対応 */
@media screen and (max-width: 560px) {
  .iframe-wrapper {
    position: relative;
    width: 100%;
    padding: calc(315 / 560 * 100%) 0 0;
  }
  .iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}