@charset "utf-8";
@media screen and (max-width : 480px), screen and (max-width : 740px) and (orientation: landscape) {
/* ==================================================
reset
================================================== */
body {
	-webkit-text-size-adjust: none;
	background: none;
	line-height: 1.5;
	font-size: 94%;
}
li,
dt,
dd,
table {
	line-height: 1.5;
}
select,
input[type="text"],
textarea {
	width: 100% !important;
	height: auto !important;
	box-sizing: border-box;
	display: block;
}
#wrap_header,
#wrap_gnavi,
#wrap_title,
#wrap_pnavi,
#wrap_main,
#top_slide,
#wrap_top_link,
#wrap_top_main,
#wrap_top_reason,
#wrap_top_business,
#wrap_top_works,
#wrap_top_skills,
#wrap_top_news,
#wrap_fnavi,
#wrap_footer_contact,
#wrap_footer_recruit,
#wrap_footer_linkbanner,
#wrap_footer {
	width: 100%;
	min-width: 320px;
	clear: both;
}
#header,
#gnavi,
#title,
#pnavi,
#main,
#top_link,
#top_main,
#top_reason,
#top_business,
#top_works,
#top_skills,
#top_news,
#fnavi,
#footer_contact,
#footer_recruit,
#footer_linkbanner,
#footer {
	width: 100%;
	box-sizing: border-box;
}
.sp_only {
	display: block;
}
.pc_only {
	display: none !important;
}
/* ==================================================
header
================================================== */
#wrap_header {
	padding: 0;
	border-bottom: 1px solid #CCCCCC;
}
#header {
	width: 100%;
	min-width: inherit;
	height: 56px;
	padding: 8px 10px 0;
	box-sizing: border-box;
	position: relative;
}
#hlogo {
	width: 100%;
	padding: 0;
	display: block;
}
#hlogo p:first-child {
	display: none;
}
#hlogo h1,
#hlogo p {
	padding: 0;
	text-align: left;
}
#hlogo h1 img,
#hlogo p img {
	width: auto;
	height: 40px;
}
#hinfo {
	display: none;
}
#sp_menu {
	display: block;
	position: absolute;
	top: 8px;
	right: 5px;
	width: 40px;
	height: 40px;
	background-color: #555;
	cursor: pointer;
}
#sp_menu span {
	display: block;
	position: absolute;
	top: 19px;
	left: 25%;
	width: 50%;
	height: 2px;
	background-color: #fff;
	font-size: 0;
}
#sp_menu span::before {
	content: "";
	display: block;
	position: absolute;
	top: -8px;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #fff;
}
#sp_menu span::after {
	content: "";
	display: block;
	position: absolute;
	top: 8px;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #fff;
}
/* ==================================================
gnavi
================================================== */
#wrap_gnavi {
	display: none;
}
#gnavi {
	display: none;
	width: 100%;
	background: none;
	background-color: #555555;
	position: absolute;
	top: 56px !important;
	left: 0;
	z-index: 50;
}
#gnavi ul {
	display: block;
	width: 100%;
	margin: 0;
	background: none !important;
}
#gnavi ul li {
	display: block;
	background: none !important;
	border-bottom: #FFFFFF 1px solid;
}
#gnavi ul li a {
	display: block;
	padding: 10px;
	background: none !important;
	color: #FFFFFF;
	text-align: left;
	font-size:120%;
}
#gnavi ul li a:hover,
#gnavi ul li a.active {
	background: none;
}
#gnavi li a.active::after,
#gnavi li a:hover::after {
	content: none;
}
#gnavi li ul {
	position: inherit;
	width: 100%;
	left: 0;
}
#gnavi li ul li,
#gnavi li:hover ul li {
	height: auto;
	opacity: 1;
	border-top: 1px solid #ffffff;
	border-bottom: none;
	background-color: #333333 !important;
}
#gnavi li ul li a {
	padding: 10px 10px 10px 30px;
	font-size: 90%;
}


