@charset "UTF-8";
/*共通設定======================================*/
/*共通スタイル===================================*/
html {
  margin: 0;
  padding: 0;
  font-size: 62.5%;
}

body {
  margin: 0;
  padding: 0;
  font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, Osaka, "MS PGothic", arial, helvetica, sans-serif;
  color: #333333;
  font-size: 1.6rem;
  /*約16px*/
  line-height: 150%;
  letter-spacing: 0.05em;
  overflow-y: scroll;
  word-wrap: break-word;
}

/*選択時色*/
::selection {
  background: #f5f5f5;
  /* Safari */
  color: #086C78;
}

::-moz-selection {
  background: #f5f5f5;
  /* Firefox */
  color: #086C78;
}

/*リンク*/
a, .btn, a::after {
  transition: all  0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
}

/*画像透過*/
a img {
  transition: 1s;
  -webkit-backface-visibility: hidden;
  /* 追加 */
  backface-visibility: hidden;
  /* 追加 */
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

a img:hover {
  opacity: 0.8;
  display: block;
}

/*header(PC)のスタイル===========================*/
.home header {
  border-top: 5px solid #FFC920;
}

header .pc-header .header-set {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
header .pc-header .header-set h1 a {
  display: block;
}
header .pc-header .header-set h1 img {
  margin-bottom: 1rem;
  display: inline-block;
}
header .pc-header .header-set h1 span {
  display: block;
  font-size: 1.5rem;
}
header .pc-header .header-set .btnset {
  margin-bottom: 2rem;
}
header .pc-header .header-set .btnset .btn {
  color: #333333;
  background-color: #FFC920;
  padding: 0rem 2.5rem;
  line-height: normal;
  border-radius: 0;
  font-size: 1.6rem;
}
header .pc-header .header-set .btnset .btn:hover {
  background-color: #ffd759;
}
header .pc-header .header-set .btnset li.changecolor {
  font-size: 1.4rem;
}
header .pc-header .header-set .btnset li.changecolor span {
  margin-left: 1rem;
}
header .pc-header .header-set .btnset li.changecolor span:first-child {
  margin-left: 0.5rem;
}
header .pc-header .header-set .btnset li.changecolor a {
  width: 60px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  display: inline-block;
  letter-spacing: 0;
  background-color: #ccc;
  border: 1px solid #ccc;
  border-radius:0;
  color: #333333;
  cursor: pointer;
}
header .pc-header .header-set .btnset li.changecolor a:hover {
  background-color: #333333;
  border: 1px solid #333333;
  color: #ccc;
  text-decoration: none;
}
header .pc-header .header-set .btnset li.changecolor a.wh {
  border-color: #000;
  background-color: #fff;
  color: #000;
}
header .pc-header .header-set .btnset li.changecolor a.wh:hover {
  background-color: #000;
  border-color: #000;
  color: #fff;
}
header .pc-header .header-set .btnset li.changecolor a.black {
  border-color: #000;
  background-color: #000;
  color: #fff;
}
header .pc-header .header-set .btnset li.changecolor a.black:hover {
  background-color: #fff;
  color: #000;
}
header .pc-header .header-set .btnset li.changecolor a.blue {
  border-color: #0000ff;
  background-color: #0000ff;
  color: #ffff00;
}
header .pc-header .header-set .btnset li.changecolor a.blue:hover {
  border-color: #ffff00;
  background-color: #ffff00;
  color: #0000ff;
}
header .pc-header .header-set .toolset {
  margin-bottom: 0;
}
header .pc-header .header-set .toolset form#cse-search-box {
  position: relative;
}
header .pc-header .header-set .toolset form#cse-search-box input[type="text"] {
  border: none;
  background-color: #f5f5f5 !important;
  padding: 0.5rem 3.5rem 0.5rem 0.5rem;
  width: 300px;
}
header .pc-header .header-set .toolset form#cse-search-box input[type="submit"] {
  position: absolute;
  right: 5px;
  top: 5px;
  border: none;
  background-color: inherit;
  background-image: url(../images/common/icon_search.svg);
  background-size: 23px;
  height: 23px;
  width: 23px;
}
header .pc-header .header-set .toolset form#cse-search-box input[type="submit"]:hover {
  cursor: pointer;
}
header .pc-header .header-set .toolset li a {
  display: block;
  font-size: 1.4rem;
  line-height: normal;
  padding: 3rem 0.5rem 0;
  position: relative;
  color: #086C78;
}
header .pc-header .header-set .toolset li a:hover {
  text-decoration: none;
  background-color: #f5f5f5;
}
header .pc-header .header-set .toolset li a::after {
  position: absolute;
  content: "";
  background-size: 20px;
  height: 20px;
  width: 20px;
  margin: 0 auto;
  left: 0;
  right: 0px;
  top: 5px;
}
header .pc-header .header-set .toolset li.access a::after {
  background-image: url(../images/common/icon_access.svg);
}
header .pc-header .targetnav {
  margin-bottom: 1rem;
}
header .pc-header .targetnav a {
  color: #333333;
  padding: 1rem 0.5rem;
  font-size: 1.8rem;
  letter-spacing: normal;
}
header .pc-header .targetnav a:hover {
  background-color: #FFC920;
  border-radius: 0;
}
header .pc-header .gnav {
  background-color: #086C78;
  padding: 0.5rem 0;
}
header .pc-header .gnav a {
  color: #fff;
  padding: 1rem 1.5rem;
  font-size: 1.8rem;
  letter-spacing: normal;
}
header .pc-header .gnav a:hover {
  background-color: #054047;
  border-radius: 0;
}

