
@charset "UTF-8";

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

	body{
		width: 100%;
		min-width: 320px;
	}
	.structure{
		width: 96%;
		margin: 0 auto;
	}
	.inner_structure{
		width: 96%;
		margin: 0 auto;
	}
	.phone_off{
		display:none;
	}
	.phone_off_b{
		display:none;
	}
	.phone_on{
		display:block;
	}

/* header
---------------------------------------------------- */
	.header{
		width: 100%;
	}
	.header_logo {
		float: none;
		width: 230px;
		margin-bottom: 20px;
	}
	.header_logo h1{
		margin-bottom: 5px;
	}
	.header_logo img{
		width: 100%;
		height: auto;
	}
	.header_logo p {
	    top: 22px;
	    left: 41px;
	    font-size: 14px;
	}
	.sp_pankuzu{
		margin-left: 10px;
	}
	.sp_pankuzu li {
		float: left;
		margin-right: 5px;
	}
	.sp_pankuzu li:first-child:after{
		font-family: 'icomoon';
		content: "\e600";
		margin-left: 5px;
	}


/* smp_nav
---------------------------------------------------- */
	.sp_menu_btn{
		padding: 10px;
		position: absolute;
		top: 29px;
		right: 12px;
		background: #127abb;
		color: #fff;
		cursor: pointer;
		font-size: 26px;
	}
	.sp_menu{
		display: none;
		margin-top: 10px;
	}
	.sp_menu a{
		color: #3f3f3f;
		text-decoration: none;
	}
	.sp_menu ul li a{
		display: block;
		padding: 15px 20px;
		border-bottom: 1px solid #fff;
		background: #eff0f0;
		text-align: left;
	}
	.sp_menu ul li a:after{
		display: block;
		float: right;
		font-family: "icomoon";
		content: "\e600";
	}
	.sp_menu ul li a:hover{
		border-bottom: 1px solid #fff;
		background: #e9e9e9;
	}


/* foot_nav
---------------------------------------------------- */
	.foot_sp_menu{
		margin-bottom: 10px;
	}
	.foot_sp_menu a{
		color: #3f3f3f;
		text-decoration: none;
	}
	.foot_sp_menu ul li a{
		display: block;
		padding: 15px 20px;
		border-bottom: 1px solid #fff;
		background: #eff0f0;
		text-align: left;
	}
	.foot_sp_menu ul li a:after{
		display: block;
		float: right;
		font-family: "icomoon";
		content: "\e600";
	}
	.foot_sp_menu ul li a:hover{
		border-bottom: 1px solid #fff;
		background: #e9e9e9;
	}

/* footer
---------------------------------------------------- */
	.foot_wrapper{
		/*margin-top: 0;*/
		padding: 0;
	}
	.foot_wrapper p {
		padding-top: 30px;
		font-size: 10px;
	}
	address {
		padding: 10px 3%;
		font-size: 10px;
	}
	address span{
		margin-left: 0;
		display: block;
	}
	.copy_bg{
		padding-bottom: 0;
	}
	small {
		padding: 15px 0;
		font-size: 10px;
	}
	.footer_link li{
		float: left;
		margin-bottom: 10px;
		margin-right: 7px;
	}
	.footer_link li:last-child{
		margin-right: 0;
	}

/* index
---------------------------------------------------- */
	.top_main_wrapper{
		/*background: #fff url(../images/bg.jpg)no-repeat center top;*/
		background: #1f3134;
		padding-bottom: 30px;
	}
	.movie {
		display: none;
	}
/* second
---------------------------------------------------- */
	.contents_wrapper{
		padding:15px 0 0;
	}
	.second_ttl{
		margin-bottom: 20px;
		padding-left: 15px;
		background-size: 7px 12px;
		background-position: left 7px;
		font-size: 18px;
    	box-sizing: border-box;
	}
	.second_ttl_m{
		margin-bottom: 20px;
		font-size: 16px;
	}
