@charset "UTF-8";

/*!
Theme Name: dic_2023
Description: Cocoon専用の子テーマ(dic_2023)
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.0.0
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/*スムーズにスクロール*/
html { scroll-behavior: smooth;}

/*========= LoadingのためのCSS ===============*/
/* Loading背景画面設定　*/
#splash {
    /*fixedで全面に固定*/
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 99999;
  background:#f3f5f8;
  text-align:center;
}

/* Loading画像中央配置　*/
#splash_logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* Loading アイコンの大きさ設定　*/
#splash_logo img {
  width: 260px !important;
}

/* fadeUpをするアイコンの動き */

.fadeUp{
animation-name: fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity: 0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}

/* スライダーショーをする動き */

.slideshow {
  position:relative;
  width:100%;
  height:100%;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}

.slideshow-image {
  position: absolute;
  width: 100%;
  height: 100%;
          animation-name: kenburns;
          animation-timing-function: linear;
          animation-fill-mode:forwards;
          animation-iteration-count: 1;
  opacity: 1;
  transform: scale(1.2);
  overflow: hidden;
}

.slideshow-image:nth-child(1) {
  animation-name: kenburns-1;
  animation-iteration-count:1;
	transition-delay: 0.3s;
	animation-duration: 18s;
  background: no-repeat 50% 0% url(images/hero_pc01.jpg);
  background-size: cover;
  height: 100%;
  z-index: 3;
}
.slideshow-image:nth-child(2) {
  animation-name: kenburns-2;
  animation-iteration-count:1;
  animation-duration: 7s;
  background: no-repeat 50% 0% url(images/hero_pc02.jpg);
  background-size: cover;
  height: 100%;
  z-index: 2;
}

@keyframes kenburns-1 {
  0% {
    opacity: 1;
    transform: scale(1.2);
  }
  1.5625% {
    opacity: 1;
  }
  23.4375% {
    opacity: 1;
  }
  26.5625% {
    opacity: 0;
    transform: scale(1);
  }
  100% {
    opacity: 0;
    transform: scale(1.2);
  }
}
@keyframes kenburns-2 {
  23.4375% {
    opacity: 1;
    transform: scale(1.2);
    filter: blur(2em);
  }
  26.5625% {
    opacity: 1;
  }
  48.4375% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

/*========= ヒーローのためのCSS ===============*/
#hero {
  width: 100%;
  height: 100vh;/*スライダー全体の縦幅を画面の高さいっぱい（100vh）にする*/
  margin-top: 0px;
  z-index:0;
  position:relative;
  overflow:hidden
}

/*=================================
 typing(dic::to_the_next...)
===================================*/
@media screen and (min-width: 600px) {
  .typing {
    position: absolute;
    display: inline-block;
    color: #fff;
    top:50%;
    padding-left:10%;
    width: 36ch;
    font: bold 200% Consolas, Monaco, monospace;
    overflow: hidden;
    white-space: nowrap;
    font-weight: 400;
    border-right: 2px solid transparent;
    animation: typing 3s steps(36), caret 0.3s steps(1) infinite;
  }
}
@media screen and (max-width: 599px) {
  .typing {
    position: absolute;
    display: inline-block;
    color: #fff;
    top:40%;
    padding-left:10%;
    width: 30ch;
    font: bold 135% Consolas, Monaco, monospace;
    overflow: hidden;
    white-space: nowrap;
    font-weight: 400;
    border-right: 2px solid transparent;
    animation: typing 3s steps(30), caret 0.3s steps(1) infinite;
  }
}
@keyframes typing {
  from {
    width: 0;
  }
/*  to {
    width: 40ch;
  }
*/
}
@keyframes caret {
  50% {
    border-right-color: currentColor;
  }
}

/*=================================
 blur(ITを通して世の中に...)
===================================*/
@media screen and (min-width: 850px){
.blur {
  position: absolute;
  color: #fff;
  top:25%;
  padding-left:10%;
  height: 3rem;
  animation:blurAnime 2s 3s ease 1 forwards;
  font-size: 9rem;
  font-weight: bold;
  line-height: 9rem;
  text-align: left;
  text-shadow: 0 0 10px #ffffff;
  }
}

