@charset "utf-8";

/*共通枠*/

* {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}

body {
	background-color: #fff;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	line-height: 1;
	color: #202020;
}

body.is-menuOpen {
	position: fixed;
	width: 100%;
}

img {
	border:0;
	vertical-align:bottom;
}

*:focus {
	outline: none;
}

a {
	-webkit-tap-highlight-color:rgba(0,0,0,0);
	cursor: pointer;
	text-decoration: none;
}
.nolink {
    pointer-events: none;
}

/* 共通
======================================================*/

.container {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}
.container_form {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
}
.container_wrap {
	padding: 0 60px;
}

@media screen and (max-width: 599px) {
.container_wrap {
	padding: 0 30px;
}
}

@media screen and (max-width: 359px) {
.container_wrap {
	padding: 0 15px;
}
}

.block1300 { display: none; }
@media screen and (max-width: 1300px) {
.block1300 { display: block; }
}
.block1200 { display: none; }
@media screen and (max-width: 1200px) {
.block1200 { display: block; }
}
.block1100 { display: none; }
@media screen and (max-width: 1100px) {
.block1100 { display: block; }
}
.block1024 { display: none; }
@media screen and (max-width: 1024px) {
.block1024 { display: block; }
}
.block999 { display: none; }
@media screen and (max-width: 999px) {
.block999 { display: block; }
}
.block900 { display: none; }
@media screen and (max-width: 900px) {
.block900 { display: block; }
}
.block800 { display: none; }
@media screen and (max-width: 800px) {
.block800 { display: block; }
}

.block768 { display: none; }
@media screen and (max-width: 768px) {
.block768 { display: block; }
}

.block599 { display: none; }
@media screen and (max-width: 599px) {
.block599 { display: block; }
}

.block374 { display: none; }
@media screen and (max-width: 374px) {
.block374 { display: block; }
}

.block359 { display: none; }
@media screen and (max-width: 359px) {
.block359 { display: block; }
}

@media screen and (max-width: 1200px) {
.none1200 { display: none; }
}

@media screen and (max-width: 1024px) {
.none1024 { display: none; }
}

@media screen and (max-width: 999px) {
.none999 { display: none; }
}

@media screen and (max-width: 900px) {
.none900 { display: none; }
}

@media screen and (max-width: 800px) {
.none800 { display: none; }
}

@media screen and (max-width: 768px) {
.none768 { display: none; }
}

@media screen and (max-width: 599px) {
.none599 { display: none; }
}

@media screen and (max-width: 374px) {
.none374 { display: none; }
}

.anchor {
	padding-top: 260px;
	margin-top: -260px;
	display: block;
	position: relative;
	z-index: -1;
}

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

.anchor {
	padding-top: 180px;
	margin-top: -180px;
}

}

/* page_top
======================================================*/

.page_top_btn {
	width: 68pxpx;
	position: fixed;
	z-index: 99;
	right: 99px;
	bottom: 174px;
}
.page_top_btn a {
	font-weight: 500;
	font-size: 14px;
	line-height: 1;
	text-align: center;
	display: block;
	color: #fff;
	padding: 20px 0 0 0;
	background: url(../img/page_top.svg) center top no-repeat;
	background-size: 23.5px auto;
	text-shadow: rgba(87,116,160,1.0) 0px 0px 4px;
	letter-spacing: 0.02em;
	text-indent: 0.02em;
	text-align: center;
}
.page_scroll {
	position: fixed;
	z-index: 99;
	display: block;
	right: 71px;
	bottom: 23px;
	width: 120px;
	height: 120px;
	background: url(../img/page_scroll.png) center center no-repeat;
	background-size: cover;
}

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

.page_top_btn {
	width: 38pxpx;
	right: 20px;
	bottom: 100px;
}
.page_top_btn a {
	font-size: 8px;
	padding: 14px 0 0 0;
	background: url(../img/page_top.svg) center top no-repeat;
	background-size: 22px auto;
}
.page_scroll {
	right: 2px;
	bottom: 6px;
	width: 74px;
	height: 74px;
	background: url(../img/page_scroll.png) center center no-repeat;
	background-size: cover;
}

}

/* side_nav
======================================================*/

.side_nav {
	width: 82px;
	height: 242px;
	position: fixed;
	z-index: 998;
	right: 0;
	top: calc(( 100% - 252px ) / 2 );
}
.side_nav ul {
	list-style: none;
}
.side_nav ul li.side_line {
	margin-top: 30px;
}
.side_nav ul li a {
	display: block;
	height: 106px;
	box-sizing: border-box;
	border-top-left-radius: 15px;
	border-bottom-left-radius: 15px;
}
.side_nav ul li.side_tel a {
	border: solid 2px #0664F5;
	border-right: none;
	background: url(../img/side_tel.svg) center top 17px no-repeat;
	background-color: #fff;
}
.side_nav ul li.side_line a {
	border: solid 2px #06C755;
	border-right: none;
	background: url(../img/side_line.svg) center top 17px no-repeat;
	background-color: #fff;
}

.side_nav ul li.side_tel a span {
	display: block;
	text-align: center;
	font-weight: 900;
	font-size: 22px;
	color: #0664F5;
	padding-top: 62px;
}
.side_nav ul li.side_line a span {
	display: block;
	text-align: center;
	font-weight: 900;
	font-size: 22px;
	color: #06C755;
	padding-top: 62px;
}

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

.side_nav {
	display: none;
}

}


/* toppage フルページ設定
======================================================*/

body.toppage {
	overflow: hidden;
	width: 100%;
	height: 100%;
	position: relative;
}

.section_inner {
	width: 100vw;
	min-height: 100%;
	position: relative;
	box-sizing: border-box;
}

/* header
======================================================*/

.header_page_wrap {
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
	background-color: #fff;
}
.header_top {
	width: 100%;
	height: 110px;
	display: -webkit-flex;
	display: flex;
}
.header_h1_box {
	width: 712px;
	background-color: #00ACD8;
	color: #fff;
}
.header_h1_box h1 a {
	width: 100%;
	display: -webkit-flex;
	display: flex;
}
.header_h1_box h1 a span:nth-of-type(1) {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	padding: 0 20px 0 60px;
	height: 110px;
}
.header_h1_box h1 a span:nth-of-type(2) {
	display: block;
	font-weight: 700;
	font-size: 14px;
	line-height: 1.28;
	padding-top: 36px;
	color: #fff;
}
.header_content {
	width: calc( 100% - 712px );
}
.header_content_set {
	display: -webkit-flex;
	display: flex;
	width: 100%;
	max-width: 1207px;
	margin: 0 0 0 auto;
}
.header_info_box {
	width: calc( 100% - 236px );
	background-color: #fff;
}
.header_info {
	display: -webkit-flex;
	display: flex;
}
.header_info .header_tel {
	display: -webkit-flex;
	display: flex;
	width: 427px;
	padding-left: 30px;
	box-sizing: border-box;
}
.header_info .header_tel p:nth-of-type(1) {
	font-weight: 500;
	font-size: 14px;
	line-height: 1.28;
	padding-right: 16px;
	padding-top: 28px;
}
.header_info .header_tel p:nth-of-type(2) {
	font-weight: 900;
	font-size: 40px;
	letter-spacing: 0.02em;
	padding-top: 20px;
}
.header_info .header_tel p:nth-of-type(2) a {
	color: #202020;
	padding-left: 50px;
	background: url(../img/free.svg) left center no-repeat;
	background-size: 41.52px auto;
}


.header_info .header_area {
	width: 178px;
	padding-top: 20px;
	box-sizing: border-box;
}
.header_info .header_area a {
	width: 158px;
	height: 36px;
	line-height: 34px;
	padding-left: 48px;
	display: block;
	border-radius: 100vh;
	background: url(../img/i_area.svg) left 20px center no-repeat;
	background-color: #00ACD8;
	color: #fff;
	font-weight: 700;
	font-size: 18px;
	box-sizing: border-box;
}

.header_info .header_contact {
	width: 230px;
	padding-top: 20px;
	box-sizing: border-box;
}
.header_info .header_contact a {
	width: 210px;
	height: 36px;
	line-height: 34px;
	padding-left: 48px;
	display: block;
	border-radius: 100vh;
	background: url(../img/i_mail.svg) left 20px center no-repeat;
	background-color: #E70A40;
	color: #fff;
	font-weight: 700;
	font-size: 18px;
	box-sizing: border-box;
}

.header_info .header_line {
	width: 136px;
	padding-top: 20px;
	box-sizing: border-box;
}
.header_info .header_line a {
	width: 96px;
	height: 36px;
	line-height: 34px;
	padding-left: 39px;
	display: block;
	border-radius: 100vh;
	background: url(../img/i_line.svg) left 20px center no-repeat;
	background-color: #06C755;
	color: #fff;
	font-weight: 700;
	font-size: 18px;
	box-sizing: border-box;
}

.header_repair {
	width: 236px;
	background-color: #18325A;
	display: block;
}
.header_repair a {
	display: block;
	width: 100%;
	height: 110px;
	padding-top: 19px;
	box-sizing: border-box;
}
.header_repair a span:nth-of-type(1) {
	display: block;
	font-weight: 700;
	font-size: 22px;
	color: #fff;
	text-align: center;
}
.header_repair a span:nth-of-type(2) {
	display: block;
	font-weight: 700;
	font-size: 16px;
	color: #fff;
	text-align: center;
	margin: 10px auto 6px auto;
	width: 210px;
	height: 24px;
	line-height: 22px;
	border-radius: 100vh;
	background-color: #FFB100;
}
.header_repair a span:nth-of-type(3) {
	display: block;
	font-weight: 700;
	font-size: 16px;
	color: #FFB100;
	text-align: center;
}

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

.header_h1_box {
	width: 620px;
}
.header_h1_box h1 a span:nth-of-type(1) {
	padding: 0 20px 0 20px;
}
.header_h1_box h1 a span:nth-of-type(2) {
	font-size: 13px;
}
.header_content {
	width: calc( 100% - 620px );
}
.header_content_set {
	max-width: 1187px;
}
.header_info_box {
	width: calc( 100% - 216px );
}

.header_repair {
	width: 216px;
}
.header_repair a {
	padding-top: 19px;
}
.header_repair a span:nth-of-type(1) {
	font-size: 20px;
}
.header_repair a span:nth-of-type(2) {
	font-size: 14px;
	margin: 10px auto 6px auto;
	width: 190px;
	height: 24px;
	line-height: 22px;
}

}

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

.header_content_set {
	width: 100%;
	max-width: 920px;
}

.header_info .header_tel {
	display: block;
	width: 240px;
	padding-left: 0px;
}
.header_info .header_tel p:nth-of-type(1) {
	padding-right: 0px;
	padding-top: 10px;
	font-size: 12px;
}
.header_info .header_tel p:nth-of-type(1) br {
	display: none;
}
.header_info .header_tel p:nth-of-type(2) {
	font-size: 30px;
	letter-spacing: 0.02em;
	padding-top: 0px;
	line-height: 1;
}
.header_info .header_tel p:nth-of-type(2) a {
	color: #202020;
	padding-left: 46px;
	background: url(../img/free.svg) left top 14px no-repeat;
	background-size: 38px auto;
}

.header_info .header_area {
	width: 158px;
	padding-top: 20px;
}
.header_info .header_area a {
	width: 138px;
	height: 36px;
	line-height: 34px;
	padding-left: 40px;
	background: url(../img/i_area.svg) left 14px center no-repeat;
	background-size: 16px auto;
	background-color: #00ACD8;
	font-size: 16px;
}

.header_info .header_contact {
	width: 210px;
	padding-top: 20px;
	box-sizing: border-box;
}
.header_info .header_contact a {
	width: 190px;
	height: 36px;
	line-height: 34px;
	padding-left: 40px;
	background: url(../img/i_mail.svg) left 14px center no-repeat;
	background-size: 18px auto;
	background-color: #E70A40;
	font-size: 16px;
}

.header_info .header_line {
	width: 96px;
	padding-top: 20px;
}
.header_info .header_line a {
	width: 76px;
	height: 36px;
	line-height: 34px;
	padding-left: 28px;
	background: url(../img/i_line.svg) left 12px center no-repeat;
	background-size: 11px auto;
	background-color: #06C755;
	font-size: 16px;
}

}

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

.header_h1_box {
	width: 520px;
}
.header_h1_box h1 a span:nth-of-type(1) {
	padding: 0 16px 0 16px;
}
.header_h1_box h1 a span:nth-of-type(1) img {
	width: 120px;
	height: auto;
}

.header_h1_box h1 a span:nth-of-type(2) {
	font-size: 12px;
	padding-top: 34px;
}
.header_content {
	width: calc( 100% - 520px );
}
.header_content_set {
	max-width: 894px;
}

.header_info .header_area {
	width: 148px;
}
.header_info .header_contact {
	width: 200px;
	padding-top: 20px;
}
.header_info .header_line {
	width: 90px;
}

}

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

.header_h1_box {
	width: 490px;
}
.header_h1_box h1 a span:nth-of-type(2) {
	font-size: 11px;
	padding-top: 36px;
}
.header_content {
	width: calc( 100% - 490px );
}
.header_content_set {
	max-width: 774px;
}

.header_info .header_tel {
	display: block;
	width: 200px;
	padding-left: 0px;
}
.header_info .header_tel p:nth-of-type(1) {
	padding-top: 20px;
}
.header_info .header_tel p:nth-of-type(2) {
	font-size: 24px;
	padding-top: 0px;
	line-height: 1;
}
.header_info .header_tel p:nth-of-type(2) a {
	color: #202020;
	padding-left: 36px;
	background: url(../img/free.svg) left top 12px no-repeat;
	background-size: 30px auto;
}

.header_info .header_area {
	width: 118px;
}
.header_info .header_area a {
	width: 108px;
	padding-left: 0px;
	background: none;
	background-color: #00ACD8;
	text-align: center;
}
.header_info .header_contact {
	width: 170px;
}
.header_info .header_contact a {
	width: 160px;
	padding-left: 0px;
	background: none;
	background-color: #E70A40;
	text-align: center;
}
.header_info .header_line {
	width: 80px;
}
.header_info .header_line a {
	width: 66px;
	padding-left: 0px;
	background: none;
	background-color: #06C755;
	text-align: center;
}

}

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

.header_h1_box {
	width: 400px;
}
.header_h1_box h1 a span:nth-of-type(1) img {
	width: 100px;
}
.header_h1_box h1 a span:nth-of-type(2) {
	font-size: 11px;
	padding-top: 30px;
}

.header_content {
	width: calc( 100% - 400px );
}
.header_content_set {
	max-width: 744px;
}
.header_info_box {
	width: calc( 100% - 186px );
}

.header_repair {
	width: 186px;
}
.header_repair a {
	padding-top: 19px;
}
.header_repair a span:nth-of-type(1) {
	font-size: 18px;
}
.header_repair a span:nth-of-type(2) {
	font-size: 12px;
	width: 160px;
}

}

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

.header {
	width: 100%;
	height: 58px;
	background-color: #00ACD8;
}
.header_top_wrap,
.header_page_wrap {
	display: none;
}

}


/* header_sp
======================================================*/

.header_sp {
	display: none;
}

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

.header_sp {
	display: block;
	width: 100%;
	height: 58px;
	background-color: #00ACD8;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9998;
}
.header_sp h1 {
	width: 136px;
}
.header_sp h1 a {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	height: 58px;
	width: 136px;
}
.header_sp_nav {
	position: absolute;
	right: 65px;
	top: 14px;
}
.header_sp_nav ul {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	list-style: none;
	width: 150px;
}
.header_sp_nav ul li.header_sp_line {
	width: 70px;
	padding-top: 2px;
}
.header_sp_nav ul li.header_sp_line a {
	display: block;
	background-color: #06C755;
	position: relative;
	border-radius: 100vh;
	height: 26px;
}
.header_sp_nav ul li.header_sp_line a span {
	position: relative;
	display: inline-block;
	height: 16px;
	padding-left: 16px;
	font-size: 12px;
	line-height: 1.4;
	font-weight: 700;
	color: #fff;
	background: url(../img/header_sp_line.svg) left bottom no-repeat;
	background-size: auto 15.83px;
	margin-left: 15px;
	top: 2px;
}
.header_sp_nav ul li.header_sp_tel,
.header_sp_nav ul li.header_sp_contact {
	width: 30px;
}
.header_sp_nav ul li.header_sp_tel a,
.header_sp_nav ul li.header_sp_contact a {
	display: block;
	width: 30px;
	height: 30px;
	border-radius: 100%;
}
.header_sp_nav ul li.header_sp_tel a {
	background: url(../img/header_sp_tel.svg) center center no-repeat;
	background-color: #fff;
}
.header_sp_nav ul li.header_sp_contact a {
	background: url(../img/header_sp_mail.svg) center center no-repeat;
	background-color: #fff;
}

}

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

.header_sp h1 {
	width: 100px;
}
.header_sp h1 a {
	height: 58px;
	width: 100px;
}
.header_sp h1 a img {
	width: 80px;
	height: auto;
}
}

/* g_nav
======================================================*/

.g_nav {
	display: none;
}

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

.openbtn-wrap {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	width: 65px;
	height: 58px;
	position: fixed;
	top: 0px;
	right: 0px;
	z-index: 9999;
	cursor: pointer;
}
.openbtn {
	display: block;
	width: 27px;
	height: 26px;
	cursor: pointer;
	position: relative;
}


/* ハンバーガーSET */

.openbtn span {
	display: inline-block;
	position: absolute;
	transition: all .2s;
	background: #fff;
  	width: 27px; /* line-width */
	height: 2px; /* line-height */
	border-radius: 100vh;
	transition: all 0.2s;
	left: 0px;
	border-radius: 100vh;
}

.openbtn span:nth-of-type(1) { top: 0px; }
.openbtn span:nth-of-type(2) { top: 12px; }
.openbtn span:nth-of-type(3) { bottom: 0px; }

/* 3line - active */

.openbtn-wrap.active .openbtn span:nth-of-type(1) {
	top: 14px;
	left: 0px;
	transform: rotate(-45deg);
}
.openbtn-wrap.active .openbtn span:nth-of-type(2) { opacity: 0; /*center*/ }
.openbtn-wrap.active .openbtn span:nth-of-type(3) {
	top: 14px;
 	right: 0px;
	transform: rotate(45deg);
}

/* Gナビ */

.g_nav {
	display: block;
}

.g_nav {
	position: fixed;
	z-index: 998;
	opacity: 0;
	top: 0px;
	right: -460px;
	width: 100%;
	max-width: 460px;
	height: 100vh;
	overflow-y: auto;
	background-color: #00ACD8;
	background: url(../img/g_nav_back.png) center center no-repeat;
	background-size: cover;
	transition: all 0.4s;
	box-sizing: border-box;
	padding: 93px 0px 0px 0px;
	z-index: 9997;
}

.g_nav.panelactive {
	opacity: 1;
	right: 0;
	width: 100%;
}

.g_nav_inner {
	width: 100%;
	max-width: 277px;
	margin: 0 auto;
}
/* スクロールバー */
.g_nav::-webkit-scrollbar {
   width: 2px;
   opacity: 0.5;
}
.g_nav::-webkit-scrollbar-track {
   background-color: #eee;
}
.g_nav::-webkit-scrollbar-thumb {
   background-color: #ddd;
}


/* Gナビ リスト */

.g_nav_list .g_nav_menu a,
.g_nav_list .g_nav_contact a {
	display: block;
	font-size 18px;
	line-height: 1;
	font-weight: 700;
	padding: 23px 0 13px 0;
	color: #fff;
}

.g_nav_list .g_nav_menu {
	border-bottom: solid 1px #fff;
}
.g_nav_list dl {
	padding: 26px 0 19px 0;
	border-bottom: solid 1px #fff;
}
.g_nav_list dl dt {
	font-size 18px;
	line-height: 1;
	font-weight: 700;
	color: #fff;
}
.g_nav_list dl ul {
	list-style: none;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 244px;
	margin: 13px 0 0 0;
}
.g_nav_list dl ul li {
	width: 50%;
}
.g_nav_list dl ul li a {
	display: block;
	height: 30px;
	font-size: 14px;
	line-height: 30px;
	font-weight: 500;
	color: #fff;
	padding-left: 40px;
}
.g_nav_list dl ul li.r01 a {
	background: url(../img/g_nav_r01.svg) left center no-repeat;
}
.g_nav_list dl ul li.r02 a {
	background: url(../img/g_nav_r02.svg) left center no-repeat;
}
.g_nav_list dl ul li.r03 a {
	background: url(../img/g_nav_r03.svg) left center no-repeat;
}
.g_nav_list dl ul li.r04 a {
	background: url(../img/g_nav_r04.svg) left center no-repeat;
}

.g_nav_list dl ul li.r03,
.g_nav_list dl ul li.r04 {
	margin-top: 19px;
}

.g_nav_sns {
	list-style: none;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	margin-top: 15px;
	padding-bottom: 40px;
}
.g_nav_sns li:nth-of-type(2) {
	padding: 0 15px;
}
.g_nav_sns li:nth-of-type(1) img {
	width: 30px;
	height: auto;
}
.g_nav_sns li:nth-of-type(2) img {
	width: 30px;
	height: auto;
}
.g_nav_sns li:nth-of-type(3) img {
	width: 25px;
	height: auto;
}

}

/* header_nav
======================================================*/

.header_nav {
	list-style: none;
	right: 256px;
	top: 74px;
}
.header_nav_top {
	position: absolute;
	z-index: 20;
}
.header_nav_page {
	position: fixed;
	z-index: 999;
}
.header_nav > ul > li {
	display: inline-block;
	height: 36px;
	color: #775C4E;
}
.header_nav > ul > li > a,
.header_nav > ul > li > span {
	display: block;
	padding: 10px 20px 0 20px;
	height: 36px;
	box-sizing: border-box;
	font-weight: 500;
	font-size: 14px;
	line-height: 1;
	color: #202020;
	cursor: pointer;
	position: relative;
}
.header_nav > ul > li > a::before,
.header_nav > ul > li > span::before {
	content:"";
	display: block;
	position: absolute;
	bottom: 5px;
	left: 20px;
	width: calc( 100% - 40px );
	height: 3px;
	background-color: #00ACD8;
	border-radius: 100vh;
	opacity: 0;
	transition: opacity 0.3s;
}
.header_nav > ul > li > a:hover::before,
.header_nav > ul > li:hover > span::before {
	opacity: 1;
}

.dd_content {
	overflow: hidden;
	position: fixed;
	width: 100%;
	height: 0;
	top: -100vh;
	left: 0;
	padding-top: 23px;
	opacity: 1;
	display: none;
	visibility: hidden;
	z-index: -1;
	background: url(../img/dd_menu_back.png) center center no-repeat;
	background-size: cover;
	box-shadow: 3px 5px 10px rgba(0,0,0,0.18);
	box-sizing: border-box;
	padding-top: 52px;
}
.header_reform_nav:hover .dd_content {
	height: 375px;
	display: block;
	opacity: 1;
	top: 110px;
	visibility: visible;
	box-sizing: border-box;
	z-index: 1;
}
.dd_title {
	width: 200px;
	height: 50px;
	box-sizing: border-box;
	border-radius: 100vh;
	border: solid 2px #286CD6;
	background-color: #fff;
	color: #286CD6;
	text-align: center;
	line-height: 42px;
	font-size: 25px;
	font-weight: 700;
}
.dd_link {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	list-style: none;
	margin-top: 40px;
}
.dd_link li {
	width: 240px;
	height: 160px;
}
.dd_link li a {
	display: block;
	width: 240px;
	height: 160px;
	position: relative;
	border-radius: 20px;
}
.dd_link .r01 a {
	background: url(../img/dd_menu01.jpg) center center no-repeat;
	background-size: cover;
}
.dd_link .r02 a {
	background: url(../img/dd_menu02.jpg) center center no-repeat;
	background-size: cover;
}
.dd_link .r03 a {
	background: url(../img/dd_menu03.jpg) center center no-repeat;
	background-size: cover;
}
.dd_link .r04 a {
	background: url(../img/dd_menu04.jpg) center center no-repeat;
	background-size: cover;
}
.dd_link li a .title {
	padding: 0 20px;
	height: 30px;
	border-radius: 100vh;
	background-color: #00ACD8;
	color: #fff;
	font-weight: 700;
	font-size: 16px;
	line-height: 30px;
	position: absolute;
	top: 10px;
	left: 10px;
}
.dd_link li a .txt {
	color: #fff;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.375;
	position: absolute;
	bottom: 14px;
	left: 14px;
}
.dd_link li a .arrow {
	display: block;
	width: 50px;
	height: 50px;
	background: url(../img/dd_menu_arrow.svg) center center no-repeat;
	position: absolute;
	bottom: 10px;
	right: 20px;
}

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

.header_nav {
	right: 216px;
}

}

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

.header_nav > ul > li > a,
.header_nav > ul > li > span {
	padding: 10px 12px 0 12px;
	font-size: 14px;
}
.header_nav > ul > li > a::before,
.header_nav > ul > li > span::before {
	left: 12px;
	width: calc( 100% - 24px );
}

}

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

.header_nav {
	right: 187px;
}

}

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

.header_nav {
	display: none;
}

}


/* header_nav_rf
======================================================*/

