/* ------------------------------
　　ベース
------------------------------ */
/*★
body {
  ontouchstart="";
}
*/


/* リンクの設定 */
/*★*/
a {
    color: inherit;/*リンク済みの色が変わるのを防ぐ*/
    text-decoration: none;
}


/* コンテナー */
/*★*/
.acms-container {
  max-width: 86rem;/*元は72rem(84rem=1680px)*/
}

/*★*/
/* --------------------
＜重要＞ユニット内の配置のスタイル
ファイルや画像をアップさせた次のユニットに対してのレイアウト崩れの対処
spではファイルアップーのアイコン、地図がユニットの指定通りに左右に振り分けられる。
逆に画像、yutyubeは、強制的に左よせ。　これは仕様としてそうせざるおえない。
下記がその熟慮した際のcss。
-----------------------*/
/*★*/
.column-image-left,.column-file-left,.column-youtube-left,.column-map-left {
  float:none;
  text-align:left;
}
/*★*/
.column-file-left,.column-map-left {
  text-align:left;
}
/*★*/
.column-image-right,.column-file-right,.column-youtube-right,.column-map-right {
  float:none;
  text-align: right;
    padding: 0 0 0.6rem 0.4rem;
}
/*★*/
.column-file-right,.column-map-right {
  text-align: right;
    padding: 0 0 0.6rem 0.4rem;
}
@media screen and (min-width: 48rem) {
/*★*/
.column-image-left,.column-file-left,.column-youtube-left,.column-map-left {
  float: left;
  text-align: left;
}
/*★*/
.column-image-right,.column-file-right,.column-youtube-right,.column-map-right {
  float: right;
  text-align: right;
    padding: 0 0 0.8rem 0.6rem;
}
/*★*/
.column-file-left.js_notStyle{
    width:initial;
}
/*★*/
.column-file-right.js_notStyle{
    width:initial;
}    
}

/*-------------------
ユニットのカラム使用時
--------------------*/
/*★*/
.acms-col-4,.acms-col-6 {
    float:none;
    width:auto;
}

@media screen and (min-width: 48rem) {
/*★*/
.acms-col-4{
    float: left;
    width: 33.3333333%;
}
.acms-col-6{
    float: left;
    width: 50%;
}
}


/*★*/
.main {
  margin: 0 0 5rem;

}

@media screen and (min-width: 48rem) {
/*★*/
.main {
margin: 0 0 6.5rem;
}
}



/* ------------------------------
　　ボタン
------------------------------ */
/*★*/
.button {
    padding: 0.55rem 1.8rem;
    letter-spacing: 0.2rem;
    font-size: 0.9rem;
    background:#080074;
    font-weight:500;
}

/*★*/
.button:hover {
  background: #06005D;
}

/*★*/
.button.is-lg {
  display: inline-block;
  margin: 0 auto;
    font-size: 0.9rem;
  padding: 0.4rem 1.2rem;
}
/*★*/
.button.is-width-lg {
  width: 7rem;
  max-width: 100%;
}

/*★*/
.button-read-more {
  font-weight:normal;/*bold*/
  font-size: 0.8rem;
}

/*★*/
.button-read-more::before {
    bottom: -0.20rem;
    height: 0.5px;/*2px*/
}

/*★*/
.button-read-more::after {
    background: no-repeat;
    background-image: url(../images/arrow1.webp);
    background-position: center;
    width: 1.5rem;
    height: 1.5rem;
    background-size: 0.9rem 0.7rem;
    border: 0.02rem solid #9a9a9a;
}
@media screen and (min-width: 48rem) {
/*★*/
.button-read-more::before {
    bottom: -0.20rem;
}
/*★*/
.button-read-more {
  font-size: 0.9rem;
}
/*★*/
.button.is-lg {
  display: inline-block;
  margin: 0 auto;
    font-size: 1.2rem;
  padding: 0.3rem 1.5rem;
}
/*★*/
.button.is-width-lg {
  width: 18rem;
}
}

@media screen and (min-width: 64rem) {
/*★*/
.button-read-more::before {
    bottom: -0.20rem;
}
/*★*/
.button-read-more::after {
    width: 2rem;
    height: 2rem;
    
}
/*★*/
.button-read-more {
  font-size: 1rem;
}
}

/* ------------------------------
　　エントリー
------------------------------ */
/*
　エントリーのコンテンツ
------------------------------ */
/*
under_entry_kate_origin_.css　には主要カテゴリのみ適用させるための記述あり。
備忘録の■base_kate.htmlの目的とエントリーユニット（floatの問題）.txt参照
。
*/

