@charset "utf-8";
/*== TOPページ ==*/
/*MV*/
.mv {
	font-size: 0;
	position: relative;
	height: 100vh;
	overflow: hidden;
}
.mv .txt_box {
	position: absolute;
	top: 30%;
	/*left: 50%;
	transform: translateX(-50%);*/
	z-index: 50;
	width: 100%;
	text-align: center;
}
.mv .txt_box .logo {
	display: inline-block;
	max-width: 600px;
	width: 31.25%;
}
.mv_txt01 {
	/*font-size: 2.6vw;*/
	/*font-family: "Noto Serif JP", serif;*/
	/*color: #fff;*/
	margin-bottom: 25px;
	text-align: center;
}
.mv_txt01 img {
	max-width: 600px;
	width: 30.25%;
}
.mv_txt02 {
	/*font-size: 3.5vw;*/
	/*font-family: "Noto Serif JP", serif;*/
	/*color: #fff;*/
	margin-top: 80px;
	text-align: center;
}
.mv_txt02 img {
	max-width: 800px;
	width: 41.6667%;
}
.mv .mask {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,.5);
	z-index: 20;
}
.mv .mask:before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: url(../images/common/pc/filter.svg);
	z-index: 99;
	transition: 1s;
}
.mv_movie {
	overflow: hidden;
	top: 0px;
}
.mv_movie .video {
	position: fixed;
	z-index: -999;
}

/*== scroll_down ==*/
#mv .scroll_down {
	position: absolute;
	left: 50px;
	left: 2.6049%;
	bottom: 20px;
	height: 168px;
}
	#mv .scroll_down span {
		position: absolute;
		left: 10px;
		top: 8px;
		color: #fff;
		font-size: 14px;
		letter-spacing: 0.05em;
		-ms-writing-mode: tb-rl;
		-webkit-writing-mode: vertical-rl;
		writing-mode: vertical-rl;
		z-index: 99;
	}
	#mv .scroll_down::after {
		content: "";
		position: absolute;
		top: 0;
		width: 1px;
		height: 190px;
		background: #fff;
		animation: pathmove 1.8s ease-in-out infinite;
		opacity: 0;
		z-index: 99;
	}
@keyframes pathmove{
	0% {
		height: 0;
		top: 0;
		opacity: 0;
	}
	30% {
		height: 84px;
		opacity: 1;
	}
	100% {
		height: 0;
		top: 168px;
		opacity: 0;
	}
}

@media screen and (max-width:1024px) {
	.mv {
		height: 100vh;
	}
	.mv .txt_box {
		top: 37%;
	}
	.mv_txt01 {
		margin-bottom: 20px;
	}
	.mv_txt01 img {
		width: 58%;
	}
	.mv .txt_box .logo {
		width: 60%;
	}
	.mv_txt02 {
		margin-top: 40px;
	}
	.mv_txt02 img {
		width: 80%;
	}
	.mv_movie .video {
		position: absolute;
		width: 100%;
	}
}

@media screen and (max-width:599px) {
	.mv .logo {
		width: 80%;
	}
	.mv_movie .video {
		position: absolute;
		width: auto;
		height: 100%;
	}
}


/*展示会バナー*/
.exhibition {
	padding-top: 120px;
	padding-bottom: 120px;
}
.exhibition .banner {
	max-width: 940px;
	margin: 0 auto;
}
.exhibition .banner img {
	box-shadow: 3px 3px 3px rgba(0,0,0,0.3);
}

@media screen and (max-width:1300px) { 
	.exhibition {
		padding-top: 80px;
		padding-bottom: 80px;
	}
	.exhibition .banner {
		max-width: 800px;
	}
}

@media screen and (max-width:1024px) { 
	.exhibition {
		padding-left: 6.25%;
		padding-right: 6.25%;
	}
}

@media screen and (max-width:599px) {
	.exhibition {
		padding-top: 50px;
		padding-bottom: 50px;
		padding-left: 5.333%;
		padding-right: 5.333%;
	}
}

/*ABOUT US*/
.about_us {}
.in_about {
	padding-top: 120px;
	position: relative;
}
.about_box {
	max-width: 1440px;
	width: 75%;
	margin: 0 auto;
	position: relative;
	display: flex;
	padding-bottom: 120px;
}
/*.about_box:before {
	content: "";
	position: absolute;
	bottom: -250px;
	right: 0;
	background-image: url(../images/top/pc/shoes_item01.svg);
	background-repeat: no-repeat;
	background-size: 720px;
	width: 720px;
	height: 305px;
}*/
.about_box .left {
	max-width: 800px;
	width: 55.5556%;
	/*width: 100%;*/
	position: relative;
	padding-right: 40px;
	z-index: 9;
}
.about_box .ttl_tips {
	padding-top: 120px;
}
.about_box .ttl_tips h2 {
	text-align: left;
}
.about_txt {
	margin-top: 80px;
	margin-left: 20px;
	font-size: 28px;
}
.about_box .rights {
	max-width: 640px;
	width: 44.4444%;
}
.about_box .rights .sticky {
	position: sticky;
	top: 50px;
	box-shadow: 10px 10px 10px rgba(0,0,0,.2);
}
.about_box .rights .img_box {
	width: 100%;
}
.slick .slick-next,
.slick .slick-prev {
	display: block;
	z-index: 999;
	position: absolute;
	top: auto;
	width: 50px;
	height: 50px;
	background-color: #a6b2a4;
	border-radius: 50px;
	z-index: 99;
	bottom: -100px;
}
.slick .slick-next {
	right: 0;
}
.slick .slick-prev {
	left: auto;
	right: 100px;
}
.slick .slick-next:before,
.slick .slick-prev:before {
	content: "";
	top: 17px;
	position: absolute;
	opacity: 1;
	height: 12px;
	width: 12px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
}
.slick .slick-next:before {
	transform: translateY(20%) rotate(45deg);
	right: 20px;
}
.slick .slick-prev:before {
	transform: translateY(20%) rotate(-135deg);
	right: 18px;
}
.slick .slick-next:hover,
.slick .slick-prev:hover,
.slick .slick-next:focus,
.slick .slick-prev:focus {
	background-color: #5f6d5c;
}
/*.about_box .rights .img_box:before {
	content: "";
	position: absolute;
	top: 50px;
	right: -50px;
	background-color: #a6b2a4;
	background-size: 740px;
	width: 100%;
	height: 100%;
	z-index: -2;
}*/