@media screen and (max-width: 849px){
.blur{
  position: absolute;
  color: #fff;
  top:35%;
  padding-left:10%;
  width: 55rem;
  height: 3rem;
  animation:blurAnime 2s 3s ease 1 forwards;
  font-size: 7rem;
  font-weight: bold;
  line-height: 7rem;
  text-align: left;
  text-shadow: 0 0 10px #ffffff;
  }
}

@media screen and (max-width: 699px){
.blur{
  position: absolute;
  color: #fff;
  top:35%;
  padding-left:5%;
  width: 24rem;
  min-width: 400px;
  height: 3rem;
  animation:blurAnime 2s 3s ease 1 forwards;
  font-size: 3.5rem;
  font-weight: bold;
  line-height: 3.5rem;
  text-align: left;
  text-shadow: 0 0 5px #ffffff;
  }
}

@media screen and (max-width: 480px){
  .blur{
  position: absolute;
  color: #fff;
  top:35%;
  padding-left:5%;
  width: 12rem;
  min-width: 350px;
  height: 3rem;
  animation:blurAnime 2s 3s ease 1 forwards;
  font-size: 3rem;
  font-weight: bold;
  line-height: 3rem;
  text-align: left;
  text-shadow: 0 0 5px #ffffff;
  }
}

@keyframes blurAnime{
  from {
  filter: blur(20px);
  transform: scale(1.02);
  opacity: 0;
  }
  to {
  filter: blur(0);
  transform: scale(1);
  opacity: 1;
  }
}
 
.blurTrigger{
    opacity: 0;
}

/************************************
** 追随バナー（リクルート）
************************************/

#calloutElm {
  position: fixed;
  bottom : 60px;
  right: 20px;
  max-width: 300px;
  z-index: 4
}

.closebtn:hover {
  color: white;
  background: lightgray;
}
.closebtn {
  position: absolute;
  top: 8px;
  right: 12px;
  font-size: 20px;
  padding: 3px;
  line-height: 1;
  cursor: pointer;
  background: #fff;
  border-radius: 30px;
  z-index:5;
}

#calloutElm a img{
	position:relative;
	top:0;
}
#calloutElm a img:hover{
	transition:0.2s;
  top:-20px;
}

/************************************
** news
************************************/
.news{
  width:100%;
  max-width: 1200px;
  margin: 20px auto 0px auto;
  display: block;
}
h2.t_news a{
  width: 100%;
  max-width: 1200px;
  font-size: 2em;
  font-weight:100;
  padding-top: 10px;
  padding-left: 1em;
  margin: 20px auto 0px auto;
  color:#949495;
}
h2.t_news a:hover {
  color:#EF4056;
  }

/*ul.news {
	list-style: none;
	margin: 20px auto;
	padding: 0;
  width:90%;
  max-width: 1100px;
}
ul.news li {
	clear: both;
	margin: 0 0 1em;
  list-style: none;
  border-bottom: #888 solid 1px;
}
ul.news li span {
	display: block;
	float: left;
	width: 6em; 
	margin: 0 10px 5px 0;
	padding: 3px;
	text-align: center;
	font-size: 10px;
  border-radius: 10px;
}
ul.news li span.news {
	background: #e3efef;
}
ul.news li span.recruit-news {
	background: #efe3ec;
}
ul.news li span.products {
	background: #e3e8ef;
}
ul.news li span.staff_info {
	background: #efefe3;
}
ul.news li span.case {
	background: #efe4e3;
}
ul.news li span.ymd {
	display: inline;
	float: none;
	padding: 0 5px;
	font-size: 13px;
	color: #999;
}
.news_btn{
  width: 90%;
  max-width: 1200px;
  margin: 0px auto;
}*/