/*header(SP)のスタイル===========================*/
header .sp-header {
  padding: 2rem 0;
}
header .sp-header h1 a {
  display: block;
}
header .sp-header h1 img {
  margin-bottom: 1rem;
}
header .sp-header h1 span {
  display: block;
  font-size: 1.5rem;
}
header .sp-header .navToggle {
  display: block;
  position: fixed;
  top: 20px;
  right: 20px;
  width: 60px;
  height: 60px;
  background-color: #fff;
  border-radius: 5px;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
  z-index: 999;
}
header .sp-header .navToggle span {
  display: block;
  position: absolute;
  width: 35px;
  border-bottom: solid 3px #086C78;
  -webkit-transition: .35s ease-in-out;
  -moz-transition: .35s ease-in-out;
  transition: .35s ease-in-out;
  left: 0;
  right: 0;
  margin: 0 auto;
}
header .sp-header .navToggle span:nth-child(1) {
  top: 20px;
}
header .sp-header .navToggle span:nth-child(2) {
  top: 30px;
}
header .sp-header .navToggle span:nth-child(3) {
  top: 40px;
}
header .sp-header .navToggle.active {
  background-color: #fff;
  z-index: 999;
}
header .sp-header .navToggle.active span:nth-child(1), header .sp-header .navToggle.active span:nth-child(2), header .sp-header .navToggle.active span:nth-child(3) {
  top: 30px;
  left: 0px;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  transform: rotate(-45deg);
  border-bottom: solid 3px #086C78;
}
header .sp-header .navToggle.active span:nth-child(2), header .sp-header .navToggle.active span:nth-child(3) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg);
}
header .sp-header nav.globalMenuSp::-webkit-scrollbar {
  display: none;
}
header .sp-header nav.globalMenuSp {
  position: fixed;
  z-index: 99;
  top: 0px;
  left: 0;
  background: #fff;
  text-align: center;
  transform: translateY(-110%);
  transition: all 0.6s;
  width: 100%;
  -webkit-overflow-scrolling: touch;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.25);
  padding: 2rem 1rem 1rem;
  border-top: 5px solid #FFC920;
  height: 100%;
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
header .sp-header nav.globalMenuSp p.logo {
  margin-bottom: 3rem;
}
header .sp-header nav.globalMenuSp .btnset {
  margin-bottom: 2rem;
}
header .sp-header nav.globalMenuSp .btnset .btn {
  color: #333333;
  background-color: #FFC920;
  padding: 0rem 2.5rem;
  line-height: normal;
  border-radius: 0;
  font-size: 1.6rem;
  margin-bottom:2rem;
}
header .sp-header nav.globalMenuSp .btnset .btn:hover {
  background-color: #ffd759;
}
header .sp-header nav.globalMenuSp .btnset li.changecolor {
  font-size: 1.4rem;
}
header .sp-header nav.globalMenuSp .btnset li.changecolor span {
  margin-left: 1rem;
}
header .sp-header nav.globalMenuSp .btnset li.changecolor span:first-child {
  margin-left: 0.5rem;
}
header .sp-header nav.globalMenuSp .btnset li.changecolor a {
  width: 50px;
  height: 30px;
  line-height: 30px;
  text-align: center;
  display: inline-block;
  letter-spacing: 0;
  background-color: #ccc;
  border: 1px solid #ccc;
  border-radius: 0;
  color: #333333;
}
header .sp-header nav.globalMenuSp .btnset li.changecolor a:hover {
  background-color: #333333;
  border: 1px solid #333333;
  color: #ccc;
  text-decoration: none;
}
header .sp-header nav.globalMenuSp .btnset li.changecolor a.wh {
  border-color: #000;
  background-color: #fff;
  color: #000;
}
header .sp-header nav.globalMenuSp .btnset li.changecolor a.wh:hover {
  background-color: #000;
  border-color: #000;
  color: #fff;
}
header .sp-header nav.globalMenuSp .btnset li.changecolor a.black {
  border-color: #000;
  background-color: #000;
  color: #fff;
}
header .sp-header nav.globalMenuSp .btnset li.changecolor a.black:hover {
  background-color: #fff;
  color: #000;
}
header .sp-header nav.globalMenuSp .btnset li.changecolor a.blue {
  border-color: #0000ff;
  background-color: #0000ff;
  color: #ffff00;
}
header .sp-header nav.globalMenuSp .btnset li.changecolor a.blue:hover {
  border-color: #ffff00;
  background-color: #ffff00;
  color: #0000ff;
}
header .sp-header nav.globalMenuSp form#cse-search-box {
  position: relative;
  margin-bottom: 2rem;
}
header .sp-header nav.globalMenuSp form#cse-search-box input[type="text"] {
  border: none;
  background-color: #f5f5f5;
  padding: 1rem 4.5rem 1rem 0.5rem;
  width: 95%;
}
header .sp-header nav.globalMenuSp form#cse-search-box input[type="submit"] {
  position: absolute;
  right: 30px;
  top: 10px;
  border: none;
  background-color: inherit;
  background-image: url(../images/common/icon_search.svg);
  background-size: 23px;
  height: 23px;
  width: 23px;
}
header .sp-header nav.globalMenuSp form#cse-search-box input[type="submit"]:hover {
  cursor: pointer;
}
header .sp-header nav.globalMenuSp ul.linkbtnset {
  margin-bottom: 1rem;
}
header .sp-header nav.globalMenuSp ul.linkbtnset li {
  width: 90%;
}
header .sp-header nav.globalMenuSp ul.linkbtnset li a {
  background-color: #086C78;
  color: #fff;
  padding: 1rem 2rem;
  display: block;
  border-radius: 5px;
}
header .sp-header nav.globalMenuSp ul.targetnav, header .sp-header nav.globalMenuSp ul.gnav {
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: left;
}
header .sp-header nav.globalMenuSp ul.targetnav li a, header .sp-header nav.globalMenuSp ul.gnav li a {
  color: #333333;
  padding: 1rem 2rem;
  display: block;
  position: relative;
}
header .sp-header nav.globalMenuSp ul.targetnav li a::after, header .sp-header nav.globalMenuSp ul.gnav li a::after {
  position: absolute;
  content: "";
  background-size: 8px 14px;
  height: 14px;
  width: 8px;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}