@media screen and (max-width:1600px) {
	.about_txt {
		font-size: 24px;
	}
	.about_box {
		width: 100%;
		padding-left: 6.25%;
		padding-right: 6.25%;
	}
	.about_box:before {
		right: 5%;
	}
	.about_box .rights {
		right: 6.25%;
		width: 38%;
	}
	.about_box .rights .img_box:before {
		top: 25px;
		right: -25px;
	}
}

@media screen and (max-width:1300px) {
	.in_about {
		padding-top: 100px;
		padding-bottom: 200px;
	}
	.about_box:before {
		bottom: -150px;
	}
	.about_box .left {
		width: 60%;
	}
	.about_box .rights {
		width: 40%;
	}
}

@media screen and (max-width:1024px) {
	.in_about {
		padding-top: 80px;
		padding-bottom: 100px;
	}
	.about_box {
		display: block;
	}
	.about_box .left {
		width: 100%;
		padding: 0;
	}
	.about_box .ttl_tips {
		padding-top: 0;
	}
	.about_box .ttl_tips h2 {
		text-align: center;
	}
	.about_txt {
		margin-left: 0;
		margin-top: 50px;
		font-size: 24px;
	}
	.about_box .rights {
		width: 100%;
		margin-top: 50px;
	}
	.about_box .rights .img_box {
		/*height: 400px;*/
	}
	.about_box:before {
		content: none;
	}
	.slick .slick-next {
		left: 100px;
	}
	.slick .slick-prev {
		right: auto;
		left: 0px;
	}
}

@media screen and (max-width:599px) {
	.in_about {
		padding-top: 50px;
		padding-bottom: 0;
	}
	.about_txt {
		margin-top: 30px;
	}
	.about_txt {
		margin-top: 30px;
		font-size: 21px;
		line-height: 1.75;
	}
	.about_box .rights {
		width: 100%;
		margin-top: 30px;
	}
}

/*Pierrotの強み*/
.in_point {
	padding-top: 120px;
	padding-bottom: 120px;
	position: relative;
}
.in_point:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	background-image: url(../images/top/pc/point_bk.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-attachment: fixed;
	width: 100%;
	height: 100%;
	z-index: 0;
}
.point_list {
	max-width: 1440px;
	width: 75%;
	margin: 0 auto;
	margin-top: 120px;
	justify-content: space-between;
}
.point_list li {
	max-width: 450px;
	width: 31.25%;
	background-color: rgba(255,255,255,.9);
	box-shadow: 5px 5px 7px rgba(0,0,0,.2);
	border-radius: 10px;
	padding: 45px 35px;
	position: relative;
	overflow:hidden;
}
.point_list li + li {
	margin-left: 45px;
	margin-left: 3.125%
}
.point_num {
	text-align: center;
	line-height: 1;
}
.point_num .unit {
	font-size: 26px;
	font-weight: bold;
	font-family: "Noto Serif JP", serif;
	display: inline-block;
	margin-right: 5px;
}
.point_num .suji {
	font-size: 65px;
	font-weight: bold;
	font-family: "Noto Serif JP", serif;
}
.point_ttl {
	margin-top: 25px;
	text-align: center;
	font-size: 36px;
	font-weight: bold;
	font-family: "Noto Serif JP", serif;
	padding-bottom: 20px;
	border-bottom: 2px dashed #333;
}
.point_txt {
	margin-top: 20px;
	font-size: 21px;
	line-height: 1.714;
}

@media screen and (max-width:1600px) { 
	.point_list {
	   width: 100%;
		padding-left: 6.25%;
		padding-right: 6.25%;
	}
	.point_list li {
		padding: 30px 25px;
	}
}

@media screen and (max-width:1300px) {
	.in_point {
		padding-top: 100px;
		padding-bottom: 100px;
	}
	.point_list {
		margin-top: 80px;
	}
	.point_num .suji {
		font-size: 55px;
	}
	.point_ttl {
		font-size: 32px;
		margin-top: 15px;
		line-height: 1;
	}
}

@media screen and (max-width:1024px) {
	.in_point {
		padding-top: 80px;
		padding-bottom: 80px;
	}
	.in_point:before {
		background-attachment: initial;
	}
	.point_list {
		margin-top: 50px;
		display: block;
	}
	.point_list li {
		max-width: 500px;
		width: 100%;
		margin: 0 auto;
	}
	.point_list li + li {
		margin: 0 auto;
		margin-top: 30px;
	}
}

@media screen and (max-width:599px) {
	.in_point {
		padding-top: 50px;
		padding-bottom: 50px;
	}

}


/*PRODUCT*/
.product {}
.in_head {
	padding-top: 120px;
	padding-bottom: 120px;
}
.product .img_box {
	max-width: 1240px;
	width: 64.5834%;
	margin: 0 auto;
	margin-top: 80px;
}
.product_txtBox {
	max-width: 1100px;
	width: 54.2916%;
	margin: 0 auto;
	margin-top: 80px;
	/*border: 2px dashed #333;*/
	padding: 35px 0;
}
.product_txtBox:before {
	content: '';
	position: absolute;
	top: -2px;
	left: -2px;
	width: 0;
	height: 0;
	border: 2px dashed transparent;
}
.product_txtBox:after {
	content: '';
	position: absolute;
	bottom: -2px;
	right: -2px;
	width: 0;
	height: 0;
	border: 2px dashed transparent;
}
.product_txtBox.starting{
	opacity: 1;
	transform: translateY(0px);
}