/* message
-------------------------- */
	.message_lead{
		float: none;
		width: 100%;
	}
	.message_lead .lead_text{
		padding: 25px 0 5px 0;
		font-size: 19px;
	}
	.message_lead .lead_text02{
		padding-bottom: 15px;
		text-align: right;
	}
	.message_img{
		float: none;
		width: 100%;
		margin-bottom: 15px;
	}
	.message_img img {
		width: 100%;
		height: auto;
	}
	.message_text{
		margin-bottom: 25px;
	}
	.message_list{
		margin-bottom: 35px;
	}
	.message_list li{
		padding:7px 0 7px 20px;
		background:url(../images/icon_maru.png) no-repeat left 11px;
		background-size: 15px 15px;
		font-size:16px;
	}

/* seido
-------------------------- */
	.seido .main_img {
		margin-bottom: 30px;
	}
	.seido .main_img img {
		width: 100%;
	}
	.seido .lead {
		margin-bottom: 30px;
		font-size: 18px;
	}
	.seido .main_img span.lead_w {
		display: none;
	}
	.seido dl dt.ttl_3 {
	}
	.seido_inner  {
	}
	.seido_inner  h3 {
	    background: url(../images/seido_icon.png) no-repeat left 6px;
	    background-size: 20px;
	    padding: 0 0 8px 31px;
	    margin: 45px 0 14px 0;
	    font-size: 20px;
	}
	.seido_inner p {
		margin-bottom: 15px;
	}
	.seido_inner dl {
		margin-bottom: 15px;
	}
	.seido_inner .left{
		width: auto;
		float: none;
	}
	.seido_inner .right{
		float: none;
		text-align: center;
	}
	.seido_inner .right img{
		width: 100%;
	}
	.seido_inner .seido_img {
		text-align: center;
	}
	.seido_inner .seido_img img:first-child{
		margin-right: 0;
		margin-bottom: 10px;
	}
	.seido_inner .seido_img img {
		width: 100%;
	}
	.seido_inner p.seido_img {
		margin-bottom: 40px;
	}
	.seido_inner ul.list{
		width: auto;
		margin:15px 0 10px;
		padding: 20px;
		box-sizing: border-box;
	}
	.seido_inner ul.list li{
		margin-bottom: 6px;
		font-size: 16px;
	}
	.seido_inner ul.list li:last-child{
		margin-bottom: 0;
	}
	.seido_inner ul.list li span{
		margin-right: 9px;
		color: #80c5ed;
	}

/* service
-------------------------- */
	.service_cont  h3 {
	    background: url(../images/seido_icon.png) no-repeat left 6px;
	    background-size: 20px;
	    padding: 0 0 8px 31px;
	    margin: 0 0 14px 0;
	    font-size: 20px;
	}
	.service {
		margin-bottom: 30px;
	}
	.service_inner {
		margin-bottom: 20px;
	}
	.service_inner li{
		list-style: disc;
		margin-left: 20px;
	}
	.service_inner dl dt{
		float: left;
		margin-right: 20px;
		border-right: 9px solid #e9e9e9;
		border-left: 9px solid #e9e9e9;
		border-top: 8px solid #e9e9e9;
		border-bottom:8px solid #e9e9e9;
	}
	.service_inner dl dd{
		float: left;
		width: 568px;
	}
	.service_inner dl dd span.develop_ttl{
		display: block;
		margin: 5px 0 10px 0;
		color: #ed7b00;
		font-size: 17px;
	}
	.service_main img{
		width: 100%;
	}
/* Q&A
-------------------------- */
	.faq_ttl {
		padding:10px 10px;
		border-bottom: 3px solid #6999c3;
	}
	.faq_ttl span{
		padding-left: 10px;
	}
	.faq_list{
		margin-bottom: 30px;
	}
	.faq_list li dl dt{
		padding-left: 10px;
	}
	.faq_list li dl dt span{
		padding: 15px 0 15px 30px;
		background-position: left 18px;
		font-size: 16px;	
	}
	.faq_list li dl dd{
		padding-left: 10px;
	}
	.faq_list li dl dd span{
		display: block;
		padding: 15px 0 15px 30px;
		background-position: left 18px;
		font-size: 14px;
	}
