@charset "UTF-8";
html {
-webkit-text-size-adjust: 100%;
}


body {
display: block;
margin: 0;
font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}


/* --------------------------------------------- */


header {
position: fixed;
height: 75px;
top: 0;
left: 0;
right: 0;
z-index: 2;
background-color: white; 
}


/* --------------------------------------------- */


.header {
max-width: 1260px;
width: 90vw;
margin-left: auto;
margin-right: auto;
}/*OK*/


.header-group{
width: 100%;
height: 75px;
display: flex;
margin-left: auto;
margin-right: auto;
justify-content: space-between;
	
	@media screen and (min-width: 961px)/*ウィンドウ幅が961px以上の場合に適用*/
{
	max-width: 1260px;
	width: 90vw;
}
	@media screen and (max-width: 960px)/*ウィンドウ幅が（TAB）最大960pxまでの場合に適用*/
{
	max-width: 100%;
	width: 90vw;
}
	@media screen and (max-width: 767px)/*ウィンドウ幅が（SP）最大767pxまでの場合に適用*/
{
	max-width: 100%;
	width: 90vw;
}
}/*OK*/


/* --------------------------------------------- */


.header-l {
width: 100px;
display: flex;
align-items: center;
margin-left: 0px;
margin-right: auto;
height: auto;
	
	@media screen and (min-width: 961px)/*ウィンドウ幅が961px以上の場合に適用*/
{
	.bt-hf {display: block !important;}
	.bt-hf_sp {display: none !important;}
}
	
	@media screen and (max-width: 960px)/*ウィンドウ幅が（TAB）最大960pxまでの場合に適用*/
{
	.bt-hf {display: block !important;}
	.bt-hf_sp {display: none !important;}
}
	
	@media screen and (max-width: 767px)/*ウィンドウ幅が（SP）最大767pxまでの場合に適用*/
{
	width: 50px;
	height: auto;
	.bt-hf {display: none !important;}
	.bt-hf_sp {display: block !important;}
}
}/*OK*/	


/* --------------------------------------------- */


.header-r {
width: 450px;
display: flex;
align-items: center;
margin-left: auto;
margin-right: 5px;
height: auto;
	
	@media screen and (min-width: 961px)/*ウィンドウ幅が961px以上の場合に適用*/
{
	.bt-about {display: block !important; }
	.bt-about_sp {display: none !important; }
	.bt-works {display: block !important; }
	.bt-works_sp {display: none !important; }
}
	@media screen and (max-width: 960px)/*ウィンドウ幅が（TAB）最大960pxまでの場合に適用*/
{
	.bt-about {display: block !important; }
	.bt-about_sp {display: none !important; }
	.bt-works {display: block !important; }
	.bt-works_sp {display: none !important; }
}
	@media screen and (max-width: 767px)/*ウィンドウ幅が（SP）最大767pxまでの場合に適用*/
{
	width: 200px;
	justify-content:space-between;
	.bt-about {display: none !important;}
	.bt-about_sp {display: block !important;}
	.bt-works {display: none !important;}
	.bt-works_sp {display: block !important;}
}
}/*OK*/


/* --------------------------------------------- */


.line-group{
margin: 0 auto;
}


.line{
margin: 0;
padding: 0;
border-bottom: 1px solid;
border-bottom-color: lightgray;
}/*OK*/


/* --------------------------------------------- */


.space-head {
	
	@media screen and (min-width: 961px)/*ウィンドウ幅が961px以上の場合に適用*/
{
	margin-bottom: 30px;}
	
	@media screen and (max-width: 960px)/*ウィンドウ幅が（TAB）最大960pxまでの場合に適用*/
{
	margin-bottom: 25px;}
	
	@media screen and (max-width: 767px)/*ウィンドウ幅が（SP）最大767pxまでの場合に適用*/
{
	margin-bottom: 20px;}
}


/* --------------------------------------------- */


.space-bottom {
margin-top: 20px;}
}/*OK*/


/* --------------------------------------------- */
/* --------------------------------------------- */

footer {
position:absolute;
bottom:0;
}


/* --------------------------------------------- */


.back_home_back{
display: flex;
margin: 0 auto;
background-color: #606060;
width: 100%;
height: auto;
padding-top: 5%;
padding-bottom:  5%;
}/*OK*/


/* --------------------------------------------- */