.product_txtBox.starting:before {
	width: 100%;
	height: 100%;
	border-top-color: #333;
	border-right-color: #333;
	/*transition: width .25s ease-out, height .25s ease-out .25s;*/
	transition: border-color 0s ease-out .5s, width .25s ease-out .5s, height .25s ease-out .75s;
}
.product_txtBox.starting:after {
	width: 100%;
	height: 100%;
	border-bottom-color: #333;
	border-left-color: #333;
	transition: border-color 0s ease-out .5s, width .25s ease-out .5s, height .25s ease-out .75s;
}
.product_txtBox p {
	text-align: center;
	font-size: 28px;
	line-height: 2.25;
}
.process {
	padding-top: 80px;
}
.process ul {
	max-width: 1440px;
	width: 75%;
	margin: 0 auto;
	justify-content: space-between;
}
/*.process ul.sma {
	scale: .8;
	transition: .8s;
}
.process ul.lar {
	scale: 1;
	transition: .8s;
}*/
.process ul li {
	max-width: 224px;
	width: 15.5556%;
}
.process ul li:before {
	content: "";
	position: absolute;
	top: 30%;
	left: -32%;
	background-image: url(../images/top/pc/pr_arrow.svg);
	background-repeat: no-repeat;
	background-size: 65px;
	width: 65px;
	height: 57px;
}
.process ul li:nth-child(1):before {
	content: "none";
	display: none;
}
.process ul li + li {
	margin-left: 5.5556%;
	position: relative;
}
.process ul li a {
	display: inline-block;
}

.process ul li a .process_img {
	display: inline-block;
	width: 100%;
	background-color: #a6b2a4;
	border-radius: 10px;
	transition: .1s;
}
.process:hover ul li a .process_img {
}
.process ul li a:hover .process_img {
	background-color: #5f6d5c;
	transition: .1s;
}


.process ul li a .process_ttl {
	font-size: 28px;
	font-weight: bold;
	font-family: "Noto Serif JP", serif;
	display: inline-block;
	width: 100%;
	text-align: center;
	margin-top: 15px;
	line-height: 1;
	transition: .1s;
}
.process ul li a:hover .process_ttl {
	text-decoration: underline;
	transition: .1s;
}


@media screen and (max-width:1600px) { 
	.product_txtBox {
		width: 68%;
	}
	.product_txtBox p {
		font-size: 28px;
	}
	.process ul {
		width: 87.5%;
	}
}

@media screen and (max-width:1300px) {
	.in_head {
		padding-top: 100px;
		padding-bottom: 100px;
	}
	.process ul li:before {
		background-size: 50px;
		width: 50px;
		height: 45px;
	}
}

@media screen and (max-width:1024px) {
	.in_head {
		padding-top: 80px;
		padding-bottom: 80px;
	}
	.product .img_box {
		margin-top: 50px;
		width: 80%;
	}
	.product_txtBox {
		margin-top: 50px;
		width: 60%;
	}
	.product_txtBox p {
		font-size: 24px;
	}
	.process {
		padding-top: 50px;
	}
	.process ul li:before {
		top: 20%;
	}
	.process ul li a .process_img {
		border-radius: 15px;
		display: inline-flex;
	}
	.process ul li a .process_ttl {
		font-size: 24px;
		margin-top: 10px;
	}
}

@media screen and (max-width:599px) {
	.in_head {
		padding-top: 50px;
		padding-bottom: 50px;
	}
	.product .img_box {
		margin-top: 50px;
		width: 100%;
		padding-left: 5.333%;
		padding-right: 5.333%;
	}
	.product_txtBox {
		margin-top: 30px;
		width: 90.666%;
		padding: 25px 0;
	}
	.product_txtBox p {
		font-size: 21px;
	}
	.process ul {
		display: block;
	}
	.process ul li {
		max-width: 250px;
		width: 100%;
		margin: 0 auto;
	}
	.process ul li + li {
		margin: 0 auto;
		margin-top: 30px;
	}
	.process ul li:before {
		top: -18%;
		left: 47px;
		background-size: 40px;
		width: 40px;
		height: 35px;
		transform: rotate(90deg);
	}
	.process ul li a {
		display: flex;
		align-items: center;
	}
	.process ul li a .process_img {
		width: 55%;
	}
	.process ul li a .process_ttl {
		width: 45%;
		text-align: left;
		padding-left: 20px;
		font-size: 21px;
	}
}

.pr_content {
	height: 100vh;
	position: relative;
	overflow: hidden;
}
.pr_content + .pr_content {
	margin-top: 10px;
}

.pr_content.sma {
	scale: .7;
	transition: .8s;
}
.pr_content.lar {
	scale: 1;
	transition: .8s;
}

.pr_content .movie:before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-image: url(../images/common/pc/filter.svg);
	background-color: rgba(0,0,0,.6);
	z-index: 2;
}
.pr_content .inner {
	width: 100%;
	text-align: center;
	position: absolute;
	left: 50%;
	transform: translate(-50%,0%);
	z-index: 99;
	top: 35%;
}
.pr_content .inner h3 {
	font-size: 60px;
	line-height: 60px;
	font-family: "Noto Serif JP", serif;
	color: #fff;
	/*border: 2px dashed;*/
	max-width: 400px;
	margin: 0 auto;
	height: 115px;
	padding: 20px 0px;
	position: relative;
	opacity: 0;
}

.pr_content .inner h3 span.tensen {
	display: block;
	z-index: 1;
	color: #fff;
}
.pr_content .inner h3:before {
	content: '';
	position: absolute;
	top: -2px;
	left: -2px;
	width: 0;
	height: 0;
	border: 2px dashed transparent;
}

