@charset "UTF-8";


html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,main,
time, mark, audio, video {
	margin:          0;
	margin:          0;
	padding:         0;
	border:          0;
	outline:         0;
	vertical-align:  baseline;
	background:      transparent;
}
* {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	     -o-box-sizing: border-box;
	    -ms-box-sizing: border-box;
	        box-sizing: border-box;
}
body {
	color:           #333;
	margin:          0px;
	padding:         0px;
	background:      #fff;
	font-size:       62.5%;
	line-height:     1.4;
	-webkit-text-size-adjust: none;
}
body .underLayer {
	font-size: 160%;
}
body.en {
	font-family:     Arial, Helvetica, sans-serif;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
	display:         block;
}
ul {
	list-style:      none;
}
blockquote, q {
	quotes:          none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content:         '';
	content:         none;
}
ins {
	background-color:#ff9;
	color:           #000;
	text-decoration: none;
}
mark {
	background-color:#ff9;
	color:           #000; 
	font-style:      italic;
	font-weight:     bold;
}
del {
	text-decoration: line-through;
}
abbr[title], dfn[title] {
	border-bottom:   1px dotted;
	cursor:          help;
}
table {
	border-collapse: collapse;
	border-spacing:  0;
}
hr {
	display:         block;
	height:          1px;
	border:          0;
	border-top:      1px solid #cccccc;
	margin:          1em 0;
	padding:         0;
}
p {
	font-size:       1.4em;
	line-height:     1.8;
}
body .underLayer p {
	font-size:       1.6em;
}
.bold {
	font-weight: bold;
}
p::selection, h2::selection, span::selection, a::selection, div::selection {
	background:      #d8e6e9;
}
p::-moz-selection, h2::-moz-selection, span::-moz-selection, a::-moz-selection, div::-moz-selection {
	background:      #d8e6e9;
}

/* font weight only */

.f-weight-600 {
	font-weight: 600;
}

.f-weight-700 {
	font-weight: 700;
}

.f-weight-800 {
	font-weight: 800;
}

.h-weight-900 {
	font-weight:900; 
}

.font-wh {
	color:#fff;
}

/** form
/**************************************/
input, select {
	vertical-align:  middle;
}

/** a
/**************************************/
a {
	text-decoration: none;
	outline:         none;
	color:           #156877;
	-webkit-transition:0.2s ease-in-out;
       -moz-transition:0.2s ease-in-out;
         -o-transition:0.2s ease-in-out;
            transition:0.2s ease-in-out;
}
a:hover {
	opacity:         0.5;
}

#sp a:hover: {
	opacity:         1;
}

/** img
/**************************************/
img {
	border:          none;
	max-width:       100%;
	height:           auto;
}



/** parts */
/**************************************/
.fl        { float: left  !important; }
.fr        { float: right !important; }
.sp_fl     { float: left  !important; }
.sp_fr     { float: right !important; }
.check span.wpcf7-list-item {display: block;margin-bottom: 8px;}

@media screen and (max-width:768px) {
	
	.sp_fl { float: none !important; }
	.sp_fr { float: none !important; }

}