/* ------------------------------
各種ユニットの設定
------------------------------ */
.entry-style [class*=column-image] {
  padding-left:0.6rem;
  padding-right:0.6rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/*
　ユニット
------------------------------ */
/* 各ユニットのマージンの調整 */
[class*=column-image] {
  margin-bottom: 0.3rem;
}
@media screen and (min-width: 48rem) {
  [class*=column-image] {
    margin-bottom: 0.8rem;
  }
}
/*
　ヘッダー
------------------------------ */
/*★*/
.entry-header-info {
  font-size: 0.6rem;
}
/*★*/
.entry-header-title {
  font-size: 1.1rem;
  padding: 0 0 0.5rem;
}
/*★*/
@media screen and (min-width: 48rem) {
/*★*/
.entry-header-info {
    font-size: 0.8rem;
}
/*★*/
.entry-header-title {
font-size: 1.55rem;
padding: 0 0 0.8rem;
 }
}


@media screen and (min-width: 64rem) {
/*★*/
.entry-header-title {
font-size: 1.75rem;
padding: 0.3rem 0 1rem;
 }
}

/*
　エントリーのコンテンツ
------------------------------ */
/*★*/
.entry-style-grid {
  margin: 0 calc(var(--gutter) / -2) 2rem calc(var(--gutter) / -2) ;
}

/* アンカーリンクの際の上部の余白の確保 */
/*★*/
.entry-style .entry-text-unit h2,
.entry-style .entry-text-unit h3,
.entry-style .entry-text-unit h4,
.entry-style .entry-text-unit h5,
.entry-style .entry-text-unit h6{
  margin-top: -3.5rem;
  border-top: 4rem solid transparent;
}
@media screen and (min-width: 48rem) {
/*★*/
.entry-style-grid {
  margin: 0 calc(var(--gutter) / -2) 3rem calc(var(--gutter) / -2) ;
}
/*★*/
.entry-style .entry-text-unit h2,
.entry-style .entry-text-unit h3,
.entry-style .entry-text-unit h4,
.entry-style .entry-text-unit h5,
.entry-style .entry-text-unit h6{
    margin-top: -3rem;
    border-top-width: 4rem;
  }
}
/*★*/
.entry-style .ug-bg-gray .entry-text-unit h2,
.entry-style .ug-bg-gray .entry-text-unit h3,
.entry-style .ug-bg-gray .entry-text-unit h4,
.entry-style .ug-bg-gray .entry-text-unit h5,
.entry-style .ug-bg-gray .entry-text-unit h6,
.entry-style .ug-bg-primary .entry-text-unit h2,
.entry-style .ug-bg-primary .entry-text-unit h3,
.entry-style .ug-bg-primary .entry-text-unit h4,
.entry-style .ug-bg-primary .entry-text-unit h5,
.entry-style .ug-bg-primary .entry-text-unit h6,
.entry-style .ug-border .entry-text-unit h2,
.entry-style .ug-border .entry-text-unit h3,
.entry-style .ug-border .entry-text-unit h4,
.entry-style .ug-border .entry-text-unit h5,
.entry-style .ug-border .entry-text-unit h6{
  margin-top: -3.5rem;
  border-top-width: 4rem;
}


/* 見出しが最初の要素の時はページタイトルの余白を相殺する */
/*★*/
.entry-style-grid > .is-h2:first-child h2, .entry-style-grid > .is-h3:first-child h3, .entry-style-grid > .is-h4:first-child h4 > .is-h5:first-child h5 > .is-h6:first-child h6 {
  margin-top: -4.75rem;
}


/* 見出し
----------------------------- */

/*★*//*h5は新規追加*/
.entry-style .entry-text-unit h5 {
  margin: -2rem calc(var(--gutter) / 2) 1.5rem;
  font-size: 1rem;
  line-height: 1.4;
}
/*★*/
.entry-style .entry-text-unit h5.heading-line {
  padding-bottom: 1rem;
  border-bottom: 2px solid var(--color-gray100);
}
/*★*/
.entry-style .entry-text-unit h5 .text-point {
  display: block;
  color: var(--color-primary);
}
/*★*//*h6は新規追加*/
.entry-style .entry-text-unit h6 {
  margin: -2rem calc(var(--gutter) / 2) 1.5rem;
  font-size: 0.8rem;
  line-height: 1.4;
}
/*★*/
.entry-style .entry-text-unit h6.heading-line {
  padding-bottom: 0.8rem;
  border-bottom: 2px solid var(--color-gray100);
}
/*★*/
.entry-style .entry-text-unit h6 .text-point {
  display: block;
  color: var(--color-primary);
}
@media screen and (min-width: 48rem) {
/*★*/
  .entry-style .entry-text-unit h5 {
    margin-bottom: 1.5rem;
    font-size: 1.3rem;
  }
/*★*/
  .entry-style .entry-text-unit h5 .text-point {
    margin: 0 0 0.5rem 0;
  }
/*★*/
  .entry-style .entry-text-unit h6 {
    margin-bottom: 1.3rem;
    font-size: 1.1rem;
  }
/*★*/
  .entry-style .entry-text-unit h6 .text-point {
    margin: 0 0 0.4rem 0;
  }
}


/*★*/
.entry-style .entry-text-unit h3 {
    position: relative;
  font-size: 1.2rem;
 
}
/*★*//*orijin*/
.entry-style .entry-text-unit h3::after {
    position: absolute;
    bottom: -0.7rem;
    left: 0;
    display: block;
    width: 4rem;
    height: 4px;
    background: var(--color-primary);
    content: "";
}
/*★*//*orijin*
.entry-style .entry-text-unit h3::before {
    position: absolute;
    bottom: -1rem;
    left: 0;
    display: block;
    width: 100%;
    height: 4px;
    background:#ebebeb;
    content: "";
}/

/*★*/
.entry-style .entry-text-unit h4 {
  margin: -2rem calc(var(--gutter) / 2) 1.5rem;
  font-size: 1.1rem;
  line-height: 1.4;
    position: relative;
    padding: .3em 0 .2em 1.4em;
    color: #383838;

}
/*★*//*orijin*/
.entry-style .entry-text-unit h4::before {
    position: absolute;
    bottom: 1.7rem;
    left: 0.3rem;
    transform: rotate(55deg);
    height: 11px;
    width: 12px;
    background: #0048A9;
    content: '';
}
/*★*//*orijin*/
.entry-style .entry-text-unit h4::after {
    position: absolute;
    transform: rotate(15deg);
    bottom: 1.1rem;
    left: 0;
    height: 8px;
    width: 8px;
    background: #0048A9;
    content: '';
}


/*★*/
.entry-style .entry-text-unit h5 {
  margin: -2rem calc(var(--gutter) / 2) 1.5rem;
  font-size: 1.1rem;
  line-height: 1.4;
    position: relative;
    padding: .5rem 0rem .5rem 1.5rem;

    color: #383838;

}
/*★*//*orijin*/
.entry-style .entry-text-unit h5::before {
    position: absolute;
    bottom: 1rem;
    left: 0.1rem;
    transform: rotate(55deg);
    height: 12px;
    width: 13px;
    background: #0048A9;
    content: '';
}


/*★*/
.entry-style .entry-text-unit strong {
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, var(--color-highlight-light)));
  background: linear-gradient(transparent 60%, var(--color-highlight-light) 60%);
}
/*★*/
@media screen and (min-width: 48rem) {
  .entry-style .entry-text-unit h3 {
    font-size: 1.3rem;
  }
/*★*/
.entry-style .entry-text-unit h4 {
  font-size: 1.3rem;
}
}
@media screen and (min-width: 64rem) {
/*★*/
  .entry-style .entry-text-unit h3 {
    font-size: 1.4rem;
  }
/*★*/
.entry-style .entry-text-unit strong {
    font-size: 1rem;
}
}


