@charset "utf-8";
/* CSS Document */
@media (max-width: 959px){
	.pc {
		display:none!important;
	}
	/* body {
		background: url(../../assets/img/bg.gif);
		background-size: 1000px 750px;
	} */
	#menu_btn em {
    font-size: 1rem;
	}
	#menu ul.c-gnav li a span.ttl {
    font-weight: bold;
    font-size: 1.3rem;
	}
	#menu #info #ccopy {
		color: #fff;
	}
	#menu #info p.num {
		display: inline-block;
		font-size: 2.5rem;
	}
	header#header {
		height: 80px;
	}
	header#header .l-header__logo {
	}
	header#header .l-header__logo #logo {
		font-size: 1.7rem;
		line-height: 1.2;
	}
	header#header .l-header__logo #logo a {
		color: #333;
	}
	header#header .l-header__logo #logo small {
		font-size: 1rem;
		display: block;
	}
	header#header .l-header__logo h1, header#header .c-headLogo {
		height: 29px;
	}
	header#header .l-header__logo h1 a, header#header .-img .c-headLogo__link {
		padding: 5px 0 0;
	}
	header .c-iconBtn__icon::before, .c-iconBtn__label {
	  color: #f29600;
	}
	header .l-header__menuBtn {
		display: none;
	}
	header .l-header__inner .c-catchphrase {
		display: block;
    position: relative;
    font-size: 0.8rem;
    line-height: 1.2;
		margin: 3px 0 0;
	}
	header#header #sns {
    right: 70px;
    top: 29px;
	}
	header#header #sns li a#btn_line img {
    width: 60px;
	}
	#menu_btn {
	  right: 10px;
	  top: 10px;
	}
	#menu > div {
		width: 90%;
		display: block;
	}
	#menu ul.c-gnav {
		border-bottom: solid 1px #eaeaea;
		border-right: none;
		text-align: center;
		padding: 0 0 10%;
		margin: 0 0 10%;
	}
	#menu ul.c-gnav li {
		padding: 0.8em 0;
	}
	#menu #info {
		text-align: center;
	}
	footer {
		margin-top: 3vw;
		background: none !important;
		color: #fff !important;
	}
	footer #f_contact {
		padding: 30px 5vw;
    background: #fff;
    color: #000;
    text-align: center;
	}
	footer #f_contact h3 {
    font-size: 1.5rem;
		margin-bottom: 0.8em;
		line-height: 1.3;
	}
	footer .l-footer__inner > section {
		display: inline-block;
		text-align: left;
	}
	footer .l-footer__inner {
		text-align: center;
	}
	footer #bnr_recruit {
		display: block;
		margin-top: 2em;
	}
	footer #ft_l {
		margin-bottom: 2em;
	}
	footer #ft_l #f_logo {
		display: block;
    width: 100%;
    max-width: 280px;
    margin: 25px auto 10px;
	}
	footer #ft_l address {
		font-style: normal;
		margin: 1.5em 0 0.5em;
	}
	.l-footer__inner #ft_l dl dd {
		margin-bottom: 0.6em;
  }
	#body_wrap #f_contact ul {
    padding: 0 4vw;
	}
	footer #btn_tel {
		margin-bottom: 1.5em;
	}
	footer .l-footer__inner #ft_r h3 {
		font-size: 1rem;
    line-height: 1.5;
    font-weight: 500;
		max-width: 20em;
		text-align: left;
	}
	footer .l-footer__inner #ft_r h3 br {
		display: none;
	}
	footer .btn:hover, footer #btn_tel a:hover {
		color: #fff !important;
	}
	footer #fi_r p.first {
		margin: 0.5em 0 2em;
		font-size: 0.9rem;
		text-align: center;
	}
	footer .l-footer .copyright {
    font-size: 0.8rem;
    text-align: center;
    margin-top: 3em;
	}
	footer .l-footer__nav {
		display: block;
		text-align: center;
		margin: 2em 0;
	}
	footer .l-footer__nav a {
		font-size: 1rem;
		padding: 0.5em;
	}
	footer .copyright {
		padding: 1em 0;
	}


	.btn, [class*=is-style-btn_] a, .swell-block-button__link, .wp-block-button__link, footer #btn_tel a {
		background: url(../../assets/img/arrow.svg) no-repeat center right 20px #00b1ff;
    background-size: 20px;
	  color: #fff !important;
		font-size: 1.2rem;
		font-weight: 500;
	  position: relative;
	  -webkit-box-shadow: none;
	  box-shadow: none;
		line-height: 1.3;
	  padding: 18px 60px 16px 15px;
	  border: none;
		width: 100%;
		max-width: 350px;
		display: inline-block;
		text-align: center;
	  -webkit-transition: all .5s cubic-bezier(.19,1,.22,1);
	  transition: all .5s cubic-bezier(.19,1,.22,1);
	  -webkit-transition-timing-function: cubic-bezier(.19,1,.22,1);
	  transition-timing-function: cubic-bezier(.19,1,.22,1);
	  -webkit-transition-property: background;
	  transition-property: background;
	  letter-spacing: 1.1px;
	}
	.btn::before, .swell-block-button__link::before, .wp-block-button__link::before, footer #btn_tel a::before {
	  content: "";
	  position: absolute;
	  display: block;
	  height: 1px;
	  background: #fff;
	  transition: all .3s ease-out;
		width: 34px;
    top: 50%;
    right: 15px;
	  transition: all .6s cubic-bezier(.3,0,.15,1);
	}
	.btn::after, .swell-block-button__link::after, .wp-block-button__link::after, footer #btn_tel a::after {
	  width: 9px;
	  top: calc(50% - 3px);
	  right: 14px;
	  transform: rotate(40deg);
	  content: "";
	  position: absolute;
	  display: block;
	  height: 1px;
	  background: #fff;
	  transition: all .6s cubic-bezier(.3,0,.15,1);
	}
	.btn:hover, .wp-block-button__link:hover {
		background: url(../../assets/img/arrow.svg) no-repeat center right 20px #00b1ff;
    background-size: 20px;
	}
	[class*=is-style-btn_] a:hover {
		background: url(../../assets/img/arrow.svg) no-repeat center right 20px #00b1ff;
    background-size: 20px;
		color: #fff;
		box-shadow: none;
	}
	a.btn.left {
		margin-left: 0;
	}
	a.btn.right {
		margin-right: 0;
	}
	.bg {
		padding-top: 50px;
	}
	.bg > section {
		padding-left: 5vw;
		padding-right: 5vw;
	}
	.flex_sp {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		flex-wrap: wrap;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	/* .l-mainContent__inner {
		padding: 1em 5vw 0;
	} */
	#sidebar {
		padding: 0 5vw;
	}
	#menu #info #menu_logo {
		margin: 0.5em auto 1em;
		width: 300px;
	}
	.post_content h2 {
		font-weight: 900;
		font-size: 1.5rem;
		margin-bottom: 1em;
		line-height: 1.6;
	}
	.post_content h3 {
		font-size: 1.3rem;
	}

	.post_content .bnr_quote .wp-block-column:nth-child(1) p a em {
    width: 100%;
		max-width: 350px;
	}
}

@media all and (min-width: 768px) and (max-width: 1024px) {
	header#header .l-header__logo {
		padding: 0 2vw;
	}
	header#header .l-header__logo h1 {
    left: 170px;
	}
	#works .flex_cl > section {
		width: 47%;
	}
	#works .flex_cl > section:nth-last-child(-n+3) {
		margin-bottom: 3%;
	}
	#works .flex_cl > section:nth-child(n+3) {
		width: 31%;
	}
	.full > section {
    padding-left: 3vw !important;
    padding-right: 3vw !important;
	}
	br.sp {
		display: none !important;
	}
}
