@charset "utf-8";
/*
Theme Name: hwcCOMPANY
Theme URI: https://asakosatori.com
Description: COMPANY official theme
*/

/*-------------
header
-------------*/
header {
	position: fixed;
	top: 0;
	width: 100%;
	margin: 0 auto;
	padding: 20px 30px !important;
	background-color: #fff;
	z-index: 9998;
}
header h1 {
	width: max-content;
	margin: 0 auto;
}
@media (max-width: 730px) {
header {
	position: fixed;
	top: 0;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 20px 10px !important;
	background-color: #fff;
	z-index: 9998;
}
}

#header_nav {
	position: absolute;
	top: 120px;
	width: 100%;
	height: 30px;
	padding: 0 0 0 30px;
}
#header_nav li {
	display: inline-block;
	width: 15%;
	text-align: center;
}
#header_nav li a:hover {
	border-bottom: 1px solid #000;
	padding-bottom: 3px;
}
#header_nav li a.active {
	border-bottom: 1px solid #000;
	padding-bottom: 3px;
}
.snslink {
	position: absolute;
	top: 40px;
	right: 10%;
}
.snslink li {
	display: inline-block;
}
.facebook {
	margin-right: 30px;
}
.li_hidden {
	display: none !important;
}
#nav-toggle {
	display: none;
	position: absolute;
	right: 5%;
	top: 50px;
	width: 34px;
	height: 36px;
	cursor: pointer;
	z-index: 9999;
}
#nav-toggle div {
	position: relative;
}
#nav-toggle span {
	display: block;
	position: absolute;
	height: 4px;
	width: 100%;
	background: #777;
	left: 0;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
	top: 0;
}
#nav-toggle span:nth-child(2) {
	top: 11px;
}
#nav-toggle span:nth-child(3) {
	top: 22px;
}

@media (max-width: 1024px) {
#header_nav {
	padding: 0 0 0 20px;
}
#header_nav li {
	width: 14.6%;
}
}

@media (max-width: 870px) {
#header_nav {
	padding: 0 0 0 10px;
}
#header_nav li {
	width: 14.2%;
}
}

@media (max-width: 568px) {
#header_nav {
	position: absolute;
	/* 開いてないときは画面外に配置 */
	top: -500px;
	background: #fff;
	width: 100%;
	padding: 0;
	text-align: center;
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
}
#header_nav ul {
	list-style: none;
	position: static;
	right: 0;
	bottom: 0;
}
#header_nav ul li {
	float: none;
	position: static;
	width: 100%;
	padding: 10px 0;
	background: #fff;
	border-bottom: 1px solid #333;
}
#header_nav ul li a {
	display: inline-block;
	width: 100%;
	height: 100%;
}
#header_nav ul li a:hover {
	border-bottom: none;
	padding-bottom: 0;
}
#header_nav ul li a.active {
	border-bottom: none;
	padding-bottom: 0;
}
.li_hidden {
	display: inline-block !important;
}
#nav-toggle {
        display: block;
}
/* #nav-toggle 切り替えアニメーション */
.open #nav-toggle span:nth-child(1) {
	top: 11px;
	-webkit-transform: rotate(315deg);
	-moz-transform: rotate(315deg);
	transform: rotate(315deg);
}
.open #nav-toggle span:nth-child(2) {
	width: 0;
	left: 50%;
}
.open #nav-toggle span:nth-child(3) {
	top: 11px;
	-webkit-transform: rotate(-315deg);
	-moz-transform: rotate(-315deg);
	transform: rotate(-315deg);
}
/* #global-nav スライドアニメーション */
.open #header_nav {
	/* #header_nav top + #mobile-head height */
	-moz-transform: translateY(600px);
	-webkit-transform: translateY(600px);
	transform: translateY(600px);
}
}


/*-------------
base
-------------*/
#gototop {
	position: relative;
	width: 100%;
	height: 250px;
}
#gototop img {
	position: absolute;
	left: 50%;
	width: 16%;
}


/*-------------
トップページ
-------------*/
#announcement {
	width: 80%;
	margin: 0 auto;
	padding-top: 100px;
	padding-bottom: 40px;
}
#announcement p {
	width: max-content;
	margin: 0 auto;
}
@media (max-width: 768px) {
#announcement p {
	width: auto;
}
}
/*----------------------
ファーストコンタクト
----------------------*/
#t_contact {
	width: 40%;
	max-width: 550px;
	margin: 0 auto;
}
#t_contact p {
	margin-bottom: 0.7rem;
}
#t_contact p:last-child {
	margin-top: 2rem;
}
#t_contact label span {
	color: #ff4500;
}
input[type="text"], input[type="email"], input[type="tel"], submit, textarea, select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
input[type="text"],
input[type="email"],
input[type="tel"],
textarea {
	outline: none;
	border: 1px solid #aaa;
	-webkit-transition: all .3s;
	transition: all .3s;
	font-size: 100%;
	padding: 3px;
	background-color: #fff;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
textarea:focus {
	border: 1px solid #000;
}
input[type="text"],
input[type="email"],
input[type="tel"] {
	width: 50%;
	height: 1.5rem;
}
#t_contact textarea {
	width: 100%;
	height: 5rem;
}
.wpcf7-submit {
	background: #fff;
	font-size: 94%;
	color: #888;
	padding: 1px 15px;
	border: solid #444 2px;
	text-decoration: none;
}
.wpcf7-submit:hover {
	background: #444;
	color: #fff;
	text-decoration: none;
}