header .sp-header nav.globalMenuSp ul.targetnav li {
  border-bottom: 1px solid #086C78;
}
header .sp-header nav.globalMenuSp ul.targetnav li:last-child {
  border: none;
}
header .sp-header nav.globalMenuSp ul.targetnav li a::after {
  background-image: url(../images/common/arrow_g.svg);
}
header .sp-header nav.globalMenuSp ul.gnav {
  background-color: #086C78;
}
header .sp-header nav.globalMenuSp ul.gnav li a {
  color: #fff;
}
header .sp-header nav.globalMenuSp ul.gnav li a::after {
  background-image: url(../images/common/arrow_wh.svg);
}
header .sp-header nav.globalMenuSp.active {
  transform: translateY(0%);
  top: 0;
}

/*footerのスタイル===========================*/
footer .siteinfo {
  /*ページ下部サイト情報*/
  padding: 2.5rem 1rem;
  background-color: #086C78;
}
footer .siteinfo .logo {
  margin-bottom: 1rem;
}
footer .siteinfo ul.textlinks {
  margin: 0;
}
footer .siteinfo ul.textlinks li a {
  color: #fff;
  font-size: 1.4rem;
  letter-spacing: normal;
}
footer .siteinfo .campusinfo .box {
  font-size: 1.4rem;
  letter-spacing: normal;
  color: #fff;
  margin-bottom: 2rem;
}
footer .siteinfo .campusinfo .box p:first-child {
  font-weight: bold;
  font-size: 1.5rem;
}
footer .siteinfo .campusinfo .box p {
  margin: 0;
  line-height: normal;
}
footer p.copyright {
  margin: 0;
  padding: 1rem;
  font-size: 1.2rem;
}

