@charset "UTF-8";
@import url("grid.css");

body {
	font-size: 14px;
	font-family: "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif,Verdana, Roboto, "Droid Sans";
	line-height: 1.6;
	-webkit-text-size-adjust: 100%;
	color:#333;
}

/*ページ全体のフェードイン*/
body {
    animation: fadeIn 3s ease 0s 1 normal;
    -webkit-animation: fadeIn 3s ease 0s 1 normal;
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}



/*2行目以降を1文字下げる*/
.indent-1 {
padding-left:1em;
text-indent:-1em;
}


img {
	max-width:100%;
	height: auto;/*高さ自動*/
}
a {
    display:block;
    color: #333;
    text-decoration-line: none;
}
a:hover { 
    color: #999;
}
a img:hover {
	opacity: 0.8;
}
.blueback {
	background-color: #003399;
	color: #fff;
	padding: 1em;
}
.underline {
	border-bottom: 3px solid #003399;
	padding-bottom: 0.5em;
}
.center {
	text-align: center;
}

/*ヘッダー
-------------------------------------*/
header {
	position: fixed;
	width: 100%;
	border-bottom: #00EBFF medium solid;
	box-shadow: 0px 3px 7px rgba(0,0,0,0.4); /*影*/
	z-index: 999;
	background-color: rgba(203,203,203,1.00);/*PC ヘッダー背景色*/
}
.head {
	display: flex;
    flex-direction: row;
    padding: 1em 0 0 0; /* ★2024年から修正　1.3em 0 0 0*/
}

.head h1 { 
    /*padding: 1em 0;*/
	font-size: 30px;
	color: rgba(8,0,115,1.00);
	line-height: 1em;
}
@media screen and (max-width: 600px){
.head h1 { 
    font-size: 20px;
}
}
@media screen and (max-width: 500px){
.head h1 { 
   color: #fff;
	line-height: 1.3em;
}
}
@media screen and (max-width: 370px){
.head h1 { 
    font-size: 19px;
}
}
.telbox {
	margin-left: auto;
	font-size: 3.0em;
	padding: 1em 0 0 0;
}
.menu {
	background-color: rgba(0,40,122,1.00);
}
@media screen and (max-width: 768px){/*max-width: 500px ★タイトル*/
header {
	background-color: rgba(0,40,122,1.00);
}
.menu {
	background-color: rgba(0,0,0,0.8);
}
}
nav ul {
	display: flex;
    flex-direction: row;
    justify-content: space-around;
    list-style: none;
	margin-bottom: 0;
}
nav li {
    flex: 1 0 auto;
	margin-bottom: 0;
	font-size: 18px;
}
@media screen and (max-width: 800px){
nav li {
    font-size: 16px;
}
}
@media screen and (max-width: 550px){
nav li {
    font-size: 14px;
}
}
nav li a {
    text-decoration: none;
    text-align: center;
	color: #fff;
}
nav a:hover {
    background-color: #3366FF;  /*#3366FF*/  
	color: #fff;
}
nav a {
    padding: 0.3em 1em;
	display: block;
}

@media screen and (min-width: 769px){
/* PC時はMENUボタンを非表示 min-width: 501px ★タイトル*/

#open,#close {
    display: none !important;
}

#navi {
    display: block !important;
}
}

@media screen and (max-width: 768px){/*max-width: 500px ★タイトル*/
header {
	background-color: rgba(255,255,255,0);
}
.head {
	flex-direction: column;
    text-align: left;
    margin-bottom: 20px;
}
.telbox {
	margin-left: 0;
	text-align: center;
}
.head #open,#close  {
    position: absolute;
    top: 1em;
    right: 12px;
    }
nav ul {
	flex-direction: column;
}

