@charset "utf-8";

/* responsive Start */
/*===================================================================== */

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

/*=====================================================================
01. loading
======================================================================= */

  #loading img {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
    transform: translate(-50%, -50%);
    width: 180px; }


/*.main_txt
------------------------------------------------------------------------ */
#main-visual .main_txt {
	/*上下左右中央
------------------------------------------------------------------------ */
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 100%;
	text-align: center;
  height: 3.2rem;
/*------------------------------------------------------------------------ */
	z-index: 10;
}

#main-visual .main_txt img{
width: 270px;
	
}


/*.btn_scroll
------------------------------------------------------------------------ */

#main-visual .btn_scroll {
	overflow: hidden;
	position: absolute;
	bottom: 0;
	right: 30px;
	z-index: 99;
	width: 20px;
	height: 110px; 
}

#main-visual .btn_scroll .txt {
	font-family: "Palatino Linotype", "serif";
	font-style: italic;
  display: block;
	color: #FFF;
  transform: rotate(90deg);
  transform-origin: 0 100%;
  width: 100px;
  height: 20px;
  font-size: 10px;
  letter-spacing: 0.2em;
	margin: -10px 0 0 0;
  line-height: 1; }

#main-visual .btn_scroll a{
	text-decoration: none;
}
#main-visual .btn_scroll a:hover {
	opacity: 0.8;
	transition: 0.1s ease-out;
}


#main-visual .btn_scroll .bar {
  overflow: hidden;
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 1px;
  height: 100px;
  background-color: #FFF; }

 #main-visual .btn_scroll .bar i {
	display: block;
	position: absolute;
	width: 1px;
	background-color: #35318F; }


/*.pickup
------------------------------------------------------------------------ */
.pickup{
    display: none;
    
    
	width: 340px;
	height: 79px;
	padding: 30px;
	position: absolute;
	left: 0;
	bottom: 60px;
	background-color: rgba(255,255,255,0.96);
	border-radius: 0 9px 9px 0;
	z-index: 100;
}

.pickup .left{float: left; width: 213px; height: 20px;  margin-right: 20px;}
.pickup .left .ttl{float: left; width: 50%; height: 20px; font-size: 18px;  font-family: "Palatino Linotype", "serif"; color: #35318F;  }
.pickup .left .date{float: left; width: 50%; font-size: 11px; font-style: italic; text-align: right; color: #35318F;  height: 30px;  padding-top: 10px;}
.pickup .left .link{color: #000; width: 100%; margin-top: 0; font-size: 13px; line-height: 180%;}

.pickup .right{float: left; width: 107px; text-align: right;}

.pickup .right a  {
  overflow: hidden;
	display: block;
		width: 107px;
	height:  79px;
	margin: 0;
	padding: 0;
}

.pickup .right a  img {
	width: 107px;
	height:  79px;
	margin: 0;
	padding: 0;
  display: block;
  transition: 0.4s ease-out;
	overflow: hidden!important;
}
.pickup .right a img:hover {
  transform: scale(1.07) rotate(0.1deg);
  opacity: 0.6;
	transition: 0.2s ease-out;
}



/*=====================================================================
	# Navigation
======================================================================= */

.global_nav_sp{
	margin: 0 auto;
	width:90%;
	height: 74px;
	border-radius: 0 0 9px 9px;
	padding: 0 0 0 0;
	background-color: #FFF;
	box-shadow: 0 0 8px rgba(0,0,0,0.1);
	position: fixed;
	left: 50%;
	transform: translate(-50%,0);
    
    display: inherit;
    z-index: 100
}
    
.global_nav_sp .logo{width: 64px; margin: 9px auto 0 auto;}
.global_nav_sp .logo img{width: 100%;}

    
.menu-line {display: inherit;}
#navigation{ display: inherit;}

    
.menuarea{ width:38px; height: 100%; position: fixed; top: 29px; right:44px; z-index: 99999; text-align: center;}
.menuarea a{ width:38px; height: 16px; }

/* ハンバーガーメニュー*/
.menu-line,
.menu-line span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-line {
  position: relative;
	z-index: 2;
  top:0;
  width: 38px;
  height:16px;
}
.menu-line span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #35318F;
}
.menu-line span:nth-of-type(1) {
  top: 0;
}
.menu-line span:nth-of-type(2) {
  bottom: 0;
}

/* アニメーション*/
.menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(10px) rotate(-45deg);
  transform: translateY(10px) rotate(-30deg);
   background-color: #fff;
}
.menu-trigger.active span:nth-of-type(2) {
  -webkit-transform: translateY(-4px) rotate(45deg);
  transform: translateY(-4px) rotate(30deg);
background-color: #fff;
}


/* ナビゲーション */

#navigation{
  position: fixed;
  display: none;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
padding-bottom: 60px;
  background-color: rgba(37,37,104,0.7);
  z-index: 99998;
    /*positionにfixedを入れてもスクロール可にする設定*/
 overflow: auto;
 -webkit-overflow-scrolling: touch;

}