/* 本文
----------------------------- */
/*★*/
.entry-style p {
  margin: 0 ;
    padding: 0.7rem 0.2rem;
}

/* リスト */
/*★*/
.entry-style .entry-text-unit ul {
  margin: 0 calc(var(--gutter) / 2) 2rem calc(var(--gutter) / 2);
  padding: 0 0 0 0rem;
}
.entry-style .entry-text-unit ul li {
  position: relative;
  clear: both;
  margin: 0 0 0.5rem;
  line-height: 1.7;
  list-style: none;
}
.entry-style .entry-text-unit ul li::before {

  content:none;
}

/* 番号付きリスト */
/*★*/
.entry-style .entry-text-unit:not(.is-pre) ol {
  margin: 0 calc(var(--gutter) / 2) 2rem calc(var(--gutter) / 2);
  padding: 0.7rem 0 0 2rem;
  counter-reset: order-list;
}
/*★*/
.entry-style .entry-text-unit:not(.is-pre) ol li::before {
  color: #343434;
  font-size: 0.8rem;
  background:#cecece
}

/* 記述リスト */
/*★*/
.entry-style .entry-text-unit dl dt {
  font-size: 0.8rem;
}
.entry-style .entry-text-unit dl dd {
  font-size: 0.8rem;
}
@media screen and (min-width: 48rem) {
/*★*/
.entry-style .entry-text-unit dl dt {
  font-size: 1rem;
}
.entry-style .entry-text-unit dl dd {
  font-size: 1rem;
}
}


/* テーブル */
/*★*/
th {
    font-weight:normal;
}
/*★*/
.entry-style .entry-text-unit table th,
.entry-style .entry-text-unit table td,
.entry-style [class^=column-table] table th,
.entry-style [class^=column-table] table td {
  font-size: 0.7rem;
}
/*★*/
.entry-style .entry-text-unit table th,
.entry-style [class^=column-table] table th {
    color: #fff;


}