nav li {
	padding-top: 0;
	border-bottom: 1px solid rgba(255,255,255,0.3);/*ライン*/
	margin-bottom: 0;
	font-size: 16px;
}
nav a {
    padding: 1em 1em;
	display: block;
}
/* スマホ時はMENUボタンを表示 */
#open,#close  {
    display: block;
    width: 45px;
    border: none;
    position: absolute;
    top: 1em;
    right: 12px;
}
/* スマホ時はメニューを非表示 */
#navi {
    display: none;
}
}

/*メイン画像
-------------------------------------*/
.mainimg img {
	width: 100%;
	margin-top: 100px; /*PC:h-container+32px(メニュー高さ)　スマホ:h-container*/
}
@media screen and (max-width: 500px){
.mainimg img {
	margin-top: 75px; /*PC:h-container+32px(メニュー高さ)　スマホ:h-container*/
}
}

/*企業検索部分の固定*/
#fixed {
	position: fixed; /* 要素の位置を固定する */
	width: 100%;
	z-index: 998; /*位置：ヘッダーの下*/
}

/*ページ内リンクの固定ヘッダー用上スペース
-------------------------------------*/
section.anchor {
    display: block;
    padding-top: 400px; /*PC:h-container+32px(メニュー高さ)　スマホ:h-container*/
    margin-top: -400px;
}
@media screen and (max-width:1100px) {
section.anchor {
	display: block;
    padding-top: 350px; /*PC:h-container+32px(メニュー高さ)　スマホ:h-container*/
    margin-top: -350px;
}
}
@media screen and (max-width:850px) {
section.anchor {
	display: block;
    padding-top: 280px; /*PC:h-container+32px(メニュー高さ)　スマホ:h-container*/
    margin-top: -280px;
}
}
@media screen and (max-width:450px) {
section.anchor {
	display: block;
    padding-top: 250px; /*PC:h-container+32px(メニュー高さ)　スマホ:h-container*/
	margin-top: -250px;
}
}
@media screen and (max-width:300px) {
section.anchor {
	display: block;
    padding-top: 230px; /*PC:h-container+32px(メニュー高さ)　スマホ:h-container*/
    margin-top: -230px;
}
}


section.anchor2 {
    display: block;
    padding-top: 100px; /*PC:h-container+32px(メニュー高さ)　スマホ:h-container*/
    margin-top: -100px;
}

@media screen and (max-width:500px) {
section.anchor2 {
    display: block;
    padding-top: 75px; /*PC:h-container+32px(メニュー高さ)　スマホ:h-container*/
    margin-top: -75px;
}
}


.top-sp {
	padding-top: 100px;
}
@media screen and (max-width: 768px){
.top-sp {
	padding-top: 90px;
}
}
@media screen and (max-width: 500px){
.top-sp {
	padding-top: 75px;
}
}

.title {
	padding: 5em 0;
}
@media screen and (max-width: 1100px){
.title {
	padding: 3em 0;
}
}
@media screen and (max-width: 500px){
.title {
	padding: 2.5em 0;
}
}



/*メイン画像
-------------------------------------*/
.logo img {
	max-width: 500px;
	/*margin-top: 140px; /**/
	/*padding-bottom: 2em;*/
	padding: 140px 0 2em;
	text-align: center;
}
@media screen and (max-width: 1100px){
.logo img {
	max-width: 300px;
	/*margin-top: 120px; /**/
	padding-bottom: 1.5em;
}
}
@media screen and (max-width: 500px){
.logo img {
	max-width: 300px;
	/*margin-top: 100px; /**/
	/*padding-bottom: 1.5em;*/
	/*padding: 140px 0 2em;*/
	padding: 110px 0.5em 2em;
}
}
@media screen and (max-width: 320px){
.logo img {
	max-width: 200px;
	padding: 110px 0.5em 2em;
}
}

