/* View Small */

html {
	min-height: 100vh;
	font-size: 20px !important;
}
body {
	min-width: 480px;
	min-height: 100vh;
	font-size: 20px !important;
}
.inner {
	padding: 0 40px;
    max-width: 100%;
    min-width: 100%;
    width: 100%;
}
.only_pc {
	display: none;
}
.only_mobile {
	display: block;
}
.section {
	padding-top: 6.5em;
}

#back {
    left: 25px;
	left: 15px;
}

#menu_switch {
    right: 20px;
}
#header #menu {
	display: none;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: #fff;
}
#header #menu_inner {
	padding-top: 160px;
}
h1#menu_logo {
	position: absolute;
    top: 40px;
    left: 25px;
    width: 83px;
}
#menu_global {
	text-align: center;
}
#menu_global li {
	animation: menu_global 300ms ease-in-out forwards;
}
#menu_global li#menu_about {
	animation-delay: 100ms;
}
#menu_global li#menu_flow {
	animation-delay: 200ms;
}
#menu_global li#menu_works {
	animation-delay: 300ms;
}
#menu_global li#menu_company {
	animation-delay: 400ms;
}
#menu_global li#menu_inquiry {
	animation-delay: 500ms;
}
#menu_global li:not(:last-of-type) {
	margin-bottom: 2.5em;
}
#menu_global li a {
	font-size: 1.6em;
}
#header h1#header_logo {
    top: 40px;
    left: 25px;
    width: 83px;
}


#cap::before {
	background: url(../images/common/home_hero_bg_mobile.jpg) no-repeat center / cover;
}

/* Hero */

#home_hero_logo {
    position: absolute;
    top: 50%;
    left: 50%;
	transform: translate(-50%, -50%);
	width: 200px;
	opacity: 0;
	z-index: 10;
}
.inview #home_hero_logo {
	animation: home_hero_logo 400ms 200ms ease-in-out forwards;
}
@keyframes home_hero_logo {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
#home_hero_scroll {
	left: 25px;
	left: 15px;
	bottom: 0;
	bottom: 50px;
}


/* About */

#home_about {
	background: #e3e6e9;
}
#home_about .inner {
	padding-top: 82px;
	padding-bottom: 0;
}
#home_about_text {
    padding: 0 65px;
    line-height: 2.1em;
}
#home_about_text p:not(:last-of-type) {
	margin-bottom: 2em;
}
#home_about #home_about_text p span {
    display: inline;
}


/* Flow */

.home_flow_pane {
    padding: 2.5em 2em;
}
.home_flow_pane h4 {
	margin-right: 0;
	margin-bottom: 2em;
    width: 100%;
	text-align: center;
}
.home_flow_pane h4 span {
    display: block;
}
.home_flow_pane h4 span.text {
	margin-right: 0;
	margin-bottom: 0.5em;
    width: auto;
}
.home_flow_pane h4 span.number {
    margin-inline: auto;
}
.home_flow_pane .home_flow_text {
    width: 100%;
}
.home_flow_pane .home_flow_text h5 {
    text-align: center;
}


/* Works */

#search {
    float: none;
	margin-bottom: 2em;
	width: 100%;
}
#search input {
	padding: 1.26em 73px 1.23em 83px;
    width: 100%;
	font-size: 25px !important;
}
#search::before {
    left: 30px;
    width: 30px;
    height: 30px;
}
#search input::-webkit-search-cancel-button {
	right: 30px;
	width:20px;
	height:20px;
}
#home_works_table_heading {
    padding: 0 20px;
}
#paging {
    float: none;
	text-align: center;
}
#paging ul {
    display: inline-block;
}
#home_works_table #table {
    padding: 0 20px;
}
#home_works_table table {
    min-width: 0;
}
#home_works_table table thead {
	display: none;
}
/* #home_works_table table thead th {
    position: relative;
    padding-top: 1.1em;
	padding-bottom: 2.5em;
	border: none;
} */
#home_works_table table tbody tr {
	display: flex;
	flex-wrap: wrap;
	padding: 0.8em 1em 0.9em 1em;
}
#home_works_table table tbody tr:nth-of-type(odd) {
	background: #fff;
}
#home_works_table table tbody tr:nth-of-type(even) {
	background: inherit;
}
#home_works_table table tbody td {
	padding: 0;
}
#home_works_table table tbody td.name {
	display: block;
	order: 1;
	width: 100%;
	margin-bottom: 0.5em;
	font-size: 1.15em;
}
#home_works_table table tbody td.year {
	order: 2;
}
#home_works_table table tbody td.work {
	order: 3;
	width: 50%;
}
#home_works_table table tbody td.use {
	order: 4;
}
#home_works_table table tbody td.structure {
	order: 5;
}
#home_works_table table tbody td:not(.name) {
	display: inline-block;
	font-size: 0.9em;
	line-height: 1.4em;
}
#home_works_table table tbody td:not(.name):not(:last-of-type) {
	margin-right: 1em;
}

/* Company */

#home_company_map {
	padding-top: 66.6%;
}
#home_company_content dl {
	padding: 0 20px;
}
#home_company_content dt {
    float: left;
    padding: 1.8em 0 1.9em;
}
#home_company_content dd {
    padding: 1.8em 0 1.9em 7.5em;
}
#clients ul {
	float: none;
}
#clients ul:not(:last-of-type) {
	margin-bottom: 0.5em;
	margin-right: 0;
}


/* Footer */

#footer {
	padding-bottom: 8em;
	background: url(../images/common/home_hero_bg_mobile.jpg) no-repeat bottom / cover;
}
.footer_inquiry_button {
    float: none;
    width: 100%;
    text-align: center;
}
.footer_inquiry_button:not(:last-of-type) {
    margin-bottom: 1.5em;
}