/*タブレット、スマホのスタイル===========================*/
/*大型モニターサイズ*/
@media screen and (min-width: 1300px) {
  /*1300px以上*/
}
/*タブレットサイズ*/
@media screen and (max-width: 991px) {
  footer .siteinfo {
    padding: 1.5rem 1rem;
  }
  footer .siteinfo .campusinfo .box:last-child {
    margin-bottom: 0;
  }
}
/*スマホサイズ*/
@media screen and (max-width: 767px) {
  footer .logo {
    margin-bottom: 1rem;
  }
  footer .logo a {
    display: inline-block;
    margin: 0 auto;
  }
  footer .siteinfo {
    text-align: center;
  }
  footer .siteinfo ul.textlinks {
    margin-bottom: 2rem;
  }
}
/*トップページメイン画像===========================*/
.home .mainimg {
  margin-bottom:5rem;
}
.home .mainimg img{
  width:100%;
}
/*トップページテキスト===========================*/
.home h2 {
  font-size: 2.6rem;
  text-align: center;
  margin-bottom: 3rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}
.home h2 span {
  display: block;
  color: #086C78;
  font-size: 1.8rem;
  margin-top: 1rem;
}
section.siteabout{
  padding:2rem;
  margin-bottom:5rem;
}
/*タブレット、スマホのスタイル===========================*/
/*タブレットサイズ*/
@media screen and (max-width: 991px) {
  .home header .slider {
    background-color: #086C78;
  }
}
/*スマホサイズ*/
@media screen and (max-width: 767px) {
  .home header .slider {
    height: auto;
  }
}
/*スマホサイズ 小さめ*/
/*サブページ共通のスタイル===========================*/
.subvisual {
  position: relative;
  height: 160px;
  width: 100%;
  background-color:#f5f5f5;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 0;
  padding: 3rem 2rem;
  margin-bottom: 2rem;
}
.subvisual h2 {
  position: absolute;
  z-index: 1;
  bottom: 55px;
  left: 0;
  color: #fff;
  font-size: 2.5rem;
  padding: 0 3rem 0 8rem;
}

.subvisual::before {
  content: "";
  display: block;
  position: absolute;
  width: 40%;
  height: 100%;
  background-color: rgba(5, 93, 103, 0.8);
  left: 0;
  top: 0;
  z-index: 0;
  pointer-events: none;
}

.subvisual::after {
  content: "";
  display: block;
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 160px 0 0 100px;
  border-color: transparent transparent transparent rgba(5, 93, 103, 0.8);
  left: 40%;
  top: 0;
  z-index: 0;
  pointer-events: none;
}

.wrap-headline .breadcrumb {
  background-color: inherit;
  font-size: 1.5rem;
  padding: 0;
  margin-bottom: 5rem;
}
.wrap-headline .breadcrumb li {
  color: #333333;
}
.wrap-headline .breadcrumb a {
  color: #086C78;
}
.wrap-headline .breadcrumb a:hover {
  color: #333333;
  text-decoration: none;
}

.wrap-contents {
  margin-bottom: 9rem;
}
.wrap-contents .wrap-edit{
  margin-bottom: 4rem;
}