.header_nav_rf {
	position: fixed;
	top: 110px;
	left: 0px;
	width: 100%;
	height: 86px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	background-color: #fff;
	z-index: 10;
}
.header_nav_rf_top {
	position: relative;
	top: 0px;
	z-index: 1;
}
.header_nav_rf_page {
	position: fixed;
	top: 110px;
}
.header_nav_rf ul {
	display: -webkit-flex;
	display: flex;
	list-style: none;
	height: 40px;
}
.header_nav_rf ul li:not(:last-child) {
	border-right: solid 1px #202020;
}
.header_nav_rf ul li a {
	display: block;
	font-weight: 500;
	font-size: 18px;
	color: rgba(30,32,34,0.9);
	padding: 0 30px;
}
.header_nav_rf ul li a span {
	display: block;
	height: 40px;
	line-height: 40px;
}
.header_nav_rf ul li a span b {
	font-weight: 500;
}
.header_nav_rf ul li.rf01 a span {
	padding-left: 40px;
	background: url(../img/i_rf01.svg)left center no-repeat;
}
.header_nav_rf ul li.rf02 a span {
	padding-left: 50px;
	background: url(../img/i_rf02.svg)left center no-repeat;
}
.header_nav_rf ul li.rf03 a span {
	padding-left: 40px;
	background: url(../img/i_rf03.svg)left center no-repeat;
}
.header_nav_rf ul li.rf04 a span {
	padding-left: 34px;
	background: url(../img/i_rf04.svg)left center no-repeat;
}
.header_nav_rf ul li.rf05 a span {
	padding-left: 40px;
	background: url(../img/i_rf05.svg)left center no-repeat;
}

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

.header_nav_rf ul li a {
	display: block;
	font-weight: 500;
	font-size: 18px;
	color: rgba(30,32,34,0.9);
	padding: 0 20px;
}

}

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

.header_nav_rf {
	position: fixed;
	top: 58px;
	left: 0px;
	width: 100%;
	height: 63px;
	z-index: 999;
}
.header_nav_rf_top {
	position: absolute;
	top: 58px;
}

.header_nav_rf ul li a {
	font-size: 16px;
	padding: 0 16px;
}
.header_nav_rf ul li.rf01 a span {
	padding-left: 30px;
	background: url(../img/i_rf01.svg)left center no-repeat;
	background-size: 21px auto
}
.header_nav_rf ul li.rf02 a span {
	padding-left: 40px;
	background: url(../img/i_rf02.svg)left center no-repeat;
	background-size: 32px auto
}
.header_nav_rf ul li.rf03 a span {
	padding-left: 34px;
	background: url(../img/i_rf03.svg)left center no-repeat;
	background-size: 24px auto
}
.header_nav_rf ul li.rf04 a span {
	padding-left: 30px;
	background: url(../img/i_rf04.svg)left center no-repeat;
	background-size: 20px auto
}
.header_nav_rf ul li.rf05 a span {
	padding-left: 30px;
	background: url(../img/i_rf05.svg)left center no-repeat;
	background-size: 22px auto
}

}

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

.header_nav_rf ul {
	display: -webkit-flex;
	display: flex;
	list-style: none;
	height: auto;
}
.header_nav_rf ul li:not(:last-child) {
	border-right: solid 0px #202020;
}
.header_nav_rf ul li a {
	font-size: 12px;
	padding: 0 17px;
}
.header_nav_rf ul li a span {
	display: block;
	height: auto;
	line-height: 1;
	padding-top: 34px;
}
.header_nav_rf ul li a span b {
	display: none;
}

.header_nav_rf ul li.rf01 a span {
	padding-left: 0px;
	background: url(../img/i_rf01.svg) center top no-repeat;
	background-size: 21px auto
}
.header_nav_rf ul li.rf02 a span {
	padding-left: 0px;
	background: url(../img/i_rf02.svg) center top no-repeat;
	background-size: 32px auto
}
.header_nav_rf ul li.rf03 a span {
	padding-left: 0px;
	background: url(../img/i_rf03.svg) center top no-repeat;
	background-size: 24px auto
}
.header_nav_rf ul li.rf04 a span {
	padding-left: 0px;
	background: url(../img/i_rf04.svg) center top no-repeat;
	background-size: 20px auto
}
.header_nav_rf ul li.rf05 a span {
	padding-left: 0px;
	background: url(../img/i_rf05.svg) center top 5px no-repeat;
	background-size: 22px auto
}

}

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

.header_nav_rf ul li a {
	font-size: 11px;
	padding: 0 12px;
}

}


/* トップページ　共通パーツ
======================================================*/

.page_h1 {
	width: 240px;
	height: 50px;
	border-radius: 100vh;
	background-color: #FFFFFF;
	font-weight: 700;
	font-size: 25px;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	text-align: center;
	color: #286CD6;
	line-height: 50px;
	position: relative;
}
.page_h1::after {
	content:"";
	display: block;
	position: absolute;
	bottom: 19px;
	left: 274px;
}
.page_h1#h1_about::after {
	width: 211px;
	height: 99px;
	background: url(../img/h1_about.png) left bottom no-repeat;
	background-size: cover;
}

.page_h1#h1_reform::after {
	width: 249px;
	height: 88px;
	background: url(../img/h1_reform.png) left bottom no-repeat;
	background-size: cover;
}

.page_h1#h1_repair::after {
	width: 229px;
	height: 79px;
	background: url(../img/h1_repair.png) left bottom no-repeat;
	background-size: cover;
}

.page_h1#h1_install::after {
	width: 178px;
	height: 88px;
	background: url(../img/h1_install.png) left bottom no-repeat;
	background-size: cover;
}

.page_h1#h1_area::after {
	width: 134px;
	height: 51px;
	background: url(../img/h1_area.png) left bottom no-repeat;
	background-size: cover;
}

.page_h1#h1_news::after {
	width: 224px;
	height: 82px;
	background: url(../img/h1_news.png) left bottom no-repeat;
	background-size: cover;
}

.page_h1#h1_works::after {
	width: 218px;
	height: 94px;
	background: url(../img/h1_works.png) left bottom no-repeat;
	background-size: cover;
}

.page_h1#h1_recruit::after {
	width: 297px;
	height: 120px;
	background: url(../img/h1_recruit.png) left bottom no-repeat;
	background-size: cover;
}

.page_h1#h1_contact::after {
	width: 297px;
	height: 125px;
	background: url(../img/h1_contact.png) left bottom no-repeat;
	background-size: cover;
}
.page_h1#h1_pp::after {
	width: 402px;
	height: 133px;
	background: url(../img/h1_pp.png) left bottom no-repeat;
	background-size: cover;
}

.page_h2 {
	font-weight: 700;
	font-size: 32px;
	color: #fff;
	line-height: 1.5625;
}

.page_p {
	font-weight: 500;
	font-size: 18px;
	line-height: 2;
	color: #fff;
}
.page_pl {
	font-weight: 500;
	font-size: 22px;
	line-height: 1.8;
	color: #fff;
	letter-spacing: 0.02em;
}

.page_h1 + .page_h2 {
	margin-top: 28px;
}
.page_h2 + .page_p {
	margin-top: 14px;
}
.page_h2 + .page_pl {
	margin-top: 20px;
}
.page_link_btn {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	width: 310px;
	height: 60px;
	border-radius: 100vh;
	background-color: #fff;
	font-weight: 700;
	font-size: 20px;
	box-shadow: 5px 6px 10px rgba(19,12,103,0.16);
	color: #286CD6;
	border: solid 2px #fff;
	box-sizing: border-box;
	position: relative;
	transition: background-color 0.3s, color 0.3s;
}
.page_link_btn:hover {
	background-color: #0664F5;
	color: #fff;
}
.page_link_btn::after {
	content:"";
	display: block;
	position: absolute;
	top: 4px;
	right: 7px;
	width: 49px;
	height: 49px;
	background: url(../img/link_ar01.svg) center center no-repeat;
	background-color: #286CD6;
	border-radius: 100%;
	transition: background 0.3s;
}
.page_link_btn:hover::after {
	background: url(../img/link_ar02.svg) center center no-repeat;
	background-color: #fff;
}


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

.page_h1 {
	width: 212px;
	height: 44px;
	line-height: 44px;
}
.page_h1::after {
	content:"";
	display: block;
	position: absolute;
	bottom: 19px;
	left: 210px;
}
.page_h1#h1_about::after {
	width: 168px;
	height: 78px;
}
.page_h1#h1_reform::after {
	width: 191px;
	height: 68px;
}
.page_h1#h1_install::after {
	width: 143px;
	height: 71px;
}
.page_h1#h1_area::after {
	width: 122px;
	height: 46px;
}
.page_h1#h1_news::after {
	width: 132px;
	height: 48px;
}
.page_h1#h1_works::after {
	width: 181px;
	height: 78px;
}
.page_h1#h1_recruit::after {
	width: 297px;
	height: 120px;
}
.page_h1#h1_recruit::after {
	width: 220px;
	height: 89px;
}
.page_h1#h1_contact::after {
	width: 214px;
	height: 90px;
}
.page_h1#h1_pp::after {
	width: 220px;
	height: 73px;
	background: url(../img/h1_pp.png) left bottom no-repeat;
	background-size: cover;
}
.page_h2 {
	font-size: 26px;
	line-height: 1.6;
}
.page_p {
	font-size: 17px;
	line-height: 1.6;
}
.page_pl {
	font-size: 19px;
	line-height: 1.6;
	letter-spacing: 0;
}
.page_h1 + .page_h2 {
	margin-top: 24px;
}

}


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

.page_h1 {
	width: 184px;
	height: 39px;
	font-size: 18px;
	line-height: 39px;
}
.page_h1::after {
	content:"";
	display: block;
	position: absolute;
	bottom: 19px;
	left: 176px;
}
.page_h1#h1_about::after {
	width: 124px;
	height: 63px;
}
.page_h1#h1_reform::after {
	width: 134px;
	height: 48px;
}
.page_h1#h1_repair::after {
	width: 123px;
	height: 42px;
}
.page_h1#h1_install::after {
	width: 109px;
	height: 54px;
	bottom: 13px;
	left: 180px;
}
.page_h1#h1_area::after {
	width: 99px;
	height: 38px;
}
.page_h1#h1_news::after {
	width: 132px;
	height: 48px;
}
.page_h1#h1_works::after {
	width: 145px;
	height: 63px;
}
.page_h1#h1_recruit::after {
	width: 143px;
	height: 58px;
}
.page_h1#h1_contact::after {
	width: 132px;
	height: 55px;
}
.page_h1#h1_pp::after {
	width: 140px;
	height: 47px;
}
.page_h2 {
	font-size: 20px;
	line-height: 1.6;
}
.page_p {
	font-size: 16px;
	line-height: 1.625;
}
.page_pl {
	font-size: 16px;
	line-height: 1.625;
}
.page_h1 + .page_h2 {
	margin-top: 20px;
}

.page_link_btn {
	width: 180px;
	height: 35px;
	font-size: 14px;
}
.page_link_btn::after {
	top: 4px;
	right: 7px;
	width: 25px;
	height: 25px;
	background: url(../img/link_ar01.svg) center center no-repeat;
	background-size: 9px auto;
	background-color: #286CD6;
}

}

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

.page_h1 {
	width: 160px;
	height: 32px;
	font-size: 16px;
	line-height: 32px;
}
.page_h1::after {
	bottom: 19px;
	left: 146px;
}
.page_h1#h1_about::after {
	width: 84px;
	height: 39px;
}
.page_h1#h1_reform::after {
	width: 94px;
	height: 33px;
}
.page_h1#h1_repair::after {
	width: 83px;
	height: 29px;
}
.page_h1#h1_install::after {
	width: 69px;
	height: 34px;
	bottom: 13px;
	left: 160px;
}
.page_h1#h1_area::after {
	width: 59px;
	height: 22px;
}
.page_h1#h1_news::after {
	width: 82px;
	height: 30px;
}
.page_h1#h1_works::after {
	width: 105px;
	height: 45px;
}
.page_h1#h1_recruit::after {
	width: 103px;
	height: 42px;
}
.page_h1#h1_contact::after {
	width: 92px;
	height: 39px;
}
.page_h2 {
	font-size: 18px;
	line-height: 1.3;
}
.page_p {
	font-size: 14px;
	line-height: 1.4;
}
.page_pl {
	font-size: 14px;
	line-height: 1.4;
}
.page_h1 + .page_h2 {
	margin-top: 10px;
}
.page_h2 + .page_p {
	margin-top: 10px;
}
.page_h2 + .page_pl {
	margin-top: 10px;
}

.page_page_h1 {
	width: 184px;
	height: 39px;
	font-size: 18px;
	line-height: 39px;
}
.page_page_h1::after {
	content:"";
	display: block;
	position: absolute;
	bottom: 19px;
	left: 176px;
}
.page_page_h1#h1_about::after {
	width: 124px;
	height: 63px;
}
.page_h1#h1_reform::after {
	width: 134px;
	height: 48px;
}
.page_page_h1#h1_repair::after {
	width: 123px;
	height: 42px;
}
.page_h1#h1_install::after {
	width: 109px;
	height: 54px;
	bottom: 13px;
	left: 180px;
}
.page_page_h1#h1_area::after {
	width: 99px;
	height: 38px;
}
.page_h1#h1_news::after {
	width: 132px;
	height: 48px;
}
.page_page_h1#h1_works::after {
	width: 145px;
	height: 63px;
}
.page_h1#h1_recruit::after {
	width: 143px;
	height: 58px;
}
.page_page_h1#h1_contact::after {
	width: 132px;
	height: 55px;
}

}


/* ページ　共通パーツ
======================================================*/

.page_page_h2 {
	font-weight: 700;
	font-size: 32px;
	color: #fff;
	line-height: 1.5625;
	margin: 29px 0 10px 0;
}
.page_page_p {
	font-weight: 500;
	font-size: 18px;
	line-height: 2;
	color: #fff;
}

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

.page_page_h2 {
	font-size: 26px;
	line-height: 1.6;
	margin: 24px 0 10px 0;
}
.page_page_p {
	font-size: 17px;
	line-height: 1.6;
}

}

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

.page_page_h2 {
	font-size: 20px;
	line-height: 1.6;
}
.page_page_p {
	font-size: 16px;
	line-height: 1.625;
}

}

/* top_section02
======================================================*/

#top_section02 {
	background-image: url("../img/top_sc02_cv.png"), url("../img/top_sc02_back.jpg");
	background-repeat: no-repeat, no-repeat;
	background-position: center center, right center;
	background-size: cover, cover;
}
.top_section02_waku {
	width: 100vw;
	min-height: 100vh;
	position: relative;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	box-sizing: border-box;
}
.top_sction02_content,
.top_sction02_content_ft {
	width: 1100px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	position: relative;
}
.top_sction02_content_ft {
	margin-top: 10px;
}
.top_sction02_content .left {
	width: 610px;
	padding-top: 50px;
}
.top_sction02_content .right {
	width: 410px;
}
.top_sction02_content_ft .left {
	width: 610px;
}
.top_sction02_content_ft .right {
	width: 410px;
	padding-top: 66px;
}
.top_sction02_content_ft .right p {
	text-align: center;
}
.top_sction02_content_ft .right img {
	border-radius: 20px;
}
.top_sction02_content_ft .page_link_btn {
	margin-top: 42px;
}

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

.top_sction02_content,
.top_sction02_content_ft {
	width: 900px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	position: relative;
}
.top_sction02_content_ft {
	margin-top: 40px;
}
.top_sction02_content .left {
	width: 540px;
	padding-top: 50px;
}
.top_sction02_content .right {
	width: 320px;
}
.top_sction02_content_ft .left {
	width: 540px;
}
.top_sction02_content_ft .right {
	width: 320px;
	padding-top: 60px;
}
.top_sction02_content .right img {
	width: 100%;
	height: auto;
	padding-top: 20px;
}
.top_sction02_content_ft .right img {
	width: 100%;
	height: auto;
}

}

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

#top_section02 {
	background: none;
}
.top_section02_waku {
	background: url(../img/top_sc02_back_sp.jpg) center top no-repeat;
	background-size: cover;
	display: block;
}
.top_section02_set {
	padding: calc( 58px + 14px ) 30px 120px 30px;
	background: url(../img/top_sc02_back2_sp.png) center bottom no-repeat;
	background-size: 100% auto;
}

.top_sction02_content,
.top_sction02_content_ft {
	width: 100%;
	display: block;
}
.top_sction02_content_ft {
	margin-top: 60px;
	padding-bottom: 100px;
}
.top_sction02_content .left {
	width: 100%;
	padding-top: 50px;
}
.top_sction02_content .right {
	width: 100%;
	text-align: center;
}
.top_sction02_content_ft .left {
	width: 100%;
}
.top_sction02_content_ft .right {
	width: 100%;
	padding-top: 34px;
}
.top_sction02_content_ft .left .page_link_btn {
	position: absolute;
	bottom: 0px;
	left: calc(( 100% - 310px ) / 2 );
}

.top_sction02_content .right img {
	width: 100%;
	max-width: 400px;
	height: auto;
	padding-top: 20px;
}
.top_sction02_content_ft .right img {
	width: 100%;
	max-width: 400px;
	height: auto;
}

}

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

.top_section02_set {
	padding: calc( 58px + 14px ) 30px 90px 30px;
}

.top_sction02_content_ft {
	margin-top: 60px;
	padding-bottom: 85px;
}
.top_sction02_content .right img {
	width: 100%;
	height: auto;
	padding-top: 20px;
}
.top_sction02_content_ft .right img {
	width: 100%;
	height: auto;
}
.top_sction02_content_ft .left .page_link_btn {
	position: absolute;
	bottom: 0px;
	left: calc(( 100% - 180px ) / 2 );
}
}


/* top_re_slide 共通
======================================================*/

.top_re_slide {
	width: 100%;
	height: 100%;
	position: relative;
}
.top_re_slide .swiper {
	height: 100%;

}

.top_re {
	width: 100%;
	height: 100%;
}

.top_re_w {
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
}

.top_re_set {
	padding: 0 0 20px 0;
	position: relative;
	z-index: 2;
}

.re_w {
	width: 100%;
	height: 42.3%;
	position: absolute;
	background: url(../img/w1920.png) center top no-repeat;
	background-size: 100% auto;
	bottom: 0;
}
@media screen and (max-width: 1920px) {

.re_w {
	width: 100%;
	height: 42.3%;
	position: absolute;
	background: url(../img/w1920.png) center top no-repeat;
	background-size: 1920px auto;
	bottom: 0;
}

}

@media screen and (min-width: 1921px) and (max-height: 900px) {

.re_w {
	width: 100%;
	height: 280px;
	position: absolute;
	background: url(../img/w1920.png) center top no-repeat;
	background-size: 100% auto;
	bottom: 0;
}
}

@media screen and (min-width: 1201px) and (max-width: 1920px) and (max-height: 900px) {

.re_w {
	width: 100%;
	height: 30%;
	position: absolute;
	background: url(../img/w1920.png) center top no-repeat;
	background-size: 100% auto;
	bottom: 0;
}

}

/* PC 個別 ここから */

@media screen and (min-width: 1201px) and (max-width: 1500px) {

.top_re01 .re_w {
	height: 26%;
}

}

@media screen and (min-width: 1201px) and (max-height: 1050px) {

.top_re02 .re_w {
	height: 30%;
}

}

/* PC 個別 ここまで */

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

.top_re_w {
	box-sizing: border-box;
	display: block;
}
.re_w {
	width: 100%;
	height: 100%;
	position: absolute;
	background: url(../img/w1024.png) center top 480px no-repeat;
	background-size: 100% auto;
	bottom: 0;
}

}


@media screen and (min-width: 600px) and (max-width: 1200px) and (min-height: 1000px) {

.top_re_w {
	box-sizing: border-box;
	display: block;
}
.re_w {
	width: 100%;
	height: 100%;
	position: absolute;
	background: url(../img/w1024.png) center top 600px no-repeat;
	background-size: 100% auto;
	bottom: 0;
}
}

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

.top_re_w {
	box-sizing: border-box;
	display: block;
}
.re_w {
	width: 100%;
	height: 100%;
	position: absolute;
	background: url(../img/w375.png) center top 430px no-repeat;
	background-size: 100% auto;
	bottom: 0;
}

}

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

.top_re_w {
	box-sizing: border-box;
	display: block;
}

.re_w {
	width: 100%;
	height: 100%;
	position: absolute;
	background: url(../img/w375.png) center top 340px no-repeat;
	background-size: 100% auto;
	bottom: 0;
}

}


/* top_section03 top_re01
======================================================*/

.top_re01 .top_re_inner {
	width: 100%;
	height: 100%;
	background-image: url("../img/top_sc03_re01.png"), url("../img/top_sc02_cv.png"), url("../img/top_sc_back_bl.jpg");
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: right top, center center, center center;
	background-size: 1134px auto, cover,  cover;
}

.top_re_hd {
	width: 100vw;
	max-width: 1100px;
	margin: 0 auto;
	padding-top: 100px;
	box-sizing: border-box;
}
.top_re_hd .page_link_btn {
	margin-top: 43px;
}

.top_re01_01_area {
	max-width: 600px;
}

.top_re01_02 {
	margin-top: 100px;
}
.top_re01_02.top_re07_02 {
	margin-top: 70px;
}

.top_re01_02 ul {
	width: 1320px;
	margin: 0px auto 0 auto;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	list-style: none;
}

.top_re01_02 ul li {
	width: 300px;
	height: 250px;
}
.top_re01_02 ul li a {
	display: block;
	width: 300px;
	height: 250px;
	position: relative;
	border-radius: 20px;
}
.top_re01_02 ul .r01 a {
	background: url(../img/dd_menu01.jpg) center center no-repeat;
	background-size: cover;
}
.top_re01_02 ul .r02 a {
	background: url(../img/dd_menu02.jpg) center center no-repeat;
	background-size: cover;
}
.top_re01_02 ul .r03 a {
	background: url(../img/dd_menu03.jpg) center center no-repeat;
	background-size: cover;
}
.top_re01_02 ul .r04 a {
	background: url(../img/dd_menu04.jpg) center center no-repeat;
	background-size: cover;
}
.top_re01_02 ul a .title {
	padding: 0 14px;
	height: 35px;
	border-radius: 100vh;
	background-color: #00ACD8;
	color: #fff;
	font-weight: 700;
	font-size: 18px;
	line-height: 30px;
	position: absolute;
	top: 20px;
	left: 20px;
}
.top_re01_02 ul a .txt {
	color: #fff;
	font-weight: 500;
	font-size: 16px;
	line-height: 1;
	position: absolute;
	bottom: 24px;
	left: 24px;
}
.top_re01_02 ul a .txt br {
	display: none;
}
.top_re01_02 ul a .arrow {
	display: block;
	width: 50px;
	height: 50px;
	background: url(../img/dd_menu_arrow.svg) center center no-repeat;
	background-size: 50px 50xp;
	position: absolute;
	bottom: 20px;
	right: 20px;
}



@media screen and (min-width: 1201px) and (max-width: 1500px),(max-height: 900px) {

.top_re01_02 {
	margin-top: 60px;
}
.top_re01_02.top_re07_02 {
	margin-top: 50px;
}
.top_re01_02 ul {
	width: 1100px;
}

.top_re01_02 ul li {
	width: 240px;
	height: 160px;
}
.top_re01_02 ul li a {
	display: block;
	width: 240px;
	height: 160px;
	position: relative;
	border-radius: 20px;
}
.top_re01_02 ul li a .title {
	height: 30px;
	font-size: 16px;
	line-height: 30px;
	top: 10px;
	left: 10px;
}
.top_re01_02 ul li a .txt {
	font-size: 16px;
	line-height: 1.375;
	bottom: 14px;
	left: 14px;
}
.top_re01_02 ul a .txt br {
	display: block;
}
.top_re01_02 ul a .arrow {
	bottom: 10px;
}

}

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

.top_re01 .top_re_inner {
	background-position: center top, center center, center center;
	background-size: 1200px auto, cover,  cover;
}

.top_re01_02 {
	display: none;
}

.top_re_hd {
	width: 100vw;
	max-width: 100%;
	margin: 0 auto;
	padding: 140px 60px 0 60px;
	box-sizing: border-box;
}

}

@media screen and (min-width: 1201px) and (min-height: 1081px) {

.top_re01 .top_re_inner {
	background-position: right top, center center, center center;
	background-size: auto 70%, cover,  cover;
}

}

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

.top_re01 .top_re_inner {
	background: url(../img/top_sc03_re01_sp.jpg) center top no-repeat;
	background-size: 100% auto;
}

.top_re_hd {
	width: 100vw;
	max-width: 100%;
	margin: 0 auto;
	padding: 100px 30px 0 30px;
	box-sizing: border-box;
}
.top_re_hd .page_link_btn {
	margin-top: 20px;
}
}

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

.top_re_hd .page_link_btn {
	margin-top: 10px;
}

}

@media screen and (max-width: 460px) and (min-height: 800px) {

.top_re01 .top_re_inner {
	background: url(../img/top_sc03_re01_sp.jpg) center top no-repeat;
	background-size: auto 560px;
}

}

/* top_re01_02_sp_slide top_re07_02_sp_slide
======================================================*/

.top_re01_02_sp {
	display: none;
}

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

.top_re01_02_sp {
	width: 100%;
	overflow: hidden;
	display: block;
	position: relative;
	padding: 50px 0 0px 0;
}