.back_home_margin {
display: flex; /* 画面に合わせた拡大縮小*/
margin: 0 auto;
width: 100%; /* 画面に合わせた左右のマージン確保*/

@media screen and (max-width:961px) { /* 961px以下の時*/
width: 50%; /* フルスクリーンの時の画面サイズ*/
}
@media screen and (max-width:767px) { /* 767px以下の時*/
width: 30%; /* フルスクリーンの時の画面サイズ*/
}
}/*OK*/


/* --------------------------------------------- */


.back_home {
display: flex;
margin: 0 auto;
max-width: 250px; /* 画像に合わせた拡大縮小*/
width: 100%;
height: auto;
}/*OK*/


/* --------------------------------------------- */

.back_home_img img{
display: block;/* display: blockじゃないとhoverが効かない */
max-width: 250px; /* 画像に合わせた拡大縮小*/
width: 100%;
margin: 0 auto;
opacity: 1; /* 初期状態は不透明 */
transition: opacity 0.35s ease-in-out; /* ふわっとさせる時間を指定 */
}
.back_home_img:hover {/* ホバー時のスタイル */
opacity: 0.3; /* ホバー時に薄くする */
}


/* --------------------------------------------- */


.footer_bottom {
display:block;
height: auto;
background-color: #707070;
margin-bottom: 10%;
}/*OK*/


/* --------------------------------------------- */


.footer_text {
line-height:100px;
text-align: center;
font-size: clamp(11px, 1vw, 13px);/* 最小値（14px）：推奨値（2vw）：：最大値 */
color: #5DC6DA;
margin-bottom: 10%;
}/*OK*/


/* --------------------------------------------- */
/* --------------------------------------------- */


.footer_text_menu_box {
display: flex; /* 画面に合わせた拡大縮小*/
margin: 0 auto;
max-width: 100%; /* 画面に合わせた拡大縮小*/
height: auto;
}/*OK*/


/* --------------------------------------------- */


.footer_text_menu_margin_responsive{
display: flex; /* 画面に合わせた拡大縮小*/
margin: 0 auto;
width: 90%; /* 画面に合わせた左右のマージン確保*/
		
@media screen and (min-width: 961px)/*ウィンドウ幅が961px以上の場合に適用*/
{
max-width: 880px;
.footer_text_menu_pc {display: flex!important; }
.footer_text_menu_tab_sp {display: none !important; }
margin-bottom:5%;
}
	
		
@media screen and (max-width: 960px)/*ウィンドウ幅が960px以下の場合に適用*/
{
max-width: 880px;
.footer_text_menu_pc {display: none !important; }
.footer_text_menu_tab_sp {display: flex !important; }
margin-bottom: 15%;
}
}/*OK*/


/* --------------------------------------------- */


.footer_text_menu_pc {
flex-wrap: wrap; /* 親のflexに合わせた横並び*/
justify-content: center;
margin: 0 auto;
max-width: 100%; /* 画面に合わせた拡大縮小*/
height: auto;
margin-top: 5%;
}/*OK*/


/* --------------------------------------------- */


.footer_text_menu_tab_sp {
flex-flow: column; /* 親のflexに合わせたタテ並び*/
text-align: center;
margin: 0 auto;
max-width: 100%; /* 画面に合わせた拡大縮小*/
height: auto;
line-height: 3.5;
margin-top: 12%;
}/*OK*/


/* --------------------------------------------- */


.footer_text_company, 
.footer_text_privacy, 
.footer_text_contact {
margin-left: 10px;
margin-right: 10px;
font-size: clamp(14px, 3vw, 16px);/* 最小値（14px）：推奨値（3vw）：：最大値（16px） */
text-decoration: none; /* 下線を消す */
color: #FFFFFF;
}
.footer_text_company, 
.footer_text_privacy, 
.footer_text_contact {
:link,
:visited,
:active {
color: #FFFFFF;
text-decoration: none; /* 下線を消す */
}	
:hover {
color: #A7A7A7;
text-decoration: none; /* 下線を消す */
}
}/*OK*/



/* --------------------------------------------- */


.footer_text_vertical_bar{
margin-left: 10px;
margin-right: 10px;
color: #FFFFFF;
font-size: clamp(14px, 3vw, 16px);/* 最小値（14px）：推奨値（3vw）：：最大値（16px） */
}
}/*OK*/


/* --------------------------------------------- */




/* --------------------------------------------- */




/* --------------------------------------------- */