/*エディタ内のスタイル===========================*/
.wrap-contents.single .wrap-edit p, .wrap-contents.page .wrap-edit p {
  margin-bottom: 1rem;
}
.wrap-contents.single .wrap-edit a, .wrap-contents.page .wrap-edit a {
  color: #086C78;
  text-decoration: underline;
  position: relative;
}
.wrap-contents.single .wrap-edit a:hover, .wrap-contents.page .wrap-edit a:hover {
  color: #16656e;
}
.wrap-contents.single .wrap-edit a[href$=".pdf"], .wrap-contents.single .wrap-edit a[href$=".doc"],
.wrap-contents.single .wrap-edit a[href$=".docm"], .wrap-contents.single .wrap-edit a[href$=".docx"],
.wrap-contents.single .wrap-edit a[href$=".xls"], .wrap-contents.single .wrap-edit a[href$=".xlsx"],
.wrap-contents.single .wrap-edit a[href$=".ppt"], .wrap-contents.single .wrap-edit a[href$=".pptx"],
.wrap-contents.single .wrap-edit a[href$=".xlsm"], .wrap-contents.single .wrap-edit a[href$=".zip"], .wrap-contents.page .wrap-edit a[href$=".pdf"], .wrap-contents.page .wrap-edit a[href$=".doc"],
.wrap-contents.page .wrap-edit a[href$=".docm"], .wrap-contents.page .wrap-edit a[href$=".docx"],
.wrap-contents.page .wrap-edit a[href$=".xls"], .wrap-contents.page .wrap-edit a[href$=".xlsx"],
.wrap-contents.page .wrap-edit a[href$=".ppt"], .wrap-contents.page .wrap-edit a[href$=".pptx"],
.wrap-contents.page .wrap-edit a[href$=".xlsm"], .wrap-contents.page .wrap-edit a[href$=".zip"] {
  position: relative;
  padding-right: 55px;
}
.wrap-contents.single .wrap-edit a[href$=".pdf"]::before, .wrap-contents.single .wrap-edit a[href$=".doc"]::before,
.wrap-contents.single .wrap-edit a[href$=".docm"]::before, .wrap-contents.single .wrap-edit a[href$=".docx"]::before,
.wrap-contents.single .wrap-edit a[href$=".xls"]::before, .wrap-contents.single .wrap-edit a[href$=".xlsx"]::before,
.wrap-contents.single .wrap-edit a[href$=".ppt"]::before, .wrap-contents.single .wrap-edit a[href$=".pptx"]::before,
.wrap-contents.single .wrap-edit a[href$=".xlsm"]::before, .wrap-contents.single .wrap-edit a[href$=".zip"]::before, .wrap-contents.page .wrap-edit a[href$=".pdf"]::before, .wrap-contents.page .wrap-edit a[href$=".doc"]::before,
.wrap-contents.page .wrap-edit a[href$=".docm"]::before, .wrap-contents.page .wrap-edit a[href$=".docx"]::before,
.wrap-contents.page .wrap-edit a[href$=".xls"]::before, .wrap-contents.page .wrap-edit a[href$=".xlsx"]::before,
.wrap-contents.page .wrap-edit a[href$=".ppt"]::before, .wrap-contents.page .wrap-edit a[href$=".pptx"]::before,
.wrap-contents.page .wrap-edit a[href$=".xlsm"]::before, .wrap-contents.page .wrap-edit a[href$=".zip"]::before {
  color: #fff;
  font-size: 10px;
  text-align: center;
  line-height: 100%;
  padding: 3px 5px;
  width: 45px;
  text-decoration: none;
  display: inline-block;
  position: absolute;
  right: 5px;
  bottom: 4px;
}
.wrap-contents.single .wrap-edit a[href$=".pdf"]::before, .wrap-contents.page .wrap-edit a[href$=".pdf"]::before {
  background-color: #D30102;
  content: "PDF";
}
.wrap-contents.single .wrap-edit a[href$=".doc"]::before, .wrap-contents.single .wrap-edit a[href$=".docx"]::before, .wrap-contents.single .wrap-edit a[href$=".docm"]::before, .wrap-contents.page .wrap-edit a[href$=".doc"]::before, .wrap-contents.page .wrap-edit a[href$=".docx"]::before, .wrap-contents.page .wrap-edit a[href$=".docm"]::before {
  background-color: #00569B;
  content: "Word";
}
.wrap-contents.single .wrap-edit a[href$=".xls"]::before, .wrap-contents.single .wrap-edit a[href$=".xlsx"]::before, .wrap-contents.single .wrap-edit a[href$=".xlsm"]::before, .wrap-contents.page .wrap-edit a[href$=".xls"]::before, .wrap-contents.page .wrap-edit a[href$=".xlsx"]::before, .wrap-contents.page .wrap-edit a[href$=".xlsm"]::before {
  background-color: #1B6237;
  content: "Excel";
}
.wrap-contents.single .wrap-edit a[href$=".zip"]::before, .wrap-contents.page .wrap-edit a[href$=".zip"]::before {
  background-color: #333333;
  content: "ZIP";
}
.wrap-contents.single .wrap-edit a[href$=".ppt"]::before, .wrap-contents.single .wrap-edit a[href$=".pptx"]::before, .wrap-contents.page .wrap-edit a[href$=".ppt"]::before, .wrap-contents.page .wrap-edit a[href$=".pptx"]::before {
  background-color: #D24726;
  content: "PPT";
}
.wrap-contents.single .wrap-edit ol li a[href$=".pdf"]::before, .wrap-contents.single .wrap-edit ol li a[href$=".doc"]::before,
.wrap-contents.single .wrap-edit ol li a[href$=".docm"]::before, .wrap-contents.single .wrap-edit ol li a[href$=".docx"]::before,
.wrap-contents.single .wrap-edit ol li a[href$=".xls"]::before, .wrap-contents.single .wrap-edit ol li a[href$=".xlsx"]::before,
.wrap-contents.single .wrap-edit ol li a[href$=".ppt"]::before, .wrap-contents.single .wrap-edit ol li a[href$=".pptx"]::before,
.wrap-contents.single .wrap-edit ol li a[href$=".xlsm"]::before, .wrap-contents.single .wrap-edit ol li a[href$=".zip"]::before, .wrap-contents.page .wrap-edit ol li a[href$=".pdf"]::before, .wrap-contents.page .wrap-edit ol li a[href$=".doc"]::before,
.wrap-contents.page .wrap-edit ol li a[href$=".docm"]::before, .wrap-contents.page .wrap-edit ol li a[href$=".docx"]::before,
.wrap-contents.page .wrap-edit ol li a[href$=".xls"]::before, .wrap-contents.page .wrap-edit ol li a[href$=".xlsx"]::before,
.wrap-contents.page .wrap-edit ol li a[href$=".ppt"]::before, .wrap-contents.page .wrap-edit ol li a[href$=".pptx"]::before,
.wrap-contents.page .wrap-edit ol li a[href$=".xlsm"]::before, .wrap-contents.page .wrap-edit ol li a[href$=".zip"]::before {
  text-indent: 0em;
}
.wrap-contents.single .wrap-edit h3, .wrap-contents.page .wrap-edit h3 {
  background-color: #f5f5f5;
  font-size: 2.2rem;
  font-weight: bold;
  color: #086C78;
  padding: 1rem 1.5rem 1rem 3.5rem;
  position: relative;
  margin-bottom: 3rem;
}
.wrap-contents.single .wrap-edit h3::after, .wrap-contents.page .wrap-edit h3::after {
  content: "";
  position: absolute;
  background-color: #FFC920;
  width: 1rem;
  height: 70%;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
}
.wrap-contents.single .wrap-edit h4, .wrap-contents.page .wrap-edit h4 {
  font-size: 2rem;
  color: #333333;
  border-bottom: 3px solid #ccc;
  position: relative;
  padding: 0.5rem 1.5rem;
  margin-bottom: 2rem;
  margin-top: 4rem;
}
.wrap-contents.single .wrap-edit h4::after, .wrap-contents.page .wrap-edit h4::after {
  content: "";
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 20%;
  height: 3px;
  background-color: #FFC920;
}
.wrap-contents.single .wrap-edit h5, .wrap-contents.page .wrap-edit h5 {
  font-size: 1.8rem;
  font-weight: normal;
  color: #333333;
  padding: 1rem 1.5rem 1rem 3rem;
  position: relative;
  margin-bottom: 2rem;
  margin-top: 4rem;
}
.wrap-contents.single .wrap-edit h5::after, .wrap-contents.page .wrap-edit h5::after {
  content: "";
  position: absolute;
  background-color: #FFC920;
  width: 1rem;
  height: 70%;
  left: 8px;
  top: 50%;
  transform: translateY(-50%);
}
.wrap-contents.single .wrap-edit h6, .wrap-contents.page .wrap-edit h6 {
  font-size: 1.8rem;
  font-weight: normal;
  color: #333333;
  padding: 0.5rem 1rem;
  border-bottom: 2px solid #FFC920;
  margin-bottom: 1.5rem;
}
.wrap-contents.single .wrap-edit ul, .wrap-contents.page .wrap-edit ul {
  list-style-type: none;
  padding-left: 30px;
  letter-spacing: 0.1em;
  line-height: 180%;
  margin-bottom: 1rem;
}
.wrap-contents.single .wrap-edit ul li, .wrap-contents.page .wrap-edit ul li {
  position: relative;
}
.wrap-contents.single .wrap-edit ul li::before, .wrap-contents.page .wrap-edit ul li::before {
  display: block;
  content: '';
  position: absolute;
  top: .65em;
  left: -1em;
  width: 8px;
  height: 8px;
  border-radius: 100%;
  background-color: #086C78;
}
.wrap-contents.single .wrap-edit ul ul, .wrap-contents.page .wrap-edit ul ul {
  margin: 0;
}
.wrap-contents.single .wrap-edit ol, .wrap-contents.page .wrap-edit ol {
  list-style-type: none;
  counter-reset: num;
  padding-left: 10px;
  letter-spacing: 0.1em;
  line-height: 180%;
  margin-bottom: 1rem;
}
.wrap-contents.single .wrap-edit ol li, .wrap-contents.page .wrap-edit ol li {
  text-indent: -2em;
  padding-left: 2em;
}
.wrap-contents.single .wrap-edit ol li::before, .wrap-contents.page .wrap-edit ol li::before {
  counter-increment: num;
  content: counter(num) ".";
  padding-right: .3em;
  font-weight: bold;
  color: #086C78;
  display: inline-block;
  width: 2em;
  text-align: right;
}
.wrap-contents.single .wrap-edit table, .wrap-contents.page .wrap-edit table {
  margin-bottom: 2rem;
}
.wrap-contents.single .wrap-edit table p, .wrap-contents.single .wrap-edit table ul, .wrap-contents.page .wrap-edit table p, .wrap-contents.page .wrap-edit table ul {
  margin: 0;
}
.wrap-contents.single .wrap-edit table td, .wrap-contents.single .wrap-edit table th, .wrap-contents.page .wrap-edit table td, .wrap-contents.page .wrap-edit table th {
  border: 1px solid #ccc;
  vertical-align: middle;
  padding: 1rem 0.7rem;
}
.wrap-contents.single .wrap-edit table th, .wrap-contents.page .wrap-edit table th {
  background-color: #086C78;
  color: #fff;
  text-align: center;
  font-weight: bold;
}
.wrap-contents.single .wrap-edit table td p, .wrap-contents.single .wrap-edit table td ol, .wrap-contents.single .wrap-edit table td ul, .wrap-contents.page .wrap-edit table td p, .wrap-contents.page .wrap-edit table td ol, .wrap-contents.page .wrap-edit table td ul {
  margin-bottom: 0;
}