.top_re01_02_sp_slide .swiper-slide,
.top_re07_02_sp_slide .swiper-slide {
	padding: 0 15px;
	box-sizing: border-box;
}
.top_re01_02_sp_slide a,
.top_re07_02_sp_slide a {
	display: block;
	aspect-ratio: 280 / 180;
	border-radius: 20px;
	position: relative;
}
.top_re01_02_sp_slide a.r01 {
	background: url(../img/re01_02_sp_01.jpg) center center no-repeat;
	background-size: cover;
}
.top_re01_02_sp_slide a.r02 {
	background: url(../img/re01_02_sp_02.jpg) center center no-repeat;
	background-size: cover;
}
.top_re01_02_sp_slide a.r03 {
	background: url(../img/re01_02_sp_03.jpg) center center no-repeat;
	background-size: cover;
}
.top_re01_02_sp_slide a.r04 {
	background: url(../img/re01_02_sp_04.jpg) center center no-repeat;
	background-size: cover;
}


.top_re07_02_sp_slide a.r01 {
	background: url(../img/re07_02_sp_01.jpg) center center no-repeat;
	background-size: cover;
}
.top_re07_02_sp_slide a.r02 {
	background: url(../img/re07_02_sp_02.jpg) center center no-repeat;
	background-size: cover;
}
.top_re07_02_sp_slide a.r03 {
	background: url(../img/re07_02_sp_03.jpg) center center no-repeat;
	background-size: cover;
}
.top_re07_02_sp_slide a.r04 {
	background: url(../img/re07_02_sp_04.jpg) center center no-repeat;
	background-size: cover;
}


.top_re01_02_sp_slide a .title,
.top_re07_02_sp_slide a .title {
	padding: 0 12px;
	height: 35px;
	border-radius: 100vh;
	background-color: #00ACD8;
	color: #fff;
	font-weight: 700;
	font-size: 18px;
	line-height: 30px;
	position: absolute;
	top: 19px;
	left: 19px;
}
.top_re01_02_sp_slide a .txt,
.top_re07_02_sp_slide a .txt {
	color: #fff;
	font-weight: 500;
	font-size: 16px;
	line-height: 1;
	position: absolute;
	bottom: 22px;
	left: 20px;
}
.top_re01_02_sp_slide a .txt br {
	display: none;
}
.top_re01_02_sp_slide a .arrow,
.top_re07_02_sp_slide a .arrow {
	display: block;
	width: 50px;
	height: 50px;
	background: url(../img/dd_menu_arrow.svg) center center no-repeat;
	background-size: 50px 50xp;
	position: absolute;
	bottom: 20px;
	right: 20px;
}

.swiper-pagination_top_re01_02,
.swiper-pagination_top_re07_02 {
	text-align: center;
	margin-top: 9px;
}

}


/* swiper 設定
======================================================*/

/* 前へ次への矢印カスタマイズ */
.swiper-button-prev,
.swiper-button-next {
	height: 60px;
	width: 60px;
	position: absolute;
	border-radius: 100%;
	background-color: #fff!important;
	top: 58%;
	box-shadow: 3px 3px 6px rgba(0,0,0,0.1);
	cursor: pointer;
}
.swiper-button-prev::after,
.swiper-button-next::after {
	content: "";
	height: 60px;
	width: 60px;
	margin: auto;
	position: absolute;
	top: 0px;
	bottom: 0;
	border-radius: 100%;
}
/* 前への矢印カスタマイズ */
.swiper-button-prev::after {
	background: url(../img/arrow_prev.svg) center center no-repeat;
}
/* 次への矢印カスタマイズ */
.swiper-button-next::after {
	background: url(../img/arrow_next.svg) center center no-repeat;
}
.swiper-button-disabled {
	opacity: 0!important;
}

.top_re_slide .swiper-button-prev {
	left: 110px;
	background-color: #333;
}
.top_re_slide .swiper-button-next {
	right: 110px;
	background-color: #333;
}


.swiper-pagination-bullet {
	width: 9px;
	height: 9px;
	display: inline-block;
	border-radius: 100%;
	background: #D9D9D9;
	opacity: 1;
	margin: 0 10px;
}
.swiper-pagination-bullet-active {
	opacity: 1;
	background: #6797C3;
}


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

.swiper-button-prev,
.swiper-button-next {
  height: 50px;
  width: 50px;
	box-shadow: 0px 3px 6px rgba(0,0,0,0.16);
}

.swiper-button-prev::after,
.swiper-button-next::after {
  content: "";
  height: 50px;
  width: 50px;
  margin: auto;
  position: absolute;
  top: 0px;
  bottom: 0;
  border-radius: 100%;
}
/* 前への矢印カスタマイズ */
.swiper-button-prev::after {
	background: url(../img/arrow_prev_sp.svg) center center no-repeat;
}
/* 次への矢印カスタマイズ */
.swiper-button-next::after {
	background: url(../img/arrow_next_sp.svg) center center no-repeat;
}

.top_re_slide .swiper-button-prev {
	top: 100px!important;
	left: 20px;
	position: absolute;
}
.top_re_slide .swiper-button-next {
	top: 100px!important;
	right: 20px;
	position: absolute;
}
.top_re_slide .swiper-button-next {
	background-color: #333;
}

}

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

.top_re_slide .swiper-button-prev {
	display: none;
}

.swiper-button-prev,
.swiper-button-next {
  height: 38px;
  width: 38px;
}

.swiper-button-prev::after,
.swiper-button-next::after {
  height: 38px;
  width: 38px;
}

}

/* top_section03 top_re02 top_re_info
======================================================*/

.top_re02 .top_re_inner {
	width: 100%;
	height: 100%;
	background-image: url("../img/top_sc03_re02.png"), url("../img/top_sc02_cv.png"), url("../img/top_sc_back_bl.jpg");
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: right top, center center, center center;
	background-size: 1196px auto, cover,  cover;
}

.top_re_info {
	width: 1100px;
	border-radius: 26px;
	background-color: #fff;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.10);
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	margin: 50px auto 0 auto;
	padding: 40px;
	box-sizing: border-box;
}
.top_re_info p:nth-of-type(1) {
	width: calc(( 471 / 1020 ) * 100% );
}
.top_re_info p:nth-of-type(1) img {
	border-radius: 20px;
}
.top_re_info p:nth-of-type(2) {
	width: calc(( 512 / 1020 ) * 100% );
}
.top_re_info p img {
	width: 100%;
	height: auto;
}

@media screen and (min-width: 1201px) and (max-height: 1050px) {

.top_re_info_box {
	position: relative;
	height: 100px;
}
.top_re_info {
	width: 660px;
	margin: 50px auto 0 auto;
	padding: 20px;
	position: absolute;
	left: 360px;
	top: -120px;
}
}

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

.top_re02 .top_re_inner {
	background-position: center top, center center, center center;
	background-size: 1200px auto, cover,  cover;
}

.top_re_info {
	width: 100%;
	max-width: 460px;
	border-radius: 26px;
	background-color: #fff;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.10);
	display: block;
	margin: 40px auto 0 auto;
	padding: 20px;
	box-sizing: border-box;
	position: relative;
	left: auto;
	top: auto;
}
.top_re_info p:nth-of-type(1) {
	display: none;
}
.top_re_info p:nth-of-type(2) {
	width: 100%;
}
}

@media screen and (min-width: 1201px) and (min-height: 1081px) {

.top_re02 .top_re_inner {
	background-position: right top, center center, center center;
	background-size: auto 70%, cover,  cover;
}

}

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

.top_re_info {
	width: 100%;
	max-width: 460px;
	border-radius: 26px;
	background-color: #fff;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.10);
	display: block;
	margin: 40px auto 0 auto;
	padding: 20px;
	box-sizing: border-box;
	position: relative;
	left: auto;
	top: auto;
}

}

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

.top_re02 .top_re_inner {
	background: url(../img/top_sc03_re02_sp.jpg) center top no-repeat;
	background-size: 100% auto;
}

.top_re_info {
	width: 100%;
	max-width: 100%;
	border-radius: 0px;
	background-color: #fff;
	box-shadow: 0px 0px 0px rgba(0,0,0,0.0);
	margin: 46px auto 0 auto;
	padding: 0 30px;
}

}

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

.top_re_info {
	width: 70%;
	max-width: 70%;
	border-radius: 0px;
	background-color: #fff;
	box-shadow: 0px 0px 0px rgba(0,0,0,0.0);
	margin: 30px auto 0 auto;
	padding: 0 0px;
}

}

@media screen and (max-width: 460px) and (min-height: 800px) {

.top_re02 .top_re_inner {
	background: url(../img/top_sc03_re02_sp.jpg) center top no-repeat;
	background-size: auto 560px;
}

}

/* top_section03 top_re03
======================================================*/

.top_re03 .top_re_inner {
	width: 100%;
	height: 100%;
	background-image: url("../img/top_sc03_re03.png"), url("../img/top_sc02_cv.png"), url("../img/top_sc_back_bl.jpg");
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: right top, center center, center center;
	background-size: 1246px auto, cover,  cover;
}

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

.top_re03 .top_re_inner {
	background-position: center top, center center, center center;
	background-size: 1200px auto, cover,  cover;
}

}

@media screen and (min-width: 1201px) and (min-height: 1081px) {

.top_re03 .top_re_inner {
	background-position: right top, center center, center center;
	background-size: auto 70%, cover,  cover;
}

}

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

.top_re03 .top_re_inner {
	background: url(../img/top_sc03_re03_sp.jpg) center top no-repeat;
	background-size: 100% auto;
}

}

@media screen and (max-width: 460px) and (min-height: 800px) {

.top_re03 .top_re_inner {
	background: url(../img/top_sc03_re03_sp.jpg) center top no-repeat;
	background-size: auto 560px;
}

}


/* top_section03 top_re04
======================================================*/

.top_re04 .top_re_inner {
	width: 100%;
	height: 100%;
	background-image: url("../img/top_sc03_re04.png"), url("../img/top_sc02_cv.png"), url("../img/top_sc_back_bl.jpg");
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: right top, center center, center center;
	background-size: 1268px auto, cover,  cover;
}

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

.top_re04 .top_re_inner {
	background-position: center top, center center, center center;
	background-size: 1200px auto, cover,  cover;
}

}

@media screen and (min-width: 1201px) and (min-height: 1081px) {

.top_re04 .top_re_inner {
	background-position: right top, center center, center center;
	background-size: auto 70%, cover,  cover;
}

}

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

.top_re04 .top_re_inner {
	background: url(../img/top_sc03_re04_sp.jpg) center top no-repeat;
	background-size: 100% auto;
}

}

@media screen and (max-width: 460px) and (min-height: 800px) {

.top_re04 .top_re_inner {
	background: url(../img/top_sc03_re04_sp.jpg) center top no-repeat;
	background-size: auto 560px;
}

}

/* top_section03 top_re05
======================================================*/

.top_re05 .top_re_inner {
	width: 100%;
	height: 100%;
	background-image: url("../img/top_sc03_re05.png"), url("../img/top_sc02_cv.png"), url("../img/top_sc_back_bl.jpg");
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: right top, center center, center center;
	background-size: 1177px auto, cover,  cover;
}

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

.top_re05 .top_re_inner {
	background-position: center top, center center, center center;
	background-size: 1200px auto, cover,  cover;
}

}

@media screen and (min-width: 1201px) and (min-height: 1081px) {

.top_re05 .top_re_inner {
	background-position: right top, center center, center center;
	background-size: auto 70%, cover,  cover;
}

}

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

.top_re05 .top_re_inner {
	background: url(../img/top_sc03_re05_sp.jpg) center top no-repeat;
	background-size: 100% auto;
}

}

@media screen and (max-width: 460px) and (min-height: 800px) {

.top_re05 .top_re_inner {
	background: url(../img/top_sc03_re05_sp.jpg) center top no-repeat;
	background-size: auto 560px;
}

}


/* top_section04 top_re06
======================================================*/

.top_re06 .top_re_inner {
	width: 100%;
	height: 100%;
	background-image: url("../img/top_sc04_re06.png"), url("../img/top_sc02_cv.png"), url("../img/top_sc_back_bl.jpg");
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: right top, center center, center center;
	background-size: 1177px auto, cover,  cover;
}

.top_re06_02_sp {
	display: none;
}

.top_re06_02 {
	width: 100%;
	max-width: 1100px;
	margin: 60px auto 0 auto;
}
.top_re06_02 ol {
	list-style: none;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
.top_re06_02 ol li {
	width: calc(( 100% - 60px ) / 2 );
	height: 86px;
	border-radius: 100vh;
	background-color: #0664F5;
	line-height: 1.5;
	letter-spacing: 0.02em;
	font-weight: 700;
	font-size: 18px;
	color: #fff;
	box-sizing: border-box;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	padding-left: 86px;
}
.top_re06_02 ol li:nth-of-type(3),
.top_re06_02 ol li:nth-of-type(4) {
	margin: 20px 0;
}
.top_re06_02 ol li span,
.top_re06_02_sp_slide ol li span {
	position: absolute;
	display: block;
	width: 46px;
	height: 46px;
	border-radius: 100%;
	top: 20px;
	left: 20px;
}
.top_re06_02 ol li span.n01,
.top_re06_02_sp_slide ol li span.n01 {
	background: url(../img/top_re06_n01.svg) center center no-repeat;
	background-color: #fff;
}
.top_re06_02 ol li span.n02,
.top_re06_02_sp_slide ol li span.n02 {
	background: url(../img/top_re06_n02.svg) center center no-repeat;
	background-color: #fff;
}
.top_re06_02 ol li span.n03,
.top_re06_02_sp_slide ol li span.n03  {
	background: url(../img/top_re06_n03.svg) center center no-repeat;
	background-color: #fff;
}
.top_re06_02 ol li span.n04,
.top_re06_02_sp_slide ol li span.n04  {
	background: url(../img/top_re06_n04.svg) center center no-repeat;
	background-color: #fff;
}
.top_re06_02 ol li span.n05,
.top_re06_02_sp_slide ol li span.n05  {
	background: url(../img/top_re06_n05.svg) center center no-repeat;
	background-color: #fff;
}
.top_re06_02 ol li span.n06,
.top_re06_02_sp_slide ol li span.n06  {
	background: url(../img/top_re06_n06.svg) center center no-repeat;
	background-color: #fff;
}

@media screen and (min-width: 1201px) and (max-height: 940px) {

.top_re06_02 {
	margin: 30px auto 0 auto;
}
.top_re06_02 ol li {
	width: calc(( 100% - 60px ) / 2 );
	height: 60px;
	line-height: 1.3;
	font-size: 14px;
	padding-left: 60px;
}
.top_re06_02 ol li span {
	width: 40px;
	height: 40px;
	top: 10px;
	left: 10px;
}
.top_re06_02 ol li:nth-of-type(3),
.top_re06_02 ol li:nth-of-type(4) {
	margin: 10px 0;
}

}

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

.top_re06 .top_re_inner {
	background-position: center top, center center, center center;
	background-size: 1200px auto, cover,  cover;
}

.top_re06_02_wrap {
	padding: 0 60px;
}
.top_re06_02 ol li {
	width: calc(( 100% - 30px ) / 2 );
	height: 60px;
	line-height: 1.3;
	font-size: 14px;
	padding-left: 60px;
}
.top_re06_02 ol li span {
	width: 40px;
	height: 40px;
	top: 10px;
	left: 10px;
}
.top_re06_02 ol li:nth-of-type(3),
.top_re06_02 ol li:nth-of-type(4) {
	margin: 10px 0;
}

}

@media screen and (min-width: 1201px) and (min-height: 1081px) {

.top_re06 .top_re_inner {
	background-position: right top, center center, center center;
	background-size: auto 70%, cover,  cover;
}

}

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

.top_re06_02 ol li {
	font-size: 12px;
}

}

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

.top_re06_02 {
	display: none;
}
.top_re06_02_sp {
	display: block;
	width: 500px;
	margin: 60px auto 0 auto;
}

}

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

.top_re06 .top_re_inner {
	background: url(../img/top_sc04_re06_sp.jpg) center top no-repeat;
	background-size: 100% auto;
}

.top_re06_02_sp {
	width: 315px;
	margin: 40px auto 0 auto;
}

}

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

.top_re06_02_sp {
	margin: 30px auto 0 auto;
}

}

@media screen and (max-width: 460px) and (min-height: 800px) {

.top_re06 .top_re_inner {
	background: url(../img/top_sc04_re06_sp.jpg) center top no-repeat;
	background-size: auto 560px;
}

}



/* top_re06_02_sp_slide
======================================================*/

.top_re06_02_sp_slide {
	width: 500px;
	overflow: hidden;
}
.top_re06_02_sp_slide ol li {
	width: 100%;
	height: 60px;
	border-radius: 100vh;
	background-color: #0664F5;
	line-height: 1.3;
	letter-spacing: 0.02em;
	font-weight: 700;
	font-size: 14px;
	color: #fff;
	box-sizing: border-box;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	padding-left: 60px;
}
.top_re06_02_sp_slide ol li span {
	width: 40px;
	height: 40px;
	top: 10px;
	left: 10px;
}
.top_re06_02_sp_slide ol li:nth-of-type(2){
	margin: 10px 0;
}
.scroll_r {
	margin-top: 10px;
	text-align: right;
}

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

.top_re06_02_sp_slide {
	width: 315px;
}
.top_re06_02_sp_slide ol li {
	height: 51px;
	line-height: 1.5;
	font-size: 12px;
	padding-left: 45px;
}
.top_re06_02_sp_slide ol li p.txt-50 {
	letter-spacing: -0.05em;
}
.top_re06_02_sp_slide ol li span {
	width: 27px;
	height: 27px;
	top: 12px;
	left: 10px;
}
.top_re06_02_sp_slide ol li span.n01 {
	background-size: 15px auto;
}
.top_re06_02_sp_slide ol li span.n02 {
	background-size: 15px auto;
}
.top_re06_02_sp_slide ol li span.n03  {
	background-size: 15px auto;
}
.top_re06_02_sp_slide ol li span.n04  {
	background-size: 15px auto;
}
.top_re06_02_sp_slide ol li span.n05  {
	background-size: 15px auto;
}
.top_re06_02_sp_slide ol li span.n06  {
	background-size: 15px auto;
}
}


/* top_section04 top_re07
======================================================*/

.top_re07 .top_re_inner {
	width: 100%;
	height: 100%;
	background-image: url("../img/top_sc04_re07.png"), url("../img/top_sc02_cv.png"), url("../img/top_sc_back_bl.jpg");
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: right top, center center, center center;
	background-size: 1177px auto, cover,  cover;
}

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

.top_re07 .top_re_inner {
	background-position: center top, center center, center center;
	background-size: 1200px auto, cover,  cover;
}

}

@media screen and (min-width: 1201px) and (min-height: 1081px) {

.top_re07 .top_re_inner {
	background-position: right top, center center, center center;
	background-size: auto 70%, cover,  cover;
}

}

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

.top_re07 .top_re_inner {
	background: url(../img/top_sc04_re07_sp.jpg) center top no-repeat;
	background-size: 100% auto;
}

}

@media screen and (max-width: 460px) and (min-height: 800px) {

.top_re07 .top_re_inner {
	background: url(../img/top_sc04_re07_sp.jpg) center top no-repeat;
	background-size: auto 560px;
}

}


/* top_section05 top_re08
======================================================*/

.top_re08 .top_re_inner {
	width: 100%;
	height: 100%;
	background-image: url("../img/top_sc05_re08.png"), url("../img/top_sc02_cv.png"), url("../img/top_sc_back_bl.jpg");
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: right top, center center, center center;
	background-size: 1133px auto, cover,  cover;
}

.top_re08 h3 {
	width: 240px;
	height: 50px;
	border-radius: 100vh;
	background-color: #fff;
	font-weight: 700;
	font-size: 25px;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	color: #286CD6;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	margin: 46px 0 30px 0;
}
.top_re08_02_mini {
	display: none;
}
.top_re08_02,
.top_re08_02_mini {
	width: calc( 100vw - (( 100vw - 1100px ) / 2 ) );
	margin: 0 0 0 calc(( 100vw - 1100px ) / 2 );
	box-sizing: border-box;
}
.top_re08_02 p,
.top_re08_02_mini p {
	padding-right: 20px;
}
.top_re08_02 img,
.top_re08_02_mini img {
	width: 100%;
	height: auto;
	border-radius: 20px;
}
.top_re08_02 p.ud {
	padding-top: 48px;
}
.top_re08_02_mini p.ud {
	padding-top: 30px;
}

.top_re08_02 .splide__arrows,
.top_re08_02_mini .splide__arrows,
.top_re09_02_sp .splide__arrows {
	width: 170px;
	height: 60px;
	display: block;
	position: absolute;
	top: -130px;
	right: 26.8%;
}
.top_re08_02 .splide__arrows button,
.top_re08_02_mini .splide__arrows button,
.top_re09_02_sp .splide__arrows button {
	background-color: transparent;
	width: 60px;
	height: 60px;
}
.top_re08_02 .splide__arrows button.splide__arrow--next,
.top_re08_02_mini .splide__arrows button.splide__arrow--next,
.top_re09_02_sp .splide__arrows button.splide__arrow--next {
	background: url(../img/arrow_next.svg) center center no-repeat;
	background-color: #fff;
	right: 0;
}
.top_re08_02 .splide__arrows button.splide__arrow--prev,
.top_re08_02_mini .splide__arrows button.splide__arrow--prev,
.top_re09_02_sp .splide__arrows button.splide__arrow--prev {
	background: url(../img/arrow_prev.svg) center center no-repeat;
	background-color: #fff;
	left: 0;
}
/* 次のスライドが無い場合の矢印 */
.top_re08_02 .splide__arrow:hover:not(:disabled),
.top_re08_02_mini .splide__arrow:hover:not(:disabled),
.top_re09_02_sp .splide__arrow:hover:not(:disabled) {
	opacity: 1;
}
.top_re08_02 .splide__arrow,
.top_re08_02_mini .splide__arrow,
.top_re09_02_sp .splide__arrow {
	opacity: 1;
}
.top_re08_02 .splide__arrow:disabled,
.top_re08_02_mini .splide__arrow:disabled,
.top_re09_02_sp .splide__arrow:disabled {
	opacity: .3;
}

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

.top_re08_02 p.ud {
	padding-top: 30px;
}

}

@media screen and (min-width: 1601px) and (max-height: 900px) {

.top_re08_02 {
	display: none;
}
.top_re08_02_mini {
	display: block;
}

}


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

.top_re08 .top_re_inner {
	background-position: center top, center center, center center;
	background-size: 1200px auto, cover,  cover;
}

.top_re08 h3 {
	width: 210px;
	height: 43px;
	font-size: 20px;
	margin: 40px 0 100px 0;
	box-shadow: 5px 6px 10px rgba(19,12,103,0.16);
}

.top_re08_02,
.top_re08_02_mini {
	width: calc( 100vw - 60px );
	margin: 0 0 0 60px;
	box-sizing: border-box;
}

.top_re08_02 .splide__arrows,
.top_re08_02_mini .splide__arrows,
.top_re09_02_sp .splide__arrows {
	width: 96px;
	height: 34px;
	top: -54px;
	right: auto;
	left: 0;
}
.top_re08_02 .splide__arrows button,
.top_re08_02_mini .splide__arrows button,
.top_re09_02_sp .splide__arrows button {
	background-color: transparent;
	width: 34px;
	height: 34px;
}
.top_re08_02 .splide__arrows button.splide__arrow--next,
.top_re08_02_mini .splide__arrows button.splide__arrow--next,
.top_re09_02_sp .splide__arrows button.splide__arrow--next {
	background: url(../img/arrow_next_sp.svg) center center no-repeat;
	background-color: #fff;
	right: 0;
}
.top_re08_02 .splide__arrows button.splide__arrow--prev,
.top_re08_02_mini .splide__arrows button.splide__arrow--prev,
.top_re09_02_sp .splide__arrows button.splide__arrow--prev {
	background: url(../img/arrow_prev_sp.svg) center center no-repeat;
	background-color: #fff;
	left: 0;
}

}

@media screen and (min-width: 1201px) and (min-height: 1081px) {

.top_re08 .top_re_inner {
	background-position: right top, center center, center center;
	background-size: auto 70%, cover,  cover;
}

}

@media screen and (min-width: 600px) and (max-width: 1200px) and (min-height: 1000px) {

.top_re08_02 {
	display: none;
}
.top_re08_02_mini {
	display: block;
}

}

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

.top_re08 .top_re_inner {
	background: url(../img/top_sc05_re08_sp.jpg) center top no-repeat;
	background-size: 100% auto;
}

.top_re08_01_txt br {
	display: none;
}
.top_re08 h3 {
	width: 180px;
	height: 35px;
	font-size: 14px;
	margin: 27px 0 58px 0;
}

.top_re08_02 {
	display: block;
	width: 100vw;
	margin: 0 0 0 0px;
	box-sizing: border-box;
	overflow: hidden;
	padding: 54px 0 0 0px;
}
.top_re08_02_mini {
	display: none;
}
.top_re08_02 .top_re08_02_inner {
	width: 620px;
}
.top_re08_02 .splide__arrows,
.top_re09_02 .splide__arrows {
	width: 96px;
	height: 34px;
	display: block;
	position: absolute;
	top: -54px;
	right: auto;
	left: 30px;
}
.top_re09_02 .splide__arrows {
	left: 0px;
}