@media screen and (min-width: 48rem) {
/*★*/
.entry-style p {
  margin: 0 ;
    padding: 0.7rem 0.5rem;
}
/*★*/
.entry-style .entry-text-unit:not(.is-pre) ol {
  padding: 0.8rem 0 0 2rem;
}
/*★*/
.entry-style .entry-text-unit:not(.is-pre) ol li::before {
  font-size: 1rem;
}
/*★*/
.entry-style .entry-text-unit table th,
.entry-style .entry-text-unit table td,
.entry-style [class^=column-table] table th,
.entry-style [class^=column-table] table td {
  font-size: 1rem;
}
}
@media screen and (min-width: 64rem) {
/*★*/
.entry-style p {
  margin: 0 ;
    padding: 1rem 0.5rem;
}
/*★*/
.entry-style .entry-text-unit:not(.is-pre) ol {
  padding: 1rem 0 0 2rem;
}
/*★*/
.entry-style .entry-text-unit table th,
.entry-style .entry-text-unit table td,
.entry-style [class^=column-table] table th,
.entry-style [class^=column-table] table td {
  font-size: 1.2rem;
}
}


/* ------------------------------
　　カード
------------------------------ */
/*★*/
.card-item {
  margin: 0 0 0rem;
}

/*★*/
.card-bordered-link {    
  border-radius:6px;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: var(--color-black);
}
/*★*/
.card-bordered-link:visited {
  color: var(--color-black);
}
/*★*/
.card-bordered-link:hover, .card-bordered-link:active, .card-bordered-link:focus {
  color: var(--color-black);
  text-decoration: none;
}
/*★*/
@media (hover: hover) {
  .card-bordered-link:hover {
    -webkit-box-shadow:none;
            box-shadow:none;
  }
}
/*★*/
.card-img-wrap {
  margin: 0 0 0.5rem;
}

/*★*/
.card-bordered-img-wrap {
  border-radius: 10px;
}

/*★*/
.card-bordered-title,
.entry-style .card-bordered-title {
    margin: 1.5rem 0 0.3rem 0;
    /*color: #353535;var(--color-gray90);*/
    color: var(--color-black);
    font-size: 1.2rem;
    line-height: 0;
    letter-spacing: 0.1rem;
    font-weight:500;
}

/*★*/
.card-list {
  margin: 1rem -1rem 1.25rem;
}
/*★*/
.card-title,
.entry-style .card-title {
  margin: 0 0 1rem;
  color: var(--color-black);
  font-size: 0.9rem;
  line-height: 1.5;
}

/*★*/  
@media screen and (min-width: 48rem) {
.card-bordered-title,
.entry-style .card-bordered-title {
    font-size: 1.3rem;
}
/*★*/
.card-list {
  margin: 2rem -1rem 1.25rem;
}
/*★*/
.card-title,
.entry-style .card-title {
  margin: 0 0 1.3rem;
  color: var(--color-black);
  font-size: 1rem;
  line-height: 1.5;
}
}

@media screen and (min-width: 64rem) {
/*★*/    
.card-bordered-title,
.entry-style .card-bordered-title {
    margin: 2rem 0 0.6rem 0;
    font-size: 1.4rem;
}
/*★*/
.card-list {
  margin: 1.5em -1rem 1.25rem;
}
}

/*★*/
/*なぜだか1022px以下で非表示になる。そこで、下記とすれば表示されるようにる。ablogのcssのミスだろう*/
.acms-hide-visually-sm {height: auto; width: auto; position: static;}

/*★*/
.card-bordered-read-more,
.entry-style .card-bordered-read-more {
    margin: 1rem 1rem 0 auto !important;

}

/*★*/
.card-bordered-read-more::before,
.entry-style .card-bordered-read-more::before {
    bottom: -0.20rem;
    height: 0.5px;/*2px*/
}

/*★*/
.card-bordered-read-more::after,
.entry-style .card-bordered-read-more::after {
    background: no-repeat;
    background-image: url(../images/arrow1.webp);
    background-position: center;
    width: 1.5rem;
    height: 1.5rem;
    background-size: 0.9rem 0.7rem;
    border: 0.02rem solid #9a9a9a;
}

/*★*/
@media screen and (min-width: 48rem) {

}

@media screen and (min-width: 64rem) {
/*★*/
.card-bordered-read-more::after,
.entry-style .card-bordered-read-more::after {
    width: 2rem;
    height: 2rem;
}
}

/* ------------------------------
　　セクション
------------------------------ */
/*★*/
.section.is-bg {
  background: transparent ;
}