/************************************
** 企業情報

h2.t_about{
  width: 100%;
  max-width: 1200px;
  font-size: 2em;
  font-weight:100;
  padding-top: 10px;
  margin: 0px auto -20px auto;
}
.about .wp-block-media-text__content{
  padding: 0px;
}

.about p{
  margin-top: 2em;
  margin-left: 4em;
}
.about .wp-block-media-text__media {
  grid-column: 1;
  grid-row: 1;
  margin: 2em auto auto auto;
  width: 350px;
}
************************************/

/************************************
** 事業内容
************************************/


.business{
  width:100%;
  max-width: 1200px;
  margin: 20px auto 0px auto;
  display: block;
}

h2.t_business a {
  width: 100%;
  max-width: 1200px!important;
  font-size: 2em;
  font-weight:100;
  margin: 0px auto;
  padding-left: 1em;
  background: none;
  color: #949495;
}
h2.t_business a:hover {
color:#EF4056;
}
h3.t_business{
  width: 90%;
  max-width: 1200px!important;
  font-size: 2em;
  font-weight:600;
  margin: 0px auto;
  padding-left: 1em;
  background: none;
  border: none;
}

.business a img{
  position:relative;
	top:0;
}

.business a img:hover{
	transition:0.2s;
  top:-10px;
}

.b_clu h4{
  text-align: center;
  font-size: 1.2em;
  font-weight:600;
  margin: 10px auto 0px auto;
  background: none;
  border: none;
}

.b_clu figure.wp-block-image.size-full{
  margin: 0px!important;
}
.b_clu p{
  font-size: 0.8em;
  line-height: 1.2em;
}

.business p{
  width: 90%;
  max-width: 1000px;
  text-align:left;
  font-size: 1em;
  margin: 0px auto 0px auto;
}



.img_r{
  float: right;
}

.img_l{
  float: left;
}
.t_right h2{
	font-size: 4em;
	font-weight: 100;
	padding-top: 50px;
	text-align: right;
}
.t_right p.sub{
	text-align: right;
	margin-top: -25px;
	font-size: 0.8em
}

.t_right p{
	text-align: right;
	margin-top: 10px;
}

.t_left h2{
	font-size: 4em;
	font-weight: 100;
	padding-top: 50px;
	text-align: left ;
}
.t_left  p.sub{
	text-align: left ;
	margin-top: -25px;
	font-size: 0.8em
}

.t_left p{
	text-align: left ;
	margin-top: 10px;
}

a.btn {
  display: block;
}
a.btn_read {
  color: #fff;
  background-color: #0E6697;
  width:120px;
  margin: 2em auto auto 0px;
}
a.btn_read:hover {
  color: #fff;
  background: #0E6697;
}

a.btn_radius {
  border-radius: 100vh;
}

a.btn_read_r{
  margin: 2em 0px auto auto;
  color: #fff;
  background-color: #0E6697;
  width:120px;
}

/************************************
** 製品紹介
************************************/
.products{
  width: 100%;
  margin: 30px auto;
}

.products ul{
  padding-left: 0px;
}

.slider-8.slick-slide {
  position: relative;
  overflow: hidden;
  width:100%;
  margin: auto;
}
.slider-8.slick-slide img {
  display: block;
  width:auto;
  height:auto;
  object-fit: cover;
}

/************************************
** お問い合わせ
************************************/
.contact_bk{
  width:100%;
	background-color: #E6ECEF;
}

.contact_box{
  width:100%;
 max-width: 1200px;
	margin: auto;
	padding: 50px 0px 50px 0px;
	display: flex;  
}
.flexbox{
	width: 50%;
}

.flexbox h2{
  background: url(images/bk_con.png) no-repeat right;
	width:5em;
	height: 90px;
  font-size: 2em;
  font-weight:100;
  padding-top: 30px;
  margin: -20px auto 0px 10px;
}

.moji_s{
	font-size: 0.8em;
	line-height: 1.2em;
}

.mar_l60{
	margin-left: 60px;
	display: block;
}