/* data_list
-------------------------- */
	.data .second_container {
		background: none;
	}
	.data .second_wrapper {
		background: none;
	}
	.data .second_ttl{
		font-size: 16px;
	}
	.data_list {
		margin-bottom: 40px;
	}
	.data_list li {
		float: left;
		width: 49%;
		margin:0 2% 15px 0;
	}
	.data_list li img {
		width: 100%;
	}
	.data_list li.list_end{
		margin:0 2% 15px 0;
	}
	.data_list li.sp_list_end{
		margin:0 0 15px 0;
	}

	.data_inner ul li {
		margin-bottom: 30px;
	}
	.data_inner ul p{
		float: left;
		width: 46px;
		padding:0;
		margin-right: 12px;
	}
	.data_inner ul p img {
		width: 100%;
	}
	.data_inner ul dl{
		float: none;
		width: auto;
	}
	.data_inner ul dl dt{
    	padding: 10px 0 20px;
		margin-bottom: 10px;
		border-bottom: 1px solid #c9c7c7;
		font-size: 19px;
		line-height: 1.3;
	}
	.data_inner ul dl dd{
		font-size: 15px;
		line-height: 1.7em;
	}
	.data_inner ul dl dd span{
		display: block;
	}
/* staff
-------------------------- */
	.staff_img{
		width: 60%;
		float: none;
		margin: 0 0 20px 0;
	}
	.staff_img img{
		width: 100%;
	}
	.staff_inner{
		float:none;
		width: inherit;
		margin-bottom: 10px;
	}
	.staff_name{
		margin-bottom: 20px;
		padding-bottom: 0;
		border-bottom: none;
	}
	.staff_name dl{
		float: none;
		padding-bottom: 3px;
		border-bottom: double #6fafd7;
	}
	.staff_name dl dt{
		font-size: 16px;
	}
	.staff_name dl dd{
		font-size: 25px;
	}
	.staff_name dl dd span{
		margin-left: 20px;
		font-size: 14px;
	}
	.staff_name dl dd span.staff_name_long{
		display: block;
		margin-left: 0px;
	}
	.staff_link{
		float: none;
	}
	.staff_info{
		float:none;
		margin-right: 0;
		width: 100%;
	}
	.staff_cont02 .staff_info{
		width: inherit;
	}
	.staff_info dl{
		margin-bottom: 10px;
	}
	.staff_info dl dt{
		float: left;
	}
	.staff_info dl dd{
		float: left;
	}
	.staff_info_b{
		width: inherit;
	}
/* interview
-------------------------- */
	.interview_bg{
		position: static;
	}
	.interview_bg img{
		width: 100%;
	}
	.interview_content.bg_01{
		background: none;
	}
	.interview_content.bg_02{
		background: none;
	}
	.interview_content.bg_03{
		background: none;
	}
	.interview_cont{
		position: static;
		width: auto;
		height: auto;
		padding:15px 0;
	}
	.interview_lead{
		font-size: 18px;
	}
	.interview_name{
		font-size: 18px;
	}
	.interview_name span.name_inner_a{
		display: inline;
	}
	.interview_name span.name_inner_b{
		display: block;
	}
	.interview_inner dd.interview_faq{
		height: auto;
		overflow: auto;
	}
	.interview_faq dt{
		margin-bottom: 15px;
		font-weight: bold;
	}
	.interview_faq dd span{
		color: #004986;
	}
	.thumbnail_inner{
		width: auto;
		padding-top: 0;
	}
	.thumbnail_inner ul li{
		width: 48%;
		margin:0 1px 20px 1%;
	}
	.thumbnail_inner ul li img{
		width: 100%;
	}
	.thumbnail_caption{
		font-size: 14px;
	}
	.thumbnail_caption:after{
	}
	.thumbnail_inner ul li:hover .thumbnail_caption{
	}

