@charset "UTF-8";
@import url(//use.fontawesome.com/releases/v5.0.11/css/all.css);

/* CSS Document */
html {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ",
    Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 62.5%;
}
body {
  font-size: 1.6rem;
}
/* tuning */
.mt-20 {
  margin-top: 20px;
}
.mt-30 {
  margin-top: 30px;
}
.mt-40 {
  margin-top: 40px;
}
.mb-20 {
  margin-bottom: 20px;
}
.mr-20 {
  margin-right: 20px;
}
.mr-30 {
  margin-right: 30px;
}
.mr-40 {
  margin-right: 40px;
}
.fs-s {
  font-size: 1.2rem;
}
.fc-red {
  color: #ea5550;
  vertical-align: bottom;
}
.fl-l {
  float: left;
}
.fl-r {
  float: right;
}

/* topへもどる　*/
.backtotop {
  position: fixed;
  right: 15px;
  bottom: 20px;
  z-index: 9000;
  display: none;
}
.backtotop img {
  width: 30%;
}
.backtotop_icon {
  text-align: center;
}
.backtotop a {
  display: block;
  color: #fff;
  margin: 0;
  background-color: #707070;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  width: 4em;
  height: 3em;
  padding-top: 1em;
  text-decoration: none;
  font-weight: bold;
  -webkit-box-shadow: 0 5px 4px -4px #777;
  -moz-box-shadow: 0 5px 4px -4px #777;
  box-shadow: 0 5px 4px -4px #777;
}
header {
  border-bottom: 1px solid #11138b;
}
#header_wrapper {
  width: 980px;
  margin: 0px auto;
}
#header_wrapper h1 {
  margin-top: 6px;
}

/* 20191112追記 */
#header_wrapper .header_inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#header_wrapper .header_inner .header-btn a {
  display: block;
  width: 250px;
  /* height: 100%; */
  padding: 10px;
  text-decoration: none;
  background: #0a620a;
  text-align: center;
  border: 1px solid #ffffff;
  color: #ffffff;
  font-size: 20px;
  font-weight: bold;
  border-radius: 50px;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  box-shadow: 0px 0px 0px 4px #71ab4d;
  transition: all 0.5s ease;
  margin: 10px 47px 0 0;
}
/* 20191112追記 */

#header_navigation {
}
#header_navigation ul {
  margin: 0px auto 20px;
}
#header_navigation ul li {
  float: left;
  color: #11138b;
  font-weight: bold;
  margin-right: 20px;
  font-size: 1.8rem;
}
#header_navigation ul li + li {
  border-left: 1px solid #11138b;
  padding-left: 14px;
}
#header_navigation ul li a {
  color: #11138b;
}
#header_navigation ul li a:visited {
  color: #11138b;
}

footer {
  background-color: #1b346a;
  margin-top: 40px;
}
#footer_inner {
  width: 980px;
  margin: 0px auto;
  text-align: center;
  padding-top: 4px;
  padding-bottom: 4px;
  color: #fff;
  font-size: 1.4rem;
}
#page_top {
  width: 100px;
  height: 60px;
  position: fixed;
  bottom: 113px;
  right: 14px;
  background: #11138b;
  opacity: 0.8;
}
#page_top a {
  position: relative;
  display: block;
  width: 100px;
  height: 60px;
  text-decoration: none;
}
#page_top a::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f102";
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -12px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
#page_top a::after {
  content: "トップへ";
  font-size: 13px;
  color: #fff;
  position: absolute;
  top: 35px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

@media (min-width: 801px) {
  .hidden_pc {
    display: none;
  }
  #side_labbanner {
    width: 300px;
    margin-top: 10px;
    margin-bottom: 20px;
  }
  #side_labbanner img {
    width: 100%;
    height: auto;
  }
}
/* repons */
@media (max-width: 800px) {
  .hidden_sp {
    display: none;
  }
  header {
    margin-top: 10px;
  }
  #header_wrapper {
    width: 100%;
  }
  #header_wrapper h1,
  #header_wrapper p {
    width: 70%;
    margin-left: 10px;
  }

  #header_wrapper h1 img,
  #header_wrapper p img {
    width: 100%;
  }
  #header_wrapper p {
    padding-bottom: 10px;
  }
  /* 20191112追記 */
  #header_wrapper .header_inner {
    display: block;
  }
  #header_wrapper .header_inner .header-btn a {
    margin: 20px auto;
  }
  /* 20191112追記 */
  h1 {
    padding-bottom: 10px;
  }
  #header_navigation ul li {
    float: none;
    color: #11138b;
    font-weight: bold;
    margin-right: 0px;
    font-size: 1.4rem;
    padding-left: 20px;
    padding-top: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #11138b;
  }
  #header_navigation ul li + li {
    border-bottom: 1px solid #11138b;
    border-left: none;
    padding-left: 20px;
  }
  footer {
    margin-top: 40px;
  }
  #footer_inner {
    width: 100%;
    font-size: 1.1rem;
  }
  #side_labbanner {
    width: 100%;
    margin-top: 10px;
    margin-bottom: 10px;
  }
  #side_labbanner img {
    width: 100%;
    height: auto;
  }
}