.pr_content .inner h3:after {
	content: '';
	position: absolute;
	bottom: -2px;
	right: -2px;
	width: 0;
	height: 0;
	border: 2px dashed transparent;
}

.pr_content .inner h3.starting{
	opacity: 1;
}

.pr_content .inner h3.starting:before {
	width: 100%;
	height: 100%;
	border-top-color: #fff;
	border-right-color: #fff;
	/*transition: width .25s ease-out, height .25s ease-out .25s;*/
	transition: border-color 0s ease-out .5s, width .25s ease-out .5s, height .25s ease-out .75s;
}

.pr_content .inner h3.starting:after {
	width: 100%;
	height: 100%;
	border-bottom-color: #fff;
	border-left-color: #fff;
	transition: border-color 0s ease-out .5s, width .25s ease-out .5s, height .25s ease-out .75s;
}

.pr_content .inner h4 {
	margin-top: 50px;
	font-size: 36px;
	font-family: "Noto Serif JP", serif;
	color: #fff;
}
.pr_content .inner .more_btn a {
	margin-top: 80px;
}


/*商品企画*/
#process01 .inner {
	top: 30%;
}
#process01 .movie img {
	/*width: auto;*/
	height: 100%;
	scale: .9;
}

/*裁断*/


/*製甲*/
#process03 .inner h3 {
	padding-left: 38px;
}
#process03 .inner h3 span {
	letter-spacing: -2px;
}


/*つり込み・底付け*/
#process04 .inner h3 {
	max-width: 550px;
}


/*モーダル画面*/
.modal_hangar .modal {
	padding: 100px 6.25%;
}
.modal_hangar .modal .modal-dialog {
	transform: none;
	width: 100%;
	max-width: 1920px;
	margin: 0;
	position: relative;
	height: auto;
}
.modal_hangar .modal-content {
	background-color: transparent;
	border: none;
}
.modal_hangar .modal_in {
	max-width: 1440px;
	width: 90%;
	margin: 0 auto;
	padding-top: 130px;
}
.modal_hangar .modal_in .modal_ttl {
	text-align: center;
}
.modal_hangar .modal_in .modal_ttl h3 {
	font-size: 60px;
	line-height: 60px;
	font-family: "Noto Serif JP", serif;
	/*border: 2px dashed;*/
	max-width: 400px;
	margin: 0 auto;
	height: 115px;
	padding: 20px 0px;
	position: relative;
}
.modal_hangar .modal_in .modal_ttl h3:before {
	content: '';
	position: absolute;
	top: -2px;
	left: -2px;
	width: 0;
	height: 0;
	border: 2px dashed transparent;
}

.modal_hangar .modal_in .modal_ttl h3:after {
	content: '';
	position: absolute;
	bottom: -2px;
	right: -2px;
	width: 0;
	height: 0;
	border: 2px dashed transparent;
}
.modal_hangar .modal_in .modal_ttl h3.starting:before {
	width: 100%;
	height: 100%;
	border-top-color: #333;
	border-right-color: #333;
	transition: border-color 0s ease-out .5s, width .25s ease-out .5s, height .25s ease-out .75s;
}

.modal_hangar .modal_in .modal_ttl h3.starting:after {
	width: 100%;
	height: 100%;
	border-bottom-color: #333;
	border-left-color: #333;
	transition: border-color 0s ease-out .5s, width .25s ease-out .5s, height .25s ease-out .75s;
}

.modal_hangar #modal04 .modal_in .modal_ttl h3 {
	max-width: 550px;
}

.modal_hangar .modal_body {
	margin-top: 100px;
	margin-bottom: 100px;
}
.modal_body .left_box {
	max-width: 840px;
	width: 58.3334%;
	padding-right: 90px;
	padding-right: 6.25%;
	margin-top: 30px;
}
.modal_body .left_box .sticky {
	position: sticky;
	top: 0px;
}
.modal_body .left_box .sticky .img_box {
	width: 100%;
	max-width: 725px;
	margin: 0;
	margin-top: 80px;
}
.modal_hangar .modal_body h4 {
	font-size: 36px;
	font-family: "Noto Serif JP", serif;
	line-height: 1.3;
	padding-bottom: 25px;
	border-bottom: 2px dashed #333;
	display: inline-block;
}
.modal_hangar .modal_body p {
	font-size: 21px;
	font-family: "Noto Sans JP", sans-serif;
	margin-top: 30px;
}
.modal_body .right_box {
	max-width: 600px;
	width: 41.6667%;
}
.modal_body .img_list li {
	font-size: 0;
	box-shadow: 5px 5px 7px rgba(0,0,0,.2);
}
.modal_body .img_list li + li {
	margin-top: 50px;
}

.modal .close {
	position: fixed;
	top: 50px;
	right: 50px;
}
.modal .close .btn.cancel {
	display: block;
	width: 40px;
	height: 40px;
	position: fixed;
	z-index: 9999999;
	top: 100px;
	right: 60px;
	cursor: pointer;
	transition: .3s;
}
.close-btn {
	display: block;
	width: 40px;
	height: 40px;
	position: fixed;
	z-index: 9999999;
	top: 100px;
	right: 60px;
	cursor: pointer;
	transition: .3s;
}
.close-btn:before {
	content: "CLOSE";
	font-size: 16px;
	font-family: "Noto Sans JP", sans-serif;
	position: absolute;
	bottom: -17px;
	left: -4px;
	color: #fff;
}
.close-btn:hover {
	transition: .3s;
}
.modal_hangar .bar {
	width: 25px;
	height: 1px;
	display: block;
	position: absolute;
	/*left: 50%;*/
	transform: translateX(-50%);
	background-color: #fff;
	transition: .3s;
}    
.modal_hangar .bar_top {
	top: 10px;
}
.modal_hangar .bar_bottom {
	bottom: 10px;
}
.modal_hangar .close-btn .bar_top {
	transform: translate(-50%,10px) rotate(45deg);
	transition: transform .3s;
}
.modal_hangar .close-btn .bar_bottom {
	transform: translate(-50%,-9px) rotate(-45deg);
	transition: transform .3s;
}