.cfcb {
	margin: 1rem 0;
}
.wpcf7-list-item {
	margin: 0 1rem 0 0 !important;
}

@media (max-width: 768px) {
#t_contact {
	width: 80%;
	min-width: 80%;
	margin: 0 auto;
}
input[type="text"],
input[type="email"],
input[type="tel"] {
	width: 60%;
	height: 1.5rem;
}
#t_contact textarea {
	width: 90%;
	height: 5rem;
}
}


/*----------------------
プロフィール
----------------------*/
#profile {
	width: 600px;
	margin: 0 auto;
	padding-top: 100px;
	padding-bottom: 40px;
}
#s_profile  {
	width: 100%;
	height: max-content;
	margin-bottom: 3rem;
}
#s_profile p {
	float: left;
}
.p_photo {
	width: 20%;
	height: 150px;
	margin-right: 10%;
	background-color: #000111;
}
.p_txt {
	width: 70%;
	margin-bottom: 1rem;
}
#s_profile .link_aw a {
	color: #000;
	border-bottom: solid 1px #000;
	padding-bottom: 2px;
	float: right;
	opacity: 0.7;
}
#s_profile .link_aw a:hover {
	opacity: 1;
}
#profile h3 {
	font-size: 125%;
	margin-bottom: 1rem;
	text-align: center;
}
.ams_list {
	width: 100%;
	margin: 0 auto 50px auto;
}
.ams_list:last-child {
	margin: 0 auto 20px auto;
}
.ams_list h2 {
	font-size: 125%;
	margin-bottom: 1rem;
	text-align: center;
}
.ams_list p {
	float: right;
	font-size: 75%;
}
.ams_list ul {
	color: #000;
}
.ams_list li {
	display: inline-block;
	width: 30%;
	margin-right: 4%;
	margin-bottom: 0.5rem;
}
/*.ams_list li:before{
    content: "\25cb  ";
    font-size: 6px;
    vertical-align: 3px;
}*/
.ams_list li:nth-child(3n) {
	margin-right: 0;
}

@media (max-width: 600px) {
#profile {
	width: 300px;
	margin: 0 auto;
}
.p_photo {
	width: 30%;
	height: 120px;
	margin-right: 10%;
	background-color: #000111;
}
.p_txt {
	width: 60%;
}
.ams_list ul {
	padding-left: 0;
	color: #000;
}
.ams_list li {
	display: inline-block;
	width: 44%;
	margin-right: 10%;
	margin-bottom: 0.3rem;
}
.ams_list li:nth-child(2n) {
	margin-right: 0 !important;
	padding-left: 0.5rem;
}
.ams_list li:nth-child(3n) {
	margin-right: 10%;
}
}

/*-------------
worksページ
-------------*/
#mv {
	width: 100%;
	height: 400px;
	background-color: #000;
	margin-bottom: 1rem;
}
#works .link_aw {
	text-align: center;
	margin-bottom: 2rem;
}
#works .link_aw a {
	color: #000;
	border-bottom: solid 1px #000;
	padding-bottom: 2px;
	opacity: 0.7;
}
#works .link_aw a:hover {
	opacity: 1;
}
#list_works {
	width: 80%;
	max-width: 800px;
	margin: 0 auto;
	padding-bottom: 40px;
}
#list_works h2 {
	text-align: center;
	margin-bottom: 2rem;
	font-size: 200%;
}
#list_works li {
	display: inline-block;
	width: 47%;
	height: 200px;
	margin-right: 5%;
	margin-bottom: 2.5rem;
	background-color: #000;
}
#list_works li:nth-child(even) {
	margin-right: 0;
}

@media (max-width: 600px) {
#works .link_aw {
	text-align: right;
	margin-right: 0;
	margin-right: 5%;
}
#list_works {
	width: 100%;
	padding-top: 0;
	padding-bottom: 0;
}
#list_works li {
	display: inline-block;
	width: 90%;
	height: 200px;
	margin-left:5%;
	background-color: #000;
}
}

/*-------------
footer
-------------*/
#footer {
	padding: 10px 0;
	font-size: 75%;
	width: 80%;
	max-width: 1200px;
	margin: 0 auto;
	text-align: center;
}
@media (max-width: 640px) {
#footer {
	font-size: 63%;
}
}