/*ロゴ上文章
-------------------------------------*/
.logo p {
	/*margin-top: 140px; /**/
	padding: 170px 0 2em; /* 140px 0 2em*/
	text-align: center;
	font-size: 2.3em;
	line-height: 1.2em;
}
@media screen and (max-width: 1100px){
.logo p {
	/*margin-top: 120px; /**/
	padding: 160px 0 2em; /* 140px 0 2em*/
	font-size: 2em;
}
}
@media screen and (max-width: 500px){
.logo p {
	/*margin-top: 100px; /**/
	padding: 130px 0.5em 2em; /* 110px 0.5em 2em*/
	font-size: 1.4em;
}
}


/*メインコンテンツ
-------------------------------------*/
main {
    margin: 5em 0 5em;
}
#main {
    padding: 400px 0 5em;
}
@media screen and (max-width: 1100px){
#main {
    padding: 350px 0 5em;
}
}
@media screen and (max-width: 850px){
#main {
    padding: 280px 0 5em;
}
}
@media screen and (max-width: 450px){
#main {
    padding: 230px 0 5em;
}
}
@media screen and (max-width: 300px){
#main {
    padding: 200px 0 5em;
}
}

/*新着情報
-------------------------------------*/
.news h2 {
    background-color: #003399;
	color: #fff;
	padding: 1em;
}
.news li {
    list-style-type: none;
	border-bottom: 1px solid #ccc;
	padding: 0.5em 0;
}

/*フッター
-------------------------------------*/
footer {
    background-color: #333;
    padding: 1em 0 10em;
	color: #fff;
}
footer h5 {
    border-bottom: 2px solid #fff;
}
@media screen and (max-width: 500px){
footer {
    padding: 2em 0 13em;
}
}

/*コピーライト
-------------------------------------*/
.copyright {
    text-align: center;
    padding: 0.5em 0;
    /*background-color: #333;*/
	color: #999;
	font-size: 1em;
}
.copyright a {
    color: #000;
    text-decoration: none;
	display: inline-block;
}
@media screen and (max-width: 500px){
.copyright {
    font-size: 0.8em;
}
}


/*ページトップへ戻るボタン
-------------------------------------*/
#pagetop {
    position: fixed;
    bottom: 15px;
    right: 15px;
}
#pagetop a {
    display: block;
    background: rgba(122,122,122,0.80);
    color: #fff;
    width: 50px;
	height: 50px;
	border-radius: 50px;
    padding: 10px 5px;
    text-align: center;
	font-size: 25px;
	line-height: 30px;
}
#pagetop a:hover {
    background: rgba(51,102,255,0.8);
}
/*パンくずリスト
-----------------------------------*/
.breadcrumb {
    margin: 0 0 1em 0;
    padding: 0;	
}
.breadcrumb li {
    list-style-type: none;
}
.breadcrumb li a {
    display: inline-block;
    color: #959fa5;
}






/*フェードイン2　スクロールでふわっと*/
.fade_up {
    opacity : 0;
    transform : translate(0, 5px);
    transition : all 0.7s;
}
.fade_up.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}


/*フェードイン3　fuwatto"1" ""内の数を変えると順番に、同数だと一緒にふわっとする*/
.fuwatto-wrap [class*='fuwatto'] {
  opacity: 0;
  transform: translate(0, 10px);
  transition: all 0.9s; 
}
.fuwatto-wrap [class*='fuwatto'].f-act {
  opacity: 1;
  transform: translate(0, 0); 
}

.fadeInUp {
  opacity : 0;
  transform: translateY(20px);
  transition: 2s;
}



/*検索へ戻るボタン*/
a.btn_03 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 50px;
  position: relative;
  background: #228bc8;
  border: 1px solid #228bc8;
  border-radius: 30px;
  box-sizing: border-box;
  padding: 0 45px 0 25px;
  color: #fff;
  font-size: 16px;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-align: left;
  text-decoration: none;
  transition-duration: 0.3s;
}
a.btn_03:before {
  content: '';
  width: 8px;
  height: 8px;
  border: 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 25px;
  margin-top: -6px;
}
a.btn_03:hover {
  background: #fff;
  color: #228bc8;
}
a.btn_03:hover:before {
  border-top: 2px solid #228bc8;
  border-right: 2px solid #228bc8;
}