.modal.show ~ .inner {
	display: none;
}

@media screen and (max-width:1600px) { 
	.pr_content .inner {
		top: 30%;
	}
	.pr_content .inner h3,
	.modal_hangar .modal_in .modal_ttl h3 {
		font-size: 50px;
		line-height: 50px;
		height: 100px;
		max-width: 350px;
	}
	#process04 .inner h3,
	.modal_hangar #modal04 .modal_in .modal_ttl h3 {
		max-width: 470px;
	}
	.pr_content .inner h4,
	.modal_hangar .modal_body h4 {
		font-size: 30px;
	}
	.modal_hangar .inner .more_btn a {
		margin-top: 60px;
	}
}

@media screen and (max-width:1024px) { 
	.pr_content {
		height: 432px;
	}
	.pr_content .inner {
		top: 100px;
	}
	#process01 .inner {
		top: 90px;
	}
	.pr_content .video {
		width: 100%;
	}
	.pr_content .inner h3,
	.modal_hangar .modal_in .modal_ttl h3 {
		font-size: 36px;
		max-width: 300px;
		height: 75px;
		line-height: 33px;
	}
	#process04 .inner h3,
	.modal_hangar #modal04 .modal_in .modal_ttl h3 {
		max-width: 400px;
	}
	.pr_content .inner h4,
	.modal_hangar .modal_body h4 {
		font-size: 24px;
		display: block;
		margin-top: 30px;
	}

	.pr_content .inner .more_btn a {
		margin-top: 40px;
	}
	.modal_hangar .modal {
		padding: 50px 2%;
	}
	.modal_hangar .modal_in {
		width: 100%;
		padding-left: 6.25%;
		padding-right: 6.25%;
		padding-top: 50px;
	}
	.modal_hangar .modal_body {
		margin-top: 80px;
		margin-bottom: 80px;
		display: block;
	}
	.modal_body .left_box {
		margin-top: 0;
		width: 100%;
		padding-right: 0;
	}
	.modal_body .right_box {
		margin-top: 30px;
		max-width: 768px;
		width: 100%;
	}
	.modal_body .img_box {
		margin-top: 30px;
		width: 100%;
	}
	.modal_body .img_list li + li {
		margin-top: 30px;
	}
}

@media screen and (max-width:599px) {
	.pr_content {
		height: 500px;
	}
	.pr_content .video {
		height: 100%;
		width: auto;
		object-fit: cover;
	}
	.pr_content .inner h3,
	.modal_hangar .modal_in .modal_ttl h3 {
		font-size: 28px;
		line-height: 32px;
		height: 70px;
		max-width: 280px;
	}
	#process03 .inner h3 span {
		letter-spacing: 0px;
	}
	.pr_content .inner h4,
	.modal_hangar .modal_body h4 {
		font-size: 24px;
	}
	#process04 .inner h3,
	.modal_hangar #modal04 .modal_in .modal_ttl h3 {
		max-width: 300px;
	}
	.modal_hangar .modal_body {
		margin-top: 50px;
		margin-bottom: 50px;
	}
	.modal_hangar .modal_body p {
		line-height: 1.75;
	}
	.close-btn {
		top: 50px;
		right: 18px;
	}
	.close-btn:before {
		color: #333;
	}
	.modal_hangar .bar {
		background-color: #333;
	}
}


/*COMPANY*/
.company {
	padding-top: 120px;
	padding-bottom: 120px;
}
.in_com {
	max-width: 900px;
	margin: 0 auto;
}
.overview {
	margin-top: 80px;
}
.overview dl {
	display: flex;
	border-bottom: 1px dotted #333;
	padding-bottom: 5px;
	font-size: 21px;
}
.overview dl + dl {
	padding-top: 30px;
}
.overview dl dt {
	width: 200px;
	padding-left: 10px;
}
.overview dl dd {
	margin-left: 50px;
}


/*MAP*/
.in_map {
	max-width: 1280px;
	width: 66.6667%;
	margin: 0 auto;
	margin-top: 100px;
}
.map {
	margin-top: 80px;
}
.map iframe {
	width: 100%;
}


@media screen and (max-width:1600px) { 
	.in_map {
		width: 80%;
	}
}

@media screen and (max-width:1300px) {
	.company {
		padding-top: 100px;
		padding-bottom: 100px;
	}
}

@media screen and (max-width:1024px) {
	.company {
		padding-top: 80px;
		padding-bottom: 80px;
		padding-left: 6.25%;
		padding-right: 6.25%;
	}
	.overview dl dd {
		margin-left: 0;
	}

	.in_map {
		width: 100%;
		margin-top: 80px;
	}
	.overview {
		margin-top: 50px;
	}
	.map {
		margin-top: 50px;
	}
}

@media screen and (max-width:599px) {
	.company {
		padding-top: 50px;
		padding-bottom: 50px;
		padding-left: 5.333%;
		padding-right: 5.333%;
	}
	.overview dl {
		display: block;
	}
	.overview dl + dl {
		padding-top: 25px;
	}
	.overview dl dt {
		width: 100%;
		font-weight: bold;
	}
	.overview dl dd {
		padding-left: 10px;
	}
	.in_map {
		margin-top: 50px;
	}
	.map iframe {
		height: 50vh;
	}
}



/*Instagram*/
.instagram {
	padding-top: 130px;
	padding-bottom: 120px;
}
.instagram_list {
	max-width: 1440px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-top: 80px;
}
.instagram_list li {
	max-width: 337.5px;
	width: 23.4375%;
	font-size: 0;
	margin-bottom: 2.0834%;
}
.instagram_list li + li {
	margin-left: 30px;
	margin-left: 2.0834%;
}
.instagram_list li:nth-child(4n+1) {
	margin-left: 0;
}
.instagram_list li a {
	transition: .1s;
}
.instagram_list li a:hover {
	opacity: .7;
	transition: .1s;
}
.instagram .more_btn {
	text-align: center;
	margin-top: 50px;
}
.instagram .more_btn a {
	border: 1px solid #333;
	color: #333;
}
.instagram .more_btn a:hover {
	background-color: #b46357;
	color: #fff;
}


