@charset "UTF-8";


/* Wide PC */
@media only screen and (min-width: 1360px) {}


/* Ipad PRO */
@media only screen and (max-width: 1024px) {
	.pc {
		display: none !important;
	}

	.sp {
		display: block !important;
	}

	.inner {
		width: 90%;
	}

	#header {
		background: #fff;
		box-shadow: none;
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		box-shadow: 0px 1px 10px #d9d9d9;
	}

	#header #spNav {
		top: 52px;
		right: 20px;
	}

	.h__logo {
		width: 30%;
		max-width: 300px;
		padding: 8px 0;
		padding-right: 20px;
	}

	.slider__img {
		height: auto;
	}

	.footer__fx2 {
		width: 24%;
	}

	.f__logo {
		width: 48%;
	}

	.contact__btn a {
		width: 40px;
		height: 40px;
	}

	#header #spMenu a {
		font-size: 2rem;
	}

	#slider {
		margin-top: 110px;
	}

	#topics {
		padding: 120px 0 40px;
	}

	#contact {
		padding: 130px 0;
	}

	.pageTop {
		margin-top: 110px;
	}

	#topics.ver2 .topics__box {
		padding: 40px 40px 40px;
	}

	.productslist__info1 {
		width: 84%;
	}

}


/* Ipad */
@media only screen and (max-width: 768px) {

	.inner {
		width: 90%;
	}

	#header {
		padding-bottom: 0;
	}

	#header #spMenu a {
		font-size: 1.4rem;
	}

	.h__logo {
		width: 33%;
		max-width: 340px;
		padding: 14px 0;
		padding-right: 20px;
	}

	.about__catch {
		font-size: 1.6rem;
	}

	.products__fx2 {
		padding: 40px;
	}

	.cmnTtlEn {
		font-size: 2.2rem;
	}

	.cmnTxt {
		line-height: 200%;
	}

	.cmn__btn a {
		font-size: 1.1rem;
	}

	.f__logo {
		width: 63%;
	}

	#slider {
		margin-top: 100px;
	}

	.company__box {
		width: 90%;
	}

	.profile__desc {
		width: 70%;
	}

	.pageTop {
		margin-top: 102px;
	}

	.productslist__box {
		width: 86%;
	}

	#topics.ver2 .topics__box {
		padding: 0px 40px 40px;
	}

	.contact__flow__li {
		font-size: .8rem;
	}

	.contact__flow__li::after {
		top: 36px;
	}

	.contact__form__inner {
		width: 80%;
	}

	.productslist__info1 {
		width: 90%;
	}

	.topics__article {
		width: 90%;
		margin: 0 auto;
	}

	#topics.ver3 .topics__box {
		padding: 62px 30px 78px;
	}

}