a.btn_mail {
  color: #fff;
  background-color: #0E6697;
width:80%;
	display: block;
	margin: 10px auto;
}
a.btn_mail:hover {
  color: #fff;
  background: #0E6697;
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){

  /*========= ヒーローのためのCSS ===============*/
  #hero {
    width: 100%;
    height: 100vh;/*スライダー全体の縦幅を画面の高さいっぱい（100vh）にする*/
    z-index:0;
    margin-top: -60px;
    position:relative;
  }
  /*必要ならばここにコードを書く*/
  .business{
    width:100%;
    min-width: 1023px;
    margin: auto;
    clear: both;
    display: block;
  }
  .header-container{
    display: none;
  }
  .mobile-menu-buttons {
    background: rgba(243, 245, 248, 0.8);
    line-height: 1.8;
  }
  
  .mobile-menu-buttons > li {
    padding-top: 5px;
  }
}

/*799px以下*/
@media screen and (max-width: 799px){

  /*必要ならばここにコードを書く*/
  .header-container{
    display: none;
  }
  .scroll-btn {
  display: none;
  }
	.news,.business{
  width:100%;
  max-width: 750px;
  min-width: 480px;
  margin: auto;
  display: block;
  }
  .business img{
  width: 100%;
  max-width: 350px;
  }
  .sm_center{
  margin: 0px auto;
  width: 350px;
  display: block;
  }
	
  .t_right h2{
	font-size: 3em;
  line-height:1em;
	font-weight: 100;
	padding-top: 0px;
	text-align: center;
  }
  .t_right p.sub{
	text-align: center;
	margin-top: 0px;
	font-size: 0.8em
  }
  .t_right p{
	text-align: center;
	margin-top: 10px;
  }
  .t_left h2{
	font-size: 3em;
  line-height:1em;
	font-weight: 100;
	padding-top: 0px;
	text-align: center ;
  }
  .t_left  p.sub{
	text-align: center;
	margin-top: 0px;
	font-size: 0.8em
  }
  .t_left p{
	text-align: center ;
	margin-top: 10px;
  }
  a.btn_read_r{
  margin: auto auto auto auto;
  }
  /*インデックスページタイトル*/
  h1.archive-title{
  font-size:2em !important;
  font-weight: 100;
  text-align: left;
  }
  /*固定ページタイトル*/
  .page_header{
  display: block;
  margin: 0px;
  width: 100%;
  overflow: hidden;
  }
  .page_header h1.entry-title{
  font-size:2em!important;
  font-weight: 600;
  padding-left: 0.5em;
  text-align: left;
  color: #A5A6A7;
  position: relative;
  display: none;
  }
  .entry-content h1{
  font-size: 2em!important;
  margin-bottom: 0.5em;
  }
  .page_header p.sub{
 padding-top: 15px!important;
    font-size: 1.5em!important;
  color: #A5A6A7;
  padding-left: 10%;
  position: relative;
  }
  /*検索フォーム*/
  .flexbox .search-box{
  display: none!important;
  }
  .business .floatright,.business .floatleft{
	float: none;
  margin: auto;
	display: block
  }
  a.btn_read {
  color: #fff;
  background-color: #0E6697;
  width:120px;
	margin: 10px auto 50px auto!important;
	display: block
  }	
  h2.t_news a,h2.t_business a{
  width: 90%;
  font-size: 1.5em;
  font-weight:100;
  text-align: center;
  margin: 0px auto;
  padding-left: 0px;
  }
  h3.t_business{
    width: 100%;
    max-width: 800px!important;
    font-size: 1.8em;
  }


  /*お問い合わせ*/
  .contact_box{
  width:100%;
  max-width: 750px;
	margin: auto;
	padding: 50px 0px 50px 0px;
	display: block;
  }
  .flexbox{
	width: 80%;
	margin: auto;
  }
  .flexbox h2{
  background: url(images/bk_con.png) no-repeat 50%;
	width:5em;
	text-align: center;
	height: 90px;
  font-size: 2em;
  font-weight:100;
  padding-top: 30px;
  margin: -20px auto 0px auto;
  }
  .moji_s{
	font-size: 0.8em;
	line-height: 1.2em;
	text-align: center
  }
  .mar_l60{
	margin-left: 0px;
	display: block;
  }
  a.btn_mail {
  color: #fff;
  background-color: #0E6697;
  width:80%;
	display: block;
	margin: 10px auto;
  }
  a.btn_mail:hover {
  color: #fff;
  background: #0E6697;
  }
  .floatright {
  float:none;
  margin: auto;
  }
  .floatleft{
  float:none;
  margin: auto;
  }
}