/* 201907_add */
.breadcrumb {
  width: 980px;
  margin: 10px auto;
  display: flex;
  flex-wrap: wrap;
}

.breadcrumb__list {
  position: relative;
  padding-right: 25px;
}

.breadcrumb__list::after {
  content: ">";
  position: absolute;
  top: 1px;
  right: 5px;
  display: block;
  /*   margin-top:-6px; */
}

.breadcrumb__list:last-child::after {
  display: none;
}

.breadcrumb__list a {
  display: block;
  text-decoration: underline;
  line-height: 1.8;
}

/*post.cssの記述を上書き*/
#post_wrapper {
  margin-top: 30px !important;
}

@media (max-width: 800px) {
  .breadcrumb {
    width: 82%;
    margin: 10px auto;
  }

  .breadcrumb__list {
    font-size: 12px;
  }

  /*post.cssの記述を上書き*/
  #post_wrapper {
    margin-top: 20px !important;
  }
}

/* 191214追加 */
.slideR01 {
	z-index: 99;
	cursor: pointer;
	position: fixed;
	top: 33%;
	right: -370px;
	background: #11138A;
	width: 400px;
	color: #fff;
	font-size: 16px;
	padding: 10px;
	border-radius: 10px;
}

.slideR01 .label{
 writing-mode: vertical-rl;
}

.slideR01 .label-content{
  position: absolute;
  top: 36px;
  left: 54px;
  text-align: center;
  border-radius: 10px;
}
.slideR01 .label-content a{
  text-decoration: none;
  line-height: 1.8;
}
.slideR01 .label-content-text01{
	color: #FF7230;
	  font-size: 15px;
}
.slideR01 .label-content-text02{
  color: #fff;
  font-weight: bold;
  font-size: 20px;
}

.slideR02 {
	z-index: 99;
	cursor: pointer;
	position: fixed;
	top: 57%;
	right: -370px;
	background: #fff;
	width: 400px;
	color: #fff;
	font-size: 16px;
	padding: 10px;
	border: solid 1px #000;
	border-radius: 10px;
}

.slideR02 .label{
  writing-mode: vertical-rl;
  text-align: left;
  color: #000;
  position: relative;
  right: 9px;
  line-height: 1.2;
}

.slideR02 .label-content{
  position: absolute;
  top: 19px;
  left: 78px;
  text-align: center;
  border-radius: 10px;
}
.slideR02 .label-content a{
  text-decoration: none;
}
.slideR02 .label-content-text01{
  color: #FF7230;
  font-size: 15px;
  margin-bottom: 12px;
}
.slideR02 .label-content-text02{
  color: #fff;
  font-weight: bold;
	font-size: 20px;
	width: 286px;
}
.slideR02 .label-content-text02 img{
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  #floating_lab{
      position: fixed;
      bottom: 0;
      right: 0;
      width: 100%;
      height: auto;
      padding: 0px;
      background: rgba( 95,95,95 , 0.71 );
  }
  .flex_button{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    font-size: 12px;
  }
  .floaging_button{
    width: 40%;
    text-align: center;
    border: solid 1px #000;
    padding: 12px;
    background: #11138A;
  }
  .floaging_button_left a::before{
    font-family: 'Material Icons';
    content: "\e834";
    font-size: 17px;
    position: relative;
    top: 4px;
    left: -5px;
  }
  .floaging_button a{
    text-decoration: none;
    display: block;
    color: #fff;
  }
  .floaging_button_right a::before{
    font-family: 'Material Icons';
    content: "\e051";
    font-size: 17px;
    position: relative;
    top: 4px;
    left: -5px;
  }
  .floating_text{
    text-align: center;
    line-height: 3;
    color: #fff;
  }

}

/* footer リンク　追加 */
.footer_links {
	width: 800px;
	margin: 40px auto;
	text-align: center
	}
	.footer_links a{
		font-size: 13px;
		text-decoration: underline;
		}