/* ==================================================
pnavi
================================================== */
#wrap_pnavi {
	display: none;
}
/* ==================================================
title
================================================== */
#title h1,
#title p.ttl {
	padding: 12px 0;
	font-size: 140%;
}
/* ==================================================
footer
================================================== */
/* footer_contact
--------------------------- */
#wrap_footer_contact {
	background: #ffffff;
	padding: 0;
}
#wrap_footer_contact::before {
	content: none;
}
#footer_contact .title {
	display: none;
}
#footer_contact .lead {
	display: none;
}
#footer_contact #fcontact {
	display: block;
}
#footer_contact #fnumber {
	display: none;
}
#footer_contact .link {
	display: block;
	width: 100%;
	border-top: 1px solid #333333;
	border-bottom: 1px solid #333333;
}
#footer_contact .link a {
	display: block;
	font-size: 100%;
	font-weight: normal;
	background: #ffffff url(img/contents/link_button_icon2.gif) no-repeat right center;
	color: #333333;
	padding: 10px;
	text-align: left;
}
/* footer_recruit
--------------------------- */
#wrap_footer_recruit {
	background: #ffffff;
}
#footer_recruit {
	min-height: auto;
	padding: 0;
}
#footer_recruit .title {
	display: none;
}
#footer_recruit .link {
	display: none;
}
#footer_recruit .sp_only {
	border-bottom: 1px solid #333333;
}
#footer_recruit .sp_only a {
	display: block;
	background: #ffffff url(img/contents/link_button_icon2.gif) no-repeat right center;
	color: #333333;
	font-size: 100%;
	font-weight: normal;
	padding: 10px;
	text-align: left;
	text-decoration: none;
	transition-duration: 0.3s;
}
#footer_recruit .sp_only a:hover {
	opacity: 0.6;
}
/* footer_linkbanner
--------------------------- */
#wrap_footer_linkbanner {
	background: #dddddd;
}
#footer_linkbanner {
	padding: 5px 0;
}
#footer_linkbanner ul li {
	margin: 5px;
}
#footer_linkbanner ul li img {
	max-width: 100%;
	height: 35px;
	border: 1px solid #777777;
}
/* footer
--------------------------- */
#wrap_footer {
	padding: 10px 0;
}
#footer .left {
	display: block;
	width: 100%;
}
#footer .left p {
	text-align: center;
}
#footer .left p img {
	width: 150px;
}
#footer .right {
	display: block;
	width: 100%;
	font-size: 80%;
	text-align: center;
}
#footer .right p:first-child {
	display: none;
}
/* fnavi
--------------------------- */
#wrap_fnavi {
	padding: 0;
}
#fnavi ul {
	display: block;
}
#fnavi ul li {
	display: block;
	margin: 0;
	border-top: 1px solid #ffffff;
	background-color: #ffffff;
}
#fnavi ul li a {
	display: block;
	padding: 10px;
	background-color: #333333;
	background-image: url(img/contents/link_button_icon.gif);
	background-position: right center;
}
#fnavi ul li a:hover {
	color: #ffffff;
	opacity: 0.6;
}
#fnavi .copy {
	display: none;
}
/* ==================================================
contents
================================================== */
#wrap_main {
	margin: 0 0 5px;
	padding: 0;
}
#wrap_contents {
	margin-bottom: 10px;
}
#contents {
	width: 100%;
	padding: 0 5px;
	box-sizing: border-box;
}
#contents #contents_top {
	margin-bottom: 10px;
}
#top_main img,
#contents img {
	max-width: 100%;
	height: auto;
	box-sizing: border-box;
}
#contents iframe {
	width: 100%;
	height: 50%;
	box-sizing: border-box;
}
#contents table {
	width: 100% !important;
	height: auto !important;
	margin: 10px 0;
	border-top: #CCCCCC 1px solid;
}
#contents table th,
#contents table td {
	width: auto !important;
	height: auto !important;
	padding: 10px 5px;
	word-break: break-all;
	display: block;
	border-top: none;
}
#contents table th {
	border-bottom: none;
}
#contents img.alignleft,
#contents img.alignright {
	margin: 0 0 10px;
	float: none;
	display: block;
}
#contents table.layout_table {
	border: none;
}
#contents table.layout_table td {
	display: block;
	width: auto !important;
	padding: 0 0 5px !important;
}
#contents table.layout_table td table th {
	border-bottom: none;
	padding: 10px 5px;
}
#contents table.layout_table td table td {
	display: block;
	padding: 10px 5px !important;
}
#contents h1 {
	font-size: 100%;
	margin-bottom: 10px;
}
#contents p.update {
	margin-bottom: 0;
	font-size: 80%;
}
#contents h2,
#contents h3,
#contents h4 {
	margin: 7px 0;
	font-size: 100%;
}
#contents h2 {
	font-weight: bold;
	border-bottom: 2px solid #0054A7;
}
#contents p {
	margin-bottom: 5px;
}
#contents ul {
	margin: 0 0 5px 1.5em;
	list-style: inherit;
}
#contents ul li,
#contents ol li {
	margin: 5px 0;
}
#contents ul ul {
	margin: 0 0 5px 1em;
}
#contents ol ol li,
#contents ol ol ol li {
	padding-left: 0.5em;
}
#contents ol ol li:before {
	left: -1em;
}
#contents ol ol ol li:before {
	left: -1em;
}
#contents input[type="submit"],
#contents input[type="button"] {
	width: 100%;
	box-sizing: border-box;
	margin: 5px 0;
}
/* form_table
--------------------------- */
#contents .form_btn {
	margin: 5px 0;
}
/* archive_list
--------------------------- */
#contents ul.archive_list {
	margin: 0;
}
#contents ul.archive_list li {
	position: relative;
	margin: 0;
	padding: 5px 20px 5px 0;
	box-sizing: border-box;
}
#contents ul.archive_list li p {
	display: block !important;
	width: auto !important;
	margin: 0;
}
#contents ul.archive_list li::after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 6px;
	height: 6px;
	margin: -4px 0 0 0;
	border-top: solid 2px #ccc;
	border-right: solid 2px #ccc;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
