@charset "utf-8";
/* CSS Document */
*{
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}
.pc {
	display: block;
}
.sp {
	display: none;
}
@font-face {
	font-family: "MyFont";
	src: url(../font/AmplitudeComp-Medium.woff) format("woff");
}
body {
	position: relative;
	font-family: "Koburina Gothic W3 JIS2004";
}
body.active {
	overflow: hidden;
}
.ff_woff {
	font-family: "MyFont";
}
.ff_W6 {
	font-family: "Koburina Gothic W6 JIS2004";
}

/* header */
header {
	padding: 28px 45px 40px 60px;
	background-color: #b81b25;
}
.header_body {
	width: 893px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
header figure img {
	display: block;
}
header span {
	font-size: 15px;
	color: #fff;
}

/* main_visual */
section.main_visual {
	background-color: #b81b25;
	padding-bottom: 67px;
}
section.main_visual .contents_block {
	width: 702px;
	height: 384px;
	margin: 0 auto;
	display: flex;
	align-items: center;
}
section.main_visual h1 {
	font-size: 27px;
	color: #b81b25;
	line-height: 1.8;
	letter-spacing: 1px;
}
section.main_visual h1.fs_40 {
	font-size: 40px;
	font-weight: normal;
	text-align: center;
	line-height: 0.8;
	letter-spacing: 5px;
}
section.main_visual h1.fs_40 span {
	font-size: 20px;
	letter-spacing: 1px;
}
.main_visual_l {
	width: 50%;
	height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
	background-image: -moz-linear-gradient( 90deg, rgb(215,215,216) 0%, rgb(255,255,255) 100%);
	background-image: -webkit-linear-gradient( 90deg, rgb(215,215,216) 0%, rgb(255,255,255) 100%);
	background-image: -ms-linear-gradient( 90deg, rgb(215,215,216) 0%, rgb(255,255,255) 100%);
}
.main_visual_r {
	width: 50%;
	height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
	background-color: #b81b25;
	border: solid 4px #d7d7d8;
}
.main_visual_r img {
	display: block;
	margin: 0 auto;
}

/* nav */
nav {
	background-color: #c9caca;
}
nav ul {
	width: 702px;
	height: 55px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
nav ul li {
	height: 100%;
	list-style: none;
    display: flex;
    justify-content: center;
    align-items: center;
}
nav ul li a {
	width: 100%;
	height: 100%;
	font-size: 27px;
	color: #b81b25;
	text-decoration: none;
	cursor: pointer;
    display: inline-flex;
    justify-content: flex-start;
    align-items: center;
	letter-spacing: 4px;
}
nav ul li a.flex_end {
	justify-content: flex-end;
}
.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
}

/* service */
section.service {
	padding: 85px 0 90px 0;
}
section.service .contents_block {
	width: 702px;
	margin: 0 auto;
}
section.service h2 {
	font-size: 30px;
	color: #595757;
	text-align: center;
	padding-bottom: 10px;
}
section.service span {
	font-size: 23px;
	display: block;
	text-align: center;
	padding: 18px 0 25px 0;
	color: #595757;
	letter-spacing: 4px;
}
section.service figure.line img {
	display: block;
	margin: 0 auto;
}
section.service ul.flex_box {
	display: flex;
	justify-content: space-between;
}
section.service ul li {
	list-style: none;
}
section.service ul.flex_box > li {
	width: 29%;
}
section.service ul li figure img {
	display: block;
	margin: auto;
}
section.service ul li dt {
	font-size: 21px;
	font-weight: bold;
	color: #b81b25;
	padding: 24px 0 14px 0;
	text-align: center;
	border-bottom: solid 1px #b81b25;
}
section.service ul li dd ul li {
	font-size: 16px;
	padding-top: 10px;
	color: #595757;
}

.item_list li{
	display: flex;
}
.item_list li::before {
	content: '・';
}

/* company */
section.company {
	padding: 80px 0 100px 0;
	background-color: #f7f8f8;
}
section.company .contents_block {
	width: 702px;
	margin: 0 auto;
}
section.company h2 {
	font-size: 30px;
	color: #595757;
	text-align: center;
	padding-bottom: 10px;
}
section.company span {
	font-size: 23px;
	display: block;
	text-align: center;
	padding: 18px 0 70px 0;
	color: #595757;
	letter-spacing: 4px;
}
section.company figure img {
	display: block;
	margin: 0 auto;
}
section.company dl {
	display: flex;
	padding-bottom: 30px;
	width: 375px;
	margin: 0 auto;
}
section.company dl.pb_0 {
	padding-bottom: 0;
}
section.company dl dt {
	font-size: 16px;
	font-weight: bold;
	width: 120px;
	line-height: 2;
	color: #595757;
}
section.company dl dd {
	font-size: 16px;
	line-height: 2;
	color: #595757;
}
section.company dl dd a {
	text-decoration: none;
	color: #595757;
}
section.company dl dd a:hover {
	color: #b81b25;
}

/* contact */
section.contact {
	padding: 90px 0 35px 0;
}
section.contact .contents_block {
	width: 702px;
	margin: 0 auto;
}
section.contact h2 {
	font-size: 30px;
	color: #595757;
	text-align: center;
	padding-bottom: 10px;
}
section.contact span {
	font-size: 23px;
	display: block;
	text-align: center;
	padding: 18px 0 30px 0;
	color: #595757;
	letter-spacing: 4px;
}
section.contact figure img {
	display: block;
	margin: 0 auto;
}
section.contact .send_box {
	text-align: center;
	padding-bottom: 100px;
}
section.contact .send_box a {
	font-size: 30px;
	font-weight: bold;
	color: #b81b25;
	text-decoration: none;
	display: inline-block;
	letter-spacing: 3px;
}
section.contact span.pd_0 {
	font-size: 18px;
	padding: 0;
}
section.contact span.pd_0 a {
	text-decoration: none;
	color: #595757;
	letter-spacing: 3px;
}
section.contact span.pd_0 a:hover {
	color: #b81b25;
}

/* privacy_policy*/
.privacy_policy {
	padding: 90px 0 95px 0;
}
.privacy_policy .contents_block {
	width: 702px;
	margin: 0 auto;
}
.privacy_policy dl dt {
	font-size: 13px;
	font-weight: bold;
	padding-bottom: 40px;
	line-height: 2;
	letter-spacing: 1px;
	color: #221815;
}
.privacy_policy ul {
	padding-bottom: 60px;
}
.privacy_policy ul li {
	font-size: 13px;
	list-style: none;
	line-height: 2;
	letter-spacing: 1px;
	color: #221815;
	display: flex;
}
.privacy_policy ul li span {
	padding-right: 5px;
}
.privacy_policy p {
	font-size: 13px;
	line-height: 2;
	letter-spacing: 1px;
	color: #221815;
}
.privacy_policy p a {
	text-decoration: none;
	color: #221815;
}
.privacy_policy p a:hover {
	color: #b81b25;
}
.privacy_policy p.pb_60 {
	padding-bottom: 60px;
}
.privacy_policy p.pb_35 {
	padding-bottom: 35px;
}

/* footer */
.footer_body {
	height: 55px;
	background-color: #c9caca;
    display: flex;
    align-items: center;
    justify-content: center;
}
.footer_body span {
	font-size: 12px;
	color: #b81b25;
}

@media screen and (max-width: 1000px) {
	.header_body {
		width: 100%;
	}
}
@media screen and (max-width: 767px) {
	header {
		padding: 3%;
	}
	header figure img {
		width: 35vw;
	}
	header span {
		font-size: 2.5vw;
		margin-right: 11vw;
	}
	section.main_visual {
		padding: 0 3% 3% 3%;
	}
	section.main_visual .contents_block {
		width: 100%;
		height: 50vw;
	}
	section .main_visual_l {
		padding: 0;
	}
	section.main_visual h1 {
		font-size: 3.8vw;
	}
	section .main_visual_r img {
		width: 30vw;
	}
	section.main_visual h1.fs_40 {
		font-size: 6vw;
	}
	section.main_visual h1.fs_40 span {
		font-size: 3vw;
	}
	/* nav sp*/
	nav.sp {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		background-color: inherit;
		align-items: center;
	}
	nav.sp .modal.sp {
		display: none;
		position: fixed;
		top: 0;
		left: 0;
		height: 100%;
		width: 100%;
		background-color: #c9caca;
	}
	nav.sp .modal.sp.active {
		display: flex;
    	justify-content: center;
	}
	nav.sp .modal.sp ul {
		width: 100%;
		height: auto;
		flex-direction: column;
		align-items: inherit;
		justify-content: inherit;
		padding: 0 3%;
	}
	nav.sp .modal.sp ul li {
		width: 100%;
		height: inherit;
		margin-bottom: 4vw;
	}
	nav.sp .modal.sp ul li:last-child {
		margin-bottom: 0;
	}
	nav ul li a {
		font-size: 12vw;
		text-align: center;
		display: block;
	}
	nav ul li a.flex_end {
		justify-content: unset;
	}
	nav.sp .toggle_icon {
		position: fixed;
		top: 0;
		right: 0;
		display: inline-block;
		width: 13vw;
		height: 13vw;
		z-index: 99999;
		background-color: #b81b25;
	}
	nav.sp .toggle_icon div {
		position: relative;
	}
	nav.sp .toggle_icon span.l_top {
		position: absolute;
		display: inline-block;
		background: #fff;
		top: 4vw;
		left: 4vw;
		width: 6vw;
		height: 3px;
		z-index: 99998;
	}
	nav.sp .toggle_icon span.l_center {
		position: absolute;
		display: inline-block;
		background: #fff;
		top: 6vw;
		left: 4vw;
		width: 6vw;
		height: 3px;
		z-index: 99998;
	}
	nav.sp .toggle_icon span.l_bottom {
		position: absolute;
		display: inline-block;
		background: #fff;
		top: 8vw;
		left: 4vw;
		width: 6vw;
		height: 3px;
		z-index: 99998;
	}
	nav.sp .toggle_icon span.l_top.active {
		top: 6vw;
		transform: rotate(45deg);
	}
	nav.sp .toggle_icon span.l_center.active {
		display: none;
	}
	nav.sp .toggle_icon span.l_bottom.active {
		top: 6vw;
		transform: rotate(-45deg);
	}
	/* service sp*/
	section.service {
		padding: 8% 0 10% 0;
	}
	section.service .contents_block {
		width: 100%;
		padding: 0 3%;
	}
	section.service h2 {
		font-size: 6vw;
		padding-bottom: 3%;
	}
	section.service span {
		font-size: 4vw;
		padding: 2.5% 0 3.5% 0;
	}
	section.service ul.flex_box {
		flex-direction: column;
	}
	section.service ul.flex_box > li {
		padding-bottom: 10%;
		width: 53%;
		margin-left: auto;
		margin-right: auto;
	}
	section.service ul.flex_box > li:last-child {
		padding-bottom: 0;
	}
	section.service ul li figure img {
		width: 50vw;
		margin: 0 auto;
	}
	section.service ul li dt {
		font-size: 5vw;
		padding: 3.5% 0 2% 0;
	}
	section.service ul li dd {
		width: 50vw;
		margin: 0 auto;
	}
	section.service ul li dd ul li {
		font-size: 4vw;
		padding-top: 5%;
	}
	
	/* company sp*/
	section.company {
		padding: 8% 0 10% 0;
	}
	section.company .contents_block {
		width: 100%;
		padding: 0 3%;
	}
	section.company h2 {
		font-size: 6vw;
		padding-bottom: 3%;
	}
	section.company span {
		font-size: 4vw;
		padding: 2.5% 0 5.5% 0;
	}
	section.company dl {
		width: 100%;
		padding: 0 8vw 4.5vw 8vw;
	}
	section.company dl dt {
		font-size: 4vw;
		width: 25%;
	}
	section.company dl dd {
		font-size: 4vw;
	}
	
	/* contact sp*/
	section.contact {
		padding: 9% 0 3.5% 0;
	}
	section.contact .contents_block {
		width: 100%;
		padding: 0 3%;
	}
	section.contact h2 {
		font-size: 6vw;
		padding-bottom: 3%;	
	}
	section.contact span {
		font-size: 4vw;
		padding: 2.5% 0 4.5% 0;
	}
	section.contact .send_box {
		padding-bottom: 10%;
	}
	section.contact .send_box a {
		font-size: 5vw;
	}
	section.contact span.pd_0 {
		font-size: 4vw;
	}
	
	/* footer sp */ 
	.footer_body {
		height: 7.5vw;
	}
	.footer_body span {
		font-size: 3vw;
	}
	
	/* privacy_policy sp */
	.privacy_policy {
		padding: 9% 0 9.5% 0;
	}
	.privacy_policy .contents_block {
		width: 100%;
		padding: 0 3%;
	}
	.privacy_policy dl dt {
		font-size: 4vw;
		padding-bottom: 4%;
	}
	.privacy_policy ul {
		padding-bottom: 6%;
	}
	.privacy_policy ul li {
		font-size: 4vw;
	}
	.privacy_policy ul li img {
		height: 4vw;
	}
	.privacy_policy p {
		font-size: 4vw;
	}
	.privacy_policy p.pb_60 {
		padding-bottom: 6%;
	}
	.privacy_policy p.pb_35 {
		padding-bottom: 3.5%;
	}
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
} 