/* 水平方向の見出し */
/*★*/
.section-horizontal-header {
  margin: 0 0 1rem;
}
/*★*/
.section-horizontal-header-inner {
    position: relative;
    padding: 0rem 0.5rem 1rem 0.5rem;
    text-align: center;
}
/*★*/
.section-horizontal-heading {
  margin: 0 0 0rem;
}

/*★*/
.section-horizontal-heading-side {
    letter-spacing:0.2rem;
    font-weight:normal;
    font-size: 0.9rem;
    color:#2B2B2B;

}
/*★*/
.section-horizontal-main {
    padding: 0rem 0.5rem 0rem;
}

/*★*/
.js .js-animation .section-horizontal-heading-side {
  opacity: 0;
  will-change:unset;
}


@media screen and (min-width: 48rem) {
/*★*/
.section-horizontal-heading-side {
    font-size: 1rem;
}
/*★*/
.section-horizontal-main {
    padding: 0rem 2.5rem 0rem;
}
}
@media screen and (min-width: 64rem) {

/*★*/
  .section-horizontal-header {
    width: 40%;
  }  
/*★*/
  .section-horizontal-header-inner {
    padding: 3.5rem 0;
      text-align: center;
  }
/*★*/
  .section-horizontal-heading {
    font-size: 1rem;
  }
/*★*/   
  .section-horizontal-heading-side {
    font-size: 1.2em;
  }
/*★*/
.section-horizontal-main {
    padding: 0rem 2rem 0rem;
    width: 70%;
}
}
/* 垂直方向の見出し */
/*★*/
.section-vertical-header {
  position: relative;
  margin: 0 0 2.5rem;
  text-align: center;
}

/*★*/ 
.section-vertical-heading {
    font-size: 1.8rem;
    font-weight: normal;
    letter-spacing: 0.1em;
  color:#2B2B2B;
}

/*★*/ 
.section-vertical-text {
    font-weight: lighter;
    letter-spacing: 0.2em;
  color:#2B2B2B;
/*
  margin: 0 0 0.5rem;
  color: var(--color-gray90);
  font-weight: bold;
  font-size: 0.8rem;
*/
}


@media screen and (min-width: 48rem) {

/*★*/   
  .section-vertical-text {
    font-size: 0.8rem;
  }
}
@media screen and (min-width: 64rem) {

/*★*/    
  .section-vertical-heading {
    font-size: 2.9rem;/*3.0517578125rem;*/
  }
    
/*★*/  
  .section-vertical-text {
    font-size: 1.1rem;
  }
}

/*★*/ 
.section-animation-bg::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index:auto;
  width: 50%;
  background:#E6E6E6;
  content: "";
}

/* セクション内で使用するボタンのレイアウト */
/*★*/
.section-button {
  margin: 2rem 0 0;
  text-align: center;
}



/* 背景画像付きのCTA */
/*★*/
.cta-visual {
  padding: 1.8rem 0 1.8rem;
}

/*★*/
.cta-visual::before {
  content: none;
}

/*★*/
.cta-visual-comment {
  position:static;
  display:block;
  margin: 0 0 1rem;
  padding: 0.5rem 1rem;
  color: #ffffff;
  font-weight: bold;
  font-size: 1.25rem;
  line-height: 1;
  background:transparent;
  border-radius: 0;
}

/*★*/
.cta-visual-title {
  position: relative;
  margin: 0 0 1rem;
  font-size: 1.25rem;
  line-height: 1.1;
    letter-spacing: 0.05em;
}


/*★*/
.cta-visual-comment::before {
    content: none;
}

/*★*/
.js .js-animation .cta-visual-read-more {
  will-change:unset;
}

/*★*/
@media screen and (min-width: 48rem) {
/*★*/
.cta-visual {
    padding: 3.3rem 0 2.8rem;
}

/*★*/
.cta-visual-comment {
    margin: 0 0 0.5rem;
    padding: 0.5rem 3rem;
    font-size: 2rem;
}
    
/*★*/
.cta-visual-title {
    margin: 0 0 0.5rem;
    font-size: 2.8rem;
}

/*★*/
.cta-visual-text {
margin: 0 0 0.5rem;
font-size: 1rem;
}
}



/* ------------------------------
  モバイルメニュー
------------------------------ */
/*★*/
@media (min-width: 64rem) {
  .global-nav-mobile-menu {
    display: none;
  }
}
/*★*/
@media (min-width: 48rem) {
  .global-nav-mobile-menu {
    display: none;
  }
}



/* ------------------------------
　　ヘッダー
------------------------------ */

/*★*/
.header-wrap {
  position: relative;
  background-color:#0048A9;
  height: 5.0rem;
}
/*★*/
/*背景の0.4remの青バーのみにする為、残りを白で隠す*/
.header-wrap::before{
position: absolute;
content: "";
height: 5.0rem;
bottom: -0.5rem;
background-color: rgb(255, 255, 255);
width: 100%;
}