#contents ul.archive_list li p a {
	text-decoration: none;
}
#contents ul.archive_list li p.date {
	color: #4C74BA;
	font-size: 80%;
}
/* backblog
--------------------------- */
#contents .backblog {
	margin: 15px 0 10px;
	padding: 0;
	border: none;
}
/* menu_list
--------------------------- */
#contents ul.menu_list li {
	width: 49%;
	margin: 0 2% 10px 0;
}
#contents ul.menu_list li:nth-child(3n) {
	margin: 0 2% 10px 0;
}
#contents ul.menu_list li:nth-child(2n) {
	margin: 0 0 10px;
}
#contents ul.menu_list li a {
	padding: 5px;
}
#contents ul.menu_list li a .ttl {
	margin: 0 0 5px;
	font-size: 100%;
}
#contents ul.menu_list li a .desc {
	display: none;
}
#contents ul.menu_list li a .img {
	width: 100%;
	height: auto;
	margin: 5px 0 0;
}
#contents ul.menu_list li a .img img {
	width: 100%;
}
#contents ul.menu_list li a .more {
	display: none;
}
/* cat_list
--------------------------- */
#contents ul.cat_list {
	border: none;
}
#contents ul.cat_list li {
	width: 49%;
	margin: 0 2% 2% 0;
	border-bottom: 1px solid #ffffff;
}
#contents ul.cat_list li:nth-child(2n) {
	margin: 0 0 3px 0;
}
#contents ul.cat_list li a {
	padding: 8px;
	border-radius: 0;
	font-size: 90%;
}
/* works_box
--------------------------- */
#contents ul.works_box {
	padding: 10px;
}
#contents ul.works_box li {
	width: 49%;
	margin: 0 2% 3% 0;
}
#contents ul.works_box li:nth-child(2n),
#contents ul.works_box li:nth-child(4n) {
	margin: 0 0 10px 0;
}
#contents ul.works_box li a .img {
	margin-bottom: 5px;
}
#contents ul.works_box li a .cat {
	display: none;
}
/* works
--------------------------- */
#works .slide_main {
	height: 202px;
}
#works .slide_main ul li img {
	height: 200px;
}
#works .slide_navi ul li img {
	width: 50px;
	height: auto;
}
/* skills_future_list
--------------------------- */
#contents ul.skills_future_list li {
	padding: 10px;
}
#contents ul.skills_future_list .ttl {
	font-size: 100%;
}
/* skills_past_list
--------------------------- */
#contents ul.skills_past_list li {
	width: 50%;
}
#contents ul.skills_past_list li p.ttl {
	margin: 5px;
}
/* ==================================================
style class
================================================== */
#contents .border_box {
	margin: 10px 0;
	padding: 5px;
	border-width: 2px;
}
#contents .fill_box {
	margin: 10px 0;
	padding: 5px;
}
#contents table.layout_table p,
#contents table.layout_table ul,
#contents table.layout_table ol,
#contents table.layout_table ul li,
#contents table.layout_table ol li {
	margin-bottom: 5px;
}
#contents table.side_table th,
#contents table.side_table td {
	padding: 5px;
	display: table-cell;
}
#contents .side_img img {
	width: 100%;
}
/* ==================================================
top
================================================== */
.top h2 {
	display: block;
	font-size: 120%;
	text-align: center;
	padding-bottom: 7px;
	margin-bottom: 7px;
}
.top h2::after {
	width: 80px;
	height: 3px;
	right: 0;
	margin: auto;
}
.top .link_button {
	display: block;
	margin: 5px 0;
	padding: 10px 40px;
	text-align: center;
	font-size: 100%;
}
#wrap_top_link,
#wrap_top_main,
#wrap_top_reason,
#wrap_top_business,
#wrap_top_works,
#wrap_top_skills {
	margin: 10px 0;
}
#top_link,
#top_main,
#top_reason,
#top_business,
#top_works,
#top_skills {
	width: 98%;
	margin: 0 auto;
}
#top_slide ul li .txt {
	bottom: 5px;
	left: 5px;
	font-size: 3.7vw;
}
#top_reason table td:first-child {
	display: block;
	padding: 0;
}
#top_reason table td:last-child {
	display: none;
}
#top_business {
	padding: 10px 0 5px;
}
#top_business p.lead {
	margin-bottom: 0.4em;
}
#top_business ul.menu li {
	width: 49%;
	margin: 0 2% 2% 0;
}
#top_business ul.menu li:nth-child(2n) {
	margin: 0;
}
#top_business ul.menu li:nth-child(1n) a {
	background-image: none;
	width: 100%;
	padding: 5px 0;
	font-size: 100%;
}
#top_works h2 {
	display: block;
	width: 100%;
	margin: 0 0 0.6em;
}
#top_works p.lead {
	display: block;
	text-align: center;
	margin-bottom: 0.4em;
}
#top_works .top_works_box {
	display: none;
}
#top_works ul.menu li {
	width: 49%;
	margin: 0 2% 2% 0;
}
#top_works ul.menu li:nth-child(2n) {
	margin: 0;
}
#top_works ul.menu li:nth-child(1n) a {
	background-image: none;
	width: 100%;
	padding: 5px 0;
	font-size: 100%;
}
#top_works ul.menu li a::after,
#top_works ul.menu li a:hover::after {
	content: none;
}
#wrap_top_skills {
	padding: 10px 0;
	margin: 0;
}
#top_skills .lead {
	margin-bottom: 0.6em;
}
#top_skills ul.menu li {
	width: 49%;
	margin: 0 2% 2% 0;
}
#top_skills ul.menu li:nth-child(5n) {
	margin: 0 2% 10px 0;
}
#top_skills ul.menu li:nth-child(2n) {
	margin: 0;
}
#top_skills ul.menu li .img {
	display: none;
}
#top_skills ul.menu li .txt {
	font-size: 100%;
	background: none;
	padding: 5px 0;
}
#top_skills ul.menu a::after,
#top_skills ul.menu a:hover::after {
	content: none;
}
#wrap_top_news {
	margin-bottom: 10px;
}
#top_news h2 {
	display: block;
	width: 100%;
	background: none;
	color: #4C74BA;
	font-size: 150%;
	padding: 12px 0;
	margin: 0;
	border-bottom: 1px solid #333333;
}
#top_news ul.menu {
	display: block;
	padding: 0;
	background-color:#E5EDF5;
}
#top_news ul.menu li {
	padding: 0;
	border-bottom: 1px solid #333333;
	background: url(img/contents/link_button_icon2.gif) no-repeat right center;
}
#top_news ul.menu li:first-child {
	padding: 0;
}
#top_news ul.menu li:last-child {
	padding: 0;
}
#top_news ul.menu li p.date {
	display: block;
	width: auto;
	padding: 8px 5px 0;
}
#top_news ul.menu li p.ttl {
	display: block;
	width: auto;
	padding: 0 50px 8px 5px;
}
#top_news p.link {
	display: block;
	width: 100%;
}
#top_news p.link a {
	display: block;
	margin: 0;
	padding: 10px 40px;
	text-align: center;
	font-size: 100%;
}
/* ==================================================
page
================================================== */

}