.top_re08_02 p {
	padding-right: 0px;
	padding-left: 30px;
}
}

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

.top_re08 h3 {
	width: 180px;
	height: 35px;
	font-size: 14px;
	margin: 16px 0 10px 0;
}

.top_re08_02 {
	padding: 44px 0 0 0px;
}
.top_re08_02 .splide__arrows {
	width: 96px;
	height: 34px;
	top: -44px;
}
.top_re08_02 .top_re08_02_inner {
	width: 400px;
}
.top_re08_02 p.ud {
	padding-top: 20px;
}
.top_re08_02 p {
	padding-right: 0px;
	padding-left: 30px;
}
}

@media screen and (max-width: 430px) and (min-height: 800px) {
.top_re08 .top_re_inner {
	background: url(../img/top_sc05_re08_sp.jpg) center top no-repeat;
	background-size: 120% auto;
}
}


/* top_section05 top_re09
======================================================*/

.top_re09 .top_re_inner {
	width: 100%;
	height: 100%;
	background-image: url("../img/top_sc05_re09.png"), url("../img/top_sc02_cv.png"), url("../img/top_sc_back_bl.jpg");
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: right top, center center, center center;
	background-size: 1204px auto, cover,  cover;
}

.top_re09_02_sp {
	display: none;
}
.top_re09_02 {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto 0 auto;
}

.top_re09_02 h3 {
	width: 268px;
	height: 50px;
	border-radius: 100vh;
	background-color: #fff;
	font-weight: 700;
	font-size: 25px;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	color: #286CD6;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	margin: 55px 0 30px 0;
}

.top_re09_02_list {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	list-style: none;
	width: 100%;
}
.top_re09_02_list li {
	width: calc(( 100% - 80px ) / 3 );
}
.top_re09_02_list li img {
	width: 100%;
	height: auto;
}
.top_re09_02 .kome {
	margin-top: 16px;
	font-size: 16px;
	line-height: 1.4;
	position: relative;
	padding-left: 1.2em;
}
.top_re09_02 .kome span {
	position: absolute;
	left: 0;
	top: 0;
}

@media screen and (max-width: 1400px),(max-height: 900px) {

.top_re09_02_list {
	max-width: 800px;
	margin: 0 auto;
}
.top_re09_02 .kome {
	max-width: 800px;
	margin: 16px auto 0 auto;
	font-size: 14px;
}
}

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

.top_re09 .top_re_inner {
	background-position: center top, center center, center center;
	background-size: 1200px auto, cover,  cover;
}
.top_re09_02 {
	padding: 0 60px;
}
.top_re09_02 h3 {
	width: 210px;
	height: 43px;
	font-size: 20px;
	margin: 40px 0 40px 0;
	box-shadow: 5px 6px 10px rgba(19,12,103,0.16);
}
}

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

.top_re09_02_list li {
	width: calc(( 100% - 60px ) / 3 );
}

}

@media screen and (min-width: 1201px) and (min-height: 1081px) {

.top_re09 .top_re_inner {
	background-position: right top, center center, center center;
	background-size: auto 70%, cover,  cover;
}

}

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

.top_re09 .top_re_inner {
	background: url(../img/top_sc05_re09_sp.jpg) center top no-repeat;
	background-size: 100% auto;
}
.top_re09_02 {
	padding: 0 30px;
}
.top_re09_02_list {
	display: none;
}
.top_re09_02_sp {
	display: block;
	width: 100%;
	position: relative;
}
.top_re09_02 h3 {
	width: 180px;
	height: 35px;
	font-size: 14px;
	margin: 16px 0 95px 0;
}
.top_re09_02_sp p {
	text-align: center;
	padding: 0;
}
.top_re09_02_sp p img {
	width: 100%;
	height: auto;
	max-width: 243px;
}
.top_re09_02 .kome {
	margin: 10px auto 0 auto;
	font-size: 12px;
}
}

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

.top_re09_02 h3 {
	width: 180px;
	height: 35px;
	font-size: 14px;
	margin: 16px 0 54px 0;
}
.top_re09_02 .splide__arrows {
	width: 96px;
	height: 34px;
	top: -44px;
}
.top_re09_02_sp p img {
	max-width: 160px;
}

}

@media screen and (max-width: 430px) and (min-height: 800px) {
.top_re09 .top_re_inner {
	background: url(../img/top_sc05_re09_sp.jpg) center top no-repeat;
	background-size: 120% auto;
}
}




/* top_section06 top_area page_area
======================================================*/

#top_section06 {
	background-image: url("../img/top_sc02_cv.png"), url("../img/top_sc_back_bl.jpg");
	background-repeat: no-repeat, no-repeat;
	background-position: center center, right center;
	background-size: cover, cover;
}
.top_section06_waku {
	width: 100vw;
	min-height: 100vh;
	position: relative;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	justify-content: center;
	box-sizing: border-box;
}
.top_section06_w {
	width: 100vw;
	height: 300px;
	background: url(../img/area_w_l.png) center top no-repeat;
	background-size: 100% 300px;
	position: absolute;
	top: 0;
	left: 0;
}
.top_sction06_content {
	position: relative;
	z-index: 2;
}
.page_area_wrap {
	background-image: url("../img/page_area_cv.png"), url("../img/top_sc_back_bl.jpg");
	background-repeat: no-repeat, no-repeat;
	background-position: center bottom, right center;
	background-size: 100% auto, cover;
}
.page_area_waku {
	background: url(../img/area_w_l.png) center top no-repeat;
	background-size: 100% 300px;
	padding: 220px 0 80px 0;
}
.page_area {
	width: 100%;
	padding-top: 200px;
	max-width: 1152px;
	margin: 0 auto;
	display: -webkit-flex;
	display: flex;
}
.area_left {
	width: 600px;
	padding-top: 90px;
}
.area_right {
	width: calc( 100% - 600px );
	width: 552px;
	text-align: right;
}
.area_right img {
	width: 492px;
	height: auto;
}

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

.page_area_wrap {
	background-image: url("../img/page_area_cv.png"), url("../img/top_sc_back_bl.jpg");
	background-repeat: no-repeat, no-repeat;
	background-position: center bottom, right center;
	background-size: 1920px auto, cover;
}

.top_section06_w {
	width: 100vw;
	height: 300px;
	background: url(../img/area_w.svg) center top no-repeat;
	background-size: 1920px auto;
	position: absolute;
	top: 0;
	left: 0;
}

.page_area_waku {
	background: url(../img/area_w.svg) center top no-repeat;
	background-size: 1920px auto;
}

}

@media screen and (min-width: 1201px) and (max-width: 1920px) and (max-height: 999px) {

.top_section06_w {
	width: 100vw;
	height: 200px;
	background: url(../img/area_w.svg) center top -100px no-repeat;
}
.page_area {
	padding-top: 180px;
}

}

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

.page_area {
	max-width: 1100px;
}
.area_right {
	text-align: center;
}
.area_right img {
	width: 400px;
	height: auto;
}

}

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

.top_section06_waku {
	width: 100vw;
	min-height: 100%;
	position: relative;
}
.page_area {
	width: 100%;
	max-width: 900px;
	padding-top: 180px;
}
.area_left {
	width: 400px;
	padding-top: 60px;
}
.area_right {
	width: 500px;
	text-align: center;
	box-sizing: border-box;
}
.page_area_waku {
	padding: 0px 0 80px 0;
}

}

@media screen and (min-width: 1001px) and (max-width: 1200px) and (max-height: 900px) {

.top_section06_w {
	width: 100vw;
	height: 300px;
	background: url(../img/area_w.svg) center top -40px no-repeat;
	position: absolute;
	top: 0;
	left: 0;
}

.top_section06_waku {
	display: block;
}
.page_area {
	padding-top: 180px;
}
}

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

.top_section06_waku {
	display: block;
}

.top_section06_w {
	width: 100vw;
	height: 300px;
	background: url(../img/area_w.svg) center top -60px no-repeat;
	position: absolute;
	top: 0;
	left: 0;
}

.page_area_wrap {
	background: url(../img/top_sc_back_bl.jpg) center center no-repeat;
	background-size: cover;
}
.page_area {
	width: 100%;
	padding-top: 180px;
	max-width: 640px;
	margin: 0 auto;
	display: block;
}
.area_left {
	width: 100%;
	padding-top: 0px;
}
.area_right {
	width: 100%;
	text-align: center;
	box-sizing: border-box;
	margin-top: 30px;
}
.area_right img {
	width: 100%;
	max-width: 300px;
	height: auto;
}

.page_area_waku {
	padding: 0px 60px 60px 60px;
	background: url(../img/area_w.svg) center top no-repeat;
}

}

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

#top_section06 {
	background: url(../img/area_back_sp.png) center top no-repeat;
	background-size: cover;
}

.top_section06_w {
	width: 100vw;
	height: 300px;
	background: url(../img/area_w_s.svg) center top no-repeat;
	background-size: 100% auto;
	position: absolute;
	top: 0;
	left: 0;
}
.area_wrap {
	padding: 0 30px;
}
.page_area {
	width: 100%;
	padding-top: 140px;
	max-width: 640px;
	margin: 0 auto;
	display: block;
}
.area_right img {
	width: 100%;
	max-width: 170px;
	height: auto;
}
.page_area_waku {
	padding: 0px 0px 30px 0px;
	background: url(../img/area_w_s.svg) center top no-repeat;
	background-size: 100% auto;
}
}

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

.page_area {
	padding-top: 140px;
}
.area_right img {
	max-width: 140px;
}
.area_right.area_right_page img {
	max-width: 170px;
}

}

@media screen and (max-width: 359px) {
.page_area {
	padding-bottom: 30px;
}
.area_right img {
	max-width: 100px;
}
.area_right.area_right_page img {
	max-width: 170px;
}
}


/* top_section07 top_news
======================================================*/

#top_section07 {
	background-image: url("../img/top_news_back.png"), url("../img/top_sc02_cv.png"), url("../img/top_sc_back_bl.jpg");
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: right top, center center, right center;
	background-size: auto 100%, cover, cover;
}
.top_section07_waku {
	width: 100vw;
	min-height: 100vh;
	position: relative;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	justify-content: center;
	box-sizing: border-box;
}

.top_news {
	width: 1100px;
	margin: 0 auto;
	padding-bottom: 40px;
}
.top_news ul {
	width: 1100px;
	list-style: none;
	margin-top: 10px;
}
.top_news ul li {
	border-bottom: solid 1px #FFFFFF;
}
.top_news ul li a {
	display: block;
	display: -webkit-flex;
	display: flex;
	font-weight: 500;
	font-size: 18px;
	line-height: 1.6;
	color: #fff;
	padding: 44px 0;
}
.top_news ul li a .top_news_date {
	display: block;
	width: 130px;
}
.top_news ul li a .top_news_ct {
	display: block;
	width: 180px;
}
.top_news .page_link_btn {
	margin-top: 48px;
}

@media screen and (max-height: 999px) {

.top_news ul li a {
	padding: 30px 0;
}

}

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

.top_news {
	width: 900px;
	margin: 0 auto;
	padding-bottom: 20px;
}
.top_news ul {
	width: 900px;
	list-style: none;
	margin-top: 10px;
}
.top_news ul li a {
	font-size: 16px;
	padding: 30px 0;
}
.top_news ul li a .top_news_date {
	width: 110px;
}
.top_news ul li a .top_news_ct {
	width: 110px;
}
}

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

#top_section07 {
	background-image: url("../img/top_news_back.png"), url("../img/top_sc02_cv.png"), url("../img/top_sc_back_bl.jpg");
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: center top, center center, right center;
	background-size: auto 100%, cover, cover;
}
.top_section07_waku {
	width: 100vw;
	min-height: 100%;
	position: relative;
	display: block;
}
.top_news_wrap {
	padding: 200px 60px 0 60px;
}
.top_news {
	width: 100%;
}
.top_news ul {
	width: 100%;
	margin-top: 10px;
}
.top_news ul li a .top_news_date {
	width: 100px;
}
.top_news ul li a .top_news_ct {
	width: 90px;
}

}

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

#top_section07 {
	background: url(../img/top_news_back_sp.jpg) center top no-repeat;
	background-size: cover;
}

.top_news_wrap {
	padding: 110px 30px 0 30px;
}
.top_news ul {
	margin-top: 0px;
}
.top_news ul li:last-child {
	border-bottom: solid 0px #FFFFFF;
}
.top_news ul li a {
	display: block;
	font-size: 16px;
	line-height: 1.6;
	color: #fff;
	padding: 25px 0 20px 0;
}
.top_news ul li a .top_news_date {
	width: 80px;
	display: inline-block;
	font-size: 14px;
}
.top_news ul li a .top_news_ct {
	width: 80px;
	display: inline-block;
	font-size: 14px;
}
.top_news ul li a .top_news_title {
	width: 100%;
	display: block;
}
.top_news .page_link_btn {
	margin-top: 10px;
}
}

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

.top_news_wrap {
	padding: 100px 30px 0 30px;
}
.top_news ul li a {
	font-size: 14px;
	line-height: 1.4;
	color: #fff;
	padding: 20px 0 14px 0;
}

}



/* top_works top_re_works
======================================================*/

.top_re_works .top_re_inner {
	width: 100%;
	height: 100%;
	background-image: url("../img/top_works_back.png"), url("../img/top_sc02_cv.png"), url("../img/top_sc_back_bl.jpg");
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: right top, center center, center center;
	background-size: 1134px auto, cover,  cover;
}
.top_works_list {
	width: 100%;
	max-width: 1100px;
	margin: 108px auto 0 auto;
}
.top_works_list ul {
	display: -webkit-flex;
	display: flex;
	list-style: none;
}
.top_works_list ul li {
	width: calc(( 100% - 180px ) / 4 );
}
.top_works_list ul li:not(:first-child) {
	margin-left: 60px;
}
.top_works_list ul li a {
	display: block;
	border-radius: 13px;
	background-color: #fff;
	box-shadow: 0px 0px 10px rgba(0,0,0,0.16);
}
.top_works_list .top_works_sn {

}
.top_works_list .top_works_sn img {
	width: 100%;
	height: auto;
	aspect-ratio: 240 / 150;
	object-fit: cover;
	object-position: center center;
	border-top-left-radius: 13px;
	border-top-right-radius: 13px;
}
.top_works_info {
	padding: 10px 20px 10px 20px;
}
.top_works_info dl {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}
.top_works_info dl:nth-of-type(1) {
	border-bottom: solid 1px #707070;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.top_works_info dl dt {
	width: 78px;
	height: 26px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	border-radius: 100vh;
	background-color: #00ACD8;
	color: #fff;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
}
.top_works_info dl dd {
	font-size: 18px;
	font-weight: 500;
	color: #333;
	padding-left: 20px;
}

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

.top_re_works .top_re_inner {
	background-position: center top, center center, center center;
	background-size: 1200px auto, cover,  cover;
}

}

@media screen and (min-width: 1001px) and (max-width: 1400px),(max-height: 899px) {

.top_works_list {
	width: 100%;
	max-width: 900px;
	margin: 40px auto 0 auto;
}
.top_works_info {
	padding: 6px 12px 6px 12px;
}
.top_works_list ul li {
	width: calc(( 100% - 120px ) / 4 );
}
.top_works_list ul li:not(:first-child) {
	margin-left: 40px;
}
.top_works_info dl:nth-of-type(1) {
	padding-bottom: 5px;
	margin-bottom: 5px;
}
.top_works_info dl dt {
	width: 60px;
	height: 20px;
	font-size: 14px;
}
.top_works_info dl dd {
	font-size: 16px;
	font-weight: 500;
	color: #333;
	padding-left: 10px;
}

}


@media screen and (min-width: 1201px) and (min-height: 1081px) {

.top_re_works .top_re_inner {
	background-position: right top, center center, center center;
	background-size: auto 70%, cover,  cover;
}

}

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

.top_works_list {
	display: none;
}

.top_works_list_sp_slide {
	width: 100%;
	overflow: hidden;
	display: block;
	position: relative;
	padding: 0px 0 10px 0;
}
.top_works_list_sp_slide a {
	width: 220px;
	margin: 0 auto;
}
.top_works_list_sp_slide .top_works_sn img {
	width: 100%;
	height: auto;
	aspect-ratio: 240 / 150;
	object-fit: cover;
	object-position: center center;
	border-top-left-radius: 13px;
	border-top-right-radius: 13px;
}
.top_works_list_sp_slide dl dt {
	width: 60px;
	height: 20px;
	font-size: 14px;
}
.top_works_list_sp_slide dl dd {
	font-size: 16px;
	font-weight: 500;
	color: #333;
	padding-left: 10px;
}

}

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

.top_re_works .top_re_inner {
	background: url(../img/top_works_back_sp.jpg) center top no-repeat;
	background-size: 100% auto;
}


}


/* top_works_list_sp_slide
======================================================*/

.top_works_list_sp {
	display: none;
}

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

.top_works_list_sp {
	width: 100%;
	overflow: hidden;
	display: block;
	position: relative;
	padding: 50px 0 0px 0;
}
.top_works_list_sp.page_works_list_sp {
	padding: 30px 0 0px 0;
}
.top_works_list_sp .swiper-slide {
	padding: 0 15px;
	box-sizing: border-box;
}
.top_works_list_sp a {
	display: block;
	aspect-ratio: 280 / 180;
	border-radius: 20px;
	position: relative;
}
.swiper-pagination_top_works_list_sp {
	text-align: center;
	margin-top: 9px;
}

.top_works_list_sp_slide a {
	display: block;
	border-radius: 13px;
	background-color: #fff;
	box-shadow: 0px 0px 10px rgba(0,0,0,0.16);
}

}

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

.top_works_list_sp.page_works_list_sp {
	padding: 20px 0 0px 0;
}

}

/* top_section09 recruit
======================================================*/

#top_section09 {
	background-image: url("../img/top_sc02_cv.png"), url("../img/top_rcruit_back.png"), url("../img/top_sc_back_bl.jpg");
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: center center, right center, center center;
	background-size: cover, cover ,cover;
	box-sizing: border-box;
}
.top_section09_waku {
	width: 100vw;
	min-height: 100vh;
	position: relative;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	justify-content: center;
	box-sizing: border-box;
}
.top_sction09_content {
	position: relative;
	width: 100vw;
}
.top_recruit {
	width: 100%;
	max-width: 1100px;
	text-align: left;
	margin: 0 auto;
}
.top_recruit_inner {
	width: 100%;
	max-width: 600px;
}
.top_recruit .page_link_btn {
	margin-top: 50px;
}

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


.top_section09_waku {
	width: 100vw;
	height: auto;
	min-height: auto;
	position: relative;
	display: block;
	padding-top: 30%;
}
.top_section09_set {
	margin-top: 0px;
}

.top_recruit_wrap {
	padding: 0 60px;
}
.top_recruit {
	width: 100%;
	text-align: left;
}

}



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

#top_section09 {
	background: url(../img/top_rcruit_back_sp.jpg) center top no-repeat;
	background-size: cover;
	padding-top: 100px;
}
.top_recruit_wrap {
	padding: 0 30px;
}
.top_recruit .page_link_btn {
	margin-top: 30px;
}
}


/* page_footer top_footer
======================================================*/

.page_footer {
	width: 100%;
	background-image: url("../img/footer_contact_cv.png"), url("../img/footer_contact_back.jpg");
	background-repeat: no-repeat, no-repeat;
	background-position: center center, center center;
	background-size: cover, cover;
}
.top_footer {
	width: 100%;
	min-height: 100vh;
}
.pg_footer {
	padding: 170px 0 70px 0;
}
.footer_contact {
	width: 100%;
	position: relative;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	justify-content: center;
	box-sizing: border-box;
}
.top_footer .footer_contact {
	height: 100vh;
}
.footer_contact_content {
	width: 100%;
	max-width: 1100px;
	position: relative;
}
.footer_contact_inner {
	width: 600px;
}
.ftc_info {
	border-radius: 20px;
	background-color: #E2E5E9;
	text-align: center;
	padding: 30px 0 20px 0;
	margin-top: 24px;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.10);
	box-sizing: border-box;
}
.ftc_info h3 {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	margin: 0 auto;
}
.ftc_info h3 span:nth-of-type(1) {
	font-weight: 500;
	font-size: 30px;
	line-height: 1;
	position: relative;
}
.ftc_info h3 span:nth-of-type(2) {
	font-weight: 500;
	font-size: 40px;
	line-height: 1;
	position: relative;
	color: #E70A40;
	margin-left: 11px;
}
.ftc_info .txt {
	font-size: 22px;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	color: #333;
	margin: 16px 0 16px 0;
	line-height: 1;
}
.ftc_info .tel a {
	font-weight: 900;
	font-size: 42px;
	line-height: 1;
	color: #202020;
	background: url(../img/free.svg) left center no-repeat;
	background-size: 44px auto;
	padding-left: 54px;
	letter-spacing: 0.02em;
	text-indent: 0.02em;
}
.ftc_info .reception {
	font-size: 14px;
	line-height: 1;
	color: #202020;
	margin-top: 14px;
}
.footer_contact .page_link_btn {
	margin-top: 50px;
}


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

.pg_footer {
	padding: 86px 0px 88px 0;
}
.footer_contact {
	padding: 0 60px;
}
.footer_contact_content {
	width: 100%;
}
.footer_contact_inner {
	width: 100%;
}
.ftc_info {
	border-radius: 20px;
	background-color: #E2E5E9;
	text-align: center;
	padding: 30px 0 20px 0;
	margin-top: 24px;
	width: 100%;
	max-width: 600px;
}
.ftc_info h3 span:nth-of-type(1) {
	font-size: 25px;
}
.ftc_info h3 span:nth-of-type(2) {
	font-size: 35px;
	margin-left: 10px;
}
.ftc_info .txt {
	font-size: 19px;
	margin: 13px 0 14px 0;
	line-height: 1;
}
.ftc_info .tel a {
	font-size: 39px;
	background: url(../img/free.svg) left bottom 14px no-repeat;
	background-size: 42px auto;
	padding-left: 54px;
}
.ftc_info .reception {
	font-size: 14px;
	margin-top: 13px;
}
.footer_contact .page_link_btn {
	margin-top: 40px;
	width: 237px;
	height: 47px;
	font-size: 16px;
}
.footer_contact .page_link_btn::after {
	top: 3px;
	right: 6px;
	width: 37px;
	height: 37px;
	background: url(../img/link_ar01.svg) center center no-repeat;
	background-size: 10px auto;
	background-color: #286CD6;
}
}


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

.pg_footer {
	padding: 86px 0px 88px 0;
}

.page_footer {
	background: url(../img/footer_contact_back_sp.jpg) center center no-repeat;
	background-size: cover;
}
.footer_contact {
	padding: 0px 30px 0px 30px;
	box-sizing: border-box;
	display: block;
}
.top_footer_contact {
	padding: 110px 30px 0 30px;
}
.footer_contact_inner {
	width: 100%;
}
.ftc_info h3 span:nth-of-type(1) {
	font-size: 20px;
}
.ftc_info h3 span:nth-of-type(2) {
	font-size: 30px;
	margin-left: 9px;
}
.ftc_info .txt {
	font-size: 16px;
	letter-spacing: 0;
	text-indent: 0;
	margin: 10px 0 12px 0;
	line-height: 1.6;
}
.ftc_info .tel a {
	font-weight: 900;
	font-size: 36px;
	line-height: 1;
	color: #202020;
	background: url(../img/free.svg) left bottom 10px no-repeat;
	background-size: 41px auto;
	padding-left: 50px;
}
.ftc_info .reception {
	font-size: 14px;
	margin-top: 12px;
}
.footer_contact .page_link_btn {
	margin: 30px auto 0 auto;
	width: 237px;
	height: 47px;
	font-size: 16px;
}
.footer_contact .page_link_btn::after {
	top: 3px;
	right: 6px;
	width: 37px;
	height: 37px;
	background: url(../img/link_ar01.svg) center center no-repeat;
	background-size: 10px auto;
	background-color: #286CD6;
}
}

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

.ftc_info h3 span:nth-of-type(1) {
	font-size: 18px;
}
.ftc_info h3 span:nth-of-type(2) {
	font-size: 24px;
	margin-left: 6px;
}
.ftc_info .tel a {
	font-weight: 900;
	font-size: 30px;
	line-height: 1;
	color: #202020;
	background: url(../img/free.svg) left bottom 10px no-repeat;
	background-size: 36px auto;
	padding-left: 40px;
}
}


/* footer
======================================================*/

.footer {
	width: 100%;
	background-color: #18325A;
	padding: 36px 0 37px 0;
}
.footer_wrap {
	padding: 0 60px;
}
.footer_container {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}
.footer_left {
	width: 340px;
	float: left;
}
.footer_left .add {
	font-size: 16px;
	color: #fff;
	margin: 15px 0 7px 0;
}
.footer_left .add span:nth-of-type(1) {
	font-size: 12px;
	margin-bottom: 6px;
}
.footer_left .add span {
	display: block;
	line-height: 1;
}
.footer_left .f_tel a {
	display: block;
	line-height: 1;
	font-weight: 900;
	font-size: 38px;
	letter-spacing: 0.02em;
	padding-left: 52px;
	background: url(../img/free.svg) left bottom 4px no-repeat;
	background-size: 42px auto;
	color: #fff;
}
.footer_left .f_mail {
	color: #fff;
	font-size: 16px;
	margin: 5px 0 20px 0;
}
.footer_left .f_sns {
	list-style: none;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}