#navigation .navigation_inner{
  width: 90%;
  height: 100%;
    margin: 0 auto;
    padding-bottom: 80px;
    background-color: #3A3AAD;
}
#navigation .navigation_inner ul{margin: 0;padding: 0;}


#navigation .navigation_inner .navigation_menu{
	list-style: none;
}

#navigation .navigation_inner .logo{ width: 64px; margin: 0 auto 0 auto;}
#navigation .navigation_inner .logo img{ width: 100%; margin-top: 9px;}



#navigation .navigation_inner .navigation_menu .navigation_item{
  width: 86%;
  margin: 0 auto 0 auto;
  text-align: left;
}
#navigation .navigation_inner .navigation_menu .navigation_item:first-child{

}

#navigation .menu01,#navigation .menu02,#navigation .menu03,#navigation .menu04,#navigation .menu05,#navigation .menu06{
	font-size:15px;
	letter-spacing:.01em;
    border-bottom: 1px solid #242472;
    margin:0 0 20px 0;
}

#navigation .navigation_inner .navigation_menu .menu01 a,
#navigation .navigation_inner .navigation_menu .menu02 a,
#navigation .navigation_inner .navigation_menu .menu03 a,
#navigation .navigation_inner .navigation_menu .menu04 a,
#navigation .navigation_inner .navigation_menu .menu05 a,
#navigation .navigation_inner .navigation_menu .menu06 a
{
  display: block;
color: #FFF;
  padding: 20px 0 20px 40px;
  position: relative;
  text-decoration: none;
}

#navigation .navigation_inner .navigation_menu .menu01 a:before,
#navigation .navigation_inner .navigation_menu .menu02 a:before,
#navigation .navigation_inner .navigation_menu .menu03 a:before,
#navigation .navigation_inner .navigation_menu .menu04 a:before,
#navigation .navigation_inner .navigation_menu .menu05 a:before,
#navigation .navigation_inner .navigation_menu .menu06 a:before
{
content: "";
    position: absolute;
    top: 29px;
    left: 0;
    width: 18px;
    height: 2px;
    background-color: #FDD000;
    }

    
#navigation .navigation_inner .navigation_item .submenu {
        padding: 0; margin: 0;
    }

#navigation .navigation_inner .navigation_item .submenu li{
    width: 47%;
    float: left;
    padding: 15px 0;
    border-bottom: 1px solid #242472;
    background: url("../images/arrow_sp.png") no-repeat;
    background-size: 20px 20px;
    background-position: 0 16px;
    }

    
#navigation .navigation_inner .navigation_item .submenu li:nth-of-type(1) {
  margin-right: 6%;

}
#navigation .navigation_inner .navigation_item .submenu li:nth-of-type(3) {
  margin-right: 6%;
}
    
#navigation .navigation_inner .navigation_item .submenu li a{
    width: 100%;
    padding-left: 20%;
    display: block;
    font-size: 13px;
    text-decoration: none;
    color: #FFF;
    }

#navigation .navigation_inner .navigation_item .submenu li a.small{
        font-size: 10px;
    letter-spacing: -.03em;
    padding: 5px 0 5px 20%;
    }
    
    
    
/*.MEGA MENU
------------------------------------------------------------------------ */
#mdd_overlay{display:none;}
#mdd_nav_wrap {display: none;}



/*=====================================================================
02. layout
======================================================================= */


#wrap {
  overflow: hidden;
  position: relative;
  box-sizing: border-box;
  width: 100%;
  min-width: 100%;
  padding: 0;}