/*480px以下*/
@media screen and (max-width : 480px ){

  /*必要ならばここにコードを書く*/
  .header-container{
  display: none;
  }
  .business{
  width:100%;
  max-width: 480px;
  min-width: 320px;
  margin: auto;
	clear: both;
  display: block;
  }
  .business img{
  width: 100%;
  max-width: 300px;
  }
  .sm_center{
  margin: 0px auto;
  width: 300px;
  display: block;
  }
  /*固定ページタイトル*/
  .page_header{
  display: block;
  margin: 0px;
  width: 100%;
  }
  .page_header h1.entry-title{
  font-size:2em!important;
  font-weight: 600;
  padding:0px 0px 0px 0.5em!important;
  text-align: left;
  color: #A5A6A7;
  position: relative;
  display: none;
}
  .entry-content h1{
  font-size: 1.6em!important;
  margin-bottom: 0.5em;
  }
  .page_header p.sub{
  color: #A5A6A7;
  padding-top: 0px!important;
  font-size: 1.5em!important;
  padding-left:10%;
  position: relative;
  }
}


/************************************
** 画像関係のスタイル
************************************/
figure {
  margin: 0;
}

img {
  max-width: 100%;
  height: auto;
  border: 0;
}

.center{
  margin: auto;
  display: block;
}
.circle-image img {
  border-radius: 50%;
}
.floatleft{
	float: left;
}
.floatright{
	float: right;
}

.main,
.sidebar,
.footer {
  background-color: #f3f5f8;
}

/************************************
** 本文部分
************************************/
.content{
  width: 100%;
  padding: 0px;
  position: relative;
  display: block;
  margin-top: 0px!important;
}

.content-in {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.home div#content-in,
.page-id-63 div#content-in {
  width: 100%;
}

.main {
  width: 100%;
  height: 100%;

  margin: 0px auto !important;
  padding: 0px;
  display: block;
}

@media screen and (max-width: 834px) {

  main.main,
  div.sidebar {
    padding: 0px 16px;
    margin: 0px;
  }
}

.entry-content p{
  width:95%;
  margin:0px auto 2em auto;
}
.entry-content h1{
  font-size: 3em;
  margin-bottom: 0.5em;
}

.entry-content h2{
  border-radius: 5px;
}

.entry-content h3{
  border-radius: 0px 5px 5px 0px;
}

/************************************
** ヘッダー
************************************/
.header {
  height: 100%;
  flex-shrink: 0;
  background-color:rgba(243, 245, 248, 0);
}

.navi-in a {
  font-size:14px;
}

/************************************
** ヘッダーレイアウト
************************************/
.header-container{
  width: 100%;
  padding: 0px 50px;
}

.fixed{
	position: fixed;
	top: 0;
}

#header-container{
  background-color: rgba(243, 245, 248, 0.8);
  position:relative;
  justify-content: space-between;
  height: 60px;/*高さ指定*/
  width:100%;/*横幅指定*/
  z-index: 999;/*最前面へ*/
}

/*JSを使いfixedクラスが付与された際の設定*/
#header-container.fixed{
  position: fixed;/*fixedを設定して固定*/
    z-index: 999;/*最前面へ*/
    top:0;/*位置指定*/
    left:0;/*位置指定*/
}

.header-container-in.hlt-top-menu .logo-image {
  padding: 0;
  margin: 10px 0px;
}