/*★*/
.header {
    position: absolute;
    bottom: 0;
  /*z-index: 10000;*/
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 4.6rem;/*上部青バーの高さ調節4.5(5rem)で5pxの高さ*/
  background: var(--color-white);
  -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.15);
          box-shadow: 0 2px 3px rgba(0, 0, 0, 0.15);

    /*スクロールが上段ピッタリに戻った時のアニメーション（非実装）*/
    /*
    -ms-transition: height 0.8s; 
    -webkit-transition: height 0.8s; 
    transition: height 0.8s;
    
    -ms-transition: background-color 0.8s; 
    -webkit-transition: background-color 0.8s; 
    transition: background-color 0.8s;  
    */
}

/*★*/
.header-item-title {
    margin: 0 0.5rem 0 1.5rem;
    height: 4.5rem;
}


/*★*/
.header-title-link {
    color: var(--color-gray100);
    display: block;
}

/*★*/
.header-logo {
  display: block;
  width: 410px;
  max-width:95%;
  max-height:none;
}

/*★*/
.header-item-nav {
    font-size: 1rem;
    margin-left: 0;
}

/*7個のボタン配置の為追加。（790px）*/
/*1100pxまでの画面サイズ　　max-width: 68.75rem*/
@media (max-width: 68.75rem) {
/*★*/
    .header-logo{width: 320px; /*7個までのボタン場合 （6個＝300px）*/
            max-width:95%;
}
}


/*1024pxまでの画面サイズ　　max-width: 64rem*/
@media (max-width: 64rem) { 
/*★*/
.header-wrap {
  height: 3.5rem;
}
/*★*/
.header-wrap::before{ 
    height: 3.5rem;
} 
    
/*★*/   
.header {
    height: 3.3rem;/*上部青バーの高さ調節4.5(5rem)で5pxの高さ*/
}
/*★*/    
.header-item-nav {
    display:block;
}
/*★*/
.header-item-title {
  margin: 0 0.5rem 0 1.5rem;
  height: 3rem;
}
    /*★*/
    .header-title {
      font-size: 1.3rem;
    }
/*★*/
.header-logo {
  width: 290px; /*7個までのボタン場合 （6個＝300px）*/
  max-width:95%;
  max-height:none;
}
}

/*7個のボタン配置の為追加。（790px）*/
@media (max-width: 49.4rem) {
/*★*/
.header-logo {
  width: 270px;
  max-width:95%;
  max-height:none; 
}
}

/*7個のボタン配置の為追加。（768px）*/
@media (max-width: 48rem) {
/*★*/
.header-logo {
  width: 250px;
  max-width:95%;
  max-height:none; 
}
}



/* ------------------------------
　　アニメーション
------------------------------ */

/* ------------------------------
　　メインビジュアル
------------------------------ */
/*★*/
.main-visual-box {
    top: -3.5rem;
    z-index: 20;
    color: #fefefe;
    text-shadow: 1px 2px 1px rgba(0, 0, 0, 0.60);
    
}

/*★*/
.main-visual-box::before {
    background:none;
    /*background: rgba(0, 0, 0, 0.1);*/
}
/*★*/
.main-visual-catch {
    font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
    font-size: 2rem;
}

/*★*/
.main-visual-catch-sub {
    font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
    will-change:unset;
    letter-spacing: 0.1rem;
    font-size: 0.6rem;
    
}
/*★*/
.main-visual-scroll {
    bottom: 2rem;
}

@media screen and (min-width: 48rem) {
/*★*/    
  .main-visual-catch {
    font-size: 2.2rem;
  }
/*★*/
  .main-visual-catch-sub {
    font-size: 0.8rem;
  }
/*★*/
.main-visual-scroll {
    bottom: 3rem;
}
}
@media screen and (min-width: 64rem) {
/*★*/    
  .main-visual-catch {
    font-size: 2.7rem;
  }
/*★*/
  .main-visual-catch-sub {
    font-size: 1rem;
  }
}



/* ------------------------------
　　ヘッドライン （タブ・更新履歴など）
------------------------------ */
/*★*/
.js .headline.js-animation-row {
    /*タブ部分*/
  will-change:unset;/*テキストやborderがぼやけて見えるのでunsetしている*/
}

/*★*/
.js .headline.js-animation-row.is-show {
  -webkit-animation: fade-in 0.8s 0.3s 1 both;
          animation: fade-in 0.8s 0.3s 1 both;
}

/*★*/
.headline-item {
    border-bottom: 1px solid #cecece;
}

/*★*/
.headline-item:first-child .headline-link {
    border-radius: unset;
}

/*★*/
.headline-item:last-child .headline-link {
    border-radius: unset;  
}

/*★*/
.headline-link {
    padding: 0.8rem 0rem 0.3rem 0.3rem;
    box-shadow: unset;
}