#wrap_detail {
  overflow: hidden;
  position: relative;
  box-sizing: border-box;
  width: 100%;
  min-width: 100%;
  padding: 0;}
 

.contentsarea{
	position: relative;
	width: 100%;
	margin: 0 auto;
}



/*** header ***/
#header {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 999;
  width: 100%;
  min-width: 100%; }



/*=====================================================================
03. Index
======================================================================= */


/* News block
------------------------------------------------------------------------ */

.newsblock{width: 90%;  margin:0 auto 0 auto; position: relative;}

.recentnews{
	width:100%;
	margin: 0 auto 20px auto;
	position: relative;
	
}

.recentnews a{
display: block;	
	width:100%;
	height: 64px;
	background-color: #F4F4F4; 
	border-radius: 32px;
	background-image: url("../images/arrow_news.png");
	background-size: 28px auto;
	background-position: 20px 18px;
	background-repeat: no-repeat;
	transition: all 0.3s ease;
}

.recentnews a:hover{
	background-color:#EFEFEF;
	transition: all 0.1s ease;
}

.recentnews a:hover .ttl{
	text-decoration: none;
}

.recentnews .txt{position: absolute; top: 6px; left:62px; text-decoration: none;}
.recentnews .txt .date{font-size: 11px; font-style: italic;}
.recentnews .txt .ttl{font-size: 12px; text-decoration: underline;}
.recentnews .txt .ttl:hover{text-decoration: none;}

.recentnews  .pcnone{display: inherit;}
.newsblock .spnone{display: inherit;}
.newsblock  .pcnone02{display: none;}


/* Btn_area block
------------------------------------------------------------------------ */

.btn_area{width: 100%; height: 25px; margin: 20px auto 0 auto; position: relative;}


.btn_category {width: 140px; font-size:13px; letter-spacing:.04em; position: absolute; top:0; right: 10px;}