.footer_left .f_sns li:nth-of-type(2) {
	padding: 0 20px;
}
.footer_nav {
	width: 240px;
	float: left;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	padding-top: 10px;
}
.footer_nav p,
.footer_nav p a,
.footer_nav nav dl dt {
	line-height: 1;
	font-weight: 700;
	font-size: 14px;
	color: #fff;
}
.footer_nav nav p:not(:last-child) {
	margin-bottom: 32px;
}
.footer_nav nav dl dd ul {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	list-style: none;
	width: 100px;
	margin: 6px 0 15px 0;
}
.footer_nav nav dl dd ul li {
	width: 50%;
}
.footer_nav nav dl dd ul li a {
	display: block;
	font-size: 12px;
	font-weight: 500;
	color: #fff;
	line-height: 1;
	padding: 5px 0;
}
.footer_cm {
	width: 180px;
	float: right;
	border-radius: 12px;
	background-color: #FFFFFF;
}
.footer_cm ul {
	width: 148px;
	margin: 0 auto;
	list-style: none;
	padding: 18px 0;
}
.footer_cm ul li a {
	display: block;
	height: 28px;
	border-radius: 100vh;
	border: solid 1px #707070;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
}
.footer_cm ul li:not(:last-child) {
	margin-bottom: 13px;
}


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

.footer_left {
	width: 280px;
	float: left;
}
.footer_left .f_tel a {
	font-size: 33px;
	padding-left: 47px;
	background: url(../img/free.svg) left bottom 4px no-repeat;
	background-size: 38px auto;
}
.footer_left .f_sns li:nth-of-type(1) img {
	width: 30px;
	height: auto;
}
.footer_left .f_sns li:nth-of-type(2) img {
	width: 30px;
	height: auto;
}
.footer_left .f_sns li:nth-of-type(3) img {
	width: 37px;
	height: auto;
}
.footer_left .f_sns li:nth-of-type(2) {
	padding: 0 15px;
}
}


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

.footer_nav {
	width: 140px;
	display: block;
}
.footer_nav nav p:not(:last-child) {
	margin-bottom: 20px;
}
.footer_nav nav:nth-of-type(2) {
	margin-top: 20px;
}

}


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

.footer_left {
	padding-bottom: 30px;
}

.footer_nav {
	width: 240px;
	float: right;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	padding-top: 10px;
}
.footer_nav nav:nth-of-type(2) {
	margin-top: 0px;
}
.footer_cm {
	width: 100%;
	float: none;
	border-radius: 12px;
	background-color: #FFFFFF;
	clear: both;
	margin: 0 auto;
}
.footer_cm ul {
	width: 419px;
	margin: 0 auto;
}
.footer_cm ul li {
	width: 133px;
	height: 27px;
	float: left;
}
.footer_cm ul li {
	margin-right: 10px;
}
.footer_cm ul li:nth-of-type(3) {
	margin-right: 0px;
}
.footer_cm ul li:nth-of-type(4) {
	margin-bottom: 0px;
}

}

@media screen and (max-width: 640px) {
.footer_wrap {
	padding: 0 30px;
}
.footer_container {
	width: 100%;
	max-width: 315px;
	margin: 0 auto;
}
.footer_left {
	width: 280px;
	float: none;;
}
.footer_nav {
	width: 240px;
	float: none;
	padding-top: 0px;
}
.footer_cm {
	margin-top: 30px;
}
.footer_cm ul {
	width: 275px;
}
.footer_cm ul li,
.footer_cm ul li:nth-of-type(3),
.footer_cm ul li:nth-of-type(4) {
	margin-right: 0px;
}

.footer_cm ul li:nth-of-type(1),
.footer_cm ul li:nth-of-type(3) {
	margin-right: 9px;
}
.footer_cm ul li:not(:last-child) {
	margin-bottom: 10px;
}
}

@media screen and (max-width: 359px) {
.footer_wrap {
	padding: 0 0px;
}

.footer_container {
	width: 100%;
	max-width: 300px;
	margin: 0 auto;
}

}


/* topic_path
======================================================*/

.topic_path {
	width: 100%;
	height: 44px;
	box-sizing: border-box;
	border-top: solid 1px #202020;
	position: fixed;
	top: 196px;
	background-color: #fff;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	z-index: 10;
}
.topic_path p {
	font-size: 16px;
	line-height: 1;
	color: #333;
	padding-left: 77px;
}
.topic_path p a {
	opacity: 1;
	color: #333;
	transition: opacity 0.3s;
}
.topic_path p a:hover {
	opacity: 0.7;
}

.topic_path p span.list {
	display: inline-block;
	width: 26px;
	height: 10px;
	background: url(../img/t_path.svg) center center no-repeat;
}

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

.topic_path {
	height: 36px;
	top: 121px;
	z-index: 10;
	box-shadow: 0px 3px 6px rgba(0,0,0,0.16);
}
.topic_path p {
	font-size: 14px;
	line-height: 1;
	padding-left: 60px;
}
}

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

.topic_path {
	height: 29px;
}
.topic_path p {
	font-size: 13px;
	line-height: 1;
	padding-left: 30px;
}

}


/* page_main
======================================================*/

.page_main {
	padding-top: 240px;
}
.page_main.page_main404 {
	padding-top: 196px;
}

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

.page_main {
	padding-top: 157px;
}
.page_main.page_main404 {
	padding-top: 121px;
}
}

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

.page_main {
	padding-top: 150px;
}

}

/* page_title
======================================================*/

.page_title {
	width: 100%;
	height: 300px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	text-align: center;
}
.page_title h1 {
	font-weight: 700;
	font-size: 32px;
	line-height: 1;
	color: #fff;
	text-align: center;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
}
.page_title_about {
	background: url(../img/page_title_about.jpg) center center no-repeat;
	background-size: cover;
}
.page_title_re01 {
	background: url(../img/page_title_re01.jpg) center center no-repeat;
	background-size: cover;
}
.page_title_re02 {
	background: url(../img/page_title_re02.jpg) center center no-repeat;
	background-size: cover;
}
.page_title_re03 {
	background: url(../img/page_title_re03.jpg) center center no-repeat;
	background-size: cover;
}
.page_title_re04 {
	background: url(../img/page_title_re04.jpg) center center no-repeat;
	background-size: cover;
}
.page_title_repair {
	background: url(../img/page_title_repair.jpg) center center no-repeat;
	background-size: cover;
}
.page_title_news {
	background: url(../img/page_title_news.jpg) center center no-repeat;
	background-size: cover;
}
.page_title_works {
	background: url(../img/page_title_works.jpg) center center no-repeat;
	background-size: cover;
}
.page_title_recruit {
	background: url(../img/page_title_recruit.jpg) center center no-repeat;
	background-size: cover;
}
.page_title_contact {
	background: url(../img/page_title_contact.jpg) center center no-repeat;
	background-size: cover;
}
.page_title_pp {
	background: url(../img/page_title_pp.jpg) center center no-repeat;
	background-size: cover;
}

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

.page_title {
	width: 100%;
	height: 195px;
}
.page_title h1 {
	font-size: 24px;
}

}

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

.page_title {
	width: 100%;
	height: 90px;
}
.page_title h1 {
	font-size: 16px;
}
.page_title_about {
	background: url(../img/page_title_about_sp.jpg) center center no-repeat;
	background-size: cover;
}
}


/* page_about
======================================================*/

.page_about_waku {
	padding: 147px 0 0 0;
	background-image: url("../img/w1920.png"), url("../img/page_about_back.jpg");
	background-repeat: no-repeat, no-repeat;
	background-position: center top 770px, center top;
	background-size: 100% auto, 100% auto;
	background-color: #fff;
}

.page_about_head_set {
	width: 100%;
	max-width: 600px;
}
.page_about_head_set {
	width: 100%;
	max-width: 600px;
}
.about_img01 {
	margin-top: 60px;
}
.about_img01 img {
	width: 100%;
	height: auto;
	border-radius: 30px;
}
.page_about_content01 {
	margin-top: 100px;
	background: url(../img/txt_cpro.png) left top 106px no-repeat;
	background-size: 117px auto;
}
.page_about_content02 {
	margin-top: 100px;
	background: url(../img/txt_history.png) left top 106px no-repeat;
	background-size: 117px auto;
}
.page_about_content01 .left,
.page_about_content02 .left {
	width: 208px;
	float: left;
}
.page_about_content01 .right,
.page_about_content02 .right {
	width: calc( 100% - 208px );
	float: right;
}

.page_about_h3 {
	font-size: 32px;
	line-height: 1;
	font-weight: 700;
}
.about_table {
	border-collapse: collapse;
	width: 100%;
}
.about_table th {
	font-weight: 500;
	font-size: 16px;
	line-height: 1.75;
	background-color: #E1F1F5;
	text-align: left;
	vertical-align: top;
	border-bottom: solid 1px #202020;
	box-sizing: border-box;
}
.about_table td {
	font-weight: 500;
	font-size: 16px;
	line-height: 1.75;
	vertical-align: middle;
	border-bottom: solid 1px #202020;
	padding: 20px 50px 20px 58px;
	box-sizing: border-box;
	background-color: #F9FCFD;
}

.about_cpro th {
	width: 162px;
	padding: 20px 0 20px 37px;
}
.about_cpro td {
	width: calc( 100% - 162px );
}
.about_history th {
	width: 162px;
	padding: 20px 0 20px 20px;
}
.about_history td {
	width: calc( 100% - 162px );
}

.about_table tr:first-child th {
	border-top-left-radius: 20px;
}
.about_table tr:first-child td {
	border-top-right-radius: 20px;
}
.about_table tr:last-child th {
	border-bottom-left-radius: 20px;
}
.about_table tr:last-child td {
	border-bottom-right-radius: 20px;
}
.about_table tr:last-child th,
.about_table tr:last-child td {
	border-bottom: solid 0px #202020;
}

.page_about_gmap {
	width: 100%;
	height: 380px;
	margin-top: 120px;
}
.page_about_gmap iframe {
	width: 100%;
	height: 380px;
}

.page_about_parking {
	background: url(../img/page_about_parking_back.jpg) center center no-repeat;
	background-size: cover;
	padding: 80px 0;
}
.page_about_parking_content {
	display: -webkit-flex;
	display: flex;
}
.page_about_parking_content .txt {
	width: calc( 100% - 374px );
	padding-right: 110px;
	box-sizing: border-box;
}
.page_about_parking_content .txt p {
	font-size: 22px;
	letter-spacing: 0.02em;
	line-height: 1.8;
	color: #fff;
	text-align: justify;
	word-break: break-all;
}
.page_about_parking_content .img {
	width: 374px;
	box-sizing: border-box;
}
.page_about_parking_content .img img {
	border-radius: 20px;
	width: 100%;
	height: auto;
}
.page_about_history {
	padding-bottom: 108px;
}

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

.page_about_waku {
	padding: 147px 0 0 0;
	background-image: url("../img/w1920.png"), url("../img/page_about_back.jpg");
	background-repeat: no-repeat, no-repeat;
	background-position: center top 770px, center top;
	background-size: 1920px auto, 1920px auto;
	background-color: #fff;
}

}

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

.page_about_waku {
	padding: 100px 0 0 0;
	background-image: url("../img/w1920.png"), url("../img/page_about_back.jpg");
	background-repeat: no-repeat, no-repeat;
	background-position: center top 700px, center top;
	background-size: 1920px auto, 1920px auto;
	background-color: #fff;
}

.page_about_content01 {
	margin-top: 75px;
	background: url(../img/txt_cpro.png) left top 64px no-repeat;
	background-size: 80px auto;
}
.page_about_content02 {
	margin-top: 75px;
	background: url(../img/txt_history.png) left top 64px no-repeat;
	background-size: 80px auto;
}
.page_about_h3 {
	font-size: 26px;
}
.page_about_content01 .left,
.page_about_content02 .left {
	width: 150px;
	float: left;
}
.page_about_content01 .right,
.page_about_content02 .right {
	width: calc( 100% - 150px );
	float: right;
}

.about_img01 {
	margin-top: 45px;
}

.page_about_gmap {
	margin-top: 100px;
}

.page_about_parking {
	padding: 60px 0;
}
.page_about_parking_content .txt {
	width: calc( 100% - 300px );
	padding-right: 40px;
	box-sizing: border-box;
}
.page_about_parking_content .txt p {
	font-size: 18px;
	line-height: 1.6;
}
.page_about_parking_content .img {
	width: 300px;
	box-sizing: border-box;
}

}

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

.page_about_content01 {
	background: none;
}
.page_about_content02 {
	background: none;
}

.page_about_content01 .left,
.page_about_content02 .left {
	width: 100%;
	float: none;
	margin-bottom: 20px;
}
.page_about_content01 .right,
.page_about_content02 .right {
	width: 100%;
	float: none;
}
.about_table td {
	padding: 20px 20px 20px 20px;
}
.about_cpro th {
	width: 160px;
	padding: 20px 0 20px 20px;
}
.about_cpro td {
	width: calc( 100% - 162px );
}
.about_history th {
	width: 160px;
	padding: 20px 0 20px 20px;
}
.about_history td {
	width: calc( 100% - 162px );
}

}

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

.about_table th {
	border-bottom: solid 0px #202020;
}
.about_table td {
	padding: 12px 20px 12px 20px;
}
.about_cpro th,
.about_history th {
	display: block;
	width: 100%;
	padding: 12px 0 12px 20px;
}
.about_cpro td,
.about_history td {
	width: 100%;
	display: block;
	width: 100%;
}

.about_table tr:first-child th {
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
}
.about_table tr:first-child td {
	border-top-right-radius: 0px;
}
.about_table tr:last-child th {
	border-bottom-left-radius: 0px;
}
.about_table tr:last-child td {
	border-bottom-right-radius: 20px;
	border-bottom-left-radius: 20px;
}
.page_about_parking_content {
	display: block;
}
.page_about_parking_content .txt {
	width: 100%;
	padding-right: 0px;
}
.page_about_parking_content .img {
	width: 100%;
	box-sizing: border-box;
	margin-top: 30px;
}

}


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

.page_about_waku {
	padding: 60px 0 0 0;
	background-image: url("../img/w1920.png"), url("../img/page_about_back.jpg");
	background-repeat: no-repeat, no-repeat;
	background-position: center top 700px, center top;
	background-size: 1920px auto, 1920px auto;
	background-color: #fff;
}

.page_about_content01 {
	margin-top: 50px;
}
.page_about_content02 {
	margin-top: 50px;
}

.about_img01 {
	margin-top: 30px;
}
.page_about_h3 {
	font-size: 20px;
}

.page_about_gmap {
	height: 280px;
	margin-top: 80px;
}
.page_about_gmap iframe {
	height: 280px;
}

.page_about_parking {
	background: url(../img/page_about_parking_back.jpg) center center no-repeat;
	background-size: cover;
	padding: 30px 0;
}
.page_about_parking_content .txt p {
	font-size: 16px;
	line-height: 1.625;
}

.page_about_history {
	padding-bottom: 80px;
}


}


/* page_re
======================================================*/

.page_re_waku {
	background: url(../img/page_re_back.jpg) center top no-repeat;
	background-size: 100% 1140px;
	padding: 147px 0 120px 0;
}
.page_re_waku.page_repair_waku {
	background: url(../img/page_repair_back.jpg) center top no-repeat;
	background-size: cover;
}
.page_re_head_set {
	width: 100%;
	max-width: 600px;
}

.page_re_info {
	width: 100%;
	max-width: 1100px;
	border-radius: 26px;
	background-color: #fff;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.10);
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	margin: 50px auto 0 auto;
	padding: 40px;
	box-sizing: border-box;
}
.page_re_info p:nth-of-type(1) {
	width: calc(( 471 / 1020 ) * 100% );
}
.page_re_info p:nth-of-type(1) img {
	border-radius: 20px;
}
.page_re_info p:nth-of-type(2) {
	width: calc(( 512 / 1020 ) * 100% );
}
.page_re_info p img {
	width: 100%;
	height: auto;
}
.go_repair {
	text-align: right;
	margin-top: 20px;
}
.go_repair span {
	font-weight: 500;
	font-size: 16px;
	letter-spacing: 0.02em;
	color: #0664F5;
}
.go_repair a {
	display: inline-block;
	width: 208px;
	height: 32px;
	background: url(../img/go_repair_back.png) right 10px center no-repeat;
	background-size: 21px auto;
	background-color: #fff;
	border-radius: 100vh;
	box-shadow: 3px 3px 6px rgba(0,0,0,0.35);
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.02em;
	line-height: 28px;
	padding-left: 20px;
	box-sizing: border-box;
	text-align: left;
	color: #0664F5;
	border: solid 2px #fff;
	transition: all 0.3s;
}
.go_repair a:hover {
	background: url(../img/go_repair_back_hv.png) right 10px center no-repeat;
	background-size: 21px auto;
	background-color: #0664F5;
	color: #fff;
	border: solid 2px #0664F5;
}

.page_re_h3 {
	font-weight: 500;
	font-size: 32px;
	line-height: 1.56;
	color: #0664F5;
}
.page_re_h3.cl_w {
	color: #fff;
}
.page_re_nayami {
	margin-top: 56px;
}
.page_re_nayami_list {
	width: 100%;
	max-width: 1100px;
	margin: 34px auto 0 auto;
}

.page_re_nayami_list ol {
	list-style: none;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	background: url(../img/txt_nayami.png) right bottom 16px no-repeat;
	background-size: 51.1% auto;
}
.page_re_nayami_list ol li {
	width: calc(( 100% - 60px ) / 2 );
	height: 86px;
	border-radius: 100vh;
	background-color: #0664F5;
	line-height: 1.5;
	letter-spacing: 0.02em;
	font-weight: 700;
	font-size: 18px;
	color: #fff;
	box-sizing: border-box;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	padding-left: 86px;
}

.page_re_nayami_list ol li:nth-of-type(3),
.page_re_nayami_list ol li:nth-of-type(4) {
	margin: 20px 0;
}

.page_re_nayami_list ol li span {
	position: absolute;
	display: block;
	width: 46px;
	height: 46px;
	border-radius: 100%;
	top: 20px;
	left: 20px;
}
.page_re_nayami_list ol li span.n01 {
	background: url(../img/top_re06_n01.svg) center center no-repeat;
	background-color: #fff;
}
.page_re_nayami_list ol li span.n02 {
	background: url(../img/top_re06_n02.svg) center center no-repeat;
	background-color: #fff;
}
.page_re_nayami_list ol li span.n03 {
	background: url(../img/top_re06_n03.svg) center center no-repeat;
	background-color: #fff;
}
.page_re_nayami_list ol li span.n04 {
	background: url(../img/top_re06_n04.svg) center center no-repeat;
	background-color: #fff;
}
.page_re_nayami_list ol li span.n05 {
	background: url(../img/top_re06_n05.svg) center center no-repeat;
	background-color: #fff;
}
.page_re_nayami_list ol li span.n06 {
	background: url(../img/top_re06_n06.svg) center center no-repeat;
	background-color: #fff;
}


.page_re_waku2 {
	background: url(../img/page_re_merit_back.jpg) center top no-repeat;
	background-size: cover;
}
.page_re_waku2_inner {
	background: url(../img/page_re_merit_cv.png) center bottom no-repeat;
	background-size: 100% auto;
	padding: 120px 0 98px 0;
}

.re_merit_list {
	margin-top: 30px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	list-style: none;
	width: 100%;
}
.re_merit_list li {
	width: calc(( 100% - 50px ) / 2 );
	box-sizing: border-box;
	border-radius: 30px;
	border: solid 5px #0664F5;
	background: url(../img/page_re_melit_en.svg) right -29px top -36px no-repeat;
	background-color: #fff;
	padding: 50px 35px 30px 35px;
	position: relative;
}
.re_merit_list li:nth-of-type(1),
.re_merit_list li:nth-of-type(2) {
	margin-bottom: 50px;
}

.re_merit_list li .re_merit_no {
	position: absolute;
	top: 23px;
	right: 26px;
}

.re_merit_list li dl {
	margin-bottom: 24px;
}
.re_merit_list li dl dt {
	font-size: 23px;
	font-weight: 500;
	line-height: 1.4;
	border-bottom: solid 1px #707070;
	width: 78%;
	padding-bottom: 20px;
	margin-bottom: 13px;
}
.re_merit_list li dl dd {
	font-size: 18px;
	font-weight: 500;
	line-height: 2;
}
.re_merit_list li p img {
	border-radius: 19px;
	width: 100%;
	height: auto;
}

.page_re_works {
	margin-top: 107px;
}

.page_works_list {
	width: 100%;
	max-width: 1100px;
	margin: 30px auto 0 auto;
}
.page_works_list ul {
	display: -webkit-flex;
	display: flex;
	list-style: none;
}
.page_works_list ul li {
	width: calc(( 100% - 180px ) / 4 );
}
.page_works_list ul li:not(:first-child) {
	margin-left: 60px;
}
.page_works_list ul li a {
	display: block;
	border-radius: 13px;
	background-color: #fff;
	box-shadow: 0px 0px 10px rgba(0,0,0,0.16);
}

.page_works_list .top_works_sn img {
	width: 100%;
	height: auto;
	aspect-ratio: 240 / 150;
	object-fit: cover;
	object-position: center center;
	border-top-left-radius: 13px;
	border-top-right-radius: 13px;
}
.page_works_list .page_works_sn img {
	width: 100%;
	height: auto;
	aspect-ratio: 240 / 150;
	object-fit: cover;
	object-position: center center;
	border-top-left-radius: 13px;
	border-top-right-radius: 13px;
}
.page_works_info {
	padding: 10px 20px 10px 20px;
}
.page_works_info dl {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}
.page_works_info dl:nth-of-type(1) {
	border-bottom: solid 1px #707070;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.page_works_info dl dt {
	width: 78px;
	height: 26px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	border-radius: 100vh;
	background-color: #00ACD8;
	color: #fff;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
}
.page_works_info dl dd {
	font-size: 18px;
	font-weight: 500;
	color: #333;
	padding-left: 20px;
}

.page_works_link {
	width: 100%;
	max-width: 1220px;
	margin: 50px auto 0 auto;
	text-align: center;
	position: relative;
	padding: 0 60px;
}


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

.page_re_waku2_inner {
	background: url(../img/page_re_merit_cv.png) center bottom no-repeat;
	background-size: 1920px auto;
}

}


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

.page_works_list ul li {
	width: calc(( 100% - 90px ) / 4 );
}
.page_works_list ul li:not(:first-child) {
	margin-left: 30px;
}
.page_works_info dl dt {
	width: 58px;
	height: 24px;
	font-size: 14px;
	padding-bottom: 1px;
}

.page_works_info dl dd {
	font-size: 14px;
	padding-left: 8px;
}

}


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

.page_re_waku {
	padding: 93px 0 100px 0;
}

.page_re_info {
	margin: 40px auto 0 auto;
	padding: 30px;
}
.page_re_h3 {
	font-size: 26px;
}

.page_re_nayami_repair {
	margin-top: 48px;
}

.page_re_nayami_list ol li {
	width: calc(( 100% - 30px ) / 2 );
	height: 60px;
	line-height: 1.3;
	font-size: 14px;
	padding-left: 60px;
}
.page_re_nayami_list ol li span {
	width: 40px;
	height: 40px;
	top: 10px;
	left: 10px;
}

.page_re_nayami_list ol li:nth-of-type(3),
.page_re_nayami_list ol li:nth-of-type(4) {
	margin: 16px 0;
}

.page_re_waku2_inner {
	background: none;
	padding: 90px 0 90px 0;
}
.re_merit_list li {
	width: calc(( 100% - 30px ) / 2 );
	box-sizing: border-box;
	border-radius: 30px;
	border: solid 5px #0664F5;
	background: url(../img/page_re_melit_en.svg) right -15px top -20px no-repeat;
	background-size: 80px auto;
	background-color: #fff;
	padding: 23px 30px 20px 30px;
	position: relative;
}
.re_merit_list li:nth-of-type(1),
.re_merit_list li:nth-of-type(2) {
	margin-bottom: 30px;
}

.re_merit_list li .re_merit_no {
	position: absolute;
	top: 13px;
	right: 15px;
}
.re_merit_no.no01 img {
	width: 37px;
	height: auto;
}
.re_merit_no.no02 img {
	width: 37px;
	height: auto;
}
.re_merit_no.no03 img {
	width: 37px;
	height: auto;
}
.re_merit_no.no04 img {
	width: 40px;
	height: auto;
}
.re_merit_list li dl dt {
	font-size: 20px;
	width: 100%;
	padding-bottom: 20px;
	margin-bottom: 16px;
}
.re_merit_list li dl dd {
	font-size: 16px;
	line-height: 1.75;
}

.page_re_works {
	margin-top: 90px;
}

.page_works_list ul li {
	width: calc(( 100% - 60px ) / 4 );
}
.page_works_list ul li:not(:first-child) {
	margin-left: 20px;
}

}

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

.page_works_list {
	display: none;
}

.page_re_nayami_list ol li {
	width: calc(( 100% - 20px ) / 2 );
}

.page_re_nayami_list ol li {
	font-size: 14px;
}

.page_re_nayami_list ol li:nth-of-type(1),
.page_re_nayami_list ol li:nth-of-type(2),
.page_re_nayami_list ol li:nth-of-type(3),
.page_re_nayami_list ol li:nth-of-type(4),
.page_re_nayami_list ol li:nth-of-type(5) {
	margin: 0 0 16px 0;
}