/*階下リンク一覧のスタイル===========================*/
.wrap-contents .wrap-pickup {
  position: relative;
  width: 95%;
  margin: 0 auto 5rem;
}
.wrap-contents .wrap-pickup .box {
  border: 1rem solid #f5f5f5;
  background-color: #fff;
  padding: 3rem 2rem 1.5rem;
}
.wrap-contents .wrap-pickup h3 {
  position: absolute;
  top: -2rem;
  left: -2rem;
  background-color: #086C78;
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
  padding: 1rem 3rem;
  width: 170px;
}
.wrap-contents .wrap-pickup h3::after {
  position: absolute;
  content: "";
  width: 0px;
  height: 0px;
  top: 0;
  right: 0;
  border-width: 23px 10px 23px 0px;
  border-color: transparent #fff transparent transparent;
  border-style: solid;
}
.wrap-contents .wrap-pickup h3::before {
  position: absolute;
  content: "";
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 15px transparent;
  border-right: solid 20px #03272b;
}
.wrap-contents .wrap-pickup ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.wrap-contents .wrap-pickup ul li a {
  color: #333333;
  text-decoration: underline;
  position: relative;
}
.wrap-contents .wrap-pickup ul li a:hover {
  color: #086C78;
  text-decoration: none;
}
.wrap-contents .wrap-pickup ul li a::after {
  position: absolute;
  content: "";
  background-image: url(../images/common/arrow_o.svg);
  background-size: 8px 14px;
  height: 14px;
  width: 8px;
  right: -20px;
  top: 50%;
  transform: translateY(-50%);
  transition: all  0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
}
.wrap-contents .wrap-pickup ul li a:hover::after {
  right: -25px;
}