.btn_category a{display: block; color: #35318F; text-decoration: none; }
.btn_category a::after {
	content: "";
	display: block;
	border-bottom: 1px solid #35318F;
	transition: all .3s ease;
	width: 120px;
	height: 25px;
	background-image: url(../images/arrow_news.svg);
	background-repeat: no-repeat;
	background-size: 12px auto;
	background-position: -20px 0;

}

.btn_category a:hover::after {
  width: 100%;
	height: 25px;
	background-image: url(../images/arrow_news.svg);
	background-repeat: no-repeat;
	background-size: 12px auto;
	background-position: 0 0;

}

.btn_category .andmore {
position: relative;
	height:6px;
	margin: 0; padding: 0;
	transition: all .3s ease;
	transition-delay: 0;
 	left: 0px;
}

.btn_category a:hover .andmore {
	position: relative;
	height:6px;
	margin: 0; padding: 0;
	transition: all .35s ease;
	transition-delay: 0.06s;
	left: 30px;
}


.btn_area02{width: 100%;  height: 36px;  margin: 30px auto 0 auto; position: relative; }

.btn_category02 {  font-size:12px;  letter-spacing:.04em; position: absolute; top: 0; right: 30px; }

.btn_category02 a{
	 width: 200px; height: 36px; border-radius: 18px; 
	background-color: #EFEFF6; 
	text-align: center; text-decoration: none;color: #35318F; 
	background-image: url("../images/arrow_news.png");
	background-size: 20px auto;
	background-position: 10px 8px;
	background-repeat: no-repeat;
	transition: all 0.3s ease;
/*　box要素縦中央 */
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */
 -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
 justify-content: center; /* 横方向中央揃え */

}

.btn_category02 a:hover{background-color: #EFEFF6; transition: all 0.1s ease;}
.btn_category02 a p{margin-left: 12px;}



/* vertical_ttl
------------------------------------------------------------------------ */

.newsblock .vertical_ttl{
	width: 50%;
	color: #35318F;
	font-size: 13px;
	font-family: "Palatino Linotype", "serif";
	font-style: italic;
	font-weight: bold;
	position: relative;
	text-align: right;
	transform: none;
	top: 0;
	left: 0;
    margin: 44px 0 20px 50%;
}

.newsblock .vertical_ttl:before{
	content: "";
	width: 100%;
	height: 3px;
	background-color: #35318F;
	position: absolute;
	top: -14px;
	left: 0;
}


.detai_body .vertical_ttl{
	width: 50%;
	color: #35318F;
	font-size: 11px;
	font-family: "Palatino Linotype", "serif";
	font-style: italic;
	font-weight: bold;
	position: relative;
	text-align: right;
	transform: none;
	top: 0;
	left: 0;
    margin: 40px 0 20px 50%;
}

.detai_body .vertical_ttl:before{
	content: "";
	width: 100%;
	height: 3px;
	background-color: #35318F;
	position: absolute;
	top: -14px;
	left: 0;
}


/* index message
------------------------------------------------------------------------ */

.index_message_sp{
    display: inherit;
	margin: 40px 0 0 0 ;
	width: 100%;
}

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

    
.index_message_sp .body{
	width: 100%;
	background-color: #35318F;
    margin-top: -5px;
    padding: 30px 30px 25px 20px;
}

.index_message_sp .ttl{
    width: 60%;
}
.index_message_sp .ttl img{
	width: 100%;
}

.index_message_sp .txt{
	margin-left: 40px;
	color: #FFF;
	font-size: 12px;
	line-height: 220%;
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic,"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: 500;
}

.index_message{display: none;}
    

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

.index_business{
	display: none;
}

.index_business_sp{
	display: inherit;
    width: 100%;
    margin-top: 73px;
    position: relative;
}


.index_business_sp .ttl{
	color: #35318F;
	position: absolute;
	top: -44px;
	left: 0;
	z-index: 100;
}

.index_business_sp .ttl .en{
	font-family: "Palatino Linotype", "serif";
	font-weight: bold;
	font-size: 18px;
	background-color: #FFCE00;
	padding: 8px 17px 8px 17px;
}

.index_business_sp .ttl .jp{
	width: 65px;
	text-align: left;
	padding: 5px 0 10px 17px;
	font-size: 12px;
	background-color: #FFCE00;

}

.index_business_sp .block{
    width:90%;
    margin-bottom: -5px;
    padding-left: 5%;
    background-color: #FFCE00;
    position: relative;
}
    
.index_business_sp .block:last-child{padding-bottom: 5%;}
    
.index_business_sp .block a{display: block;}
    
.index_business_sp .block img{width: 100%; }

.index_business_sp .block .arrow {width: 50px; position: absolute; top: 45px; right: 20px; z-index: 1;}
.index_business_sp .block .arrow img{width: 100%;}

.index_business_sp .block p {position: absolute; top:42px; left:50px; color: #FFF; font-weight: bold;}
    

 .business_page01{
    margin-top: 30px!important;
}
.index_business_sp .business_page02{
    background-color: #F4F4F4;
}

/* bnr area
------------------------------------------------------------------------ */
    
.bnr_area{display: none;}
    
.bnr_area_sp{
    display: inherit;
	width: 100%;
	margin: 30px 0 30px 0;
	position: relative;    
    padding: 0
	}
    
.bnr_area_sp img{width: 100%;}


.bnr_area_sp .bgarea{
	position: absolute;
	bottom: -16px;
	right: 20px;
	z-index: -1;
	width: 100%;
	height: 80px;
	background-color: #F4F4F4;
    background-image: none;
}

.bnr_area_sp a{
    display: block;
	width: 100%;
	height: auto;
	padding: 0;
    background-image:none;
}
		

/*
.recruit_bnr {
  position: relative;
	width: 940px;
	height: 340px;
  display: block;
  border: 2px solid transparent;
  text-align: center;
  text-decoration: none;
  outline: none;
	  transition: 0.2s ease-in-out;
		background-image: url("../images/bnr_arow.png");
	background-size: 27px 46px;
	background-repeat: no-repeat;
	background-position: right 40px top 150px;
}
*/


/*=====================================================================
04. Detail
======================================================================= */


#contents_area{width: 100%; margin: 0 auto 0 auto;}
#contents_visual{width: 100%; margin: 0; height: 200px; overflow: hidden; position: relative;}

#contents_visual.about{
    background-image: url("../images/mainvisual_detail01.jpg"); 
    background-size: auto 200px; overflow: hidden; background-position: center center;}
#contents_visual.business{
    background-image: url("../images/mainvisual_detail02.jpg"); 
    background-size: auto 200px; overflow: hidden;}
#contents_visual.products{
    background-image: url("../images/mainvisual_detail03.jpg"); 
    background-size: auto 200px; overflow: hidden;}