/* Iphone */
@media only screen and (max-width: 600px) {

	.onlySp {
		display: block !important;
	}

	.exceptSp {
		display: none !important;
	}

	#header #spNav {
		right: 14px;
		top: 14px;
	}

	#header #spMenu a {
		font-size: 1rem;
		padding: 1% 0;
	}

	#header #spNav .toggle i {
		height: 1px;
	}

	#header #spNav {
		top: 44px;
	}

	#header #spNav .toggle {
		height: 1.1rem;
	}

	#header.show .toggle i:nth-child(3) {
		transform: translateY(-7px) rotate(45deg);
		-webkit-transform: translateY(-7px) rotate(45deg);
	}

	.h__logo {
		width: 80%;
		max-width: 180px;
		padding: 10px 0;
	}

	.start p {
		width: 120px;
	}

	.slider__catch {
		font-size: 2rem;
	}

	.slider__catch span {
		font-size: .9rem;
	}

	.products__fx1 {
		width: 100%;
		margin: 0 auto 30px;
	}

	.products__fx2 {
		width: 80%;
		margin: 0 auto;
		padding: 0 10px;
		box-sizing: border-box;
	}

	.f__ul {
		width: 90%;
	}

	.h__info {
		font-size: .64rem;
		letter-spacing: .01em;
	}

	#about {
		padding: 80px 0 100px;
	}

	.about__catch {
		font-size: 1.2rem;
		line-height: 190%;
		letter-spacing: .07em;
	}

	.about__txt {
		font-size: .8rem;
		font-weight: 300;
		letter-spacing: .1em;
		line-height: 220%;
		padding: 0 10px;
	}

	#products {
		padding: 0 0 80px;
	}

	.footer__fx1 {
		width: 100%;
		margin-bottom: 60px;
	}

	.footer__fx2 {
		width: 50%;
		margin-bottom: 30px;
		padding-left: 24px;
	}

	.cmnTxt.ver2 {
		width: 100%;
	}

	.f__box {
		width: 94%;
		margin: 0 auto;
	}

	.cmn__btn a {
		font-size: 1rem;
	}

	.cmnTtlEn {
		font-size: 2rem;
	}

	.f__logo {
		width: 74%;
	}

	.products__fx2 {
		margin: 60px auto;
	}

	.cmn__btn a img {
		width: 38px;
	}

	.products__fx2__box {
		width: 100%;
		position: initial;
		transform: initial;
	}

	#contact {
		padding: 100px 0;
	}

	#slider {
		margin-top: 84px;
	}

	#header #nav li small {
		font-size: .7rem;
	}

	.topics__single {
		width: 100%;
	}

	.topics__box {
		padding: 80px 30px 40px;
	}

	.cmn__btn.ver3 a {
		font-size: .9rem;
		padding: 17px 70px;
	}

	.concept__fx1 {
		width: 100%;
		margin: 0 auto 40px;
	}

	.concept__fx2 {
		width: 100%;
	}

	.company__ttl {
		font-size: 1.8rem;
	}

	.cmn__dt {
		width: 100%;
		padding: 5px 0 0;
		padding-left: 20px;
	}

	.cmn__dd {
		width: 100%;
		padding: 0px 0 10px;
		padding-left: 20px;
		line-height: 160%;
	}

	.profile__img {
		top: -80px;
		width: 160px;
	}

	#profile {
		padding: 120px 0 200px;
	}

	.profile__name {
		font-size: 2rem;
		margin-bottom: 20px;
	}

	.profile__desc {
		width: 80%;
	}

	.pageTop {
		margin-top: 84px;
	}

	#concept {
		padding: 70px 0;
	}

	#company {
		padding: 100px 0 150px;
	}

	.pageTop img {
		height: 20vh;
		object-fit: cover;
	}

	.pageTop__ttl {
		font-size: 2.2rem;
	}

	.company__box {
		padding-left: 18%;
	}

	.productslist__ttl {
		font-size: 1.6rem;
	}

	.productslist__ttl small {
		font-size: .6rem;
		margin-left: 10px;
	}

	.cmn__ttl__en {
		font-size: 2rem;
	}

	#topics.ver2 .topics__box {
		padding: 0px 20px 40px;
	}

	.contact__line__btn {
		width: 56%;
	}

	.contact__txt {
		font-size: .8rem;
	}

	.contact__txt {
		margin: 0 auto 20px;
	}

	.contact__sub {
		font-size: 2rem;
		letter-spacing: .12em;
	}

	.wpcf7-submit {
		width: 100%;
		padding: 17px;
	}

	.contact__flow__li {
		width: calc(100% / 3 - 20px);
		margin-bottom: 10px;
	}

	.contact__flow__li::after {
		height: 16px;
	}

	.contact__flow__ul {
		padding-right: 20px;
		margin: 40px 0;
	}

	.contact__flow__li img {
		margin-bottom: 6px;
	}

	.contact__box__padding {
		padding: 40px 0;
	}

	.wpcf7-text {
		padding: 10px 16px;
	}

	#header #spNav .toggle {
		width: 1.7rem;
	}

	.cmn__acArea.open {
		padding: 60px 0px;
	}

	.cmn__txt {
		font-size: .9rem;
		line-height: 240%;
	}

	.cmn__ttl__en.ver3 {
		font-size: 1.6rem;
		border-left: 3px solid var(--maincolor);
		padding: 8px 0 8px 22px;
	}

	.cmn__ttl__en.ver3 span {
		font-size: .7rem;
	}

	.productslist__info2__box {
		margin: 30px auto 30px;
	}

	.productslist__info2__sub {
		font-size: 1.4rem;
	}

	.productslist__info2 {
		margin-bottom: 20px;
	}

	.cmn__ttl__en.ver3 span {
		margin-left: 10px;
	}

	.productslist__box {
		margin: 0 auto 80px;
	}

	#topics.ver3 .topics__box {
		padding: 22px 14px 58px;
	}

	.cmn h1 {
		font-size: 1.4rem;
		line-height: 150%;
		letter-spacing: .06em;
	}

	.topics__contents__top {
		margin-bottom: 40px;
	}

	.cmn h2 {
		font-size: 1.2rem;
	}

	.cmn h3 {
		font-size: 1.1rem;
	}

	.cmn p {
		font-size: .9rem;
		line-height: 240%;
	}

	#topics.ver3 {
		padding: 20px 0 160px;
	}

	#topics.ver3 .topics__box {
		width: 86%;
	}

	.topics__article {
		width: 100%;
	}

	.topics__single:nth-child(3n+2) {
		transition-delay: initial;
	}

	.topics__single:nth-child(3n) {
		transition-delay: initial;
	}

	.contact__flow__li:nth-child(6n+3) {
		transition-delay: initial;
	}

	.contact__flow__li:nth-child(6n+4) {
		transition-delay: initial;
	}

	.contact__flow__li:nth-child(6n+5) {
		transition-delay: initial;
	}

	.contact__flow__li:nth-child(6n) {
		transition-delay: initial;
	}

	.contact__flow__li:nth-child(3n+2) {
		transition-delay: .3s;
	}

	.contact__flow__li:nth-child(3n) {
		transition-delay: .6s;
	}


}