.wrap-contents .wrap-pagelink .box {
  margin-bottom: 4rem;
}
.wrap-contents .wrap-pagelink .box h3 {
  background-color: #f5f5f5;
  font-size: 1.8rem;
  font-weight: bold;
  color: #086C78;
  padding: 1rem 1.5rem 1rem 3.5rem;
  position: relative;
}
.wrap-contents .wrap-pagelink .box h3::after {
  content: "";
  position: absolute;
  background-color: #FFC920;
  width: 1rem;
  height: 70%;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
}
.wrap-contents .wrap-pagelink .box h3 a {
  color: #086C78;
  display: block;
}
.wrap-contents .wrap-pagelink .box h3 a:hover {
  color: #333333;
  text-decoration: none;
}
.wrap-contents .wrap-pagelink .box h3 a::after {
  position: absolute;
  content: "";
  background-image: url(../images/common/arrow_g.svg);
  background-size: 8px 14px;
  height: 14px;
  width: 8px;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  transition: all  0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
}
.wrap-contents .wrap-pagelink .box h3 a:hover::after {
  right: 10px;
}
.wrap-contents .wrap-pagelink .box h3 a:hover {
  text-decoration: none;
  color: #086C78;
}
.wrap-contents .wrap-pagelink .box ul {
  list-style: none;
  margin: 0;
  padding: 1rem 1rem;
  background-color: #fff;
}
.wrap-contents .wrap-pagelink .box ul li a {
  display: block;
  border-bottom: solid 1px #ccc;
  padding: 1rem 0.5rem;
  position: relative;
  color: #333333;
}
.wrap-contents .wrap-pagelink .box ul li a::after {
  position: absolute;
  content: "";
  background-image: url(../images/common/arrow_g.svg);
  background-size: 8px 14px;
  height: 14px;
  width: 8px;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  transition: all  0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
}
.wrap-contents .wrap-pagelink .box ul li a:hover::after {
  right: 5px;
}
.wrap-contents .wrap-pagelink .box ul li a:hover {
  text-decoration: none;
  color: #086C78;
}