@media screen and (max-width:1600px) {
	.instagram {
		padding-left: 6.25%;
		padding-right: 6.25%;
	}
}

@media screen and (max-width:1024px) {
	.instagram {
		padding-top: 80px;
		padding-bottom: 80px;
	}
}


@media screen and (max-width:599px) {
	.instagram {
		padding-top: 50px;
		padding-bottom: 50px;
	}
	.instagram_list {
	    margin-top: 50px;
	}
	.instagram_list li {
		width: 49%;
		height: 175px;
		margin-bottom: 2%;
	}
	.instagram_list li+li {
		margin-left: 2%;
	}
	.instagram_list li:nth-child(3n+1) {
		margin-left: 2%;
	}
	.instagram_list li:nth-child(6n) {
		margin-left: 2%;
	}
	.instagram_list li:nth-child(odd) {
		margin-left: 0;
	}
	.instagram_list li:last-child {
		display: block;
	}
	.instagram_box .btn_box {
		text-align: left;
		margin-top: 20px;
	}
}


/*CONTACT*/
.contact_top {
	/*background-image: url(../images/top/pc/contact_bk.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-attachment: fixed;
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;*/
}
/*.contact_top:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background-image: url(../images/common/pc/filter.svg);
	width: 100%;
	height: 100%;
	z-index: -1;
}*/
.contact_top .inner {
	padding-top: 130px;
	padding-bottom: 120px;
}
.contact_top p {
	text-align: center;
	font-size: 28px;
	min-width: 900px;
	width: 46.875%;
	margin: 0 auto;
	margin-top: 80px;
	padding: 35px 0;
}
.contact_top p:before {
	content: '';
	position: absolute;
	top: -2px;
	left: -2px;
	width: 0;
	height: 0;
	border: 2px dashed transparent;
}
.contact_top p:after {
	content: '';
	position: absolute;
	bottom: -2px;
	right: -2px;
	width: 0;
	height: 0;
	border: 2px dashed transparent;
}
.contact_top p.starting{
	opacity: 1;
	transform: translateY(0px);
}

.contact_top p.starting:before {
	width: 100%;
	height: 100%;
	border-top-color: #333;
	border-right-color: #333;
	/*transition: width .25s ease-out, height .25s ease-out .25s;*/
	transition: border-color 0s ease-out .5s, width .25s ease-out .5s, height .25s ease-out .75s;
}
.contact_top p.starting:after {
	width: 100%;
	height: 100%;
	border-bottom-color: #333;
	border-left-color: #333;
	transition: border-color 0s ease-out .5s, width .25s ease-out .5s, height .25s ease-out .75s;
}
.contact_form {
	text-align: center;
	margin-top: 100px;
}
.contact_form .more_btn a {
	border: 1px solid #333;
	color: #333;
}
.contact_form .more_btn a:hover {
	background-color: #b46357;
	color: #fff;
}

@media screen and (max-width:1024px) {
	.contact_top .inner {
		padding-top: 80px;
		padding-bottom: 80px;
	}
	.contact_top p {
		margin-top: 50px;
		font-size: 24px;
		min-width: auto;
		max-width: 768px;
		width: 80%;
	}
	.contact_form {
		margin-top: 50px;
	}
}

@media screen and (max-width:599px) {
	.contact_top .inner {
		padding-top: 50px;
		padding-bottom: 50px;
	}
	.contact_top p {
		font-size: 21px;
	}
}


/*== CONTACTページ ==*/
/*CONTACT*/
.contact {
	padding-top: 200px;
}
.contact .inner {
	position: relative;
}
.contact_txt {
	text-align: center;
	margin-top: 60px;
}

#formWrap {
	max-width: 940px;
	margin:0 auto;
	margin-top: 70px;
	padding-bottom: 150px;
	box-sizing: border-box;
}
.formTable {
	width: 100%;
	margin: 0 auto;
	padding-left: 150px;
	padding-right: 150px;
	box-sizing: border-box;
	border-radius: 25px;
	padding-top: 30px;
	padding-bottom: 80px;
}
.formTable .textarea dt {
	padding: 30px 20px 0 0;
	vertical-align: top;
}
.formTable dd {
	max-width: 640px;
	width: 100%;
	padding-top: 0;
}
.formTable dt {
	text-align: left;
	border: none;
	padding: 38px 20px 0 0;
	box-sizing: border-box;
	color: #333;
	font-size: 18px;
}
.formTable dt .required {
	margin-right: 10px;
	background-color: #b46357;
	padding: 5px 10px;
	border-radius: 5px;
	font-size: 16px;
	color: #fff;
}
.formTable dt .any {
	margin-right: 10px;
	background-color: #fff;
	padding: 5px 10px;
	border-radius: 5px;
	font-size: 16px;
	color: #6E6E6E;
}
.formTable dd .record_area {
	padding: 10px 13px;
	border: 1px solid #ddd;
	color: #555;
	width: 100%;
	box-sizing: border-box;
	border-radius: 5px;
	margin-top: 10px;
	height: 48px;
	font-size: 18px;
	padding-left: 15px;
	background-color: #fff;
}
.formTable .textarea dd .record_area {
	height: 230px;
}
.formTable dd .record_area:focus {
	outline: none;
}