/* voice
-------------------------- */
	.voice .second_wrapper:after{
		height: 460px;
		margin-top:-228px;
	}
	.voice_wrap {
		background: none;
	}
	.voice_list ul{
		float: none;
		width: 100%;
		padding: 0;
	}
	.voice_list ul li {
		margin-bottom: 20px;
		padding:20px 15px;
		-webkit-border-radius: 8px;
		-moz-border-radius: 8px;
		-ms-border-radius: 8px;
		-o-border-radius: 8px;
		border-radius: 8px;
		font-size: 16px;
		position: relative;
	}
	.voice_list ul li span {
		display: block;
		text-align: right;
		padding-top: 30px;
		font-size: 14px;
	}
	.voice_list ul li.voice_bg_a{
		background:#4cb3d9;
		color: #fff;
		border:3px solid #0f92c3;
	}
	.voice_list ul li.voice_bg_b{
		background:#fff;
		color:#0f92c3;
		border: 3px solid #4cb3d9;
	}
	.voice_list ul li.voice_bg_a:after{
		content: "";
		display: none;
		position: absolute;
		bottom: -29px;
		right: 52px;

	}
	.voice_list ul li.voice_bg_b:after{
		content:"";
		display: none;
	}
/* recruitment
--------------------------*/
	.schedule ul{
	}
	.recruitment_img{
		width: 100%;
		text-align: center;
	}
	.recruitment_img img{
		width: 100%;
	}
	.recruitment ul.accordionBox li a{
		float: none;
		text-align: left;
		font-size: 14px;
	}
	.recruitment .accordion {
		display: block;
	    padding: 12px 20px;
	    margin: 30px 0 15px;
	    border: 1px solid #ccc;
    	background: #e5e5e5;
	    text-align: left;
	    font-size: 16px;
	    cursor: pointer;
	    position: relative;
	}
	.recruitment .accordion:before {
		content: "";
		display: block;
		position: absolute;
		bottom: -2px;
		left: 0;
		width: 100%;
		height: 2px;
		background: #B8B7B7;
	}
	.recruitment .accordion:after {
	    display: block;
	    content: "+";
	    position: absolute;
	    top: 10px;
	    right: 20px;
	    font-size: 20px;
	}
	.recruitment .accordion.active:after {
	    content: "−";
	}
	.recruitment .accordionBox {
		display: none;
	}

/* recruitment_inner
--------------------------*/
	.recruitment_inner {
		position: relative;
	}
	ul.sp_top_link {
		margin-bottom: 0;
		position: absolute;
	    top: 0px;
	    right: 5px;
	}
	ul.sp_top_link li {
	    width: 180px;
	}
	ul.sp_top_link li img {
	    width: 100%;
	}
	.recruitment_inner .second_ttl{
		margin-bottom: 30px;
	}
	.recruitment_inner ul li a{
		float: none;
		text-align: left;
		font-size: 14px;
	}
	.recruitment_inner .accordion {
		display: block;
	    padding: 12px 20px;
	    margin: 0 0 15px;
	    border: 1px solid #ccc;
    	background: #e5e5e5;
	    text-align: left;
	    font-size: 16px;
	    cursor: pointer;
	    position: relative;
	}
	.recruitment_inner .accordion:before {
		content: "";
		display: block;
		position: absolute;
		bottom: -2px;
		left: 0;
		width: 100%;
		height: 2px;
		background: #B8B7B7;
	}
	.recruitment_inner .accordion:after {
	    display: block;
	    content: "+";
	    position: absolute;
	    top: 10px;
	    right: 20px;
	    font-size: 20px;
	}
	.recruitment_inner .accordion.active:after {
	    content: "−";
	}
	.recruitment_inner .accordionBox {
		display: none;
	}

	.setsumeikai_info p {
		position: initial;
		margin-top: 20px;
	}
/* entry
-------------------------- */
	.entry .inner{
		padding: 25px 10px;
		background: #fff;
	}
	.entry .inner dl dt{
		float: none;
		width: auto;
		margin-bottom: 5px;
	}
	.entry .inner dl dd{
		float: none;
		width: auto;
	}
	.entry .inner dl dd input[type="text"],
	.entry .inner dl dd input[type="tel"],
	.entry .inner dl dd input[type="email"]{
		width: 96%;
	}
	.entry .inner p input[type="button"],
	.entry .inner p input[type="submit"]{
		width: 100%;
	}
/* 667px_media_end
-------------------------- */

}

/* 特別設置
---------------------------------------------------- */
	@media screen and (max-width:414px){
		.seido .second_wrapper:after{
			height: 246px;
		}
		.voice .second_wrapper:after{
			height: 360px;
		}
	}

	@media screen and (min-width:668px){
		.recruitment_inner .accordionBox {
			display: block !important;
		}
	}
