@charset "UTF-8";

/*
CSS Document
Copyright (C) GLOBAL ASSET MOTIONS CO., LTD All Rights Reserved.
URL:www.glam.ne.jp
*/



@import url("common.css");
@import url("others.css");

/* ----------------------------------------------------------
   MAIN VISUAL AREA
---------------------------------------------------------- */

.main_visual_area {
    position: relative;
    margin: 0% 0% 0% 0%;
    padding: 0%;
    width: 83%;
    margin-left: auto;
    height: 500px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    animation: mainfadeIn 1.5s ease 0s 1 normal;
    -webkit-animation: mainfadeIn 1.5s ease 0s 1 normal;
    -moz-animation: mainfadeIn 1.5s ease 0s 1 normal;
    -o-animation: mainfadeIn 1.5s ease 0s 1 normal;
    -ms-animation: mainfadeIn 1.5s ease 0s 1 normal;
    z-index: 800;
}

@-webkit-keyframes mainfadeIn { 
    0% { opacity: 0}
    100% { opacity: 1}
}
@-moz-keyframes mainfadeIn { 
    0% { opacity: 0}
    100% { opacity: 1}
}
@-o-keyframes mainfadeIn { 
    0% { opacity: 0}
    100% { opacity: 1}
}
@-ms-keyframes mainfadeIn { 
    0% { opacity: 0}
    100% { opacity: 1}
}
@keyframes mainfadeIn { 
    0% { opacity: 0}
    100% { opacity: 1}
}

.main_visual_area.about {
    background-image: url("../about/img/main_img.jpg");
}

.main_visual_area.company {
    background-image: url("../company/img/main_img.jpg");
}

.main_visual_area.business {
    background-image: url("../business/img/main_img.jpg");
}

.main_visual_area.recruit {
    background-image: url("../recruit/img/main_img.jpg");
}

.main_visual_area.info {
    background-image: url("../information/img/main_img.jpg");
}

.main_visual_area.contact {
    background-image: url("../contact/img/main_img.jpg");
}

.main_visual_area.privacy {
    background-image: url("../privacy/img/main_img.jpg");
}


.ct_main_title_box {
    position: absolute;
    top: 50%;
    left: -12%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    margin: 0%;
    padding: 0px;
    height: auto;
    z-index: 810;
}

h2 {
    margin: 0%;
    padding:0%;
    font-size: 55px;
    line-height: 1.0em;
    letter-spacing: 0.1em;
    font-family: 'Roboto Mono', monospace;
    font-style: normal;
    font-weight: 400;
    color: #fff;
}

.ct_main_title_jp {
    margin: 12px 0% 0% 0%;
    padding:0%;
    font-size: 14px;
    line-height: 1.0em;
    letter-spacing: 0.05em;
    color: #fff;
}


/* ----------------------------------------------------------
   GENERAL PARTS
---------------------------------------------------------- */


h5.ct_title {
    margin:0% 0% 43px 0%;
	padding:0.5% 0 1% 1.5%;
	font-size:18.5px;
    line-height: 1.0em;
	letter-spacing:0.1em;
    color: #022751;
    border-left: 2px solid #ea7173;
}

h5.ct_title span.branch{
	font-size:17.5px;
    padding: 0 0 0.1em 0;
    margin: 0% 1% 0 0;
    color: #cd482b;
	letter-spacing:0.04em;
    border-bottom: 1px solid #cd482b;
}


h5.ct_title span.career{
    font-size: 0.75em;
    padding: 0.3% 1%;
    margin-right: 1.8%;
    background: #bf5a40;
    color: #FFf;  
	letter-spacing:0.05em;
}

h5.ct_title span.part{
    font-size: 0.75em;
    padding: 0.3% 1%;
    margin-right: 1.8%;
    background: #6e3636;
    color: #FFf;  
	letter-spacing:0.05em;
}


h5.ct_title span.date{
    font-size: 0.8em;
    padding: 0.3% 1%;
    margin-left: 3.5%;
	color:#ea7173;
	letter-spacing:0.1em;
}



h5.recruite_title {
    margin:0% auto 4.5% auto;
	padding:0% 0 0 0%;
	font-size:1.3rem;
    font-weight: 500;
    line-height: 1.0em;
	letter-spacing:0.1em;
    color: #022751;
    text-align: center;
}