/*★*/
.headline-item:last-child .headline-link {
  border-bottom: 1px solid #cecece;
}

/*★*/
.headline-link:hover {
  background: #FBFBFB;/*var(--color-gray20);*/
  -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
          box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

/*★*/
.headline-info {
  color: #353535;
  font-size: 0.8rem;
  line-height: 0.6;/*1.4*/
}

/*★*/
.headline-date {
  margin-right: 0rem;
  font-size: 0.7rem;
  color: #353535;
    /*display: block;*/
}

/*★*/
.headline-date + .headline-category {
  margin-right: 0.75rem;
  padding-left: 0.75rem;
  border-left: 1px solid #cecece;
}

/*★*/
.headline-text {
  position:static;
    font-weight: normal;
  font-size:0.7rem;

}
/*★ origin*/
.headline-text a{ text-decoration:underline;}
/*★*/
.headline-badge-news {
    margin: 0rem 0.5rem 0 0;

}

@media screen and (min-width: 48rem) {
/*★*/
    .headline-link {
    padding: 1rem 0rem 0.5rem 0.8rem;
  }
  .headline-text {
    font-size: 0.8rem;
  }
    /*★*/
    .headline-date {
      margin-right: 0.5rem;
      font-size: 0.8rem;
        display:inline-block;
    }
}
@media screen and (min-width: 64rem) {

/*★*/    
  .headline-text {
    font-size: 0.8rem;
  }
}

/* ------------------------------
　　ページャー
------------------------------ */
/*★*/ 
.serial-nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  list-style: none;
}




/* ------------------------------
　　タイポグラフィ
------------------------------ */


/*★*/ 
.heading-md {
  font-size: 1rem;
}
@media screen and (min-width: 48rem) {
/*★*/ 
  .heading-md {
    font-size: 1.25rem;
  }
}

/* ------------------------------
　　メディア
------------------------------ */
/*★*/  
.media-title {
  margin: 0 0 1.25rem;
  font-size: 1rem;
  line-height: 1.5;
    color: #0048A9;
    position: relative;
}

/*★*/
.media-read-more {
  font-weight: bold;
  font-size: 0.7rem;
}
/*★*/
.media-read-more::before {
  height: 1px;
}
/*★*/ 
.media-read-more::after {
    background: no-repeat;
    background-image: url(../images/arrow1.webp);
    background-position: center;
    width: 1.5rem;
    height: 1.5rem;
    background-size: 0.9rem 0.7rem;
    border: 0.02rem solid #9a9a9a;
}

@media screen and (min-width: 30rem) {
/*★*/ 
  .media-title {
    margin: 0 0 1.05rem;
    font-size: 1.25rem;
  }
}
 
@media screen and (min-width: 48rem) {
/*★*/
  .media-title {
    font-size: 1.2rem;
  }
/*★*/
.media-read-more {
  font-size: 0.8rem;
}
}
@media screen and (min-width: 64rem) {
/*★*/
.media-read-moree::after {
    width: 2rem;
    height: 2rem;
}
/*★*/
.media-read-more {
  font-size: 0.9rem;
}
}

@media screen and (min-width: 48rem) {
/*★*/   
    .media-item:first-child > .media-link {
    padding: 0 0 2.5rem 0;
    }
}

/* ------------------------------
　　キャプション
------------------------------ */
/*★*/ 
p.caption{padding: 0rem 0rem 0.6rem !important; font-size: 0.6rem;}
[class*=column-file-] .caption, .media-file .caption {font-size: 0.6rem;}
@media screen and (min-width: 48rem) {
/*★*/    
p.caption{padding: 0.2rem 0rem 0.6rem !important; font-size: 0.8rem;}
[class*=column-file-] .caption, .media-file .caption {font-size: 0.8rem;}
}
@media screen and (min-width: 64rem) {
/*★*/    
[class*=column-file-] .caption, .media-file .caption {font-size: 0.9rem;}
}

/*
　ファイルユニット・メディア（ファイル）の設定
------------------------------ */
/*★*/  
[class*=column-file-] .columnIcon,
.media-file .columnIcon {
  width: 4rem;
  height: auto;
  margin: 0 1rem 0 0;
}

/* ------------------------------
　　ビデオ
------------------------------ */
/*★*/     
  .video-modal-thumbnail {
    width: 100%;
    height: 12rem;
 }
/*★*/ 
  .video-modal-thumbnail iframe{
    width: 100%;
    height: 100%;
        margin: 0 auto 0rem;
 }