.re_merit_list {
	margin-top: 30px;
	display: block;
}
.re_merit_list li {
	width: 100%;
}
.re_merit_list li:nth-of-type(1),
.re_merit_list li:nth-of-type(2),
.re_merit_list li:nth-of-type(3) {
	margin-bottom: 30px;
}

.page_works_link .page_link_btn {
	margin: 0 auto;
}

}

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

.page_re_nayami_list ol {
	background: none;
}
.page_re_nayami_list ol li {
	width: 100%;
	font-size: 14px;
}
.page_re_nayami_repair {
	background: none;
}

}


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

.page_re_info {
	display: block;
	padding: 20px;
}

.page_re_info p:nth-of-type(1) {
	width: 100%;
}

.page_re_info p:nth-of-type(2) {
	width: 100%;
	margin-top: 20px;
}
.page_re_nayami_list ol li {
	width: 100%;
}
}

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

.page_re_waku {
	background: url(../img/page_re_back.jpg) center top no-repeat;
	background-size: 100% 1140px;
	padding: 40px 0 80px 0;
}
.page_re_waku.page_repair_waku {
	background: url(../img/page_repair_back_sp.jpg) center top no-repeat;
	background-size: 100% auto;
}
.page_re_info {
	margin: 30px auto 0 auto;
}
.go_repair {
	text-align: center;
	margin-top: 20px;
}
.go_repair span {
	font-weight: 500;
	font-size: 16px;
	letter-spacing: 0.02em;
	color: #0664F5;
	display: block;
}
.go_repair a {
	display: inline-block;
	width: 218px;
	height: 32px;
	margin-top: 14px;
}

.page_re_h3 {
	font-size: 20px;
}
.page_re_nayami_repair {
	margin-top: 40px;
}
.page_re_nayami_list ol li {
	height: 51px;
	line-height: 1.5;
	font-size: 12px;
	padding-left: 49px;
}

.page_re_nayami_list ol li span {
	width: 27px;
	height: 27px;
	top: 12px;
	left: 10px;
}
.page_re_nayami_list ol li span.n01 {
	background: url(../img/top_re06_n01.svg) center center no-repeat;
	background-size: 17px auto;
	background-color: #fff;
}
.page_re_nayami_list ol li span.n02 {
	background: url(../img/top_re06_n02.svg) center center no-repeat;
	background-size: 16px auto;
	background-color: #fff;
}
.page_re_nayami_list ol li span.n03 {
	background: url(../img/top_re06_n03.svg) center center no-repeat;
	background-size: 17px auto;
	background-color: #fff;
}
.page_re_nayami_list ol li span.n04 {
	background: url(../img/top_re06_n04.svg) center center no-repeat;
	background-size: 17px auto;
	background-color: #fff;
}
.page_re_nayami_list ol li span.n05 {
	background: url(../img/top_re06_n05.svg) center center no-repeat;
	background-size: 17px auto;
	background-color: #fff;
}
.page_re_nayami_list ol li span.n06 {
	background: url(../img/top_re06_n06.svg) center center no-repeat;
	background-size: 16px auto;
	background-color: #fff;
}

.page_re_waku2 {
	background: url(../img/page_re_merit_back_sp.jpg) center top no-repeat;
	background-size: cover;
}
.page_re_waku2_inner {
	background: none;
	padding: 60px 0 80px 0;
}
.re_merit_list {
	margin-top: 20px;
}

.page_re_works {
	margin-top: 60px;
}

.page_works_link {
	width: 100%;
	max-width: 100%;
	margin: 40px auto 0 auto;
	text-align: center;
	position: relative;
	padding: 0 0px;
}
.page_works_link .page_link_btn {
	margin: 0 auto;
}
}

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

.page_re_h3 {
	font-size: 18px;
}

}


/* page_repair_nayami
======================================================*/

.page_re_nayami_repair {
	margin-top: 56px;
	background: url(../img/txt_nayami.png) right bottom 16px no-repeat;
	background-size: 51.1% auto;
}

.page_repair_nayami_list ol li {
	width: calc(( 100% - 60px ) / 2 );
	height: 86px;
	border-radius: 100vh;
	background-color: #0664F5;
	line-height: 1.5;
	letter-spacing: 0.02em;
	font-weight: 700;
	font-size: 18px;
	color: #fff;
	box-sizing: border-box;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	padding-left: 86px;
}
.page_repair_nayami_list ol li {
	width: 100%;
}
.page_repair_nayami_list ol li:nth-of-type(2) {
	margin: 20px 0;
}
.page_repair_nayami_list ol li span {
	position: absolute;
	display: block;
	width: 46px;
	height: 46px;
	border-radius: 100%;
	top: 20px;
	left: 20px;
}
.page_repair_nayami_list ol li span.n01 {
	background: url(../img/top_re06_n01.svg) center center no-repeat;
	background-color: #fff;
}
.page_repair_nayami_list ol li span.n02 {
	background: url(../img/top_re06_n02.svg) center center no-repeat;
	background-color: #fff;
}
.page_repair_nayami_list ol li span.n03 {
	background: url(../img/top_re06_n03.svg) center center no-repeat;
	background-color: #fff;
}

.page_repair_nayami_list_wrap {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	width: 100%;
	margin-top: 55px;
}
.page_repair_nayami_list_wrap:nth-of-type(2) {
	margin-top: 60px;
}
.page_repair_nayami_list {
	width: calc(( 100% - 60px ) / 2 );
}
.page_repair_nayami_list h4 {
	font-weight: 500;
	font-size: 32px;
	line-height: 1;
	color: #0664F5;
	margin-bottom: 36px;
}

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

.page_repair_nayami_list ol li span {
	width: 40px;
	height: 40px;
	top: 10px;
	left: 10px;
}
.page_repair_nayami_list {
	width: calc(( 100% - 30px ) / 2 );
}
.page_repair_nayami_list ol li {
	width: 100%;
	height: 60px;
	line-height: 1.3;
	font-size: 14px;
	padding-left: 60px;
}
.page_repair_nayami_list h4 {
	font-size: 26px;
	margin-bottom: 30px;
}

}


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

.page_re_nayami_repair {
	background: none;
}

.page_repair_nayami_list_wrap {
	display: block;
}
.page_repair_nayami_list {
	width: 100%;
}
.page_repair_nayami_list_wrap .page_repair_nayami_list:nth-of-type(2) {
	margin-top: 46px;
}
.page_repair_nayami_list ol li:nth-of-type(2) {
	margin: 16px 0;
}
}


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

.page_repair_nayami_list h4 {
	font-size: 20px;
	margin-bottom: 25px;
}
.page_repair_nayami_list_wrap {
	margin-top: 30px;
}
.page_repair_nayami_list ol li {
	height: 51px;
	line-height: 1.5;
	font-size: 12px;
	padding-left: 49px;
}
.page_repair_nayami_list ol li span {
	width: 27px;
	height: 27px;
	top: 12px;
	left: 10px;
}
.page_repair_nayami_list ol li span.n01 {
	background: url(../img/top_re06_n01.svg) center center no-repeat;
	background-size: 17px auto;
	background-color: #fff;
}
.page_repair_nayami_list ol li span.n02 {
	background: url(../img/top_re06_n02.svg) center center no-repeat;
	background-size: 16px auto;
	background-color: #fff;
}
.page_repair_nayami_list ol li span.n03 {
	background: url(../img/top_re06_n03.svg) center center no-repeat;
	background-size: 17px auto;
	background-color: #fff;
}

}

/* page_re_flow
======================================================*/

.page_re_flow {
	padding: 130px 0 120px 0;
}

.page_re_flow_content ol {
	list-style: none;
	margin-top: 70px;
}
.page_re_flow_content ol li {
	position: relative;
	width: 87.54%;
	background: url(../img/page_re_flow_back.jpg) center center no-repeat;
	background-size: cover;
	border-radius: 100vh;
	box-sizing: border-box;
	padding: 60px 190px;
}
.page_re_flow_content ol li:not(:first-child) {
	margin-top: 115px;
}
.page_re_flow_content ol li dl dt {
	font-weight: 700;
	font-size: 32px;
	line-height: 1;
	color: #0664F5;
}
.page_re_flow_content ol li dl dd {
	font-size: 18px;
	line-height: 2;
	margin-top: 30px;
}
.flow_contact {
	border-top: solid 1px #707070;
	margin-top: 7px;
	display: -webkit-flex;
	display: flex;
}
.flow_contact .flow_tel {
	padding: 30px 27px 0 0;
}
.flow_contact .flow_tel a {
	font-weight: 900;
	font-size: 40px;
	line-height: 1;
	letter-spacing: 0.02em;
	color: #E70A40;
	padding-left: 50px;
	background: url(../img/flow_free.svg) left bottom 14px no-repeat;
}
.flow_contact .flow_mail {
	padding: 35px 0 0 0;
}
.flow_contact .flow_mail a {
	display: block;
	width: 210px;
	height: 36px;
	padding-left: 48px;
	border-radius: 100vh;
	font-weight: 700;
	font-size: 18px;
	line-height: 36px;
	color: #fff;
	background: url(../img/flow_mail.svg) left 20px center no-repeat;
	background-color: #E70A40;
	box-sizing: border-box;
}
.flow_img {
	width: 280px;
	height: 200px;
	position: absolute;
	right: -14.6%;
	bottom: -50px;
}
.flow_img img {
	width: 100%;
	height: auto;
	border-radius: 20px;
}

.flow_step {
	display: block;
	width: 109px;
	height: 109px;
	border-radius: 100%;
	position: absolute;
	top: -34px;
	left: 44px;
}
.step01 .flow_step {
	background: url(../img/step01.png) center center no-repeat;
	background-size: 67px auto;
	background-color: #0664F5;
}
.step02 .flow_step {
	background: url(../img/step02.png) center center no-repeat;
	background-size: 66px auto;
	background-color: #0664F5;
}
.step03 .flow_step {
	background: url(../img/step03.png) center center no-repeat;
	background-size: 65px auto;
	background-color: #0664F5;
}
.step04 .flow_step {
	background: url(../img/step04.png) center center no-repeat;
	background-size: 70px auto;
	background-color: #0664F5;
}
.step05 .flow_step {
	background: url(../img/step05.png) center center no-repeat;
	background-size: 72px auto;
	background-color: #0664F5;
}
.step06 .flow_step {
	background: url(../img/step06.png) center center no-repeat;
	background-size: 69px auto;
	background-color: #0664F5;
}
.step07 .flow_step {
	background: url(../img/step07.png) center center no-repeat;
	background-size: 69px auto;
	background-color: #0664F5;
}

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

.page_re_flow {
	padding: 93px 0 100px 0;
}

.page_re_flow_content ol {
	margin-top: 50px;
}

.page_re_flow_content ol li {
	position: relative;
	width: 87.54%;
	background: url(../img/page_re_flow_back.jpg) center center no-repeat;
	background-size: cover;
	border-radius: 100vh;
	box-sizing: border-box;
	padding: 30px 190px 30px 110px;
}
.page_re_flow_content ol li:not(:first-child) {
	margin-top: 70px;
}
.page_re_flow_content ol li dl dt {
	font-size: 20px;
}
.page_re_flow_content ol li dl dd {
	font-size: 16px;
	line-height: 1.625;
	margin-top: 24px;
}

.flow_contact .flow_tel {
	padding: 10px 27px 0 0;
}
.flow_contact .flow_tel a {
	font-weight: 900;
	font-size: 35px;
	line-height: 1;
	letter-spacing: 0.02em;
	color: #E70A40;
	padding-left: 46px;
	background: url(../img/flow_free.svg) left bottom 12px no-repeat;
	background-size: 33px auto;
}
.flow_contact .flow_mail {
	padding: 15px 0 0 0;
}

.flow_step {
	width: 80px;
	height: 80px;
	top: -20px;
	left: 10px;
}
.step01 .flow_step {
	background-size: 50px auto;
}
.step02 .flow_step {
	background-size: 48px auto;
}
.step03 .flow_step {
	background-size: 48px auto;
}
.step04 .flow_step {
	background-size: 51px auto;
}
.step05 .flow_step {
	background-size: 53px auto;
}
.step06 .flow_step {
	background-size: 51px auto;
}
.step07 .flow_step {
	background-size: 51px auto;
}

.flow_img {
	width: 280px;
	height: 200px;
	position: absolute;
	right: -14.6%;
	bottom: -30px;
}

}

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

.flow_contact {
	border-top: solid 1px #707070;
	margin-top: 7px;
	display: block;
}

}

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

.page_re_flow_content ol li {
	position: relative;
	width: 100%;
	background: url(../img/page_re_flow_back.jpg) center center no-repeat;
	background-size: cover;
	border-radius: 42px;
	box-sizing: border-box;
	padding: 36px 30px 30px 30px;
}

.flow_img {
	width: 254px;
	height: auto;
	position: relative;
	right: auto;
	bottom: auto;
	margin: 20px auto 0 auto;
}
.flow_img img {
	width: 100%;
	height: auto;
	border-radius: 20px;
}
.flow_step {
	width: 80px;
	height: 80px;
	top: -40px;
	left: auto;
	right: -20px;
}

.flow_contact {
	margin-top: 7px;
}

.flow_contact .flow_tel {
	padding: 10px 0px 0 0;
	text-align: center;
}

.flow_contact .flow_mail a {
	margin: 0 auto;
}

}

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

.page_re_flow {
	padding: 55px 0 80px 0;
}

}


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

.flow_contact .flow_tel a {
	font-size: 30px;
	padding-left: 40px;
	background: url(../img/flow_free.svg) left bottom 10px no-repeat;
	background-size: 33px auto;
}

}

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

.flow_step {
	width: 80px;
	height: 80px;
	top: -40px;
	left: auto;
	right: -10px;
}

.flow_img {
	width: 230px;
}

}


/* page_re_qa
======================================================*/

.page_re_qa {
	background-image: url("../img/page_re_qa_cv.png"), url("../img/page_qa_back_bl.jpg");
	background-repeat: no-repeat, no-repeat;
	background-position: center bottom, center center;
	background-size: 100% 766px, cover
}
.page_re_qa_inner {
	padding: 130px 0 110px 0;
	background: url(../img/w1920_qa.png) center top -1px no-repeat;
	background-size: 100% 144px;
}
.page_re_qa_list {
	list-style: none;
	margin-top: 36px;
}
.page_re_qa_list li {
	background-color: #fff;
	border-radius: 100vh;
	padding: 32px 160px 32px 50px;
	box-sizing: border-box;
}
.page_re_qa_list li:not(:first-child) {
	margin-top: 50px;
}
.page_re_qa_list .title {
	padding: 0px 0 10px 54px;
	box-sizing: border-box;
	position: relative;
	min-height: 31px;
	font-weight: 500;
	font-size: 18px;
	line-height: 1.6;
	color: #333333;
}
.page_re_qa_list .title .op_btn {
	display: block;
	position: absolute;
	bottom: calc(( 100% - 60px ) / 2 );
	right: -109px;
	width: 60px;
	height: 60px;
	box-sizing: border-box;
	background-color: #fff;
	border-radius: 100%;
	font-weight: 500;
	border: solid 1px #0664F5;
	color: #fff;
	transition: bottom 0.3s;
	cursor: pointer;
}
.page_re_qa_list .title.close .op_btn {
	bottom: -30px;
}
.page_re_qa_list .title .op_btn div {
	width: 100%;
	height: 100%;
	position: relative;
}
.page_re_qa_list .title .op_btn div span:nth-of-type(1) {
	display: block;
	width: 20px;
	height: 3px;
	background-color: #0664F5;
	position: absolute;
	top: calc(( 100% - 3px ) / 2 );
	left: calc(( 100% - 20px ) / 2 );
	border-radius: 100vh;
	transform: rotate(90deg);
	transition: transform 0.3s, background-color 0.3s;
}
.page_re_qa_list .title.close .op_btn div span:nth-of-type(1) {
	display: block;
	width: 20px;
	height: 3px;
	background-color: #0664F5;
	position: absolute;
	top: calc(( 100% - 3px ) / 2 );
	left: calc(( 100% - 20px ) / 2 );
	transform: rotate(0deg);
}

.page_re_qa_list .title .op_btn div span:nth-of-type(2) {
	display: block;
	width: 20px;
	height: 3px;
	background-color: rgba(6,100,245,1.0);
	position: absolute;
	top: calc(( 100% - 3px ) / 2 );
	left: calc(( 100% - 20px ) / 2 );
	border-radius: 100vh;
	transform: rotate(180deg);
	transition: transform 0.3s, background-color 0.3s;
}
.page_re_qa_list .title.close .op_btn div span:nth-of-type(2) {
	display: block;
	width: 20px;
	height: 3px;
	background-color: rgba(6,100,245,0);
	position: absolute;
	top: calc(( 100% - 3px ) / 2 );
	left: calc(( 100% - 20px ) / 2 );
	transform: rotate(0deg);
}

.page_re_qa_list .title::before {
	content:"Q";
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 31px;
	height: 31px;
	background-color: #0664F5;
	border-radius: 100%;
	font-weight: 500;
	font-size: 18px;
	text-align: center;
	line-height: 29px;
	color: #fff;
}

/*アコーディオンエリア*/
.page_re_qa_list .box {
	display: none;/*はじめは非表示*/
	border-top: solid 1px #0664F5;
	padding: 14px 0 0px 54px;
	box-sizing: border-box;
	position: relative;
	font-weight: 500;
	font-size: 18px;
	line-height: 1.6;
	color: #333333;
}
.page_re_qa_list .box::before {
	content:"A";
	display: block;
	position: absolute;
	top: 14px;
	left: 0px;
	width: 31px;
	height: 31px;
	background-color: #E70A40;
	border-radius: 100%;
	font-weight: 500;
	font-size: 18px;
	text-align: center;
	line-height: 29px;
	color: #fff;
}

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

.page_re_qa {
	background-image: url("../img/page_re_qa_cv.png"), url("../img/page_qa_back_bl.jpg");
	background-repeat: no-repeat, no-repeat;
	background-position: center bottom, center center;
	background-size: 1920px 766px, cover
}
.page_re_qa_inner {
	padding: 130px 0 110px 0;
	background: url(../img/w1920_qa.png) center top -1px no-repeat;
	background-size: 1920px 144px;
}

}

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

.page_re_qa {
	background: url(../img/page_qa_back_bl.jpg) center bottom no-repeat;
	background-size: cover;
}
.page_re_qa_inner {
	padding: 90px 0 90px 0;
}

}

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

.page_re_qa_list {
	margin-top: 30px;
}
.page_re_qa_list li {
	border-radius: 42px;
	padding: 20px 30px 30px 30px;
	box-sizing: border-box;
}
.page_re_qa_list li:not(:first-child) {
	margin-top: 40px;
}
.page_re_qa_list .title {
	padding: 41px 0 18px 0px;
	box-sizing: border-box;
	min-height: auto;
	font-size: 16px;
	line-height: 1.6;
}
.page_re_qa_list .box {
	padding: 59px 0 0px 0px;
	font-size: 16px;
	line-height: 1.6;
}
.page_re_qa_list .box::before {
	top: 20px;
	left: 0px;
}

.page_re_qa_list .title .op_btn {
	bottom: auto;
	top: 0;
	right: 0px;
	width: 31px;
	height: 31px;
	transition: bottom 0.3s;
}
.page_re_qa_list .title.close .op_btn {
	bottom: auto;
}
.page_re_qa_list .title .op_btn div {
	width: 100%;
	height: 100%;
	position: relative;
}
.page_re_qa_list .title .op_btn div span:nth-of-type(1) {
	display: block;
	width: 14px;
	height: 3px;
	background-color: #0664F5;
	position: absolute;
	top: calc(( 100% - 3px ) / 2 );
	left: calc(( 100% - 14px ) / 2 );
	transform: rotate(90deg);
	transition: transform 0.3s, background-color 0.3s;
}
.page_re_qa_list .title.close .op_btn div span:nth-of-type(1) {
	display: block;
	width: 14px;
	height: 3px;
	background-color: #0664F5;
	position: absolute;
	top: calc(( 100% - 3px ) / 2 );
	left: calc(( 100% - 14px ) / 2 );
	transform: rotate(0deg);
}

.page_re_qa_list .title .op_btn div span:nth-of-type(2) {
	display: block;
	width: 14px;
	height: 3px;
	background-color: rgba(6,100,245,1.0);
	position: absolute;
	top: calc(( 100% - 3px ) / 2 );
	left: calc(( 100% - 14px ) / 2 );
	transform: rotate(180deg);
	transition: transform 0.3s, background-color 0.3s;
}
.page_re_qa_list .title.close .op_btn div span:nth-of-type(2) {
	display: block;
	width: 14px;
	height: 3px;
	background-color: rgba(6,100,245,0);
	position: absolute;
	top: calc(( 100% - 3px ) / 2 );
	left: calc(( 100% - 14px ) / 2 );
	transform: rotate(0deg);
}

}


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

.page_re_qa_inner {
	padding: 60px 0 60px 0;
	background: url(../img/w375_qa.png) center top no-repeat;
	background-size: 100% 28px;
}

}

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

.page_re_qa_inner {
	padding: 60px 0 60px 0;
	background: url(../img/w375_qa.png) center top no-repeat;
	background-size: 375px 28px;
}

}


/* page_repair_konna
======================================================*/

.page_repair_konna {
	padding: 164px 0 0 0;
}
.page_repair_konna h3 {
	color: #18325A;
}
.konna_txt {
	color: #0664F5;
	width: 100%;
	max-width: 600px;
	margin-top: 25px;
}

.page_repair_konna .page_re_nayami_list {
	margin: 70px auto 0 auto;
}

.page_repair_konna .page_re_nayami_list ol {
	background: none;
}

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

.page_repair_konna_list li {
	padding-right: 20px;
}

}

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

.page_repair_konna {
	padding: 60px 0 0 0;
}
.konna_txt {
	margin-top: 17px;
}
.page_repair_konna .page_re_nayami_list {
	margin: 25px auto 0 auto;
}
.page_re_nayami_list.page_repair_konna_list ol li {
	padding-right: 10px;
	letter-spacing: 0px;
}

}



/* page_repair_waku2
======================================================*/

.page_repair_waku2 {
	background-image: url("../img/repair_w.png"), url("../img/repair_back_bl.jpg");
	background-repeat: no-repeat, no-repeat;
	background-position: center top, center center;
	background-size: 100% 1069px, cover;
}
.page_repair_waku2_inner {
	padding: 100px 0 130px 0;
	background: url(../img/repair_cv.png) center bottom no-repeat;
	background-size: 100% auto;
}

.page_repair_price {
	margin-top: 77px;
}
.page_repair_price .page_re_h3 {
	color: #fff;
}
.price_single {
	margin-top: 65px;
}
.price_single:nth-of-type(1) {
	margin-top: 36px;
}
.price_single h4 {
	font-weight: 500;
	font-size: 32px;
	line-height: 1;
	color: #fff;
	margin-bottom: 36px;
}
.price_table {
	border-collapse: collapse;
	width: 100%;
}
.price_table th {
	background-color: #e1f1f5;
	font-weight: 500;
	font-size: 24px;
	line-height: 1;
	width: calc( 100% / 3 );
	padding: 22px 0;
}
.price_table tr:nth-of-type(1) th:nth-of-type(1) {
	border-top-left-radius: 27px;
}
.price_table tr:nth-of-type(1) th:nth-of-type(2) {
	border-right: solid 1px #202020;
	border-left: solid 1px #202020;
}
.price_table tr:nth-of-type(1) th:nth-of-type(3) {
	border-top-right-radius: 27px;
}
.price_table tr:nth-of-type(3) td:nth-of-type(1) {
	border-bottom-left-radius: 27px;
}
.price_table tr:nth-of-type(3) td:nth-of-type(3) {
	border-bottom-right-radius: 27px;
}

.price_table tr td {
	background-color: #fff;
	vertical-align: middle;
}
.price_table tr td:nth-of-type(1) {
	font-weight: 500;
	font-size: 18px;
	line-height: 1.5;
	text-align: left;
	padding-left: 30px;
	padding-right: 20px;
	border-bottom: solid 1px #202020;
}
.price_table tr td:nth-of-type(2) {
	text-align: center;
	padding: 12px 0 16px 0;
	border-right: solid 1px #202020;
	border-left: solid 1px #202020;
	border-bottom: solid 1px #202020;
}
.price_table tr td:nth-of-type(2) p {
	font-weight: 500;
	font-size: 50px;
	line-height: 1;
	color: #E70A40;
	width: 200px;
	text-align: right;
	margin: 0 auto;
}
.price_table tr td:nth-of-type(2) p span {
	font-size: 22px;
	line-height: 1;
	position: relative;
	top: -3px;
}
.price_table tr td:nth-of-type(3) {
	font-weight: 500;
	font-size: 22px;
	line-height: 1;
	text-align: left;
	padding-left: 30px;
	border-bottom: solid 1px #202020;
}
.price_table tr:nth-of-type(3) td {
	border-bottom: none;
}
.go_reform {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	margin-top: 20px;
}

