<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "utf-8";

/*----------------------------------------------------
  基本のレイアウト
----------------------------------------------------*/
:root{
  --main-color: #18AC55;
  --sub01-color: #01642B;
  --sub02-color: #ECF4D9;
  /* データ */
  --sub03-color: #EBF4E2;
  --sub04-color: #CCE2B3;
  /* gray */
  --gray-color: #E6E6E6;
  --gray02-color:#CCC;
  --gray03-color:#D7D7D7;
  --dgray-color: #C9CACA;

  --font-color:#333;
  --main-font:'Noto Sans JP',"YuGothic",Meiryo,"メイリオ","Hiragino Kaku Gothic ProN",sans-serif; 
  --sub-font:'Noto Serif JP',"游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
}
body{
  color: var(--font-color);
  font-size:1.8rem;
  font-family: var(--main-font);
  line-height: 1.8;
  overflow-x: hidden;
}
.wrap {
  padding-top: 100px;
}
/* 段落 */
/* スマホ時表示 */
.br-hidden{
  display: none;
}
/*----------------------------------------------------
  メインコンテンツ 共通
----------------------------------------------------*/
/* コンテンツ余白 */
.pg-b{
  margin: 0 20px;
}
/*----------------------------------------------------
  リンク色
----------------------------------------------------*/
/* デフォルト */
a:link {
  color:#245fbb;
  text-decoration: none;
}
a:visited {
  color:#245fbb;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
a:active {
  color:#E48E00;
  text-decoration: underline;
}
/*----------------------------------------------------
  ヘッダー
----------------------------------------------------*/
.header{
  position: fixed;
  width:100%;
  height: auto;
  margin: 0 auto;
  font-size: 1.1rem;
  background: #fff;
  z-index: 100;
}
.header-close{
  display: table;
}
/* desktop時メニュー */
.header-right {
  display: none;
}
/* 左メニュー */
.header-left {
  display: table-cell;
  vertical-align: middle;
  height: 100px;
}
.logo-header{
  display: flex;
  align-items: center;
  padding: 10px 0;
  width: fit-content;
}
.logo-header img{
  height: 100%;
  width: auto;
}
/* 右メニュー */
.hr-lmenu,
.hr-rmenu{
  display: none;
  text-align: right;
}
.hr-lmenu li,
.hr-rmenu li{
  display: inline-block;
} 
.hr-lmenu li a,
.hr-rmenu li a{
  display: block;
  font-weight: 400;
  color: var(--font-color);
  text-decoration: none;
  position: relative;
  z-index: 1;
  font-weight: 400;
}
/* 右メニュー:上 */
.hr-lmenu li a{
  line-height: 1;
  margin: 10px 0 8px 30px;
  border: 1px solid var(--dgray-color);
  border-radius: 20px;
  padding: 6px 14px 7px 30px;
  font-size: 1.4rem;
}
.hr-lmenu li:last-child a{
  margin-right: 46px;
}
.hr-lmenu li a::before{
  position: absolute;
  top: 49%;
  left: 13px;
  transform: translateY(-50%);
  display: inline-block;
  font-family: "fontawesome";
  content: "\f105";
  font-size: 25px;
  color: var(--main-color);
  font-weight: bold;
}
/* hover */
.hr-lmenu li a:hover{
  background: -webkit-gradient(linear, left 50%, left top, from(#fff), to(var(--gray-color)));
  background: -webkit-linear-gradient(bottom, #fff 50%, var(--gray-color) 100%);
  background: linear-gradient(to top, #fff 50%, var(--gray-color) 100%);
}
/* 右メニュー:下 */
.hr-rmenu li a{
  padding: 15px 20px 25px;
  font-size: 18px;
  margin-right: 10px;
  line-height: 1.2;
}
/* 英語ver */
.home-en .hr-rmenu li a{
  padding: 4px 20px 15px;
}
.hr-rmenu li:last-child a{
  margin-right: 30px;
}
.hr-rmenu li a::after{
  content: "";
  position: absolute;
  bottom: 15px;
  left: 35%;
  /*線の形状*/
  width: 30%;
  height: 2px;
  background-color: var(--main-color);
  /*アニメーションの指定*/
  transition: all .3s;
  transform: scale(0, 1);/*X方向：0進む、Y方向：1倍=2px進む*/
  transform-origin: center top;/*中央上基点*/
}
/* 英語ver */
.home-en .hr-rmenu li a::after{
  bottom: 8px;
}
/* hover */
.hr-rmenu li a:hover::after{
  transform: scale(1, 1);/*X方向：1倍=100%進む、Y方向:そのまま*/
}
/* スマホメニュー時 */
.smp-rec-box{
  position: relative;
}
.smp-rec-box::after {
  position: absolute;
  top: 51%;
  right: 10px;
  transform: translateY(-50%);
  content: "";
  display: inline-block;
  background-image: url(../images/common/ico_external_link.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 13px;
  height: 14px;
}
.smp-rec-box:hover::after {
  background-image: url(../images/common/ico_external_link_gr.svg);
}
/*----------------------------------------------------
  ナビゲーションSP
----------------------------------------------------*/
#sidr {
  position: fixed;
  /*ナビのスタート位置と形状*/
  top: calc(100px - 1px);
  left: 0;
  width: 100%;
  height: 100%; /*ナビの高さ*/
  font-size: 15px;
  background: #fff;
  transition: transform .3s, -webkit-transform .3s;
  display: none;
  z-index: 999;
}
/*ナビゲーションの縦スクロール*/
#sidr .smp-m-list{
  /*ナビの数が増えた場合縦スクロール*/
  width: 100%;
  height: 100vh;/*表示する高さ*/
  overflow: auto;
}
#sidr .smp-m-list &gt; ul {
  padding: 12px 15px 15px;
}
.smp-menu ul li{
  list-style: none;
  text-align: left;
}
/* .smp-menu ul li a {
  color: #000;
  display: block;
  padding: 18px 10px;
  border-bottom: 2px solid var(--dgray-color);
  font-weight: 500;
  font-size: 13px;
  text-decoration: none;
} */
.smp-menu ul li a:hover{
  color: var(--main-color);
}

.smp-menu ul li a,
.smp-menu ul li span {
  color: #000;
  display: block;
  padding: 18px 10px;
  border-bottom: 2px solid var(--dgray-color);
  font-weight: 500;
  font-size: 13px;
  text-decoration: none;
  position: relative;
}
.smp-menu ul li span:after {
  color: #245fbb;
  font-family: FontAwesome;
  position: absolute;
  top: 50%;
  line-height: 1;
  margin-top: -0.5em;
  right: 5px;
}
.smp-menu ul li span:after {
  content: "\f107";
  font-size: 2rem;
  color: var(--dgray-color);
}
.smp-menu ul li span.open:after {
  content: "\f106";
}
.smp-menu ul li a:hover {
  text-decoration: none;
}
.smp-menu .smp-menu-child {
  display: none;
  margin-left: 15px;
  padding-left: 0;
  list-style: none;
}
.smp-menu .smp-menu-child li:last-child {
  border-bottom: none;
}
.smp-menu ul li .btn-trans{
  border-radius: 35px;
  border: 2px solid var(--dgray-color);
  text-align: center;
  margin-top: 2em;
  position: relative;
}
.smp-menu ul li .btn-trans::before{
  position: absolute;
  top: 49%;
  left: calc(50% - 40px);
  transform: translateY(-50%);
  display: inline-block;
  font-family: "fontawesome";
  content: "\f105";
  font-size: 25px;
  color: var(--main-color);
  font-weight: bold;
}
/* hover */
.smp-menu ul li .btn-trans:hover{
  background: -webkit-gradient(linear, left 50%, left top, from(#fff), to(var(--gray-color)));
  background: -webkit-linear-gradient(bottom, #fff 50%, var(--gray-color) 100%);
  background: linear-gradient(to top, #fff 50%, var(--gray-color) 100%);
  color: var(--font-color);
}


/* メニューボタン */
.menuposi{
  float: right;
  position: relative;
  top: 29px;
  display: block;
}
.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu-trigger {
	position: relative;
  margin:5px;
  border-radius:5px;
  width: 40px;
	height: 30px;
}
.menu-trigger span {
	position: absolute;
	height: 3px;
	border-radius: 4px;
  left: 50%;
  transform: translateX(-50%);
	width: 100%;
  transition: all .4s;
}
.menu-trigger .border{
  background-color: var(--main-color);
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 13.5px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 1px;
}
.menu-trigger .menu-trigger-text{
  bottom: 0;
  display: inline-block;
  width: 50px;
  height: auto;
  text-align: center;
}
/* ×に変化 */
.menuposi.active span:nth-of-type(1),
.menuposi.active span:nth-of-type(3) {
  top: 12px;
  left: 0;
}
.menuposi.active span:nth-of-type(1) {
  transform: rotate(-45deg);
}
.menuposi.active span:nth-of-type(2) {
  opacity: 0;
}
.menuposi.active span:nth-of-type(3){
  transform: rotate(45deg);
}
/*----------------------------------------------------
  ぱんくず
----------------------------------------------------*/
.breadcrumb{
  background-color: #ededed;
}
.breadcrumb ul{
  padding: 8px 2em 7px;
}
.breadcrumb li{
  display: inline-block;
  padding-right: 30px;
  position: relative;
  font-size: 14px;
  line-height: 1;
}
.breadcrumb li:last-child{
  padding-right: 0;
}
.breadcrumb li::after{
  position: absolute;
  right: 10px;
  content: "\f105";
  display: inline-block;
  font-family: "fontawesome";
  font-size: 15px;
}
.breadcrumb li:last-child:after{
  content: none;
}
.breadcrumb li a{
  color: #000;
  text-underline-offset: 3px;
}
/*----------------------------------------------------
  メインイメージ
----------------------------------------------------*/
/* header用 */
.mainimg-box,
.mimg-bx{
  position: relative;
}
/* セカンドページ用 */
.m-textbox{
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 7%;
  transform: translateY(-50%);
  text-align: left;
  color: #fff;
}
/* メインイメージテキスト：大 */
.mainimg-title{
  /* text-shadow: 0 0 12px rgb(2 5 3 / 70%); */
  letter-spacing: 0.05em;
  padding-bottom: 18px;
}
.m-textbox .mainimg-title{
  padding-bottom: 0;
}
/* メインイメージテキスト：小 */
/* .mainimg-text{
  font-size: 15px;
  line-height: 1.6em;
  letter-spacing: 0.03em;
} */
/* メインイメージの色変更 */
/* .mainimg-filter{
  background-color: var(--font-color);
} */
/* .main-img01,
.m-img-se,
.main-img02{
  opacity: .9;
} */
.main-img01,
.m-img-se,
.main-img02{
  width: 100%;
}
.main-img02{
  display: none;
}
/*セカンドページ：メインイメージタイトル*/
.page-title-wrap {
  background: url(../images/common/bg_page_title.png) no-repeat center center;
  background-size: cover;
  padding: 3rem 0;
}
.page-title-wrap .page-title {
  font-size: 2.8rem;
  font-weight: bold;
}
/*----------------------------------------------------
  タイトル
----------------------------------------------------*/
/* タイトル1 */
.pages-title {
  font-size: 24px;
  font-weight: 700; 
  border-left: 7px solid var(--main-color);
  padding-left: 20px;
  margin-bottom: 40px;
}
/* タイトル2 */
.pages-sub-title{
  font-size: 20px;
  font-weight: 700;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--dgray-color);
  margin-bottom: 25px;
  line-height: 1;
}
/* タイトル3 */
.pages-sub-title02{
  font-size: 20px;
  color: var(--main-color);
  font-weight: 700;
  padding-bottom: 8px;
}
/* タイトル4 */
.pages-sub-title03{
  font-weight: 700;
  font-size: 24px;
  margin-bottom: 20px;
  line-height: 1;
}
/* タイトル5 */
.pages-sub-title04{
  font-size: 18px;
  font-weight: 500;
  margin-bottom: 77px;
}

/*----------------------------------------------------
  フッター
----------------------------------------------------*/
.pages-footer{
  background-color: var(--gray-color);
  margin-top: 100px;
}
.footer-box{
  position: relative;
  padding-top: 25px;
  text-align: left;
}
/* footerロゴ */
.footer-box img{
  height: 19px;
  width: auto;
}
/* 住所 */
.f-l-address{
  padding-top: 12px;
  font-size: 12px;
  line-height: 2.2em;
}
.fld-br{
  display: none;
}
/* ロゴマーク */
.hr-logo{
  position: absolute;
  top: 0;
  right: 0;
  padding-top: 40px;
}
.hr-logo div{
  display: inline-block;
  margin: 0 10px;
}
.hr-logo img{
  height: 84px;
}
/* コピーライト */
.footer-bottom{
  width: 100%;
  text-align: center;
  margin-top: 30px;
  padding-bottom: 24px;
}
.copyright{
  font-size: 10px;
}
/*----------------------------------------------------
  スクロールボタン（ページトップ）
----------------------------------------------------*/
.page-top {
  position: fixed;
  bottom: 10px;
  right: 10px;
  z-index: 99;
}
.page-top a {
  display: block;
  width: 50px;
  height: 50px;
  background-color: var(--main-color);
  text-decoration: none;
  position: relative;
  border-radius: 50%;
}
.page-top a:hover{
  opacity: .6;
}
.page-top a::before,
.page-top a::after{
  content: "";
  display: inline-block;
  position: absolute;
  top: 42%;
  left: 30%;
  border-top: 2px solid #fff;
  width: 20px;
  height: 20px;
}
.page-top a::before{
  transform: rotate(-45deg);
}
.page-top a::after{
  transform: rotate(45deg);
}






@media (min-width: 768px) {
}
@media (min-width: 992px) {
  /*----------------------------------------------------
    メインコンテンツ 共通
  ----------------------------------------------------*/
  /* コンテンツ余白 */
  .pages-c-frame{
    padding-top: 200px;
  }
}
@media (min-width: 1200px) {
  /*----------------------------------------------------
    ヘッダー
  ----------------------------------------------------*/
  .header-close{
    max-width: 100%;
    padding-right: 0; 
  }
  /* desktop時メニュー */
  .header-right {
    display: table-cell;
  }
  /* 左メニュー */
  .header-left {
    height: auto;
  }
  .hr-lmenu{
    display: block;
  }
  .hr-lmenu,
  .hr-rmenu{
    display: flex;
    align-items: center;
    justify-content: flex-end;
  }
  /*----------------------------------------------------
    ナビゲーションSP
  ----------------------------------------------------*/
  /* メニューボタン */
  .menuposi{
    display: none;
  }
  /*----------------------------------------------------
    メインイメージ
  ----------------------------------------------------*/
  .mainimg-box::before {
    width: 50%;
  }
  .mainimg-title {
    font-size: 42px;
    padding-bottom: 44px;
  }
  .mainimg-text{
    font-size: 20px;
  }
}
@media screen and (max-width: 991.98px) {
  /*----------------------------------------------------
    メインイメージ
  ----------------------------------------------------*/
  .mainimg-text {
    font-size: 12px;
  }
  /*----------------------------------------------------
    フッター
  ----------------------------------------------------*/
  /* ロゴマーク */
  .hr-logo{
    position: unset;
    padding-top: 25px;
  }
  .hr-logo div:first-child{
    margin-left: 0;
  }
}
@media screen and (max-width: 767.98px) {
  /* デフォルト：767px以上用（タブレット用）の記述 */
  /*----------------------------------------------------
    基本のレイアウト
  ----------------------------------------------------*/
  body {
    font-size:1.5rem;
  }
  /*----------------------------------------------------
    メインコンテンツ 共通
  ----------------------------------------------------*/
  .pg-b{
    margin: 0;
  }
  /*----------------------------------------------------
  メインイメージ
  ----------------------------------------------------*/
  .mainimage-area .mainimg-box::before {
    top: 10px;
    transform: none;
    width: 50%;
    height: 60%;
  }
  .home-maintitle {
    font-size: 25px;
  }
  /* セカンドページ：メインイメージタイトル */
  .page-title-wrap .page-title {
    font-size: 2.2rem;
  }
  /*----------------------------------------------------
    タイトル
  ----------------------------------------------------*/
  /* タイトル1 */
  .pages-title{
    font-size: 20px;
    margin-bottom: 22px;
  }
  /* タイトル2 */
  .pages-sub-title{
    font-size: 18px;
    margin-bottom: 12px;
    padding-bottom: 8px;
  }
  /* タイトル3 */
  .pages-sub-title02{
    font-size: 16px;
    padding-bottom: 2px;
  }
  /* タイトル4 */
  .pages-sub-title03{
    font-size: 20px;
    margin-bottom: 15px;
  }
  /* タイトル5 */
  .pages-sub-title04{
    font-size: 14px;
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 575.98px) {
  /* デフォルト：575px以上用（スマートフォン用）の記述 */
  /*----------------------------------------------------
    基本のレイアウト
  ----------------------------------------------------*/
  .br-hidden{
    display: block;
  }
  .wrap{
    padding-top: 50px;
  }
  /*----------------------------------------------------
    メインコンテンツ 共通
  ----------------------------------------------------*/
  /* コンテンツ余白 */
  .pages-c-frame{
    padding-top: 70px;
  }
  /*----------------------------------------------------
    ヘッダー
  ----------------------------------------------------*/
  .header {
    height: 60px;
  }
  .header-left {
    height: 60px;
  }
  .hl-box{
    height: 100%;
  }
  .logo-header{
    height: 100%;
  }
  .logo-header img{
    height: 65%;
  }
  /* 英語ver */
  .home-en .logo-header img{
    height: 55%;
  }
  /*----------------------------------------------------
    ナビゲーションSP
  ----------------------------------------------------*/
  /* メニューボタン */
  .menuposi{
    top: 12px;
  }
  #sidr {
    /*ナビのスタート位置と形状*/
    top: calc(60px - 1px);
  }
  .menu-trigger {
    width: 30px;
    height: 25px;
  }
  .menu-trigger span:nth-of-type(1) {
    top: 0.5px;
  }
  .menu-trigger span:nth-of-type(2) {
    top: 10.5px;
  }
  /*----------------------------------------------------
    メインイメージ
  ----------------------------------------------------*/
  .wrap {
    padding-top: 60px;
  }
  .mainimage-area .mainimg-box::before {
    top: 30px;
    width: 75%;
    height: 57%;
  }
  .main-img01{
    display: none;
  }
  .main-img02{
    display: block;
  }
  /*----------------------------------------------------
    フッター
  ----------------------------------------------------*/
  .logo-footer{
    width: 100%;
  }
  .f-l-address{
    font-size: 12px;
  }
  .fld-br{
    display: block;
  }
  .footer-bottom {
    font-size: 12px;
  }
}
@media screen and (max-width: 374.98px) {
  /*----------------------------------------------------
    ヘッダー
  ----------------------------------------------------*/
  /* 英語ver */
  .home-en .logo-header img{
    height: 45%;
  }
  .logo-header img{
    height: 50%;
  }
  /*----------------------------------------------------
    タイトル
  ----------------------------------------------------*/
  /* タイトル1 */
  .p-ti {
    font-size: 54px;
  }
}

.grecaptcha-badge { visibility: hidden; }</pre></body></html>