.al      { text-align: left !important; }
.ar      { text-align: right !important; }
.ac      { text-align: center !important; }
.vt      { vertical-align: top; }
.vm      { vertical-align: middle; }
.vb      { vertical-align: bottom; }
.hidden  { display: none; }
.inline  { display: inline-block; }
.block   { display: block; }
.bo0     { border: none !important; }
.border_ccc { border: 1px solid #ccc; }
.border_bottom_green{border-bottom: 2px solid #00a040;}
.border_bottom_orange{border-bottom: 2px solid #f39700;}
.border_green{border: 2px solid #00a040;}
.border_orange{border: 2px solid #f39700;}
.border_tb {
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
.border_t {
	border-top: 1px solid #ccc;
}
.border_b {
	border-bottom: 1px solid #ccc;
}
.border_left_fff {
	border-left: 1px solid #eee;
}
.vbl {
	vertical-align: baseline !important;
}

.fb_iframe_widget > span {
	vertical-align: baseline !important;
}


hr.gr01 {
	border:          1px solid #acaaaa;
	border-width:    1px 0 0 0;
	margin:          30px 0;
}

.ast {
	text-indent:     -1em;
	padding:          0 0 0 1em;
}

ul.disc {
	list-style-type: disc !important;
	margin:          0 0 0 8px;
	padding:         0 0 0 8px;
}

ol.generalpurpose {
	font-size: 1.4em;
	margin: 0;
	padding-left:25px
}
ol.generalpurpose li {
	padding-bottom: 10px
}

/** sp
/**************************************/
.disp_sp,.sp_only { display: none !important; }
.pc_only { display: inherit; }
@media screen and (max-width:768px) {
	.disp_pc,.pc_only { display: none !important; }
	.disp_sp,.sp_only,.sp_block { display: block !important; }
	.sp_ac{text-align: center;}
}


br.br_sp { display: none; }
br.br_pc { display: block; }

@media screen and (max-width:768px) {
	br.br_sp { display: block; }
	br.br_pc { display: none;  }
}

/** width
/**************************************/
.w450 { width : 450px; }
.w100 { width : 100px; }

.w100p { width : 100%; }
.w90p  { width : 90%; }
.w85p  { width : 85%; }
.w80p  { width : 80%; }
.w78p  { width : 78%; }
.w75p  { width : 75%; }
.w73p  { width : 73%; }
.w70p  { width : 70%; }
.w69p  { width : 69%; }
.w68p  { width : 68%; }
.w65p  { width : 65%; }
.w62p  { width : 62%; }
.w60p  { width : 60%; }
.w58p  { width : 58%; }
.w55p  { width : 55%; }
.w53p  { width : 53%; }
.w52p  { width : 52%; }
.w50p  { width : 50%; }
.w49p  { width : 49%; }
.w48p  { width : 48%; }
.w45p  { width : 45%; }
.w40p  { width : 40%; }
.w35p  { width : 35%; }
.w33p  { width : 33% !important; }
.w32p  { width : 32%; }
.w31p  { width : 31%; }
.w30p  { width : 30%; }
.w28p  { width : 28%; }
.w25p  { width : 25%; }
.w24p  { width : 24%; }
.w20p  { width : 20%; }
.w15p  { width : 15%; }
.w14p  { width : 14%; }


@media screen and (max-width:768px) {
	.sp_none { display: none;  }
	.sp_w100p {
		width:           100% !important;
	}
	.sp_w50p {width: 50%;}
	.sp_w70p {width: 70%;}
}



/** text
/**************************************/
.tx_white{color:#fff !important;}
.tx_white_shadow { color:#fff !important; text-shadow: 0 0 6px #000;}
.tx_normal { font-weight: normal; }
.tx_red  { color: #ff4d4d; }
.tx_green  { color: #00a040; }
.tx_orange  { color: #f39700; }
.tx_ryumin{font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.tx08    { font-size: 0.8em; }
.tx09    { font-size: 0.9em; }
.tx10    { font-size: 1.0em; }
.tx11    { font-size: 1.1em; }
.tx12    { font-size: 1.2em !important; }
.tx13    { font-size: 1.3em; }
.tx14    { font-size: 1.4em !important; }
.tx16    { font-size: 1.6em !important; }
.tx18    { font-size: 1.8em !important; }
.tx20    { font-size: 2.0em; }
.tx22    { font-size: 2.2em; }
.tx23    { font-size: 2.3em !important; }
.tx24    { font-size: 2.4em; }
.tx25    { font-size: 2.5em; }
.tx28    { font-size: 2.8em !important; }
.tx30    { font-size: 3.0em; }
.tx32    { font-size: 3.2em; }
.tx36    { font-size: 3.6em; }
.tx30    { font-size: 3.0em; }
.tx40    { font-size: 4.0em; }
.tx50    { font-size: 5.0em; }
.tx65    { font-size: 6.5em; }

.li12    { line-height: 1.2 !important; }
.li13    { line-height: 1.3 !important; }
.li14    { line-height: 1.4 !important; }
.li16    { line-height: 1.6 !important; }
.li18    { line-height: 1.8 !important; }
.li19    { line-height: 1.9 !important; }
.li20    { line-height: 2.0 !important; }
.li26    { line-height: 2.6 !important; }


@media screen and (max-width:768px) {
	.sp_tx10 {font-size:1.0em !important;} 
	.sp_tx12 {font-size:1.2em !important;} 
	.sp_tx14 {font-size: 1.4em !important;}
	.sp_tx20 {font-size: 2.0em;}
	.sp_tx24 {font-size: 2.4em !important;}
	.sp_tx32 {font-size: 3.2em;}
}

@media screen and (max-width:640px) {
	.sp_block {
		float: none !important;
	}
	.sp_bk,.sp_block {display: block;}
}


/** margin */
/**************************************/
.ma0  { margin:  0px !important; }
.ma5  { margin:  5px !important; }
.ma10 { margin: 10px !important; }
.ma15 { margin: 15px !important; }
.ma20 { margin: 20px !important; }

.mt0  { margin-top:  0px !important; }
.mt5  { margin-top:  5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt25 { margin-top: 25px !important; }
.mt30 { margin-top: 30px !important; }
.mt35 { margin-top: 35px !important; }
.mt40 { margin-top: 40px !important; }
.mt45 { margin-top: 45px !important; }
.mt50 { margin-top: 50px !important; }
.mt60 { margin-top: 60px !important; }
.mt70 { margin-top: 70px !important; }
.mt75 { margin-top: 75px !important; }
.mt80 { margin-top: 80px !important; }
.mt90 { margin-top: 90px !important; }
.mt100 { margin-top: 100px !important; }
.mt110 { margin-top: 110px !important; }
.mt170 { margin-top: 170px !important; }
.mt180 { margin-top: 180px !important; }
.mt200 { margin-top: 200px !important; }

.mr0  { margin-right:  0px !important; }
.mr5  { margin-right:  5px !important; }
.mr10 { margin-right: 10px !important; }
.mr15 { margin-right: 15px !important; }
.mr20 { margin-right: 20px !important; }
.mr25 { margin-right: 25px !important; }
.mr30 { margin-right: 30px !important; }
.mr35 { margin-right: 35px !important; }
.mr40 { margin-right: 40px !important; }
.mr45 { margin-right: 45px !important; }
.mr50 { margin-right: 50px !important; }
.mr60 { margin-right: 60px !important; }

.mb0  { margin-bottom:  0px !important; }
.mb5  { margin-bottom:  5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb35 { margin-bottom: 35px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb45 { margin-bottom: 45px !important; }
.mb50 { margin-bottom: 50px !important; }

.ml0   { margin-left:   0px !important; }
.ml5   { margin-left:   5px !important; }
.ml10  { margin-left:  10px !important; }
.ml15  { margin-left:  15px !important; }
.ml20  { margin-left:  20px !important; }
.ml25  { margin-left:  25px !important; }
.ml30  { margin-left:  30px !important; }
.ml35  { margin-left:  35px !important; }
.ml40  { margin-left:  40px !important; }
.ml45  { margin-left:  45px !important; }
.ml50  { margin-left:  50px !important; }
.ml120 { margin-left: 120px !important; }



.ma_auto { margin-left: auto; margin-right: auto; }

.sp_ml10 { margin-left: 10px;  }
.sp_ml20 { margin-left: 20px;  }
.sp_ml30 { margin-left: 30px;  }
@media screen and (max-width:768px) {
	.mt40 { margin-top: 20px !important; }
	.mt50 { margin-top: 25px !important; }
	
	.sp_mt10 { margin-top: 10px !important; }
	.sp_mt20 { margin-top: 20px !important; }
	.sp_mt30 { margin-top: 30px !important; }
	
	.sp_mb10 { margin-bottom: 10px !important; }
	.sp_mb20 { margin-bottom: 20px !important; }

	.sp_ml10,.sp_ml20,.sp_ml30{ margin-left: 0 !important;  }

	.sp_ma_auto{margin-left:auto;margin-right:auto;}
}



/** padding */
/**************************************/
.pa0  { padding:  0px !important; }
.pa3  { padding:  3px !important; }
.pa5  { padding:  5px !important; }
.pa10 { padding: 10px !important; }
.pa15 { padding: 15px !important; }
.pa20 { padding: 20px !important; }
.pa30 { padding: 30px !important; }

.pt0  { padding-top:  0px !important; }
.pt5  { padding-top:  5px !important; }
.pt10 { padding-top: 10px !important; }
.pt15 { padding-top: 15px !important; }
.pt20 { padding-top: 20px !important; }
.pt25 { padding-top: 25px !important; }
.pt30 { padding-top: 30px !important; }
.pt35 { padding-top: 35px !important; }
.pt40 { padding-top: 40px !important; }
.pt45 { padding-top: 45px !important; }
.pt50 { padding-top: 50px !important; }
.pt60 { padding-top: 60px !important; }
.pt170 { padding-top: 170px !important; }

.pr0  { padding-right:  0px !important; }
.pr5  { padding-right:  5px !important; }
.pr10 { padding-right: 10px !important; }
.pr15 { padding-right: 15px !important; }
.pr20 { padding-right: 20px !important; }
.pr25 { padding-right: 25px !important; }
.pr30 { padding-right: 30px !important; }
.pr35 { padding-right: 35px !important; }
.pr40 { padding-right: 40px !important; }
.pr45 { padding-right: 45px !important; }
.pr50 { padding-right: 50px !important; }

.pb0  { padding-bottom:  0px !important; }
.pb5  { padding-bottom:  5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb15 { padding-bottom: 15px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb25 { padding-bottom: 25px !important; }
.pb30 { padding-bottom: 30px !important; }
.pb35 { padding-bottom: 35px !important; }
.pb40 { padding-bottom: 40px !important; }
.pb45 { padding-bottom: 45px !important; }
.pb50 { padding-bottom: 50px !important; }
.pb60 { padding-bottom: 60px !important; }

.pl0  { padding-left:  0px !important; }
.pl5  { padding-left:  5px !important; }
.pl10 { padding-left: 10px !important; }
.pl15 { padding-left: 15px !important; }
.pl20 { padding-left: 20px !important; }
.pl25 { padding-left: 25px !important; }
.pl30 { padding-left: 30px !important; }
.pl35 { padding-left: 35px !important; }
.pl40 { padding-left: 40px !important; }
.pl45 { padding-left: 45px !important; }
.pl50 { padding-left: 50px !important; }
.pl60 { padding-left: 60px !important; }


@media screen and (max-width:768px) {
	.sp_plr10{padding-left:10px;padding-right:10px;}
	.sp_plr20{padding-left:20px;padding-right:20px;}
}



/** clear */
/**************************************/
.cl:after{
	content:         ".";
	display:         block;
	height:          0;
	clear:           both;
	visibility:      hidden;
}


/* img align */

.alignnone {
    clear: both;
    margin: 0.25em;
    }

.aligncenter {
    display: block;
    clear: both;
    margin: 0.25em auto 1.5em;
    }
.alignleft {
    float: left;
    clear: both;
    margin: 0.25em 1.5em 1.5em 0;
    }
.alignright {
    float: right;
    clear: both;
    margin: 0.25em 0 1.5em 1.5em;
    }


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


@media screen and (max-width:768px) {

.alignnone {
      clear: both;
      margin: 0.25em;
      }
  .aligncenter {
      display: block;
      clear: both;
      margin: 1em auto;
      }
  .alignleft,
  .alignright {
      float: none;
      clear: both;
      display: block;
      margin: 1em auto;
      }

}


/* BLog */
#article h1 {font-size: 21px;}
#article h2 {font-size: 19px;}
#article h3 {font-size: 17px;}
#article h4 {font-size: 15px;}
#article h1 , #article h2 , #article h3, #article h4 {margin-bottom:20px;font-weight:bold;}
#article p {font-size:14px;margin-bottom:20px;}
#article ul , #article ol {margin:0 0 20px 0;font-size:15px}

#article ul li,#article ol li{
	padding:0px;
	margin:0px;
}
 
#article ul li,{
	list-style-type:none;
	list-style-image:none !important;
	margin: 5px 0px 5px 0px !important;
}
 
#article li{
	position:relative;
	padding-left:20px;
}
 
#article ul li:before{
	content:''; 
	display:block; 
	position:absolute; 
	box-shadow: 0 0 2px 2px rgba(255,255,255,0.2) inset;
	top:3px; 
	left:2px; 
	height:0; 
	width:0; 
	border-top: 6px solid transparent;
	border-right: 7px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 9px solid #aaa;
}
#article ol {
	padding-left:20px;
}
#article ol li{
	padding-left:0;
	list-style-type:decimal;
}

/** pagination
/**************************************/
.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 50px; }
  @media only screen and (max-width: 768px) {
    .pagination {
      margin-top: 25px; } }
  .pagination_str a {
    position: relative;
    color: #fff;
    background: #00a040;
    width: 186px;
    padding: 11px 0;
    text-align: center;
    display: block;
    line-height: 1;
    text-decoration: none;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    -o-border-radius: 3px;
    -ms-border-radius: 3px;
    -khtml-border-radius: 3px;
    border-radius: 3px;
    font-size: 1.3rem;
    }
    @media only screen and (max-width: 768px) {
      .pagination_str a {
        font-size: 0.975rem; } }
    @media only screen and (max-width: 768px) {
      .pagination_str a {
        width: 25px; } }
    .desktop .pagination_str a {
      -webkit-transition: 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
      -moz-transition: 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
      -o-transition: 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
      transition: 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) 0s; }
      .desktop .pagination_str a:hover {
        opacity: 0.5; }
    @media only screen and (max-width: 768px) {
      .pagination_str a span {
        display: none; } }
    @media only screen and (max-width: 768px) {
      .pagination_str a:before {
        display: block;
        left: 50%;
        top: 50%;
        margin-top: -4px;
        position: absolute; } }
  .pagination_str--prev {
    margin-right: 25px; }
    @media only screen and (max-width: 768px) {
      .pagination_str--prev a:before {
        margin-left: -2px;
        content: '';
        width: 5px;
        height: 5px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        -webkit-transform: rotate(-135deg);
        transform: rotate(-135deg); } }
  .pagination_str--next {
    margin-left: 25px; }
    @media only screen and (max-width: 768px) {
      .pagination_str--next a:before {
        margin-left: -4px;
        content: '';
        width: 5px;
        height: 5px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg); } }
  .pagination_dot {
    margin: 0 5px; }
  .pagination_item {
    margin: 0 4px; }
    .pagination_item:last-child {
      margin-right: 0; }
    .pagination_item span,
    .pagination_item a {
      width: 28px;
      height: 28px;
      line-height: 28px;
      text-align: center;
      display: block;
      border: 1px solid #00a040;
      text-decoration: none;
      font-size: 1.3rem;
      -moz-border-radius: 50%;
      -webkit-border-radius: 50%;
      -o-border-radius: 50%;
      -ms-border-radius: 50%;
      -khtml-border-radius: 50%;
      border-radius: 50%;
      }
      @media only screen and (max-width: 768px) {
        .pagination_item span,
        .pagination_item a {
          font-size: 0.975rem; } }
      @media only screen and (max-width: 768px) {
        .pagination_item span,
        .pagination_item a {
          width: 22px;
          height: 22px;
          line-height: 20px; } }
      .desktop .pagination_item span, .desktop
      .pagination_item a {
        -webkit-transition: 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
        -moz-transition: 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
        -o-transition: 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
        transition: 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) 0s; }
        .desktop .pagination_item span:hover, .desktop
        .pagination_item a:hover {
          opacity: 0.5; }
    .pagination_item a {
      color: #fff;
      background: #00a040;
      }