.header .header-in {
  min-height:auto;
}

.fixed-header {
	box-shadow:none;
}

/************************************
** グローバルメニュー
************************************/
.navi {
  background-color: rgba(243, 245, 248, 0);

}
.header-container .navi {
  background-color: rgba(243, 245, 248, 0);
}

#navi .navi-in a:hover {
  background-color:rgba(10, 73, 104, 0.5);
  color: #FFF;
}

/************************************
** モバイルメニュー
************************************/
.navi-in > .menu-mobile {
  display: none;
}
.navi-in > .menu-mobile .sub-menu {
  display: none;
}

/************************************
** モバイル非表示
************************************/
@media screen and (min-width: 800px){
  .sm{display:none;}
  .n_sm{margin: auto;}
}

/************************************
** モバイル表示
************************************/
@media screen and (max-width: 799px){
  .n_sm{display: none;}
  .sm{margin: auto;}
}

/************************************
** パンくずリスト
************************************/
.breadcrumb {
  color: #777;
  font-size: 13px;
  margin: 1em auto;
}

.breadcrumb div {
  display: inline;
}

.breadcrumb .sp {
  margin: 0 10px;
}

.breadcrumb a {
  text-decoration: none;
  color: #777;
}

.breadcrumb.sbp-main-before,
.breadcrumb.sbp-footer-before,
.breadcrumb.pbp-main-before,
.breadcrumb.pbp-footer-before {
  background-color: #f3f5f8;
  margin: 12px auto 0;
  padding: .6em 1em;
}
/************************************
** フッター
************************************/
footer#footer{
  margin:0px
  }
/*
.footer {
  margin-top: 0px;
  padding: 8px;
}

.footer-widgets{
  width: 100%;
  max-width: 1200px;
}

.footer-left{
  width: 75%;
  padding: 10px 16px;
}

.footer-right{
  margin: auto 0px 0px auto;
  text-align: center;
}

.footer-mobile ul{
  text-align: center;
  margin: 10px auto;
  width: 100%;
}
.widget-footer-mobile .textwidget{
  margin: auto;
  text-align: center;
  width:18em;
}

.footer-center{
  width: 0%;
}

.navi-footer {
  display: none;
}

.navi-footer-in ul li a:hover{
  background-color: #0E6697;
}

 */

/*検索フォーム*/
.search-box{
  margin: 10px 20px;
}

.widget_nav_menu ul li a:hover{
  background-color: transparent;
  color: #EF4056;
}

/*リクルートバナー*/

a .recruit_bn{
	display: block;
	margin: auto;
	border-radius: 4px;
}

a .recruit_bn:hover{
	opacity: 0.8;
}

/************************************
** 固定ページ
************************************/
.page_header{
  width: 100%;
  max-width: 1200px;
  margin: 0px auto;
  position: relative;
  display:block
}


.decnon a {
  text-decoration: none!important;
}

.page_header h1.entry-title{
  font-size:2em;
  padding-top: 10px;
  padding-left: 20px;
  color: #A5A6A7;
  position: relative;
  display: none;
}

.page_header p.sub{
  color: #A5A6A7;
  font-size: 3em;
  font-weight: 600;
  position: relative;
}


h1.archive-title{
  font-size:3em;
  font-weight: 100;
  text-align: left;
}

figure.wp-block-table table {
  width: 90%;
  max-width: 1000px;
  border-collapse: collapse;
}

.width_90{width: 90%;
margin: 0 auto;}
.width_80{width: 80%;
margin: 0 auto;}


.article h2, .article h3, .article h4, .article h5, .article h6 {
  margin-bottom: 0.5em;
}

/*---------------------------------
複数の固定ページの日付を非表示にするおまじない
--------------------------------*/
.page .date-tags {
  display: none;
}
/*---------------------------------
複数の固定ページのタイトルを非表示にするおまじない
--------------------------------*/
.page .article-header h1.entry-title {
  display: none;
} 