/*-------------
コンタクトページ
-------------*/
#p_contact {
	width: 80%;
	margin: 200px auto 20px auto;
}
#p_contact h2 {
	width: 30%;
	font-weight: bold;
	margin-bottom: 2rem;
}
#p_contact p {
	margin-bottom: 0.3rem;
}
#p_contact p:last-child {
	margin-top: 2rem;
}
.mw_wp_form {
	font-size: 100%;
}
.mw_wp_form dt {
	float:left;
	width: 100%;
	vertical-align: middle;
	margin-top: 25px;
	margin-bottom: 5px;
}
.mw_wp_form dd {
	float:left;
	width: 100%;
}
/*input[type="text"], input[type="email"], input[type="tel"], submit, textarea, select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
input[type="text"],
input[type="email"],
input[type="tel"],
textarea {
	outline: none;
	border: 1px solid #aaa;
	-webkit-transition: all .3s;
	transition: all .3s;
	font-size: 100%;
	padding: 3px;
	background-color: #fff;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
textarea:focus {
	border: 1px solid #000;
}
input[type="text"],
input[type="email"],
input[type="tel"] {
	width: 30%;
	height: 1.5rem;
	margin-right: 40%;
}
textarea {
	width: 30%;
	height: 5rem;
}
.formW {
	margin-bottom: 5rem;
}
.B_send {
	background: #fff;
	font-size: 94%;
	color: #888;
	padding: 1px 15px;
	border: solid #444 2px;
	text-decoration: none;
}
.B_send:hover {
	background: #444;
	color: #fff;
	text-decoration: none;
}

@media (max-width: 768px) {
#p_contact h2 {
	width: 60%;
}
input[type="text"],
input[type="email"] {
	width: 60%;
}
textarea {
	width: 60%;
}
}

@media (max-width: 568px) {
#p_contact {
	width: 90%;
	margin: 120px auto 20px auto;
}
}*/


/*-------------
Reset
-------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	box-sizing: border-box;
		-webkit-box-sizing: border-box;
			-moz-box-sizing: border-box;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}
body {
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-feature-settings: "palt";
	background-color: #fff;
	line-height: 1.5;
	color: #444;
	word-break: normal;
	margin: 0 auto;
}
a {
	color: #000;
	text-decoration: none;
}
a:hover {
	color: #888;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}

.notfound {
	font-size: 1.4rem;
}

.t_aC {
	text-align: center !important;
}
.t_aL {
	text-align: left !important;
}

.Btn:hover {
	opacity: 0.5;
}

.size-full {
	width: 100%;
	height: auto;
}

/*-------------
clearfix
-------------*/
.cf:before,
.cf:after{
  content:"";
  display: table;
}
.cf:after{
  clear: both;
}
/*-------------
margin
-------------*/
.mt_5 {margin-top: 5px !important;}
.mt_10 {margin-top: 10px !important;}
.mt_15 {margin-top: 15px !important;}
.mt_20 {margin-top: 20px !important;}
.mt_30 {margin-top: 30px !important;}
.mt_40 {margin-top: 40px !important;}
.mt_50 {margin-top: 50px !important;}
.mr_5 {margin-right: 5px !important;}
.mr_10 {margin-right: 10px !important;}
.mr_15 {margin-right: 15px !important;}
.mr_20 {margin-right: 20px !important;}
.ml_5 {margin-left: 5px !important;}
.ml_10 {margin-left: 10px !important;}
.ml_15 {margin-left: 15px !important;}
.ml_20 {margin-left: 20px !important;}
.mb_3 {margin-bottom: 3px !important;}
.mb_5 {margin-bottom: 5px !important;}
.mb_10 {margin-bottom: 10px !important;}
.mb_15 {margin-bottom: 15px !important;}
.mb_20 {margin-bottom: 20px !important;}
.mb_30 {margin-bottom: 30px !important;}
.mb_40 {margin-bottom: 40px !important;}
.mb_50 {margin-bottom: 50px !important;}
.mb_100 {margin-bottom: 100px !important;}
.mb_1r {margin-bottom: 1rem !important;}
.mb_2r {margin-bottom: 2rem !important;}
.mb_3r {margin-bottom: 3rem !important;}
.mb_4r {margin-bottom: 4rem !important;}
.mb_5r {margin-bottom: 5rem !important;}
.mb_6r {margin-bottom: 6rem !important;}
.mb_7r {margin-bottom: 7rem !important;}
/*-------------
font-size
-------------*/
.fs_13 {font-size: 82% !important;}
.fs_14 {font-size: 88% !important;}
.fs_15 {font-size: 94% !important;}
.fs_16 {font-size: 100% !important;}
.fs_17 {font-size: 107% !important;}
.fs_18 {font-size: 113% !important;}
.fs_19 {font-size: 119% !important;}
.fs_20 {font-size: 125% !important;}
.FwB {font-weight: bold !important;}
/*-------------
float
-------------*/
.fLeft {
	float: left;
}
.fRight {
	float: right;
}
/*-------------
etc..
-------------*/
.tac {text-align: center}
.c_red {color: #ff4500;}
.dis_b {display: block;}
.lh_5 {line-height: 5rem;}