input[type="submit"] {
	padding: 0;
	transition: .3s;
	cursor: pointer;
	color: #333;
	width: 180px;
	height: 55px;
	font-size: 18px;
	border-radius: 50px;
	-webkit-appearance: none;
	border: 1px solid #333;
	background-color: transparent;
}
input[type="submit"]:hover {
	transition: .3s;
	opacity: .8;
	background-color: #b46357;
	color: #fff;
}
input[type="button"] {
	padding: 0;
	transition: .3s;
	cursor: pointer;
	color: #333;
	width: 180px;
	height: 55px;
	font-size: 18px;
	border-radius: 50px;
	-webkit-appearance: none;
	border: 1px solid #333;
	background-color: transparent;
}
input[type="button"]:hover {
	background-color: #eaeaea;
}
input.back[type="button"] {
	padding: 0;
	transition: .3s;
	cursor: pointer;
	color: #333;
	width: 180px;
	height: 55px;
	font-size: 18px;
	border-radius: 50px;
	-webkit-appearance: none;
	border: 1px solid #999;
	background-color: #999;
	color: #fff;
}
input.back[type="button"]:hover {
	opacity: .8;
	background-color: #eaeaea;
}
input[type="reset"] {
	padding: 10px 25px;
	margin-left: 20px;
	border: 1px solid #ddd;
	cursor: pointer;
	margin-left: 20px;
	border-radius: 0;
	-webkit-appearance: none;
}
input[type="reset"]:hover {
	background-color: #dfdfdf;  
	transition: .5s;
}
@keyframes onAutoFillStart { from {} to {}}
input:-webkit-autofill {
	animation-name: onAutoFillStart;
	transition: background-color 50000s ease-in-out 0s;
}
/*　簡易版レスポンシブ用CSS（必要最低限のみとしています。ブレークポイントも含め自由に設定下さい）　*/
@media screen and (max-width:1600px) {
	#formWrap {
		/*margin-bottom: 150px;*/
	}
}
@media screen and (max-width:1300px) {
}
@media screen and (max-width:1024px) {
	.contact {
		padding-top: 150px;
	}
	#formWrap {
		max-width: initial;
		width: 100%;
		margin-top: 50px;
		padding-bottom: 100px;
	}
	.formTable {
		border-radius: 0;
		padding-left: 6.25%;
		padding-right: 6.25%;
	}
	.formTable dt {
		max-width: 640px;
		margin: 0 auto;
	}
	.formTable dd {
		margin: 0 auto;
	}
	.form_btn {
		margin-top: 50px;
	}
}

@media screen and (max-width:599px) {
#formWrap {
	width:100%;
	margin:0 auto;
	margin-top: 30px;
	padding-bottom: 80px;
}
.formTable {
	border-radius: 0;
	padding-left: 6.25%;
	padding-right: 6.25%;
}
	.formTable dt,
	.formTable dd {
		width:auto;
		display:block;
	}
	.formTable dt {
		margin-top: 0;
		border-bottom: 0;
		padding-top: 20px;
	}
		.formTable dt .required {
			font-size: 14px;
		}
		.formTable dt .any {
			font-size: 14px;
		}
	.formTable .textarea dt {
		padding-top: 20px;
	}
	.formTable dd .record_area {
		margin-top: 8px;
	}

	input[type="submit"],
	input[type="reset"],
	input[type="button"] {
		width: 180px;
		height: 50px;
		line-height: 50px;
		border-radius: 50px;
		/*margin-left: 50px;*/
		/*margin-right: 50px;*/
	}
}


/*プライバシーポリシー*/
#formWrap .privacy_txt {
	max-width: 640px;
	width: 100%;
	margin: 50px auto 0;
	font-size: 16px;
}
#formWrap .termsBox {
	max-width: 640px;
	width: 100%;
	margin: 0 auto;
	height: 250px;
	overflow-y: scroll;
	border: 1px solid #acadae;
	padding: 15px 10px;
	box-sizing: border-box;
	margin-top: 0px;
	background-color: #fff;
}
	#formWrap .termsBox .scrollWrap dl + dl {
		padding-top: 15px;
	}
	#formWrap .termsBox .scrollWrap dl dt {
		font-weight: bold;
	}
	#formWrap .termsBox .scrollWrap dl dd {
		padding-top: 8px;
		font-size: 16px;
		line-height: 1.2;
	}

#formWrap .privacy_check {
	display: none;
}
	#formWrap .privacy_check .required {
		margin-right: 13px;
		background-color: #f9c270;
		padding: 5px 13px;
		border-radius: 5px;
		font-size: 14px;
		color: #fff;
	}
	#formWrap .privacy_check .text_check {
		display: inline-block;
		transform: translateY(1px);
	}
		#formWrap .privacy_check input[type="checkbox" i] {
			margin: 0;
			transform: scale(1.1);
		}

.form_btn {
	width: 180px;
	height: 55px;
	margin: 0 auto;
	margin-top: 80px;
}
.form_btn input {
	width: 100%;
	height: 55px;
	display: inline-block;
	line-height: 55px;
	text-align: center;
	color: #333;
	font-size: 16px;
	border-radius: 50px;
	background-color: transparent;
	border: 1px solid #333;
}

@media screen and (max-width:1024px) {
	#formWrap .privacy_txt {
		margin-top: 0;
	}
}

@media screen and (max-width:599px) {
	.contact {
		padding-top: 140px;
	}
	.contact_txt {
		margin-top: 30px;
		padding-left: 6.25%;
		padding-right: 6.25%;
		text-align: justify;
	}
	.formTable {
		padding-bottom: 50px;
	}
	#formWrap .privacy_txt {
		max-width: 599px;
		padding-left: 6.25%;
		padding-right: 6.25%;
		box-sizing: border-box;
	}
	#formWrap .termsBox {
		margin-top: 5px;
		width: 90%;
	}
	#formWrap .form_btn {
		margin-top: 50px;
	}
	#formWrap .form_btn {
		width: 180px;
		height: 50px;
	}
	.form_btn input {
		height: 50px;
		line-height: 50px;
	}

}