/* SNSボタン開始 */
.nomad_share4 {
  display: flex;
  margin: 0px auto 0px auto;
width:300px;
}
.nomad_share4 a {
  border-radius: 5px;
  margin: 5px;
  padding: .7em;
  line-height: 1em;
  transition: .2s;
  text-align: center;
  color: #fff;
  text-decoration: none;
  font-family: sans-serif;
  font-weight: bold;
}

.nomad_share4 a:hover {
  opacity: .9;
}

.ex-class{
  width:90%;
  margin: 10px auto;
}

.ex-class .card-title{
  font-size:1.2em;
}

/*  スキン　見出し */
/*
.article h2 {
  margin: 5px 0;
  padding: 15px 25px;
  background-color: #005488;
  color: #fff;
  font-size: 22px;
  border-radius: 5px;
}
*/
.article h2 {
  background: #E6ECEF;
	padding: 1rem 1rem 1rem 2.5rem;
	position: relative;
}
.article h2::before {
  position: absolute;
  top: 20%;
  left: 20px;
  width: 6px;
  height: 60%;
  content: '';
  border-radius: 3px;
  background: #005488;
}

.article h3 {
  padding: 10px 0px;
  background-color:none;
  border-top: none;
  border-right: none;
  border-bottom: 5px solid #ddd;
  border-left: none;
  position: relative;
  margin-bottom: 1.2em;
}

.article h3:before {
  position: absolute;
  left: 0;
  bottom: -5px;
  width: 20%;
  height: 5px;
  content: '';
  background: #007eaf;
}

.article h4 {
  border-top: none;
  border-bottom: none;
  position: relative;
}

.article h4:after {
  content: '';
  display: block;
  width: 100%;
  height: 4px;
  background: linear-gradient(to right, #005488, #007eaf);
  position: absolute;
  left: 0;
  bottom: 0;
}

.article h5 {
  border-bottom: none;
  border-left: 10px solid #bbb;
  position: relative;
  height: 1.2em;
  display: table-cell;
  padding: 0px 0px 0px 0.5em;
  width: 80%;
  margin-left: 2em;
}

/* ブログカード */
.a-wrap .blogcard {
  border-color: #005488;
  color: #5B5B5B;
}

.a-wrap:hover {
  background-color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 0 8px #f6fafd;
}

.cat-label {
  top: 0;
  left: 0;
  background-color: #005488;
  border-top: none;
  border-left: none;
  color: #fff;
}

.cat-link {
  background-color: #005488;
  border-radius: 1px;
  color: #fff;
}

.tag-link,
.comment-reply-link {
  color: #005488;
  border-color: #6b89af;
  border-radius: 1px;
}

.tag-link:hover,
.comment-reply-link:hover {
  color: #007eaf;
  background-color: transparent;
}

.tagcloud a {
  /* color: $key-color; */
  border-radius: 29px;
}

/******************
表
*******************/
/*--- 表全体(table) ---*/
.entry-content table {
  border-bottom: 1px solid #e6e6e6; /* 表の一番下の線 */
  border-top: none;
  border-left: none;
  border-right: none;
}
/*--- ヘッダーセル(th) ---*/
.entry-content th {
  padding: 0.8em .6em; /* 余白（上下　左右） */
  letter-spacing: 0.1em; /* 文字の間隔 */
  border: none; /* 線削除 */
}
.entry-content tr:not(:last-child) { /* 最後の行以外に適用 */
  border-bottom: 1px solid #e6e6e6; /* 下線 */
}
/*--- ヘッダーセル以外のセル(td) ---*/
.entry-content td {
  padding: 0.8em 0.8em; /* 余白（上下　左右） */
  border:none; /* 線を削除 */
}
.entry-content td:last-child { /* 最後のセルのみ適用 */
  border-right: 1px solid #e6e6e6; /* 右線 */
}
.entry-content td:not(last-child) { /* 最後のセル以外に適用 */
  border-left: 1px solid #e6e6e6; /* 左線 */
}
/* ページネーション */
.page-numbers {
  color: #6b89af;
  border: 1px solid #005488;
  border-radius: 50%;
}

.pagination .current {
  background-color: #005488;
  color: #fff;
}

.page-numbers.dots {
  opacity: 1;
  background: none;
}

.pagination a:hover {
  background-color: #005488;
  color: #fff;
}

/* スクロールトップボタン */
.go-to-top {
  bottom: 35px;
}

.go-to-top-button {
  width: 45px;
  height: 45px;
  color: #fff;
  background-color: #333;
  border-radius: 50%;
}

.go-to-top-button:hover {
  color: #fff;
}

/* flot解除 */

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
 
.clearfix:before {
	content: "";
	display: block;
	clear: both;
}
 
.clearfix {
	display: block;
}

/* レスポンシブ */
@media screen and (max-width: 834px) {
  .header-container-in.hlt-top-menu .header .header-in {
    display: flex;
    align-items: center;
  }
  .header .header-in {
    min-height: 80px;
  }
}

/*
@media screen and (max-width: 480px) {
  .article h2 {
    padding: 0.6em 0.2em;
  }
  .article h3 {
    padding: 0.4em 1em;
  }
}
*/

/*1.フェードインアニメーションの指定*/
.scrollanime {opacity: 0;} /*一瞬表示されるのを防ぐ*/
.fadeInDown {
  animation-name: fadeInDown;
  animation-duration: 1.5s;
  animation-fill-mode: forwards;
}
@keyframes fadeInDown {
  0% {
    opacity: 0;         
  }
  100% {
  opacity: 1;
  transform: translateY(0);
  }
}
/*2.上下の動きを指定*/
.updown {transform: translateY(-80px);}
.downup {transform: translateY(80px);}


#header-fixed{display:none
}
/*非表示*/
.pc{display: block;}
.sm{display: none;}