@media screen and (min-width: 48rem) {
/*★*/    
  .video-modal {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
    padding: 0 0 0 0;
  }
/*★*/     
  .video-modal-thumbnail {
    width: 100%;
    height: 16rem;
 }
}
/*★*/ 
/*59rem=944px以上*/
@media screen and (min-width: 59rem) {
/*★*/ 
  .video-modal {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    padding: 0 10% 0 0;/*中央から少し右へずらす為*/
  }
/*★*/ 
  .video-modal {
    margin: 0 0 0 auto;
  }
/*★*/     
  .video-modal-thumbnail {
    width: 300px;
    height: 100%;
 }
}
@media screen and (min-width: 64rem) {
/*★*/ 
  .video-modal {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    padding: 0 15% 0 0;
  }
/*★*/     
  .video-modal-thumbnail {
    max-width: 42rem;
    margin: 3rem auto;
      height: 100%;
      width: 500px;
 }

}

/* ------------------------------
　　ページタイトル
------------------------------ */
/*★*/
.page-title-wrapper {
  height: 5.5rem;
  text-align:left;
      background: no-repeat center;
  background-size:cover;

}
/*★*/
.page-title-wrapper[style] {
  height: 5.5rem;
  text-align:left;
      background: no-repeat center;
  background-size:cover;

}
/*★*/
.page-title {
  font-size: 1.15rem;
  line-height: 0.8;
}
/*★*/
.page-title-en {
  font-weight:normal;
  font-size: 0.6rem;
}

/*★*/ 
/*30rem=480px以上*/
@media screen and (min-width: 30rem) {
/*★*/
.page-title {
    margin: 0 0 0.25rem;
    padding-left: 1.5rem;
      font-size: 1.25rem;
  text-align:left;
}

/*★*/
.page-title-en {
    margin: 0.25rem 0 0;
    padding-left: 1.7rem;
    font-size: 0.8rem;
}
}

@media screen and (min-width: 48rem) {
/*★*/
.page-title-wrapper {
    height: 13rem;
    margin: 0 0 3rem 0;
  text-align:left;
 }
/*★*/
.page-title-wrapper[style] {
    height: 13rem;
  text-align:left;
 }
/*★*/
.page-title {
    font-size: 1.953125rem;
}
/*★*/
.page-title-en {
    font-size: 1rem;
}
}

/* ------------------------------
　　トピックパス
------------------------------ */
/*★*/ 
.topicpath-item {
  display: inline-block;
    font-size: 0.8rem;
}
@media screen and (min-width: 48rem) {
/*★*/ 
.topicpath-item {
  display: inline-block;
    font-size: 0.9rem;
}
}

/* ------------------------------
  モバイルメニュー
------------------------------ */
/* モバイルメニュー開いた時
------------------------------ */
/*★*/ 
.global-nav-mobile-item {
  font-weight:normal;
  font-size: 0.8rem;
}
/*★*/    
.global-nav-mobile-link {
  padding: 0.9rem 0;
}


/* ------------------------------
　　フッター
------------------------------ */
/*★*/
.footer {
  border-top: 1px solid #cbcbcb;
}
/*★*/
.footer-group {
    background: url(../images/img33.webp) right bottom no-repeat; background-size:15rem;     
}
/*★*/
.acms-col-md-3 {
    width: 20%;
}

/*★*/
.footer-company-title {
    width: 90%;
}

/*★*/
.footer-company-logo {
/*なぜかoriginで（当css）で上書きされないのでfooter.htmlに直書きしている*/
    max-width: 100% ;
    height: auto ;
}
/* 所在地 */
/*★*/
.footer-address-item {
  color: #353535;
  font-size: 1rem;
}
/* ナビゲーション */
/*★*/
.footer-nav-item {
  font-weight: bold;
  font-size: 0.9rem;

}
/*★*/
.footer-nav-link {
  display: inline-block;
  margin: 0 0 1rem;
    color: #264875;
  text-decoration: none;
}

/* コピーライト */
/*★*/
.footer-bottom {
    /*なぜかoriginで（当css）で上書きされないのでfooter.htmlに直書きしている*/
    padding: 0.5rem 0;
    background-color:#0048A9;
}
/*★*/
.footer-copyright-text {
    margin: 0 0 0rem;
    font-weight: normal;
    font-size: 0.6rem;
    color: #ffffff;
    width: 100%;
    text-align: center;
}

@media screen and (min-width: 48rem) {
/*★*/
.footer-group {
    background: none;     
}
/*★*/
.footer-company-logo {
    width: 100%;
}
/*★*/
.footer-nav-item {
    font-size: 0.9rem;
}
/*★*/
.footer-item-nav {
    width: 100%;    
    padding-bottom: 3.5rem;
    background: url(../images/img33.webp) right no-repeat; background-size:39%; 
}
}
@media screen and (min-width: 64rem) {
/*★*/
.footer-nav-item {
    font-size: 1rem;
}
/*★*/
.footer-item-nav {
    padding-bottom: 5rem;
}
}