h5.recruite_title span{
    padding: 0% 0 0.25em 0;
    border-bottom: 1px solid #ea7173;
}


/* ----------------------------------------------------------
   CONTENTS AREA
---------------------------------------------------------- */


/* ------------------------------------------greeting */

.greeting_box{
    margin: 5% auto 0 auto;
    padding: 0;
    width: 100%;
    height: auto;
}

.greeting_flex_box p.ceo_name{
    margin-top: 5%;
    text-align: right;
    font-size: 20px;
    font-family: 'Noto Serif HK', serif;
}

.greeting_flex_box{
    display: flex;
    margin: 5% auto 0 auto;
    padding: 0;
    width: 100%;
    height: auto;
    flex-wrap: wrap;
    justify-content: space-between;
}

/* image right + com left　*/

.greeting_image_right{
    margin-left: 5%;
    width: 40%;
    height: auto;
}

.greeting_image_right img,
.greeting_com_left img{
    max-width: 100%;
    height: auto;
}

.greeting_com_left{
    width: 55%;
    height: auto;
}

/* image laft + com right　*/

.greeting_image_left{
    margin-right: 5%;
    width: 40%;
    height: auto;
}

.greeting_image_left img{
    max-width: 100%;
    height: auto;
}

.greeting_com_right{
    width: 55%;
    height: auto;
}


/* ------------------------------------------philosophy */

.philosophy_box{
    padding: 8% 4%;
    background: rgba(255,255,255,0.7);
}

.philosophy{
    margin-bottom: 8%;
    text-align: center;
    font-size: 19px;
    letter-spacing: 0.1em;
    color: #333;
    font-family: 'Shippori Antique', sans-serif;
}

.philosophy span{
    padding-bottom: 1%;
    border-bottom: 1px solid #fff;
}

.bgextend{
	animation-name:bgextendAnimeBase;
	animation-duration:1s;
	animation-fill-mode:forwards;
	position: relative;
	overflow: hidden;/*　はみ出た色要素を隠す　*/
	opacity:0;

}

@keyframes bgextendAnimeBase{
  from {
    opacity:0;
  }

  to {
    opacity:1;  
}
}

/*中の要素*/
.bgappear{
	animation-name:bgextendAnimeSecond;
	animation-duration:1s;
	animation-delay: 0.6s;
	animation-fill-mode:forwards;
	opacity: 0;
}

@keyframes bgextendAnimeSecond{
	0% {
	opacity: 0;
	}
	100% {
	opacity: 1;
}
}