#contents_visual.recruit{
    background-image: url("../images/mainvisual_detail04.jpg"); 
    background-size: auto 200px; overflow: hidden;}

#contents_visual .detail_ttl{position: absolute; left:5%; top: 105px;}
#contents_visual .detail_ttl .en{
    font-size: 16px;
    font-weight: bold;
	letter-spacing: .04em;
	color: #35318F;
	font-family: "Palatino Linotype", "serif";
    background-color: #FFF;
    padding: 6px 10px;
}
#contents_visual .detail_ttl .jp{
    font-size: 11px;
	letter-spacing: .02em;
	color: #35318F;
    background-color: #FFF;
     padding: 8px 10px 8px 10px;
}


.detai_section{width: 90%; margin: 30px auto 0 auto;}
.detai_body{width: 100%; margin: 0 auto 0 auto; position: relative;}

.detai_body dl{width: 100%; margin: 0 0 0 0; padding: 0;}
.detai_body dt{padding: 15px 0 15px 0; margin: 0 0 0 0; width: 25%; float: left;  border-top: 1px #35318F solid; font-size: 13px; font-weight: bold; color: #35318F; line-height: 200%;}
.detai_body dd{padding: 15px 0 15px 0; width: 62%; float: left; border-top: 1px #E5E5E5 solid; font-size: 13px; color: #000; line-height: 200%;}


.detail_btn ul{margin: 0; padding: 0;}
.detail_btn li{ float: left;  text-align: center; font-size: 13px; letter-spacing: .02em; margin: 0;}

.detail_btn a{  position: relative; display: block; text-decoration: none; border-bottom:1px solid  #E5E5E5; padding:4px 0 15px; 
background-image: url("../images/arrow_detail02.png"); background-size: 22px 22px; background-position: 0 3px; background-repeat: no-repeat;}

.detail_btn a.current{ background-image: url("../images/arrow_detail01.png"); }

.detail_btn a::after{
  position: absolute;
  bottom: -1px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #35318F;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .35s ease;
}
.detail_btn a:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}

.detail_btn a:hover {background-image: url("../images/arrow_detail01.png"); }


/* news
------------------------------------------------------------------------ */
.news_section{width: 85%; margin:0 auto 0 auto; position: relative;}

.news_ttl{color: #35318F; font-size: 10px; text-align: center; margin: 90px 0 20px 0;}
.news_ttl h2{
    font-size: 26px;
	letter-spacing: .08em;
	color: #35318F;
	font-family: "Palatino Linotype", "serif";
    margin-bottom: 0;
    }

.cnt_ttl{ border-top: 3px solid #35318F; padding-top: 20px; color: #35318F;  font-size: 18px; font-weight: bold;}
.cnt_date{font-size: 11px; margin-top: 10px;}
.cnt_body{font-size: 15px; line-height: 180%; margin: 20px 0 0 0;}
.cnt_body img{max-width:100%; height: auto; margin-bottom: 20px;}

.news_btn_area{width: 100%; height: 25px; margin: 20px 0 45px 0; position: relative;}


/* about
------------------------------------------------------------------------ */
.detail_btn .about li{width: 47.5%; }
.detail_btn .about li a{width: 100%;}
    
.detail_btn .about li:nth-of-type(1) {margin:0 5% 0 0;}
.detail_btn .about li:nth-of-type(3) {margin:20px 5% 0 0;}
.detail_btn .about li:nth-of-type(4) {margin:20px 0 0 0;}


.about_message{
	margin: 30px 0 0 0 ;
	width: 100%;
	min-width: 100%;
	display: inherit;
}

    
.about_message .col01{
	display: none;
}
.about_message .col02{
	width: 100%;
	background-color: #35318F;
	padding:40px 0 30px 0;
    margin-right:0;
}

.about_message .col02 .left{
float: none;
width: 100%;
padding-top: 0;
}

.about_message .col02 .left .ttl{
    color: #FFF;
    font-size: 22px;
    font-weight: bold;
    letter-spacing: .18em;
    width: 80%;
	margin: 0 auto;
}

.about_message .col02 .left .txt{
	margin-left: 0;
	color: #FFF;
    width: 80%;
    margin: 0 auto;
	font-size: 15px;
	line-height: 200%;
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic,"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: 500;
}
    
.about_message .col02 .left .txt .pcnone{display: none;}
    
.about_message .col02 .left .txt .second{margin-top: 20px;}

.about_message .col02 .right{
display: none;
}

    
 .about_message .sp_image{display: inherit; width: auto; height: 200px; overflow: hidden;}
 .about_message .sp_image img{width: 100%;}
    

/* company
------------------------------------------------------------------------ */
.detai_body dd .adress{display: none;}
.detai_body dd .adress_sp{display:inherit; font-size: 12px;}

    
.company_img{width: 100%; margin:0 0 30px 0;}
.company_img img{width: 100%;}


/* access
------------------------------------------------------------------------ */
.detai_body .access{width: 100%; margin: -10px auto 0 auto;}
.detai_body .access iframe{margin-bottom: 15px;}

.access_name{background-color: #35318F; color: #FFF; font-size: 12px; margin:0 0 20px; padding: 8px 13px 6px 13px; display: inline-block;}
.access_body{font-size: 13px; line-height: 180%; color: #35318F;}
    .access_body a{color: #35318F;}

.access_mt{margin-top: 30px;}


/* recruit
------------------------------------------------------------------------ */
    
.detail_btn .recruit li{width: 47.5%; }
.detail_btn .recruit li a{width: 100%;}
    
.detail_btn .recruit li:nth-of-type(1) {margin:0 5% 0 0;}
    

.recruit_ttl{font-size:20px; line-height: 190%; margin-bottom: 15px; color: #35318F; text-align: center; letter-spacing: .08em; font-weight: bold;}

.recruit_body{font-size:15px; line-height: 200%; text-align: left;}
.recruit_body p{margin-bottom: 30px; }
.recruit_body .spnone{display: none;}

.recruit_name{background-color: #35318F; color: #FFF; font-size: 13px; margin:0 0 10px 0; padding: 10px 15px 8px 15px; display: inline-block;}
.recruit_name02{background-color: #35318F; color: #FFF; font-size: 13px; margin:0 0 40px 0; padding: 10px 15px 8px 15px; display: inline-block;}
.recruit_cate{font-size:15px; color: #35318F; padding: 16px 17px; margin-bottom: 60px; border: 1px solid #35318F;}

.recruit_ttl02{font-size:18px; color: #35318F; font-weight: bold;  letter-spacing: .08em; margin: 40px 0 0 0; padding: 0 0 0 40px; position: relative;}
.recruit_ttl02:before{content: ""; width: 25px; height: 2px; background-color: #FDD000; position: absolute; top: 10px; left: 0; }

.recruit_body02{font-size:13px; line-height: 200%; margin: 20px 0 0 40px;}
.recruit_margin{margin-top:80px;}



/* business
------------------------------------------------------------------------ */
    
.detail_btn .business li{width: 47.5%; }
.detail_btn .business li a{width: 100%;}
    
.detail_btn .business li:nth-of-type(1) {margin:0 5% 0 0;}
.detail_btn .business li:nth-of-type(3) {margin:20px 5% 0 0;}
.detail_btn .business li:nth-of-type(4) {margin:20px 0 0 0;}

.detail_btn .business .small01{font-size: 11px; text-align: right;}
.detail_btn .business .small02{font-size: 11px; text-align: center;}


.business_ttl01{width: 100%; margin-bottom: 30px;}
.business_ttl01 .left{width: 100%; float: none;}

.business_ttl01 .left .ttl{font-size: 20px; font-weight: bold; letter-spacing: .12em; color: #35318F; line-height: 190%; position: relative; padding-left:20px; }
.business_ttl01 .left .ttl:before{content:""; height: 57px; width: 2px; background-color: #FDD000; position: absolute; top: 10px; left: 0;}

.business_ttl01 .right{width: 100%; float: none; font-size:15px; line-height: 220%; margin-top: 20px;}

.business_mode{width: 100%; margin-bottom: 140px;}
.business_mode .col01{width: 0; height: 0; background-color: aqua;}
.business_mode .col02{background-color: #FFF; width: 980px; margin: 0 auto; padding: 0;}
.business_mode .col03{width: 200%; height: 100%; background-color: #F4F4F4; position: absolute; top: 50px; left: -50px;}

.business_ttl02{font-size:20px; color: #35318F; font-weight: bold;  letter-spacing: .08em; margin: 0 0 0 0; padding: 0 0 0 30px; position: relative;}
.business_ttl02:before{content: ""; width: 20px; height: 2px; background-color: #FDD000; position: absolute; top: 14px; left: 0; }
.business_body01{font-size:15px; line-height: 200%; margin: 20px 0 0 0;}

.business_btnarea{width: 100%; margin-bottom: 30px;}
.business_btnarea  a{
	float: left;
    font-size: 11px;
    font-weight: bold;
	 width: 47.5%; 
	height: 34px; 
	margin-right: 0;
	border-radius: 17px; 
	background-color: #EFEFF6; 
	text-align: center; text-decoration: none;color: #35318F; 
	transition: all 0.3s ease;
/*　box要素縦中央 */
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */
 -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
 justify-content: center; /* 横方向中央揃え */

}

.business_btnarea  a:last-child{margin-right: 0;}
    
.business_btnarea a:nth-of-type(1) {margin:0 5% 15px 0;}
.business_btnarea a:nth-of-type(2) {margin:0 0 15px 0;}
.business_btnarea a:nth-of-type(3) {margin:0 5% 0 0;}
    
.business_btnarea  a:hover{background-color: #DCDCEA; transition: all 0.1s ease;}

.business_cate{font-size:15px; color: #35318F; padding: 10px 11px; margin:30px 0 20px; border: 1px solid #35318F;}
.business_img{margin:25px 0 0;}
.business_img img{width: 100%;}
.business_body02{font-size:13px; line-height: 200%; margin: 0 0 0 0;}


/* products
------------------------------------------------------------------------ */
.products_body01{font-size:13px; line-height: 200%; margin: 40px 0 0 0;}


/* contact
------------------------------------------------------------------------ */
.contact_section{width: 90%; margin:0 auto 0 auto; position: relative;}
.contact_cate{width: 80%; margin: 0 auto 20px auto; font-size:15px; color: #35318F; padding: 3% 5%; border: 1px solid #35318F;}
.contact_body{width: 90%; font-size:13px; line-height: 200%; margin: 0 auto;}
.contact_body span{font-weight: bold;}



.form_mustarea{width: 100%; margin: 0;}

.form_must{width:60px; text-align: left; float: right; background-image: url(../images/form_listimage.png); background-size: 9px 9px; background-repeat: no-repeat; background-position: 0 4px; padding:2px 0 0 18px; font-size: 12px; letter-spacing:.08em; margin:-10px -10px 0 0; color:#35318F;}

.formarea{width: 100%; margin: 0 auto 0 auto ; etter-spacing:.08em;}

.formname {
	width:100%;
	float: none;
	margin:0 0 12px 0;
	line-height:140%;
	color:#35318F;
	background-image: url(../images/form_listimage.png);
	background-size: 9px 9px;
	background-repeat: no-repeat;
	background-position: 0 17px;
	padding:8px 0 0 25px;
}


.formname02 {
	width:100%;
	float: none;
	margin:0 0 12px 0;
	line-height:140%;
	color:#35318F;
	padding:8px 0 0 0;
}

.formname .en,.formname02 .en{font-size: 16px; font-family: "Palatino Linotype", "serif"; letter-spacing: .04em; font-weight: bold; }
.formname .jp,.formname02 .jp{font-size: 11px;}
.formname .error,.formname02 .error{font-size: 12px!important;}



  .formborder input {
      -webkit-appearance: none;
      border-radius: 0;
	width: 90%;
	float: none;
	padding: 5%;
	color:#35318F;
	border: 1px solid #35318F;
	font-size: 100%;
	margin-bottom: 20px;
}


  .formborder textarea {
      -webkit-appearance: none;
      border-radius: 0;
	width: 90%;
	padding: 5%;
	color:#35318F;
	border: 1px solid #35318F;
	font-size: 100%;
}


.btn_submit {
	width:90%;
	margin: 30px auto 30px auto ;
}

.btn_submit input {
      -webkit-appearance: none;
      border-radius: 0;
	width:100%;
	text-align: -9999px;
	height:78px;
	background-image:url(../images/form_submit.png);
	background-size:auto 78px;
	border: none;
    background-position: 0 0;
    background-color: transparent;
	cursor: pointer; 
}

.thankstitle{font-size: 20px; font-weight: bold; text-align: center; color:#35318F; margin-bottom: 10px;}
.thanksbody{font-size: 13px; line-height: 240%; text-align: center; color:#35318F; margin-bottom: 30px;}
    
    
/*=====================================================================
05. Footer
======================================================================= */


#footer{width: 100%;  min-width: 100%; position: relative; margin:100px 0 0 0; display:inherit; }

#footer .left{width:100%; display: inherit; background-color: #F9F9F9; padding: 30px 30px 30px 35px;}
#footer .left h2{width: 160px;}
#footer .left h2 img{width: 100%;}
#footer .left .adress{font-size: 12px; line-height: 200%; margin: 20px 0 0 0;}


#footer .btnarea{width: 252px;  margin: 30px 0 0 0;}

#footer .btnarea .btn{font-size: 12px;}

#footer .btnarea .btn  a{
	float: left;
	 width: 106px; 
	height: 28px; 
	margin-right: 20px;
	border-radius: 14px; 
	background-color: #EFEFF6; 
	text-align: center; text-decoration: none;color: #35318F; 
	transition: all 0.3s ease;
/*　box要素縦中央 */
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */
 -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
 justify-content: center; /* 横方向中央揃え */

}

#footer .btnarea .btn  a:hover{background-color: #DCDCEA; transition: all 0.1s ease;}


#footer .snsarea{width: 65px;  margin-top:40px; }
#footer .snsarea .facebook{margin-right: 37px; float: left;}
#footer .snsarea .facebook img{width: 9px; height: auto;}
#footer .snsarea .insta{float: left;}
#footer .snsarea .insta img{width: 19px; height: auto;}



#footer .right{width: 100%; min-width: 100%; padding: 0;  display: inherit; background-color: #35318F; color: #FFF; list-style: none;}
#footer .menuarea {display: none;}


#footer .footarea{width: 100%; text-align: left; margin-top: 0; padding: 35px 0 35px 0;}
#footer .footarea .btn{width: 100%; margin:0 0 20px 35px; text-align: left; }
#footer .footarea .btn img{width: 130px;}
#footer .footarea .copyright{font-size: 10px; color: #FFF;  margin: 0 0 0 30px;}



/* Page top
------------------------------------------------------------------------ */

#pageTop {
	width:160px;
	margin: 0 0 0 0;
	text-align: center;
	z-index: 100;
    position: fixed;
    right: 0;
        bottom: 0;
}

#pageTop a {
	width: 160px;
	height: 60px;
	position: relative;
	z-index: 1;
		font-size: 12px;
	letter-spacing: .08em;
	background-color: #FFCE00;
	color: #35318F;
	font-family: "Palatino Linotype", "serif";
	text-decoration: none;
/*　box要素縦中央 */
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */
 -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
 justify-content: center; /* 横方向中央揃え */
}
#pageTop a:hover{
	color: #35318F;

}
#pageTop a::after {
	position: absolute;
	content: "";
	width: 0;
	height: 100%;
	top: 0;
	right: 0;
	z-index: -1;
	background-color: #FFCE00;
	transition: all 0.45s cubic-bezier(0.215, 0.61, 0.325, 1) 0s;
}
#pageTop a:hover:after {
	left: 0%;
	right: auto;
	width: 100%;
	
}




/* 404
------------------------------------------------------------------------ */

.notfound_btn{width: 200px; margin: 0 auto  80px auto;}

.notfound_btn  a{
	 width: 200px; 
	height: 36px; 
    font-size: 14px;
	margin-right: 20px;
	border-radius: 18px; 
	background-color: #EFEFF6; 
	text-align: center; text-decoration: none;color: #35318F; 
	transition: all 0.3s ease;
/*　box要素縦中央 */
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */
 -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
 justify-content: center; /* 横方向中央揃え */

}

.notfound_btn  a:hover{background-color: #DCDCEA; transition: all 0.1s ease;}



/* responsive End */
/*===================================================================== */
}