/* 003 */
.btn003 a {
    background: #fff;
	border: 1px solid #000;
    border-radius: 50px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    /*margin: 0 auto;*/
	margin-top: 1em;
    max-width: 300px;
    padding: 0.5em; /* */
    color: #000;
    transition: 0.3s ease-in-out;
    font-weight: 500;
}
.btn003 a:hover {
    background: #000;
    color: #FFF;
}
.btn003 a:after {
    content: '';
    width: 8px;
    height: 8px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 20px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
.btn003 a:hover:after {
    border-color: #FFF;
}


/*機材展タイトル 画像切り替え*/
.t-pc1 { display: block !important;
	width: 100%; /* ★2024年から追加 */
	max-width: 800px;
	/*margin: 0 auto;*/
	}
.t-pc2 { display: none !important;}
.t-sp1 { display: none !important;}
.t-sp2 { display: none !important;}
@media only screen and (max-width: 768px) {
.t-pc1 { display: none !important; }
.t-pc2 { display: block !important;
	max-width: 800px;
	/*margin: 0 auto;*/
	}
.t-sp1 { display: none !important;}
.t-sp2 { display: none !important;}
}
@media only screen and (max-width: 500px) {
.t-pc1 { display: none !important; }
.t-pc2 { display: none !important;}
.t-sp1 { display: block !important;
	width: 100%; /* ★2024年から追加 */
	max-width: 400px;
	/*margin: 0 auto;*/
	}
.t-sp2 { display: none !important;}
}
@media only screen and (max-width: 300px) {
.t-pc1 { display: none !important; }
.t-pc2 { display: none !important;}
.t-sp1 { display: none !important;}
.t-sp2 { display: block !important;
	max-width: 200px;
	}
}


.btn1 {
  color: #fff;/*文字色*/
  border: solid 3px #E10000;/*線色*/
  padding: 0.5em;/*文字周りの余白*/
  border-radius: 0.5em;/*角丸*/
	max-width: 600px;
	text-align: center;
	margin: 1em auto;
	background-color: #E10000;
}


/***リンクボタンの設定***/
.kira-btn1 {
display: block;
position: relative;
max-width: 700px;/*600px ボタンの幅 95%*/
padding: 15px 0;/* 15px 0 5px*/
margin:0 auto 30px;
background-color: #DC0000;/*ボタンの色*/
color: #fff;/*文字の色*/
border-radius: 20px;
font-weight: bold;
font-size: 2.5em; /*3em*/
	line-height: 1em; /*1.5em*/
text-align: center;
text-decoration: none;
overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
	box-shadow: 2px 2px 4px gray;/*影*/
}
@media screen and (max-width:500px) {
.kira-btn1 {
font-size: 1.2em;/*2.5em*/
	/*line-height: 1.5em;*/
border-radius: 10px;
	/*padding: 12px 0 5px;*/
}
}
@media screen and (max-width:300px) {
.kira-btn1 {
font-size: 1em;
	/*padding: 10px 0 5px;*/
}
}

/*光らせる*/
.kira-btn1::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #fff;
    animation: shiny-btn1 3s ease-in-out infinite;
}
@-webkit-keyframes shiny-btn1 {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}

/*ホバー*/
.kira-btn1:hover {
/*text-decoration: none;*/
color:#FFED00;/*#ff9999*/
/*background:transparent;/*ボタンの色を透明に*/
/*border:1px solid #ff9999;*/
	opacity: 0.7;
}

/*アイコンの利用
.kira-btn1::after {
content: "\f101";
font-family: 'Font Awesome 5 Free';
font-size: 18px;
font-weight: bold;
margin-left: 0.5em;
}*/

/*　文中の※表記　*/
.example {
	font-size: 0.6em;
	vertical-align: top !important;
}