@media screen and (max-width: 599px) {
  .pc{display: none;}
  .sm{display: block;}
}

/*スマホの時のカラムの順位を変える*/
@media screen and (max-width: 599px) {
  .inverted {
    flex-direction:column-reverse!important;
  }
}

/************************************
** 行楽日和
************************************/

.k_tit {
  top: -30px;
  position: relative;
}
.k_btn_a {
color: #1161b6;
background-color: #dceffa;
border-radius: 25px;
transform: 0.8s;
}
.k_btn_a a:hover{
color: #fff;
background:#1161b6;
}
.k_btn_b {
color: #ffffff;
background-color: #1161b6;
border-radius: 25px;
transform: 0.8s;
}
.k_btn_b a:hover{
color: #1161b6;
background:#dceffa;
}
.k_btn_c {
  color: #1161b6;
  background-color: #dceffa;
  border-radius: 5px;
  transform: 0.8s;
  }
  .k_btn_c a:hover{
  color: #fff;
  background:#1161b6;
  }

.k_btn_d {
  color: #ffffff;
  background-color: #1161b6;
  border-radius: 5px;
  transform: 0.8s;
  }
  .k_btn_d a:hover{
  color: #1161b6;
  background:#dceffa;
  }

.k_btn_com{
  position: relative;
  top: 30px;
  left: 70px;

}
@media screen and (max-width: 781px) {

.k_tit {
  top:0px;
  position: relative;
}
}

/************************************
** COOL!Manager
************************************/
.cm_btn {
  color: #ffffff;
  background-color: #2987BB;
  border-radius: 5px;
  transform: 0.8s;
  }
  .cm_btn a:hover{
    color: #2987BB;
    background:#B5E5F7;
  }


  .img_bg{
    background-image: url(images/clmg/bg.png);
    background-size:  cover;
    background-repeat:  no-repeat;
    background-position: center;
  }
  .svg-inline--fa{
    margin-left: 0.5em;
  }

  .go-to-top-button .svg-inline--fa{
    margin: auto;
  }

  .c_btn_com{
    position: relative;
    top: 30px;
    left: 42%;
  
  }