.go_reform p {
	font-size: 16px;
	line-height: 1;
	font-weight: 500;
	color: #fff;
	padding-right: 30px;
}
.go_reform a {
	display: block;
	width: 267px;
	height: 32px;
	font-size: 16px;
	line-height: 28px;
	font-weight: 700;
	color: #0664F5;
	border-radius: 100vh;
	letter-spacing: 0.02em;
	background: url(../img/go_repair_back.png) right 18px center no-repeat;
	background-size: 21px auto;
	background-color: #fff;
	box-sizing: border-box;
	padding-left: 24px;
	border: solid 2px #fff;
	transition: all 0.3s;
}
.go_reform a:hover {
	background: url(../img/go_repair_back_hv.png) right 18px center no-repeat;
	background-size: 21px auto;
	color: #fff;
	background-color: #0664F5;
	border: solid 2px #fff;
}
.go_reform_price {
	display: none;
}


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

.page_repair_waku2 {
	background-image: url("../img/repair_w.png"), url("../img/repair_back_bl.jpg");
	background-repeat: no-repeat, no-repeat;
	background-position: center top, center center;
	background-size: 1920px auto, cover;
}
.page_repair_waku2_inner {
	background: url(../img/repair_cv.png) center bottom no-repeat;
	background-size: 1920px auto;
}

}


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

.page_repair_waku2_inner {
	padding: 80px 0 95px 0;
}
.page_repair_price {
	margin-top: 63px;
}
.price_single {
	margin-top: 51px;
}
.price_single:nth-of-type(1) {
	margin-top: 28px;
}
.price_single h4 {
	font-size: 26px;
	margin-bottom: 30px;
}
.price_table th {
	font-size: 18px;
	padding: 18px 0;
}
.price_table tr:nth-of-type(1) th:nth-of-type(1) {
	border-top-left-radius: 21px;
}
.price_table tr:nth-of-type(1) th:nth-of-type(3) {
	border-top-right-radius: 21px;
}
.price_table tr:nth-of-type(3) td:nth-of-type(1) {
	border-bottom-left-radius: 21px;
}
.price_table tr:nth-of-type(3) td:nth-of-type(3) {
	border-bottom-right-radius: 21px;
}
.price_table tr td:nth-of-type(1) {
	font-size: 17px;
	line-height: 1.625;
	padding-left: 26px;
	padding-right: 17px;
}
.price_table tr td:nth-of-type(2) {
	padding: 12px 0 12px 0;
}
.price_table tr td:nth-of-type(2) p {
	font-size: 38px;
	width: 145px;
	text-align: right;
}
.price_table tr td:nth-of-type(2) p span {
	font-size: 20px;
	top: -1px;
}
.price_table tr td:nth-of-type(3) {
	font-size: 19px;
	text-align: left;
	padding-left: 30px;
}

}

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

.container_wrap_price {
	padding-right: 0;
}
.price_table_wrap {
	width: 100%;
	padding-bottom: 4px;
	overflow-x: scroll;
}
.price_table {
	width: 860px;
	margin-right: 30px;
	margin-bottom: 5px;
}
.price_single .go_reform {
	display: none;
}
.go_reform_price {
	display: block;
}
.go_reform {
	display: block;
	align-items: center;
	margin-top: 40px;
}
.go_reform p {
	text-align: center;
	padding-right: 0px;
}
.go_reform a {
	margin: 11px auto 0 auto;
}

.price_table_wrap::-webkit-scrollbar {
   height: 2px;
   opacity: 0.5;
}

.price_table_wrap::-webkit-scrollbar-track {
   background-color: #eee;
}
.price_table_wrap::-webkit-scrollbar-thumb {
   background-color: #003D82;
}

}

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

.page_repair_waku2 {
	background: url(../img/repair_back_bl_sp.jpg) center top no-repeat;
	background-size: cover;
}
.page_repair_waku2_inner {
	background: url(../img/repair_w_sp.png) center top no-repeat;
	background-size: 100% 747px;
}

.page_repair_waku2_inner {
	padding: 60px 0 60px 0;
}
.page_repair_price {
	margin-top: 49px;
}
.price_single {
	margin-top: 38px;
}
.price_single:nth-of-type(1) {
	margin-top: 21px;
}
.price_single h4 {
	font-size: 20px;
	margin-bottom: 25px;
}
.price_table_wrap {
	width: 100%;
	padding-bottom: 4px;
	overflow-x: scroll;
}
.price_table {
	width: 500px;
	margin-right: 30px;
	margin-bottom: 5px;
}
.price_table th {
	font-size: 12px;
	padding: 12px 0;
	width: auto;
	box-sizing: border-box;
}
.price_table tr:nth-of-type(1) th:nth-of-type(1) {
	border-top-left-radius: 15px;
	width: 250px;
}
.price_table tr:nth-of-type(1) th:nth-of-type(2) {
	width: 140px;
}
.price_table tr:nth-of-type(1) th:nth-of-type(3) {
	border-top-right-radius: 15px;
}
.price_table tr:nth-of-type(3) td:nth-of-type(1) {
	border-bottom-left-radius: 15px;
}
.price_table tr:nth-of-type(3) td:nth-of-type(3) {
	border-bottom-right-radius: 15px;
}
.price_table tr td:nth-of-type(1) {
	font-size: 16px;
	line-height: 1.625;
	text-align: left;
	padding-left: 22px;
	padding-right: 14px;
	padding-top: 6px;
	padding-bottom: 6px;
}
.price_table tr td:nth-of-type(2) {
	padding: 12px 0 9px 0;
}
.price_table tr td:nth-of-type(2) p {
	font-size: 20px;
	width: 90px;
	text-align: right;
}
.price_table tr td:nth-of-type(2) p span {
	font-size: 16px;
	top: -1px;
}
.price_table tr td:nth-of-type(3) {
	font-size: 16px;
	text-align: left;
	padding-left: 30px;
}
.price_table_wrap::-webkit-scrollbar {
   display: none;
}
.price_single .go_reform {
	display: none;
}
.go_reform_price {
	display: block;
}
.go_reform {
	display: block;
	align-items: center;
	margin-top: 20px;
}
.go_reform p {
	text-align: center;
	padding-right: 0px;
}
.go_reform a {
	margin: 11px auto 0 auto;
}
}

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

.price_table {
	margin-right: 15px;
}

}


/* recruit
======================================================*/
.page_recruit_sotowaku {
	background: url(../img/page_recruit_back01.png) center bottom no-repeat;
	background-size: 100% 150px;
}
.page_recruit_waku {
	background-image: url("../img/page_recruit_hd.png"), url("../img/page_recruit_back_bl.jpg");
	background-repeat: no-repeat, no-repeat;
	background-position: right top, center top;
	background-size: 1381px 920px, 100% 920px;
}
.recruit_data {
	background-color: #fff;
	border-radius: 27px;
	box-shadow: 0px 0px 35px rgba(0,0,0,0.15);
	padding: 50px;
	margin-top: 50px;
}
.recruit_data_img {
	text-align: center;
}
.recruit_data_img img {
	max-width: 100%;
	height: auto;
}
.recruit_data2 {
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	margin-top: 50px;
}
.recruit_data2 p {
	width: calc(( 100% - 40px ) / 2 );
	text-align: center;
}
.recruit_data2 p img {
	max-width: 100%;
	height: auto;
}
.recruit_data3 {
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	margin-top: 60px;
}
.recruit_data3 dl {
	width: calc(( 100% - 40px ) / 2 );
	border-radius: 20px;
	background-image: linear-gradient(130deg, #00acd8, #0664f5);
	border-radius: 20px;
	padding: 37px 46px 30px 46px;
}
.recruit_data3 dl dt {
	font-weight: 700;
	font-size: 22px;
	line-height: 1.56;
	letter-spacing: 0.02em;
	color: #fff;
}
.recruit_data3 dl dd ul {
	list-style: none;
	margin-top: 20px;
}
.recruit_data3 dl dd ul li {
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0.02em;
	color: #fff;
	position: relative;
	background: url(../img/rc_list.png) left top no-repeat;
	padding-left: 26px;
}
.recruit_data3 dl dd ul li:not(:first-child) {
	margin-top: 18px;
}

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

.page_recruit_sotowaku {
	background: url(../img/page_recruit_back01.png) center bottom no-repeat;
	background-size: 1920px 150px;
}

}

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

.page_recruit_waku {
	background-image: url("../img/page_recruit_hd.png"), url("../img/page_recruit_back_bl.jpg");
	background-repeat: no-repeat, no-repeat;
	background-position: right top, center top;
	background-size: auto 600px, 100% 600px;
}

.recruit_data {
	background-color: #fff;
	border-radius: 27px;
	box-shadow: 0px 0px 35px rgba(0,0,0,0.15);
	padding: 45px 30px 30px 30px;
	margin-top: 40px;
}
.recruit_data2 p {
	width: calc(( 100% - 20px ) / 2 );
	text-align: center;
}
.recruit_data3 {
	margin-top: 40px;
}
.recruit_data3 dl {
	width: calc(( 100% - 20px ) / 2 );
	border-radius: 20px;
	background-image: linear-gradient(130deg, #00acd8, #0664f5);
	border-radius: 20px;
	padding: 30px 20px 20px 20px;
}
.recruit_data3 dl dt {
	font-size: 18px;
}
.recruit_data3 dl dd ul {
	margin-top: 7px;
}
.recruit_data3 dl dd ul li {
	font-size: 16px;
	background: url(../img/rc_list.png) left center no-repeat;
	background-size: 12px auto;
	padding-left: 23px;
	line-height: 1.5;
}
.recruit_data3 dl dd ul li:not(:first-child) {
	margin-top: 12px;
}

}

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

.recruit_data3 {
	display: block;
}
.recruit_data3 dl {
	width: 100%;
	padding: 30px 20px 20px 20px;
}
.recruit_data3 dl:nth-of-type(2) {
	margin-top: 30px;
}

}

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

.page_recruit_sotowaku {
	background: url(../img/page_recruit_back01_sp.png) center bottom -2px no-repeat;
	background-size: 100% auto;
}
.page_recruit_waku {
	background: url(../img/page_recruit_hd_sp.jpg) center top no-repeat;
	background-size: 100% auto;
}
.recruit_data {
	background-color: #fff;
	border-radius: 22px;
	box-shadow: 0px 0px 35px rgba(0,0,0,0.15);
	padding: 30px 20px 20px 20px;
	margin-top: 50px;
}
.recruit_data2 {
	margin-top: 40px;
	display: block;
}
.recruit_data2 p {
	width: 100%;
	text-align: center;
}
.recruit_data2 p:nth-of-type(2) {
	margin-top: 40px;
}
.recruit_data2 p img {
	max-width: 242px;
	height: auto;
}
.recruit_data3 dl {
	padding: 20px 18px 20px 18px;
}
.recruit_data3 dl dt {
	font-size: 16px;
}
.recruit_data3 dl dd ul li {
	font-size: 16px;
	letter-spacing: 0;
}

}


/* page_recruit_waku2
======================================================*/

.page_recruit_waku2 {
	padding-bottom: 120px;
	background: url(../img/page_recruit_back02.jpg) center top no-repeat;
	background-size: 100% 100%;
}

table.bosyu {
	border-collapse: collapse;
	width: 100%;
	margin-top: 27px;
}
table.bosyu th {
	font-weight: 700;
	font-size: 18px;
	line-height: 1;
	letter-spacing: 0.02em;
	background-color: #E1F1F5;
	vertical-align: middle;
	text-align: left;
	width: 228px;
	box-sizing: border-box;
	padding: 0 0 0 48px;
	border-bottom: solid 1px #707070;
}

table.bosyu td {
	width: calc( 100% - 228px );
	box-sizing: border-box;
	font-size: 18px;
	line-height: 2;
	vertical-align: middle;
	text-align: left;
	padding: 30px;
	border-bottom: solid 1px #707070;
	background-color: #fff;
}
table.bosyu tr:last-child th,
table.bosyu tr:last-child td {
	border: none;
}
table.bosyu tr:nth-of-type(1) th {
	border-top-left-radius: 27px;
}
table.bosyu tr:nth-of-type(1) td {
	border-top-right-radius: 27px;
}
table.bosyu tr:last-child th {
	border-bottom-left-radius: 27px;
}
table.bosyu tr:last-child td {
	border-bottom-right-radius: 27px;
}
table.bosyu td ul {
	list-style: none;
}
table.bosyu td ul li {
	position: relative;
	padding-left: 20px;
}
table.bosyu td ul li::before {
	content:"・";
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 1em;
	height: 1em;
}

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

.page_recruit_waku2 {
	background: url(../img/page_recruit_back02.jpg) center top no-repeat;
	background-size: 1920px 100%;
}

}

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

.page_recruit_waku2 {
	padding-bottom: 100px;
}

table.bosyu th {
	font-size: 16px;
	width: 180px;
	padding: 0 0 0 30px;
}
table.bosyu td {
	width: calc( 100% - 180px );
	font-size: 16px;
	padding: 20px;
}

}

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

table.bosyu th {
	display: block;
	width: 100%;
	border: none;
	padding: 12px 20px 12px 20px;
}
table.bosyu td {
	display: block;
	width: 100%;
	line-height: 1.5;
	padding: 12px 20px 12px 20px;
}

table.bosyu tr:nth-of-type(1) th {
	border-top-left-radius: 18px;
	border-top-right-radius: 18px;
}
table.bosyu tr:nth-of-type(1) td {
	border-top-right-radius: 0;
}
table.bosyu tr:last-child th {
	border-bottom-left-radius: 0;
}
table.bosyu tr:last-child td {
	border-bottom-left-radius: 18px;
	border-bottom-right-radius: 18px;
}

}

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

.page_recruit_waku2 {
	padding-bottom: 80px;
	background: url(../img/page_recruit_back02_sp.jpg) center top no-repeat;
	background-size: 100% 100%;
}

}

/* bn_line
======================================================*/

.bn_line img {
	width: 100%;
	height: auto;
}

/* form_area
======================================================*/

.form_rc {
	margin-top: 110px;
}
.form_contact {
	margin-top: 50px;
}
.form_area {
	width: 100%;
	border-radius: 26px;
	background-color: #fff;
	padding: 60px 140px;
	box-sizing: border-box;
}
.form_area h3 {
	color: #222222;
	text-align: center;
}
.form_head_txt {
	margin: 30px 0;
}
.form_head_txt p {
	color: #333;
	font-size: 16px;
	line-height: 1.5;
	position: relative;
	padding-left: 1em;
}
.form_head_txt p span {
	color: #00ACD8;
	font-size: 16px;
	position: absolute;
	left: 0;
	top: 0;
}
.contact_form dl {
	display: -webkit-flex;
	display: flex;
	width: 100%;
	position: relative;
}
.contact_form dl:not(:first-child) {
	margin-top: 30px;
}
.contact_form dl dt {
	width: 220px;
	font-weight: 700;
	font-size: 16px;
	line-height: 1;
	color: #333333;
	position: relative;
}
.contact_form dl dt span {
	display: inline-block;
	width: 50px;
	height: 20px;
	color: #fff;
	line-height: 20px;
	text-align: center;
	background-color: #00ACD8;
	border-radius: 3px;
	position: relative;
	margin-right: 20px;
	font-size: 12px;
}

.contact_form dl dd {
	width: calc( 100% - 220px );
}

.contact_form.contact_form_confirm dl {
	border-bottom: solid 1px #ddd;
	padding-bottom: 20px;
}
.contact_form.contact_form_confirm dl dd {
	font-size: 18px;
	line-height: 1.6;
}

.contact_form .form_txt {
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 500;
	font-style: normal;
	font-size: 16px;
	line-height: 1.4;
	background-color: #EFF2F4;
	border: solid 1px #D0D8DD;
	border-radius: 7px;
	padding: 4px 10px;
	height: 50px;
	box-sizing: border-box;
	width: 100%;
}
.contact_form .form_txt.form_txt_name {
	max-width: 478px;
}
.contact_form .form_txt.form_txt_kana {
	max-width: 318px;
}
.contact_form .form_txt.form_txtarea {
	width: 100%;
	height: 180px;
}
.contact_form input[type=radio] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 18px;
	height: 18px;
	border-radius: 1px;
	border: solid 1px #0664F5;
	border-radius: 100%;
	background-color: #fff;
}
.contact_form input[type=radio]:checked {
	border: solid 1px #0664F5;
	background: url(../img/maru.svg) center center no-repeat;
	background-size: 12px auto;
	background-color: #fff;
}
.contact_form #doi {
	padding-left: 220px;
	margin-top: 34px;
	font-size: 18px;
	line-height: 1;
	position: relative;
}
.contact_form #doi a {
	color: #F42737;
	text-decoration: underline;
}
.contact_form #doi input {
	width: 20px;
	height: 20px;
	margin-right: 6px;
	position: relative;
	top: 4px;
}

.send {
	text-align: center;
	margin-top: 60px;
}
.send-prev {
	width: 100%;
	max-width: 700px;
	margin: 60px auto 0 auto;
	position: relative;
	text-align: right;
}
.send_btn {
	margin: 0 auto;
	width: 310px;
	height: 60px;
	border-radius: 100vh;
	background: url(../img/send_ar.svg) right 10px center no-repeat;
	background-size: 49px auto;
	background-color: #fff;
	box-shadow: 5px 6px 10px rgba(19,12,103,0.16);
	color: #286CD6;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 60px;
	font-size: 20px;
	transition: all 0.3s;
}
.send_btn:hover {
	background: url(../img/send_ar2.svg) right 10px center no-repeat;
	background-size: 49px auto;
	background-color: #0664F5;
	color: #fff;
}
.prev_btn {
	margin: 0 auto;
	width: 310px;
	height: 60px;
	border-radius: 100vh;
	background: url(../img/prev_ar.svg) left 10px center no-repeat;
	background-size: 49px auto;
	background-color: #fff;
	box-shadow: 5px 6px 10px rgba(19,12,103,0.16);
	color: #286CD6;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 60px;
	font-size: 20px;
	transition: all 0.3s;
}
.prev_btn:hover {
	background: url(../img/prev_ar2.svg) left 10px center no-repeat;
	background-size: 49px auto;
	background-color: #0664F5;
	color: #fff;
}
.send-prev .prev_btn {
	position: absolute;
	left: 0;
	top: 0;
}

.contact_form .radio_set .wpcf7-list-item {
	display: inline-block;
	margin-left: 20px;
}
.contact_form .radio_set .wpcf7-list-item.first {
	margin-left: 0px;
}

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

.form_rc {
	margin-top: 80px;
}
.form_area {
	padding: 45px 60px;
}

}

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

.form_head_txt p {
	font-size: 14px;
}
.form_head_txt p span {
	font-size: 14px;
	left: 0;
	top: 0;
}
.contact_form dl:not(:first-child) {
	margin-top: 27px;
}
.contact_form dl dt {
	width: 180px;
	font-size: 14px;
}
.contact_form dl dt span {
	display: inline-block;
	width: 50px;
	height: 20px;
	color: #fff;
	line-height: 20px;
	text-align: center;
	background-color: #00ACD8;
	border-radius: 3px;
	position: relative;
	margin-right: 10px;
	font-size: 12px;
}
.contact_form dl dd {
	width: calc( 100% - 180px );
}
.contact_form.contact_form_confirm dl {
	padding-bottom: 10px;
}
.contact_form.contact_form_confirm dl dd {
	font-size: 16px;
}
.contact_form .form_txt {
	font-size: 14px;
	padding: 4px 10px;
	height: 35px;
}
.contact_form .radio_set {
	font-size: 16px;
}
.contact_form #doi {
	padding-left: 180px;
	margin-top: 24px;
	font-size: 16px;
	line-height: 1;
}
.contact_form #doi label {
	position: relative;
	display: -webkit-flex;
	display: flex;
}
.contact_form #doi input {
	width: 20px;
	height: 20px;
	margin: 0;
}
.contact_form #doi .doi_txt {
	margin-left: 6px;
	line-height: 1.4;
}


.send {
	text-align: center;
	margin-top: 50px;
}
.send-prev {
	max-width: 310px;
	margin: 50px auto 0 auto;
	position: relative;
	text-align: center;
}
.send-prev .prev_btn {
	position: relative;
	left: auto;
	top: auto;
	margin-top: 20px;
}

.contact_form .radio_set .wpcf7-list-item {
	display: block;
	margin-left: 0px;
	margin-top: 10px;
}
.contact_form .radio_set .wpcf7-list-item.first {
	margin-left: 0px;
	margin-top: 0px;
}

}

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

.form_area {
	padding: 30px 20px 20px 20px;
}
.contact_form dl {
	display: block;
	width: 100%;
	position: relative;
}
.contact_form dl dt {
	width: 100%;
}
.contact_form dl dd {
	width: 100%;
	margin-top: 12px;
}
.contact_form.contact_form_confirm dl dd {
	margin-top: 6px;
}

.contact_form .form_txt.form_txt_name {
	max-width: 100%;
}
.contact_form .form_txt.form_txt_kana {
	max-width: 100%;
}
.contact_form .form_txt.form_txtarea {
	width: 100%;
	height: 220px;
}

.contact_form #doi {
	padding-left: 0px;
	width: 240px;
	margin: 24px auto 0 auto;
}

}

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

.form_rc {
	margin-top: 50px;
}
.form_contact {
	margin-top: 30px;
}
.send_btn {
	margin: 0 auto;
	width: 180px;
	height: 35px;
	border-radius: 100vh;
	background: url(../img/send_ar.svg) right 10px center no-repeat;
	background-size: 25px auto;
	background-color: #fff;
	box-shadow: 5px 6px 10px rgba(19,12,103,0.16);
	color: #286CD6;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 35px;
	font-size: 14px;
	transition: all 0.3s;
}
.send_btn:hover {
	background: url(../img/send_ar2.svg) right 10px center no-repeat;
	background-size: 25px auto;
	background-color: #0664F5;
	color: #fff;
}
.prev_btn {
	margin: 0 auto;
	width: 180px;
	height: 35px;
	border-radius: 100vh;
	background: url(../img/prev_ar.svg) left 10px center no-repeat;
	background-size: 25px auto;
	background-color: #fff;
	box-shadow: 5px 6px 10px rgba(19,12,103,0.16);
	color: #286CD6;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 35px;
	font-size: 14px;
	transition: all 0.3s;
}
.prev_btn:hover {
	background: url(../img/prev_ar2.svg) left 10px center no-repeat;
	background-size: 25px auto;
	background-color: #0664F5;
	color: #fff;
}
}


/* contactform7設定
======================================================*/

.wpcf7-not-valid-tip{
   box-sizing: border-box;
   border-bottom: 1px dotted #CB4A2D;
   color: #CB4A2D;
   margin-top: 10px;
   margin-bottom: 10px;
   padding: 6px 6px 6px 40px;
   text-indent: -30px;
   font-size: 16px;
}
.wpcf7-not-valid-tip::before{
   content: "";
   background: url(../img/sankaku.png) no-repeat center/cover;
   display: inline-block;
   margin-right: 10px;
   margin-bottom: 4px;
   vertical-align: middle;
   width: 20px;
   height: 18px;
}

div.wpcf7 .wpcf7-spinner {
    display: none;
}

.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output {
	color: #fff;
	font-weight: 700;
	border: 1px solid #CB4A2D;
	background-color: #CB4A2D;
	border-radius: 2px;
	margin: 40px 0 0 0;
	padding: 0.8em 1em;
	text-align: center;
	font-size: 16px;
	line-height: 1.4;
}
.wpcf7 form.sent .wpcf7-response-output {
	border: 1px solid #BC9245;
	background-color: #BC9245;
}


/* contact
======================================================*/

.page_contact_waku {
	background: url(../img/page_contact_back_bl.jpg.jpg) center center no-repeat;
	background-size: 100% 100%;
}

/* pp_area
======================================================*/

.page_pp_waku {
	background: url(../img/page_contact_back_bl.jpg.jpg) center center no-repeat;
	background-size: 100% 100%;
}
.pp_area {
	width: 100%;
	background-color: #fff;
	border-radius: 26px;
	padding: 50px 50px 50px 70px;
	box-sizing: border-box;
	margin-top: 30px;
}

.pp_content {
	overflow-y: scroll;
	height: 758px;
	box-sizing: border-box;
	padding-right: 20px;
}

.pp_content h2 {
	font-weight: 500;
	font-size: 22px;
	line-height: 1;
}
.pp_content p {
	font-size: 16px;
	line-height: 1.625;
}
.pp_content p + h2 {
	margin-top: 30px;
}
.pp_content h2 + p {
	margin-top: 18px;
}

.pp_content::-webkit-scrollbar {
   width: 2px;
   opacity: 0.5;
}

.pp_content::-webkit-scrollbar-track {
   background-color: #eee;
}
.pp_content::-webkit-scrollbar-thumb {
   background-color: #286CD6;
}

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

.pp_area {
	padding: 40px 20px 40px 40px;
	box-sizing: border-box;
	margin-top: 30px;
}
.pp_content {
	overflow-y: scroll;
	height: 640px;
	box-sizing: border-box;
	padding-right: 30px;
}
.pp_content h2 {
	font-size: 18px;
}
.pp_content p {
	font-size: 16px;
	line-height: 1.6;
}

}

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

.pp_area {
	padding: 30px 20px 30px 30px;
	box-sizing: border-box;
	margin-top: 30px;
}
.pp_content {
	overflow-y: scroll;
	height: 460px;
	box-sizing: border-box;
	padding-right: 30px;
}
.pp_content h2 {
	font-size: 16px;
}
.pp_content p {
	font-size: 14px;
}

}


/* thanks
======================================================*/