/*サンクスページ*/
.thanks {}
.thanks .inner {
	padding-bottom: 130px;
}
.thanks .inner:before {
	bottom: 40px;
}
	.thanks_box {
		max-width: 960px;
		margin: 0 auto;
		margin-top: 80px;
		margin-bottom: 80px;
		padding-top: 50px;
		padding-bottom: 50px;
		/*border-radius: 25px;*/
	}
		.thanks_box .tanks_ttl {
			font-size: 24px;
			font-weight: bold;
			text-align: center;
		}
		.thanks_box .tanks_txt {
			text-align: center;
			margin-top: 30px;
			font-size: 21px;
		}
		.thanks .more_btn {
			text-align: center;
		}
			.thanks .more_btn a {
				border: 1px solid #333;
				color: #333;
				transition: .1s;
			}
			.thanks .more_btn a:hover {
				background-color: #b46357;
				color: #fff;
				transition: .1s;
			}

@media screen and (max-width:1024px) {
	.thanks_box {
		margin-top: 50px;
		margin-bottom: 50px;
		width: 87.5%;
	}
	.thanks .inner {
		padding-bottom: 100px;
	}
}

@media screen and (max-width:599px) {
	.contact.thanks {
		margin-top: 0;
	}
	.thanks .inner {
		margin-top: 0;
		padding-bottom: 80px;
	}
	.thanks_box {
		margin-bottom: 30px;
		padding-bottom: 5px;
		padding-top: 5px;
	}
	.thanks_box .tanks_ttl {
		font-size: 18px;
		margin-bottom: 30px;
		margin-top: 30px;
	}
	.thanks_box .tanks_txt {
		font-size: 16px;
		text-align: justify;
		padding-left: 6.25%;
		padding-right: 6.25%;
		margin-bottom: 50px;
		margin-top: 30px;
	}
	.thanks_box .top_back a {
		font-size: 16px;
	}
	.thanks_box .more_btn {
		width: 240px;
	}
	.thanks_box .more_btn:before {
		width: 240px;
	}
}


/*確認ページ*/
.kakunin_box {
	padding-top: 140px;
}
p.kakunin {
	font-size: 18px;
	text-align: center;
	margin-bottom: 20px;
}
/*.kakunin {
	margin-top: 50px;
	margin-bottom: 50px;
	text-align: center;
}*/
#contact .form_step {
	margin-top: 0;
}
#formWrap .formTable {
	display: inline-block;
	margin-bottom: 48px;
}
#formWrap .formTable tbody {
	display: block;
}
#formWrap .formTable tr {
	max-width: 640px;
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
}
#formWrap .formTable th {
	text-align: left;
	border: none;
	padding: 30px 20px 0 0;
	box-sizing: border-box;
	font-size: 18px;
}
#formWrap .formTable td {
	max-width: 700px;
	padding: 10px 13px!important;
	border: 1px solid #ddd;
	border-radius: 5px;
	color: #555;
	width: 100%;
	background-color: #fff;
	box-sizing: border-box;
	display: block;
	margin-top: 0;
	min-height: 48px;
	font-size: 18px;
}
#formWrap .formTable tr:last-child td {
	min-height: 230px;
}
input[type="button"] {
	margin-right: 20px;
}
.error_box input[type="button"] {
	margin-right: 0;
}
.error_h4 {
	margin-top: 50px;
}
	.error_h4 .error_txt {
		color: #f01;
		font-weight: bold;
	}
.messe_box {
	margin-top: 50px;
	padding-left: 150px;
	padding-right: 150px;
	box-sizing: border-box;
	/*background-color: #F5F5F5;*/
	border-radius: 25px;
	padding-top: 30px;
	padding-bottom: 80px;
	margin-bottom: 50px;
}
.error_messe {
	font-size: 18px;
	min-height: 48px;
	line-height: 48px;
	border-radius: 10px;
	box-sizing: border-box;
	margin-top: 50px;
}
	.error_messe dt {
		max-width: 640px;
		text-align: left;
		border: none;
		box-sizing: border-box;
		line-height: 1;
	}
		.error_messe dt .required {
			margin-right: 10px;
			background-color: #b46357;
			padding: 5px 10px;
			border-radius: 5px;
			font-size: 16px;
			color: #fff;
		}
	.error_messe dd {
		max-width: 640px;
		width: 100%;
		padding-top: 0;
		border: 1px solid #ddd;
		color: #888;
		width: 100%;
		box-sizing: border-box;
		border-radius: 6px;
		height: 48px;
		padding-left: 15px;
		background-color: #fff;
		text-align: left;
		margin-top: 10px;
		font-size: 18px;
	}
@media screen and (max-width:1024px) {
	.kakunin {
	}

	#formWrap .formTable tbody tr +tr {
		padding-top: 0;
	}
		#formWrap .formTable tbody tr th {
			max-width: initial;
			padding-bottom: 0px;
			padding-top: 20px;
		}
		#formWrap .formTable tbody tr td {
			max-width: initial;
			margin-top: 5px;
		}
	.messe_box {
		padding-left: 5.3334%;
		padding-right: 5.3334%;
		border-radius: 0;
		padding-top: 30px;
	}
}

@media screen and (max-width:599px) {
	.kakunin {
		margin-top: 30px;
		margin-bottom: 30px;
	}
	input[type="button"] {
		margin: 0 auto;
        margin-right: 5px;
	}
	.error_box input[type="button"] {
		margin-right: 0;
	}
	input[type="submit"] {
		margin-bottom: 30px;
	}
	.messe_box {
		margin-top: 30px;
	}
	.error_messe {
		margin-top: 20px;
	}
		.error_messe dt {
			font-size: 16px;
		}
			.error_messe dt .required {
				font-size: 14px;
			}
	.error_h4 {
		margin-top: 30px;
	}
}





@media screen and (max-width:1024px) {
	
}

@media screen and (max-width:599px) {
	
}