/*フォーム===========================*/
.wrap-contents .contact-form{
}
.wrap-contents p.contact-form-information{
  color:#BB1B1B;
  background-color:#FFE6E6;
  padding: 1rem 1.5rem;
  margin:4rem auto 3rem;
}
.wrap-contents .contact-form .contact-form-field{
  padding:3rem 2rem 1rem;
  border-bottom:1px solid #f5f5f5;
  display: table;
  width:100%;
  position: relative;
}
.wrap-contents .contact-form .contact-form-field::after{
  position: absolute;
  display:block;
  content:"";
  width:30%;
  height:1px;
  background-color:#009EB2;
  left:0;
  bottom:-1px;
}
.wrap-contents .contact-form .contact-form-field .form-label{
  display:table-cell;
  margin:0;
  width:30%;
  vertical-align: top;
  font-weight: bold;
  padding: 0rem 1.5rem;
}
.wrap-contents .contact-form .contact-form-field .form-label span.must{
  color:#fff;
  background-color:#BB1B1B;
  font-size:1.3rem;
  padding: 0.2rem 0.5rem;
}
.wrap-contents .contact-form .contact-form-field .form-element span.field_error{
  color:#BB1B1B;
  background-color:#FFE6E6;
  padding: 0.2rem 0.5rem;
  display: inline-block;
  margin-top:0.5rem
}
.wrap-contents .contact-form .contact-form-field .form-element{
  display: table-cell;
  margin:0;
  width:68%;
  vertical-align: top;
  padding: 0rem 1.5rem;
}
.wrap-contents .contact-form .contact-form-field .form-element input,
.wrap-contents .contact-form .contact-form-field .form-element select,
.wrap-contents .contact-form .contact-form-field .form-element textarea{
  background-color:#f7f7f7;
  border-radius:5px;
  border:1px solid #f7f7f7;
  padding:0.5rem;
}
.wrap-contents .contact-form .contact-form-field .form-element input{
  width:70%;
}
.wrap-contents .contact-form .contact-form-field .form-element select{
  width:40%;
}
.wrap-contents .contact-form .contact-form-field .form-element textarea{
  width:90%;
  height: 15rem;
}
.wrap-contents .contact-form .contact-form-submit{
  margin:3rem auto;
  text-align: center;
}
.wrap-contents .contact-form .contact-form-submit input[type="submit"]{
  width:200px;
  padding:1rem 1.5rem;
  background-color: #FFC920;
  border:1px solid #FFC920;
  color:#333333;
  transition: all  0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
}
.wrap-contents .contact-form .contact-form-submit input[type="submit"]:hover{
  cursor:pointer;
  background-color: #fff;
}
/*タブレット、スマホのスタイル===========================*/
/*大型モニターサイズ*/
@media screen and (min-width: 1300px) {
  /*1300px以上*/
  .subvisual h2 {
    left: 10%;
  }
}
/*タブレットサイズ*/
@media screen and (max-width: 991px) {
  .subvisual {
    background-image: none !important;
    background-color: #086C78;
    height: auto;
  }
  .subvisual h2 {
    padding: 0 1rem;
    position: static;
  }

  .subvisual::before, .subvisual::after {
    content: none;
  }

  .wrap-contents.archive .box ul li.title {
    display: block;
  }
  .wrap-contents.archive .box ul li.title h3 {
    margin-top: 1rem;
  }
  .wrap-contents.archive .box ul li.title h3 a::after {
    content: none;
  }
}