.page_thanks_waku {
	background: url(../img/page_contact_back_bl.jpg.jpg) center center no-repeat;
	background-size: 100% 100%;
	padding: 195px 0;
}
.thanks_content {
	text-align: center;
}
.thanks_content h1 {
	font-size: 42px;
	font-weight: 700;
	color: #fff;
}
.thanks_content p {
	font-size: 22px;
	letter-spacing: 0.02em;
	text-indent: 0.02em;
	color: #fff;
	line-height: 1.8;
	margin-top: 34px;
}

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

.page_thanks_waku {
	padding: 130px 0;
}

.thanks_content h1 {
	font-size: 30px;
}
.thanks_content p {
	font-size: 18px;
	line-height: 1.6;
	margin-top: 34px;
}

}

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

.page_thanks_waku {
	padding: 60px 0;
}
.thanks_content h1 {
	font-size: 24px;
}
.thanks_content p {
	font-size: 16px;
	line-height: 1.6;
	margin-top: 34px;
}

}


/* 404
======================================================*/

.page_404_waku {
	background: url(../img/page_contact_back_bl.jpg.jpg) center center no-repeat;
	background-size: 100% 100%;
	padding: 110px 0;
}
.page_404_content {
	text-align: center;
}
.page_404_content h1 {
	font-weight: 700;
	font-size: 138px;
	color: #fff;
}
.page_404_content h1 span {
	font-weight: 500;
	font-size: 42px;
	display: block;
	margin-top: 16px;
}
.page_404_content p {
	margin-top: 58px;
	font-size: 22px;
	letter-spacing: 0.02em;
	text-indent: 0.02em;
	color: #fff;
	line-height: 1.8;
}

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

.page_thanks_waku {
	padding: 80px 0;
}

.page_404_content h1 {
	font-size: 100px;
}
.page_404_content h1 span {
	font-size: 34px;
	margin-top: 10px;
}
.page_404_content p {
	font-size: 16px;
	line-height: 1.6;
	margin-top: 20px;
}

}

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

.page_thanks_waku {
	padding: 40px 0;
}
.page_404_content h1 {
	font-size: 60px;
}
.page_404_content h1 span {
	font-size: 20px;
	margin-top: 6px;
}
}


/* news
======================================================*/

.news_waku {
	padding: 180px 0 108px 0;
	background: url(../img/news_back.jpg) center center no-repeat;
	background-size: 100% 100%;
}
.news_single_waku {
	padding: 180px 0 108px 0;
	background: url(../img/news_back.jpg) center top no-repeat;
	background-size: 100% 1250px;
	background-color: #cde2f6;
}
.news_list_h2 {
	font-size: 28px;
	line-height: 1;
	font-weight: 700;
	color: #fff;
}
.news_list_h2 .sub {
	font-size: 20px;
}
.news_list_content {
	width: 100%;
	max-width: 710px;
	float: left;
}
.news_side {
	width: 100%;
	max-width: 218px;
	float: right;
}

.news_list_content ul {
	list-style: none;
	margin-top: 70px;
}
.news_list_content ul li {
	border-bottom: solid 1px #fff;
}
.news_list_content ul li:not(:first-child) {
	margin-top: 40px;
}
.news_list_content ul li a {
	display: block;
	color: #fff;
}
.news_list_content ul li a p {
	font-size: 18px;
	line-height: 2;
	font-weight: 500;
	color: #fff;
	padding: 10px 0 30px;
}
.news_list_data {
	display: block;
}
.news_list_data .date {
	font-weight: 500;
	font-size: 18px;
	line-height: 1;
	display: inline-block;
}
.news_list_data .ct {
	font-weight: 500;
	font-size: 14px;
	line-height: 25px;
	width: 115px;
	height: 25px;
	display: inline-block;
	text-align: center;
	background-color: #fff;
	color: #0664F5;
	border-radius: 100vh;
	margin-left: 22px;
}
.side_set h3 {
	font-weight: 700;
	font-size: 24px;
	line-height: 1;
	color: #fff;
	border-bottom: solid 1px #fff;
	padding-bottom: 16px;
}
.side_set ul {
	list-style: none;
}
.side_set .ct a {
	font-size: 16px;
	line-height: 1;
	color: #fff;
	display: block;
	padding: 16px 0;
}
.side_set:not(:first-child) {
	margin-top: 90px;
}
.side_set .nen li {
	border-bottom: solid 0.5px #fff;
}
.side_set .nen a {
	font-size: 16px;
	line-height: 1;
	color: #fff;
	display: block;
	padding: 16px 0;
}


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

.news_waku {
	padding: 100px 0 100px 0;
	background: url(../img/news_back.jpg) center center no-repeat;
	background-size: 100% 100%;
}
.news_single_waku {
	padding: 100px 0 100px 0;
	background: url(../img/news_back.jpg) center top no-repeat;
	background-size: 100% 1250px;
	background-color: #cde2f6;
}
}

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

.news_waku {
	background: url(../img/page_contact_back_bl.jpg.jpg) center center no-repeat;
	background-size: 100% 100%;
}
.news_single_waku {
	background: url(../img/news_back.jpg) center top no-repeat;
	background-size: 100% 1250px;
	background-color: #cde2f6;
}

.news_list_h2 {
	font-size: 24px;
}
.news_list_h2 .sub {
	font-size: 18px;
}
.news_list_content {
	width: 100%;
	max-width: 100%;
	float: none;
}
.news_side {
	width: 100%;
	max-width: 218px;
	float: none;
	margin-top: 60px;
}
.side_set:not(:first-child) {
	margin-top: 30px;
}
.side_set h3 {
	font-size: 20px;
	padding-bottom: 16px;
}
.news_list_content ul li:not(:first-child) {
	margin-top: 20px;
}
.news_list_content ul li a p {
	font-size: 16px;
	line-height: 1.6;
	font-weight: 500;
	color: #fff;
	padding: 10px 0 20px;
}

}

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

.news_waku {
	padding: 60px 0 60px 0;
}
.news_single_waku {
	padding: 40px 0 60px 0;
	background: url(../img/news_back.jpg) center top no-repeat;
	background-size: 100% 600px;
	background-color: #cde2f6;
}
.news_list_h2 {
	font-size: 20px;
}
.news_list_h2 .sub {
	font-size: 16px;
}
.news_list_content ul {
	margin-top: 40px;
}

}


/* news_single
======================================================*/

.news_single {
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	color: #222;
}
.news_single_header {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	border-bottom: solid 1px #fff;
	padding-bottom: 28px;
	color: #fff;
}
.news_single_header.works_single_header {
	color: #222;
	border-bottom: solid 1px #707070;
}
.news_single_header p {
	width: 208px;
}
.news_single_header p a {
	font-weight: 500;
	font-size: 18px;
	line-height: 1;
	color: #fff;
	background: url(../img/single_ar.svg) left center no-repeat;
	padding-left: 30px;
}
.news_single_header.works_single_header p a {
	color: #0664F5;
	background: url(../img/single_ar_bl.svg) left center no-repeat;
}
.news_single_header h1 {
	width: calc( 100% - 208px );
	font-weight: 500;
	font-size: 28px;
	line-height: 1.7;
}
.news_single_head_img {
	margin-top: 54px;
}
.news_single_head_img img {
	width: 100%;
	height: auto;
	aspect-ratio: 1100 / 562;
	object-fit: cover;
	object-position: center center;
}
.news_single_post {
	display: -webkit-flex;
	display: flex;
	margin-top: 36px;
}
.news_single_post.works_single_post {
	margin-top: 60px;
}

.news_single_post .left {
	width: 200px;
}
.news_single_post .news_single_post_content {
	width: calc( 100% - 200px );
}
.news_single_post .news_single_date {
	font-size: 16px;
	line-height: 1;
	letter-spacing: 0.05em;
	color: #0664F5;
}
.news_single_post .news_single_ct {
	font-size: 16px;
	line-height: 1;
	font-weight: 500;
	letter-spacing: 0.05em;
	color: #0664F5;
	margin-bottom: 10px;
}

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

.news_single_header {
	padding-bottom: 20px;
}
.news_single_header p {
	width: 180px;
}
.news_single_header p a {
	font-size: 16px;
	padding-left: 20px;
	background-size: 7px auto;
}
.news_single_header h1 {
	width: calc( 100% - 180px );
	font-weight: 500;
	font-size: 26px;
}
.news_single_post {
	display: block;
	margin-top: 30px;
}
.news_single_post.works_single_post {
	margin-top: 45px;
}
.news_single_post .left {
	width: 100%;
}
.news_single_post .news_single_post_content {
	width: 100%;
	margin-top: 20px;
}
.news_single_post .news_single_date {
	font-size: 14px;
	color: #fff;
}
.news_single_post.works_single_post .news_single_date {
	color: #0664F5;
}
}

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

.news_single_header {
	display: block;
	padding-bottom: 10px;
	border-bottom: solid 1px #fff;
}
.news_single_header p {
	width: 100%;
}
.news_single_header p a {
	font-size: 14px;
	background: url(../img/single_ar.svg) left center no-repeat;
	background-size: 6px auto;
	padding-left: 20px;
}
.news_single_header h1 {
	width: 100%;
	font-size: 24px;
	margin-top: 30px;
}
.news_single_head_img {
	margin-top: 20px;
}
}

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

.news_single_header p {
	font-size: 12px;
}
.news_single_header h1 {
	font-size: 20px;
	margin-top: 16px;
}
.news_single_post .news_single_date {
	font-size: 14px;
	color: #222;
}
.news_single_post {
	margin-top: 20px;
}
.news_single_post.works_single_post {
	margin-top: 30px;
}
.news_single_post .news_single_post_content {
	width: 100%;
	margin-top: 20px;
}
}


/* single_post
======================================================*/

.single_post {
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	color: #222;
	font-size: 16px;
}

.single_post h1 {
	font-weight: 500;
	font-size: 28px;
	line-height: 1.8;
	margin-bottom: 10px;
	margin-top: 40px;
}

.single_post h2 {
	font-weight: 500;
	font-size: 22px;
	line-height: 1.8;
	margin-bottom: 10px;
	margin-top: 30px;
}

.single_post h3 {
	font-weight: 500;
	font-size: 20px;
	line-height: 1.8;
	margin-bottom: 10px;
	margin-top: 30px;
}

.single_post h4,
.single_post h5,
.single_post h6 {
	font-weight: 500;
	font-size: 18px;
	line-height: 1.8;
	margin-bottom: 10px;
	margin-top: 30px;
}

.single_post p {
	font-size: 18px;
	line-height: 1.8;
	margin-bottom: 20px;
}

.single_post ul,
.single_post ol {
	padding: 0 0 0 20px;
	margin-bottom: 20px;
}
.single_post ol {
	list-style-type: decimal;
}
.single_post ul li,
.single_post ol li {
	font-size: 18px;
	line-height: 1.8;
	margin-left: 1em;
}
.single_post ul li::marker {
	color: #222;
}
.single_post strong {
	font-weight: 700;
}
.single_post cite,
.single_post em,
.single_post i {
	font-style: italic;
}
.single_post big {
	font-size: 131.25%;
}
.single_post ins {
	background: #ffc;
	text-decoration: none;
}
.single_post blockquote {
	font-style: italic;
	padding: 0 3em;
}
.single_post blockquote cite,
.single_post blockquote em,
.single_post blockquote i {
	font-style: normal;
}
.single_post pre {
	background-color: #FFF8F0;
	color: #222;
	padding: 1.5em;
	margin: 30px 0;
	border-radius: 10px;
}
.single_post abbr,
.single_post acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}
.single_post sup,
.single_post sub {
	height: 0;
	line-height: 1;
	position: relative;
	vertical-align: baseline;
}
.single_post sup {
	bottom: 1ex;
}
.single_post sub {
	top: .5ex;
}
.single_post a {
	opacity: 1;
	transition: opacity 0.2s;
	text-decoration: underline;
}
.single_post a:visited {

}
.single_post a:active,
.single_post a:hover {
	opacity: 0.7;
}

.has-background {
	border-radius: 10px;
	margin: 30px 0 30px 0!important;
}
.has-black-color { color:#000; }
.has-cyan-bluish-gray-color { color:#abb8c3; }
.has-white-color { color:#fff; }
.has-pale-pink-color { color:#f78da7; }
.has-vivid-red-color { color:#cf2e2e; }
.has-luminous-vivid-orange-color { color:#ff6900; }
.has-luminous-vivid-amber-color { color:#fcb900; }
.has-light-green-cyan-color { color:#7bdcb5; }
.has-vivid-green-cyan-color { color:#00d084; }
.has-pale-cyan-blue-color { color:#8ed1fc; }
.has-vivid-cyan-blue-color { color:#0693e3; }
.has-vivid-purple-color { color:#9b51e0; }

.has-black-background-color { background-color:#000; }
.has-cyan-bluish-gray-background-color { background-color:#abb8c3; }
.has-white-background-color { background-color:#fff; }
.has-pale-pink-background-color { background-color:#f78da7; }
.has-vivid-red-background-color { background-color:#cf2e2e; }
.has-luminous-vivid-orange-background-color { background-color:#ff6900; }
.has-luminous-vivid-amber-background-color { background-color:#fcb900; }
.has-light-green-cyan-background-color { background-color:#7bdcb5; }
.has-vivid-green-cyan-background-color { background-color:#00d084; }
.has-pale-cyan-blue-background-color { background-color:#8ed1fc; }
.has-vivid-cyan-blue-background-color { background-color:#0693e3; }
.has-vivid-purple-background-color { background-color:#9b51e0; }

.single_post img {
	max-width: 100%;
	height: auto;
}

.single_post .wp-block-image {
	max-width: 100%;
	margin: 30px auto;
}
.single_post .wp-block-image img {
	border-radius: 0px;
}
.single_post .wp-block-gallery {
	margin: 30px auto;
}

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

.single_post {
	font-size: 16px;
}
.single_post h1 {
	font-size: 24px;
}

.single_post h2 {
	font-size: 20px;
}

.single_post h3 {
	font-size: 18px;
}

.single_post h4,
.single_post h5,
.single_post h6 {
	font-size: 16px;
}

.single_post p {
	font-size: 16px;
}

.single_post ul,
.single_post ol {
	padding: 0 0 0 16px;
}
.single_post ul li,
.single_post ol li {
	font-size: 16px;
	line-height: 1.6;
}

.has-background {
	padding: 20px 20px;
}

}

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


}


/* single_post single_post_works
======================================================*/

.single_post_works .has-pale-cyan-blue-background-color { background-color: rgba(189,223,232,0.2)!important; }

.works_before-after {
	position: relative;
	margin-top: 60px;
}
.works_before {
	width: calc(( 100% - 60px ) / 2 );
	float: left;
}
.works_after {
	width: calc(( 100% - 60px ) / 2 );
	float: right;
}
.works_before img,
.works_after img {
	width: 100%;
	height: auto;
	aspect-ratio: 520 / 469;
	object-fit: cover;
	object-position: center center;
}
.works_before span,
.works_after span {
	display: block;
	font-weight: 500;
	font-size: 16px;
	line-height: 1;
	color: #0664F5;
	margin-top: 27px;
}

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

.works_before-after {
	margin-top: 30px;
}
.works_before {
	width: calc(( 100% - 30px ) / 2 );
	float: left;
}
.works_after {
	width: calc(( 100% - 30px ) / 2 );
	float: right;
}
.works_before span,
.works_after span {
	font-size: 14px;
	margin-top: 20px;
}

}

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

.works_before-after {
	margin-top: 6px;
}
.works_before {
	width: calc(( 100% - 6px ) / 2 );
	float: left;
}
.works_after {
	width: calc(( 100% - 6px ) / 2 );
	float: right;
}
.works_before span,
.works_after span {
	font-size: 12px;
	margin-top: 4px;
}

}

/* news_single_pager
======================================================*/

.news_single_pager {
	width: 100%;
	height: 30px;
	max-width: 424px;
	margin: 100px auto 0 auto;
	background: url(../img/single_line.svg) center center no-repeat;
}
.news_single_pager .prev {
	width: 50%;
	float: left;
}
.news_single_pager .next {
	width: 50%;
	float: right;
}
.news_single_pager p a {
	display: block;
	height: 30px;
	line-height: 30px;
	font-weight: 500;
	font-size: 18px;
	letter-spacing: 0.02em;
	color: #0664F5;
}
.news_single_pager .prev a {
	padding-left: 50px;
	text-align: left;
	background: url(../img/single_ar_prev.svg) left center no-repeat;
}
.news_single_pager .next a {
	padding-right: 50px;
	text-align: right;
	background: url(../img/single_ar_next.svg) right center no-repeat;
}

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

.news_single_pager {
	width: 100%;
	height: 24px;
	max-width: 300px;
	margin: 80px auto 0 auto;
	background: url(../img/single_line.svg) center center no-repeat;
}

.news_single_pager p a {
	display: block;
	height: 20px;
	line-height: 20px;
	font-weight: 500;
	font-size: 16px;
	letter-spacing: 0.02em;
}
.news_single_pager .prev a {
	padding-left: 36px;
	background: url(../img/single_ar_prev.svg) left center no-repeat;
	background-size: 20px auto;
}
.news_single_pager .next a {
	padding-right: 36px;
	background: url(../img/single_ar_next.svg) right center no-repeat;
	background-size: 20px auto;
}

}

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

.news_single_pager {;
	margin: 40px auto 0 auto;
}

}


/* works
======================================================*/

.works_waku {
	padding: 180px 0 108px 0;
	background-color: #fff;
}
.works_set {

}
.works_list_content {
	width: 100%;
	max-width: 830px;
	float: left;
}
.works_side {
	width: 100%;
	max-width: 218px;
	float: right;
}

.works_list_h2 {
	font-weight: 700;
	font-size: 28px;
	line-height: 1;
	color: #222;
	border-bottom: solid 1px #222222;
	padding-bottom: 10px;
}
.works_list_h2 .sub {
	font-size: 20px;
}

.works_list {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	list-style: none;
}
.works_list li {
	width: calc(( 100% - 114px ) / 3 );
	margin-top: 70px;
}
.works_list li:nth-of-type(3n-1) {
	margin-left: 57px;
	margin-right: 57px;
}
.works_list li:nth-of-type(1),
.works_list li:nth-of-type(2),
.works_list li:nth-of-type(3) {
	margin-top: 40px;
}

.works_list li a {
	display: block;
	border-radius: 13px;
	background-color: #fff;
	box-shadow: 0px 0px 10px rgba(0,0,0,0.16);
}

.works_side .side_set h3 {
	font-weight: 700;
	font-size: 24px;
	line-height: 1;
	color: #222;
	border-bottom: solid 1px #222;
	padding-bottom: 16px;
}
.works_side .side_set ul {
	list-style: none;
}
.works_side .nen li,
.works_side .ct li {
	border-bottom: solid 0.5px #222;
}
.works_side .side_set .ct a {
	font-size: 16px;
	line-height: 1;
	color: #222;
	display: block;
	padding: 16px 0;
}
.works_side .side_set:not(:first-child) {
	margin-top: 90px;
}
.works_side .nen a {
	font-size: 16px;
	line-height: 1;
	color: #222;
	display: block;
	padding: 16px 0;
}

.works_list_sn img {
	width: 100%;
	height: auto;
	aspect-ratio: 240 / 150;
	object-fit: cover;
	object-position: center center;
	border-top-left-radius: 13px;
	border-top-right-radius: 13px;
}
.works_list_info {
	padding: 10px 20px 10px 20px;
}
.works_list_info dl {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}
.works_list_info dl:nth-of-type(1) {
	border-bottom: solid 1px #707070;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.works_list_info dl dt {
	width: 78px;
	height: 26px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	border-radius: 100vh;
	background-color: #00ACD8;
	color: #fff;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
}
.works_list_info dl dd {
	font-size: 18px;
	font-weight: 500;
	color: #333;
	padding-left: 20px;
}

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

.works_waku {
	padding: 100px 0 100px 0;
	background-color: #fff;
}

.works_list_content {
	width: 100%;
	max-width: 700px;
	float: left;
}
.works_side {
	width: 100%;
	max-width: 218px;
	float: right;
}

.works_list li {
	width: calc(( 100% - 40px ) / 3 );
	margin-top: 36px;
}
.works_list li:nth-of-type(3n-1) {
	margin-left: 20px;
	margin-right: 20px;
}
.works_list li:nth-of-type(1),
.works_list li:nth-of-type(2),
.works_list li:nth-of-type(3) {
	margin-top: 40px;
}
.works_list_info dl dt {
	width: 60px;
	height: 20px;
	font-size: 14px;
}
.works_list_info dl dd {
	font-size: 16px;
	font-weight: 500;
	color: #333;
	padding-left: 10px;
}
}

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

.works_list_h2 .sub {
	font-size: 18px;
}

.works_list_content {
	width: 100%;
	max-width: 100%;
	float: none;
}
.works_side {
	width: 100%;
	max-width: 500px;
	float: none;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.works_list li {
	width: calc(( 100% - 80px ) / 3 );
	margin-top: 46px;
}
.works_list li:nth-of-type(3n-1) {
	margin-left: 40px;
	margin-right: 40px;
}

.works_side {
	margin-top: 60px;
}
.works_side .side_set {
	width: 218px;
}

.works_side .side_set:not(:first-child) {
	margin-top: 0px;
}
.works_side .side_set h3 {
	font-size: 20px;
	padding-bottom: 16px;
}
.works_list_h2 {
	font-size: 20px;
	padding-bottom: 10px;
}
}

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

.works_list li {
	width: calc(( 100% - 40px ) / 3 );
	margin-top: 36px;
}
.works_list li:nth-of-type(3n-1) {
	margin-left: 20px;
	margin-right: 20px;
}
}

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

.works_list li {
	width: calc(( 100% - 20px ) / 2 );
	margin-top: 26px;
}
.works_list li:nth-of-type(3n-1) {
	margin-left: 0;
	margin-right: 0;
}
.works_list li:nth-of-type(2n-1) {
	margin-right: 20px;
}
.works_list li:nth-of-type(1),
.works_list li:nth-of-type(2) {
	margin-top: 30px;
}
.works_list li:nth-of-type(3) {
	margin-top: 26px;
}
}

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

.works_waku {
	padding: 60px 0 60px 0;
	background-color: #fff;
}

.works_side {
	width: 100%;
	max-width: 218px;
	display: block;
}
.works_side .side_set:not(:first-child) {
	margin-top: 30px;
}
.works_list_h2 .sub {
	font-size: 16px;
}

}

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

.works_list li {
	width: 100%;
	margin-top: 26px;
}
.works_list li:nth-of-type(2n-1) {
	margin-right: 0px;
}
.works_list li:nth-of-type(2),
.works_list li:nth-of-type(3) {
	margin-top: 26px;
}
}


/* 投稿ページャー
======================================================*/

.pager {
	padding: 60px 0 0px 0;
	text-align: center;
}
.pager h2 {
	display: none;
}
.pager .nav-links {
	font-weight: 700;
	font-size: 24px;
	line-height: 1;
}
.pager .nav-links span {
	display: inline-block;
	margin: 0 5px;
	padding: 6px 2px;
	color: #10218b;
}
.pager .nav-links a {
	display: inline-block;
	padding: 10px 10px;
	transition: opacity 0.2s;
	opacity: 1;
	color: #10218b;
}
.pager .nav-links a:hover {
	opacity: 0.5;
}
.pager .nav-links span.page-numbers.current {
	border-bottom: solid 3px #00ACD8;
}
.pager span.pager_pre {
	display: inline-block;
	margin: 0 20px;
}
.pager span.pager_next {
	display: inline-block;
	margin: 0 20px;
}
.pager span.pager_pre a,
.pager span.pager_next a {
	color: #3A3A3A;
	opacity: 1;
	transition: opacity 0.2s;
}

.pager span.pager_pre a:hover,
.pager span.pager_next a:hover {
	color: #3A3A3A;
	opacity: 0.5;
}

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

.pager {
	padding: 45px 0 0px 0;
	text-align: center;
}
.pager .nav-links span.page-numbers.current {
	border-bottom: solid 3px #fff;
}
.pager.pager_works .nav-links span.page-numbers.current {
	border-bottom: solid 3px #00ACD8;
}
.pager .nav-links a { color: #fff; }
.pager .nav-links span { color: #fff; }
.pager.pager_works .nav-links a { color: #10218b; }
.pager.pager_works .nav-links span { color: #10218b; }

.pager span.pager_pre a,
.pager span.pager_next a {
	color: #fff;
}

.pager.pager_works span.pager_pre a,
.pager.pager_works span.pager_next a {
	color: #3A3A3A;
}

.pager span.pager_pre a:hover,
.pager span.pager_next a:hover {
	color: #fff;
}

.pager.pager_works span.pager_pre a:hover,
.pager.pager_works span.pager_next a:hover {
	color: #3A3A3A;
}

}

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

.pager .nav-links {
	font-size: 18px;
}
.pager .nav-links span {
	display: inline-block;
	margin: 0 5px;
	padding: 6px 2px;
	color: #fff;
}
.pager .nav-links a {
	display: inline-block;
	padding: 10px 5px;
	transition: opacity 0.2s;
	opacity: 1;
}

}

/* clearfix：float対策
======================================================*/

.clear:after {
	content: "";
	display: block;
	clear: both;
}
 
.clear:before {
　　　　content: "";
	display: block;
	clear: both;
}
 
.clear {
	display: block;
}