/*左から右*/
.bgLRextend::before{
	animation-name:bgLRextendAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #15274b;/*伸びる背景色の設定*/
}
@keyframes bgLRextendAnime{
	0% {
		transform-origin:left;
		transform:scaleX(0);
	}
	50% {
		transform-origin:left;
		transform:scaleX(1);
	}
	50.001% {
		transform-origin:right;
	}
	100% {
		transform-origin:right;
		transform:scaleX(0);
	}
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.bgappearTrigger,
.bgLRextendTrigger{
    opacity: 0;
}


/* ------------------------------------------ CHARM */

.charm_box{
    margin: 0%;
    padding: 0;
    width: 100%;
    height: auto;
}

.charm_image_right{
    position: relative;
    margin: 0%;
    width: 50%;
    margin-left: auto;
    height: auto;
}

.charm_image_right img{
    width: 100%;
    height: auto;
}

.charm_com_left{
    position: absolute;
    top: 50%;
    left: -100%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width: 120%;
    height:auto;
    padding: 60px 8%;
    background: rgba(255,255,255,0.9);
}


/* ------------------------------------------ company */

.image_company {
    margin: 0% auto 3% auto;
    padding: 0%;
	width: 60%;
	height: auto;
    text-align: center;
}

.image_company img {
    width: 100%;
    height: auto;
}



/* ------------------------------------------ business */

.inner_box{
    width: 90%;
    height: auto;
    background: #fff;
    margin: 0 auto;
    padding: 60px 8%;

}

ul.items_box{
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    background: #fff;
}

ul.items_box li{
    width: 48%;
    height: auto;
    padding-bottom: 0.5em;
    padding-left:1em;
	text-indent:-1em;
    border-bottom: 1px solid #ddd;
}

ul.items_box li:nth-child(n+3){
    margin-top: 2%;
}

ul.items_box li::first-letter{
    font-size: 0.5em;
    margin-right: 3px;
    color: #bf5a40;
}


ul.facility_box{
    margin: 0 auto 8% auto;
    display: flex;
    justify-content: space-between;
}

.facility_box li{
   width: 48%;
    height: auto;
}

.facility_box li.facility_com{
    width: 35%;
}

.facility_box li.facility_image{
    width: 60%;
}

.facility_box li.facility_image .contact_image{
	margin:53px 0 0px 0;
}

.facility_box li.facility_image .contact_image img{
    width: 100%;
    height: auto;
}




/*画像の横幅を100%にしてレスポンシブ化*/
.gallery img,
.choice-btn img{
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.gallery{
    width: 100%;
    height: auto;
	margin:53px 0 10px 0;
}

.gallery li{
    width: 100%;
    list-style:none;
}

.slick-track{
    margin: 0;
    padding: 0;
    width: 100%;
    height:auto;
}

.slick-list{
    margin: 0;
    padding: 0;
    width: 100%;
    height:440px;
}



/*戻る、次へ矢印の位置*/
.slick-prev, 
.slick-next {
    position: absolute;/*絶対配置にする*/
  z-index: 3;
    top: 42%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/
    border-top: 2px solid #ccc;/*矢印の色*/
    border-right: 2px solid #ccc;/*矢印の色*/
    height: 25px;
    width: 25px;
}

.slick-prev {/*戻る矢印の位置と形状*/
    left:2.5%;
    transform: rotate(-135deg);
}

.slick-next {/*次へ矢印の位置と形状*/
    right:2.5%;
    transform: rotate(45deg);
}

.slick-arrow{
    display: none;
}

.slick-next:before {
    display: none;
}

/*選択するサムネイル画像の設定*/

.choice-btn{
    width: 75%!important;
    height: auto;
    margin: 0 auto;
    padding: 0;
    justify-content: space-between;
}

.choice-btn li{
    margin: 0% 0% 0% 0%;
	cursor: pointer;
	outline: none;
	background:#333;
	width:25%!important;
    height:auto;
    list-style:none;
}

.choice-btn li.bg_none{
    background: none;
}


.choice-btn li:nth-child(-n+4){
    margin: 0% 0% 1% 0%;
}

.choice-btn li img{
	opacity: 0.4;/*選択されていないものは透過40%*/
}

.choice-btn li.slick-current img{
	opacity: 1;/*選択されているものは透過しない*/
}

.choice-btn .slick-track {
	transform: unset !important;/*画面幅サイズ変更に伴うサムネイル固定*/
    width: 100%!important;
}


/* ----------------------------- making */

.making_box{
    margin: 5% auto 0% auto;
    padding: 5% 5%;
    background: #fff;
}

.making_number{
    margin-top: 1%;
    text-align: center;
    font-family: 'Rubik', sans-serif;
    color: #022751;
}

.making_number span{
    padding: 1% 1.5%;
    border: 1px solid #022751;
    font-size: 24px;
    letter-spacing: 0.05em;
}

h6.making_title{
    margin: 3% auto 5% auto;
    text-align: center;
    font-size: 20px;
    color: #022751;
    letter-spacing: 0.05em;
}

h6.making_title::after{
    display: block;
    content: "_";
    line-height: 0em;
    text-align: center;
    margin: 0 auto;
    padding: 0;
}

ul.making_image{
    display: flex;
    justify-content: center;
}

ul.making_image li{
    width: 33.333%;
    height: auto;
}

ul.making_image li img{
    max-width: 100%;
    height: auto;
}




/* ----------------------------- contact */


.contact_tel {
    margin: 3% 0% 0% 0%;
    width: 40%;
    background: #ededf1;
}
.contact_tel .tel_title {
    margin: 0%;
    padding: 5px;
	font-size:14px;
    letter-spacing: 0.05em;
    text-align: center;
    color: #fff;
    background: #3a3e71;
}

.contact_tel p {
    margin: 0%;
    padding: 20px 0%;
    font-size: 18px;
    text-align: center;
    
}



/* ----------------------------- back */

.bg_about_01{
    background: url("../about/img/bg_about_01.jpg") no-repeat;
    background-size: cover;
    background-position: center center;
}




/* ----------------------------- info */


.info_flex_box{
    margin-top: 3%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.info_flex_box::after{
  content:"";
  display: block;
  width:32%;
}

.info_flex_box img{
    width: 100%;
    height: auto;
}

.info_flex_box li{
    width: 32%;
    height: auto;
    letter-spacing: 0.05em;
}

.info_flex_box li:nth-child(n+4){
    margin-top: 3%;
}













/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    TABLET

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */



@media only screen and (max-width: 1199px){



/* ----------------------------------------------------------
   MAIN VISUAL AREA - TA
---------------------------------------------------------- */

.main_visual_area {
    width: 85%;
    margin-left: auto;
    height: 350px;
}

    
.ct_main_title_box {
    top: 55%;
    left: -13%;
}

h2 {
    font-size: 43px;
}

.ct_main_title_jp {
    margin: 10px 0% 0% 0%;
    font-size: 13px;
}

.main_visual_area.company {
    background-image: url("../company/img/main_img_sp.jpg");
}
    

/* ----------------------------------------------------------
   GENERAL PARTS - TA
---------------------------------------------------------- */

h5.ct_title {
    margin:0% 0% 30px 0%;
	padding:0% 0 0 1.5%;
	font-size:17px;
}
    
h5.ct_title span.branch{
	font-size:16.5px;
}
    
h5.recruite_title {
    margin:0% auto 4.5% auto;
	font-size:1.2rem;
}



/* ----------------------------------------------------------
   CONTENTS AREA - TA
---------------------------------------------------------- */

    
    
    
/* ------------------------------------------ items */
   
.charm_com_left{
    padding: 50px 8%;
}

    
.inner_box{
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 50px 6%;
}
    
ul.items_box li{
    width: 46%;
    height: auto;
}

    
/* ------------------------------------------ facility */

    
.gallery{
	margin:45px 0 10px 0;
    overflow: hidden;
}
    

    


/* ------------------------------------------ making */

.making_number{
    margin-top: 1%;
}

.making_number span{
    padding: 1% 1.5%;
    font-size: 22px;
    letter-spacing: 0.05em;
}

h6.making_title{
    margin: 3% auto 5% auto;
    font-size: 18px;

}
    

/* ----------------------------- contact */

.contact_tel {
    margin: 4% 0% 0% 0%;
    width: 60%;
}

.contact_tel .tel_title {
    padding: 3px;
	font-size:14px;
}

.contact_tel p {
    padding: 15px 0%;
    font-size: 14px;

}

}









/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    SMART PHONE

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */



@media only screen and (max-width: 599px) {



/* ----------------------------------------------------------
   MAIN VISUAL AREA - SP
---------------------------------------------------------- */

.main_visual_area {
    width: 85%;
    margin-left: auto;
    height: 200px;
}
 
.ct_main_title_box {
    top: 57%;
    left: -12%;
}

h2 {
    font-size: 25px;
}

.ct_main_title_jp {
    margin: 5px 0% 0% 0%;
    font-size: 11px;
}
    
.main_visual_area.company {
    background-image: url("../company/img/main_img_sp.jpg");
}

/* ----------------------------------------------------------
   GENERAL PARTS - SP
---------------------------------------------------------- */

h5.ct_title {
    margin:2% 0% 6% 0%;
	padding:0% 0 1.5% 2%;
	font-size:15px;
    line-height: 1.65em;
}
    
h5.ct_title span.branch{
	font-size:13.5px;
    padding: 0% 0% 0.5% 0;
    margin:0 2% 0 0%;
}


h5.ct_title span.career,
h5.ct_title span.part{
    margin-left: 2%;
    padding: 0.5% 1.5%;
}

h5.ct_title span.date{
    display: block;
    padding: 2% 1% 0 0%;
    margin: 0;
}
    
    
h5.recruite_title {
    margin:0% auto 10% auto;
	font-size:0.95rem;
}
    

/* ----------------------------------------------------------
   CONTENTS AREA - SP
---------------------------------------------------------- */

    
.greeting_flex_box p.ceo_name{
    margin-top: 2.5%;
    font-size: 15px;
}

.greeting_flex_box{
    margin: 0% auto 10% auto;
    padding: 0;
    width: 100%;
    height: auto;
    flex-wrap: wrap;
    justify-content: space-between;
}

/* image right + com left　*/

.greeting_image_right{
    margin:5% 0% 0% 0%;
    width: 100%;
    height: auto;
}

.greeting_com_left{
    margin:0% 0% 0% 0%;
    width: 100%;
    height: auto;
}

/* image laft + com right　*/

.greeting_image_left{
    margin:5% 0% 0% 0%;
    width: 100%;
    height: auto;
}

.greeting_com_right{
    margin:0%;
    width: 100%;
    height: auto;
}
    
/* order　*/
    
.greeting_flex_box .order_1{
    order: 1!important;
    margin-bottom: 3%;
}
    
.greeting_flex_box .order_2{
    order: 2!important;
}

    
/* ------------------------------------------philosophy */

.philosophy_box{
    padding: 8% 4%;
}

.philosophy{
    margin-bottom: 13%;
    font-size: 15px;
    line-height: 1.95em;
}

.philosophy span{
    padding-bottom: 1%;
    border-bottom: 1px solid #fff;
}
    
    
/* ------------------------------------------ CHARM */

.charm_box{
    margin: 0 0 25% 0;
}
    
.charm_image_right{
    position: relative;
    margin: 0%;
    width: 100%;
    margin:0;
    height: auto;
}

.charm_image_right img{
    width: 100%;
    height: auto;
}

.charm_com_left{
    position: absolute;
    top: 65%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    width: 90%;
    height:auto;
    padding: 8% 5%;

}

/* ------------------------------------------ company */

.image_company {
    margin: 0% auto 3% auto;
    padding: 0%;
	width: 100%;
	height: auto;
    text-align: center;
}

    
/* ------------------------------------------ item */

.inner_box{
    width: 100%;
    height: auto;
    padding: 6% 5%;
}
    
ul.items_box li{
    width: 100%;
    height: auto;
}

ul.items_box li:nth-child(n+2){
    margin-top: 3%;
}
  

.slick-track,
.slick-list{
    height:auto;
}
    
.choice-btn{
    width: 100%!important;
    height: auto;
}
    
/* ------------------------------------------ facility */
    
ul.facility_box{
    flex-wrap: wrap;
    margin: 0 0 8% 0;
}

.facility_box li{
   width: 100%;
    height: auto;
}

.facility_box li.facility_com{
   width: 100%;
   height: auto;
}

.facility_box li.facility_image{
   width: 100%;
   height: auto;
}
    
.facility_box li.facility_image .contact_image{
	margin:0% 0 0px 0;
}
    
    
/* ------------------------------------------ facility */

.choice-btn{
    width: 100%;
    height: auto;
}
    
.gallery{
	margin:10px 0 10px 0;
}
    
    
    
/* ------------------------------------------ making */

.making_box{
    margin: 5% auto 0% auto;
    padding: 8% 3%;
}
    
.making_number{
    margin-top: 1%;
}

.making_number span{
    padding: 1% 1.5%;
    font-size: 18px;
    letter-spacing: 0.05em;
}

h6.making_title{
    margin: 3% auto 8% auto;
    font-size: 16px;

}

ul.making_image li{
    width: 50%;
    height: auto;
}
    

/* ----------------------------- contact */

.contact_tel {
    margin: 8% 0% 0% 0%;
    width: 100%;
}

.contact_tel .tel_title {
    padding: 4px;
	font-size:12px;
}

.contact_tel p {
    padding: 15px 0%;
    font-size: 13px;

}

    
    
    
/* ----------------------------- info */


.info_flex_box{
    margin-top: 6%;
}

.info_flex_box::after{
  display: none;
}

.info_flex_box li{
    width: 48%;
    height: auto;
}

.info_flex_box li:nth-child(n+3){
    margin-top: 3%;
}
    
    
    
    
    
    
    

}



/*** END ***/
