@charset "utf-8";

/* CSS Document */

/*-------------------------
- reset
- base
- fade-in
- font
- color
- header
- footer
-------------------------*/


/*=======================================
　reset
=======================================*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	box-sizing: border-box;
}
body {
	/*font-family: '游明朝', YuMincho, 'Noto Serif JP' , 'Hiragino Mincho ProN W3', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;*/
	font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN","Hiragino Maru Gothic W4 JIS2004", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	overflow-x: hidden;
	font-feature-settings: "palt";
	font-size: 16px;
	color: #333;
	letter-spacing: 0.1em;
	font-weight: 400;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
nav ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
img {
	max-width: 100%;
	height: auto;
}

/* change colours to suit your needs */
ins {
	background-color: #ff9;
	color: #333;
	text-decoration: none;
}

/* change colours to suit your needs */
mark {
	background-color: #ff9;
	color: #333;
	font-style: italic;
	font-weight: bold;
}
del {
	text-decoration: line-through;
}
abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}
input, select {
	vertical-align: middle;
}
ul, li {
	list-style: none;
}
main {
	overflow-x: hidden;
	margin-top: 144px;
}
@media only screen and (max-width: 900px) {
body {
	font-size: 13px;
}
main {
	margin-top: 55px;
}
}



/*=======================================
　base
=======================================*/
.clearfix::after {
	content: "";
	display: block;
	clear: both;
}
a {
	color: #373737;
	text-decoration: none;
	transition: all 0.2s ease-in-out;
}
a:hover {
	opacity: 0.7;
	transition: all 0.2s ease-in-out;
}
.pc {
	display: block !important;
}
.tb {
	display: none !important;
}
.sp {
	display: none !important;
}
.anchor {
	padding-top: 144px;
	margin-top: -144px;
	display: block;
}
.flex_area {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}
.inner {
	width: 90%;
	margin: 0 auto;
	max-width: 1120px;
}

@media only screen and (max-width: 767px) {
.pc {
	display: none !important;
}
.sp {
	display: block !important;
}
.anchor {
	padding-top: 55px;
	margin-top: -55px;
}
.flex_area {
	display: block;
}
}



.pc_b {
	display: block!important;
}
.sp_b {
	display: none!important;
}
@media only screen and (max-width: 900px){
.pc_b {
	display: none!important;
}
.sp_b {
	display: block!important;
}
}



/*=======================================
　fade-in
=======================================*/
/*.fadeIn_left {
	opacity: 0;
	transform: translate(-50px, 0);
}
.fadeIn_left.is-show {
	transform: translate(0, 0);
	opacity: 1;
}
.fadeIn_right {
	opacity: 0;
	transform: translate(50px, 0);
	transition: 0.4s;
}
.fadeIn_right.is-show {
	transform: translate(0, 0);
	opacity: 1;
}
.fadeIn_up {
	opacity: 0;
	transform: translate(0, 50px);
	transition: 0.4s;
}
.fadeIn_up.is-show {
	transform: translate(0, 0);
	opacity: 1;
}
.fadeIn {
	opacity: 0;
	transition: 0.4s
}
.fadeIn.is-show {
	opacity: 1;
}*/



/*=======================================
　font
=======================================*/
.txt_C {
	text-align: center;
}
.txt_R {
	text-align: right;
}
.txt_size16 {
	font-size: 16px;
}



/*=======================================
　color
=======================================*/
:root {
--main_color: #BB2929;
}
.red01 {
	color: var(--main_color);
}



/*=======================================
　dropshadow
=======================================*/
.dropshadow01 {
	-webkit-filter:drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.16));
	-moz-filter:drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.16));
	-ms-filter:drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.16));
	filter:drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.16));
	will-change: filter;
}



/*=======================================
　header
=======================================*/
header {
	/* height: 80px; */
	height: 100px;
	background: #fff;
	position: fixed;
	width: 100%;
	top: 0;
	z-index: 500;
}
header .pc_b .logo {
	width: 12.27%;
	max-width: 196.33px;
	margin-left: 1.43%;
	padding-top: 30px;
}
header .pc_b > .flex_area {
	justify-content: space-between;
	align-items: center;
	/* height: 100px; */
	height: 90px;
}
header .pc_b nav {
	/* width: 50.18%; */
	width: 100%;
	/* margin-right: 103px; */
	background: #F2F2F2;
}
header .pc_b nav .flex_area {
	justify-content: center;
	max-width: 1200px;
	margin: 0 auto;
}
header .pc_b nav ul li {
	width: 25%;
	text-align: center;
	background: url(../images/common/navi_line.jpg) no-repeat right center;
}
header .pc_b nav ul {
	background: url(../images/common/navi_line.jpg) no-repeat left center;
}
header .pc_b nav ul li a {
	font-weight: 500;
	/* font-size: calc(16/1600*100vw); */
	/* white-space: nowrap; */
	padding: 15px 0 15px 0;
	display: block;
}
header .btn_area {
	align-items: center;
	height: 100%;
	width: 36%;
	gap: 1px;
	/* グレーアウト */
	/* pointer-events: none; */
	/* opacity: 0.2; */
}
header .btn_area .btn a {
	color: #fff;
	width: auto;
	height: 100%;
	display: flex;
	/* height: 80px; */
	height: 100%;
	align-items: center;
	justify-content: center;
	text-align: left;
	padding: 0 5%;
	flex-direction: column;
}
header .btn_area .btn {
	width: 50%;
	height: 100%;
}
header .btn_area .btn.simulation a {
	background: #BB2929;
}
header .btn_area .btn.apartment a {
	background: #2A7EBE;
}
header .btn_area .btn.request a {
	background: #FCA12A;
}
header .btn_area .btn.mitsumori a {
	background: #27BDEF;
}
header .btn_area .btn.reform a {
	background: #13449D;
}


header .btn_area .btn a span {
	font-size: calc(14/1600*100vw);
	font-weight: 500;
	/*! display: inherit; */
	margin: 0 auto;
	text-align: center;
	position: relative;
}
header .btn_area .btn.request a span {
	/* padding-left: 2em; */
	/*padding-left: 32px;*/
}
/*header .btn_area .btn.request a span::before {
	content: "";
	position: absolute;
	background: url(../images/common/icon_document.png) no-repeat;
	background-size: cover;
	top: 0.4em;
	left: 0;
	width: 20px;
	height: 14.35px;
}*/

header .btn_area .btn a .pc_img01 {
    width: 70%;
    margin: 7px 0 3px;
    line-height: 1;
}

header .btn_area .btn a .pc_img02 {
    width: 70%;
	 line-height: 1;
}

header .h_tel {
	display: flex;
	align-items: center;
	padding-top: 30px;
}
header .h_tel .icon {
	width: 70px;
	margin-right: 5px;
}
header .h_tel .num {
	font-size: min(3.17vw,50px);
	font-weight: bold;
	margin-right: 5px;
	line-height: 1;
	top: -5px;
	position: relative;
	font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN","Hiragino Maru Gothic W4 JIS2004", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
}
header .h_tel .time {
	font-size: 14px;
	line-height: 1.6;
	position: relative;
	top: -2px;
}

/* メガメニュー */
@media screen and (min-width: 768px) {
	header .pc_b nav ul li.nav-item {
		position: relative;
	}
	header .pc_b nav ul > li.nav-item::before  {
		content:"";
		position: absolute;
		bottom: 0;
		background: #BB2929;
		width: 60px;
		height: 5px;
		left: 50%;
		margin-left: -30px;
		opacity: 0;
		transition: all 0.3s 0s ease;
	}
	header .pc_b nav ul > li.nav-item:hover:before  {
		content:"";
		position: absolute;
		bottom: 0;
		background: #BB2929;
		width: 60px;
		height: 5px;
		opacity: 1;
		transition: all 0.3s 0s ease;
	}
	.nav-list {
	  position: relative;
	}

	.nav-item_sub {
	  margin: 0 auto;
	  opacity: 0;
	  position: fixed;
	  top: 138px;
	  left: 50%;
	  visibility: hidden;
	  max-width: 1100px;
		width: 95%;
		transform: translate(-50%);
		/* transition: all 0.2s ease; */
	}
	.nav-item_sub .inner {
	  background: #FFF;
	  box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.1);
	  padding: 2% 4%;
	  text-align: left;
		width: auto;
		margin: 0;
	}
	.nav-item_sub .inner .w980 {
		max-width: 980px;
		width: 80%;
	}
	.nav-item:hover .nav-item_sub {
	  opacity: 1;
	  visibility: visible;
	}
	.nav-item .nav-item_sub .menu_title {
	margin: 25px 0 32px 0;
	}
	.nav-item .nav-item_sub .menu_title span {
		padding: 0px 20px 2px 0;
		background: url(../images/common/mega_arrow01.svg) no-repeat right center;
		background-size: 7px 13px;
		font-size: 21px;
		font-weight: bold;
	  transition: none;
	}
	.nav-item .nav-item_sub .nav_flex {
		display: flex;
		gap: 25px;
	}
	.nav-item .nav-item_sub .nav_flex .plan {
		width: 66%;
	}
	.nav-item .nav-item_sub .sub {
		margin: 0 0 0px 0;
	}
	.nav-item .nav-item_sub .sub span {
		padding: 0px 16px 2px 0;
		background: url(../images/common/mega_arrow02.svg) no-repeat right center;
		background-size: 7px 13px;
		font-size: 20px;
	}
		.nav-item .nav-item_sub .sub.nolink span {
		padding: 0px 16px 2px 0;
		background: none;
		background-size: 7px 13px;
		font-size: 20px;
	}
	.nav-item .nav-item_sub .sub a {
		font-size: 20px;
	}
	.nav-item_sub .inner ul {
	background: none;
	display: flex;
	margin: 15px 0 20px 0;
	flex-wrap: wrap;
	justify-content: left;
	}
	.nav-item_sub .inner ul li {
	 background: none;
	 width: auto;
	 margin: 0 4% 10px 0;
	}
	.nav-item_sub .inner ul.big li {
		width: 50%;
		margin: 0 0 10px 0;
		text-align: left !important;
	   }
	.nav-item_sub .inner a {
		padding: 0 0 0 0;
		font-size: 16px;
	  transition: none;
	}
	.nav-item_sub .inner .line {
		border-top: 1px solid #999;
		border-bottom: 1px solid #999;
		padding: 17px 0;
		margin: 0 0 20px 0;
	   }
		 .nav-item .nav-item_sub .sub2 {
			position: relative;
			top: -14px;
			display: flex;
	}
	.nav-item .nav-item_sub .sub2 a {

	}
	.nav-item .nav-item_sub .sub2 a span {
	  padding: 0px 16px 0px 22px;
  background: url(../images/common/mega_arrow03.svg) no-repeat 5px top;
    background-size: auto;
  background-size: 11px 11px;
  font-size: 15px;
	}
	.nav-item .nav-item_sub .sub2 a:not(:first-child) {
	  display: inline-block;
	}
	.nav-item .nav-item_sub .sub2 a:not(:first-child) span {
	  background: none;
	  padding: 0 0 0 22px;
	}

	.nav-item_sub .inner .line_top {
		border-top: 1px solid #999;
		padding: 17px 0 0;
	}


  }


@media only screen and (min-width: 1600px){
header .pc_b nav ul li a {
	font-size: 16px;

}
header .pc_b .btn_area .btn a span{
	font-size: 16px;
}
	
header .btn_area .btn a .pc_img01,header .btn_area .btn a .pc_img02 {
    text-align: center;
}	
	
header .btn_area .btn a .pc_img01 img {
    height: 35px;
}	
	
header .btn_area .btn a .pc_img02 img {
    height: 40px;
}
	
	
	
	
	
	
}

@media only screen and (max-width: 1070px){
	header .h_tel .icon {
		width: 50px;
		margin-right: 5px;
	}
	header .h_tel .num {
		font-size: calc(48 / 1600 * 100vw);
		font-weight: bold;
		margin-right: 5px;
		line-height: 1;
		top: -5px;
		position: relative;
	}
	header .h_tel .time {
		font-size: 12px;
		line-height: 1.6;
		position: relative;
		top: -2px;
	}
}

@media only screen and (max-width: 900px){
header {
	height: 55px;
}
header .btn_area {
	height: auto;
	width: 100%;
	margin: 0px 0 0px;
	display: flex;
	flex-direction: column;
}
header .btn_area .btn {
	width: 100%;
	/*! height: 50px; */
	/* height: 80px; */
	height: 55px;
}
header .btn_area .btn:not(:last-child) {
	margin-bottom: 0px;
}


/* header .btn_area .btn.simulation {
    order: 1;
}
header .btn_area .btn.apartment {
    order: 4;
}
header .btn_area .btn.request {
    order: 2;
}
header .btn_area .btn.mitsumori {
    order: 3;
}
header .btn_area .btn.line {
    order: 5;
} */
	
header .btn_area .btn a {
	flex-direction:inherit;
	justify-content: left;
	}

header .btn_area .btn.simulation a {
	background: #BB2929 url(../images/common/sp_nav_arrow2.svg) no-repeat 94% center;
}
header .btn_area .btn.apartment a {
	background: #FCA12A url(../images/common/sp_nav_arrow2.svg) no-repeat 94% center;
}
header .btn_area .btn.request a {
	background: #FCA12A url(../images/common/sp_nav_arrow2.svg) no-repeat 94% center;
}
header .btn_area .btn.mitsumori a {
	background: #27BDEF url(../images/common/sp_nav_arrow2.svg) no-repeat 94% center;
}
header .btn_area .btn.line a {
	background: #06C755 url(../images/common/sp_nav_arrow2.svg) no-repeat 94% center;
}
header .btn_area .btn.reform a {
	background: #13449D url(../images/common/sp_nav_arrow2.svg) no-repeat 94% center;
}	
	
header .btn_area .btn a span {
	font-size: 15px;
	padding-left:0!important;
	text-align: left;
	display: contents;
}
	
	header .btn_area .btn a	.img01 {
		width:58%;
		margin-right: 4%;
	}
	
	header .btn_area .btn a	.img02 {
		width:30%;
		background: #fff;
		height: 40px;
		text-align: center;
		padding: 2px 0 4px;
		border-radius: 3px;
	}
	
	header .btn_area .btn a	.img02.tenken {
		padding: 8px 0 4px;
	}
	
	header .btn_area .btn a	.img02.tenken img {
		height: 20px;
	}
	
	header .btn_area .btn a	.img02 img {
		width:auto;
		height: 34px;
	}
	
header .sp_b .bgWhite {
    background: #fff;
    z-index: 499;
    position: relative;
	height: 55px;
}	
	
header .sp_b .logo {
	margin: 0 auto;
	/* width: fit-content; */
	/* width: 40%; */
	width: 35%;
	position: absolute;
	top: 50%;
	-webkit-transform : translateY(-50%);
	transform : translateY(-50%);
	left: 3%;
	max-width: 175px;
	z-index: 1001;
}
header .sp_b .logo img {
	/* image-rendering: -webkit-optimize-contrast; */
}
	
	header .sp_b .telBtn {
		width: 55px;
		height: 55px;
		position: absolute;
		right: 60px;
	}
	
	header .sp_b .telBtn img {
		width:100%;
	}
	
	header .sp_b .telBtn a:focus-visible {
		border: none;
		outline: none;
	}
	
/* ハンバーガーメニューボタン */
header .openbtn {
	top: 3px;
	right: 2%;
	width: 50px;
	height: 50px;
	position: fixed;
	z-index: 500;
}
header .openbtn span {
	display: inline-block;
	transition: all .4s;
	position: absolute;
	left: 14px;
	height: 1px;
	background-color: #BB2929;
	width: 45%;
}
header .openbtn.active span {
	background-color: #333;
}
header .openbtn span:nth-of-type(1) {
	top: 15px;
}
header .openbtn span:nth-of-type(2) {
	top: 23px;
}
header .openbtn span:nth-of-type(3) {
	top: 31px;
}
header .openbtn.active span:nth-of-type(1) {
	top: 18px;
	left: 18px;
	transform: translateY(6px) rotate(-45deg);
	width: 30%;
}
header .openbtn.active span:nth-of-type(2) {
	opacity: 0;
}
header .openbtn.active span:nth-of-type(3) {
	top: 30px;
	left: 18px;
	transform: translateY(-6px) rotate(45deg);
	width: 30%;
}
/* ハンバーガーメニュー */
header nav {
	position: fixed;
	z-index: 498;
	top: 0;
	right: -120%;
	width: 100%;
	height: 100vh;
	background: #fff;
	transition: all 0.6s;
	display: block;
	padding: 55px 0 80px;
	overflow-y: scroll;
}
header nav.panelactive {
	right: 0;
}
header nav.panelactive .g-nav-list {
	position: fixed;
	z-index: 999;
	width: 100%;
	height: 100vh;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}
header nav ul {
	margin-bottom: 0px;
	padding: 5% 10% 2%;
}
header nav ul ul {
	margin-bottom: 0px;
	padding: 0% 0% 5px;
}
header nav li {
	list-style: none;
	text-align: left;
	/*! border-bottom: 1px solid #AFAFAF; */
}
header nav li:last-child {
	/* border-bottom: 1px solid #AFAFAF; */
	padding-bottom: 10px;
}
header nav li.last {
	padding-bottom: 0px;
}
header nav li a {
	color: #333;
	padding: 8px 0px;
	display: block;
	letter-spacing: 0.1em;
	font-weight: 400;
	font-size: 15px;
}
header nav li.sub {
	position: relative;
	top: -7px;
}
header nav li.sub a span {
	padding: 0px 17px 1px 28px;
		background: url(../images/common/mega_arrow03.svg) no-repeat 6px center;
		background-size: 19px 11px;
	font-size: 14px;
}
header nav li.last a {
	/* font-size: 18px; */
	padding: 4% 0;
}
header nav ul ul li:last-child a {
	font-size: 15px;
}
header .btn_area .btn.request a span::before {
	display:none;
}
/*アコーディオンタイトル*/
.title {
    position: relative;/*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    font-size:18px;
    font-weight: normal;
    padding: 4% 3% 4% 0px;
    transition: all .5s ease;
    border-bottom: 1px solid #AFAFAF;
}
	
	.title.singleLink:before,.title.singleLink:after {
		background: none;
	}	
	
	.title.singleLink a {
		font-size:18px;
		font-weight: normal;
		padding: 0;
	}
	
	
	
.title.close {
    /* color: var(--main_color); */
}
.title02 a {
	cursor: pointer;
	font-size:18px;
	font-weight: normal;
	padding: 4% 3% 4% 0px;
	transition: all .5s ease;
	border-bottom: 1px solid #AFAFAF;
}
header nav ul ul p {
	margin-bottom: 0px;
	padding: 0% 0%;
}
header nav li p a span {
	padding: 0px 16px 2px 0;
		background: url(../images/common/sp_nav_arrow.svg) no-repeat right center;
		background-size: 15px 7px;
}
/*アイコンの＋と×*/
.title::before,
.title::after{
    position: absolute;
    content:'';
    width: 15px;
    height: 2px;
    background-color: #BB2929;

}
.title::before{
    top:48%;
    right: 15px;
    transform: rotate(0deg);

}
.title::after{
    top:48%;
    right: 15px;
    transform: rotate(90deg);

}
/*　closeというクラスがついたら形状変化　*/
.title.close::before{
	/* transform: rotate(45deg); */
}

.title.close::after{
	opacity: 0;
}

/*アコーディオンで現れるエリア*/
.box {
    display: none;/*はじめは非表示*/
	padding: 10px 0 0px 0;
}
.box.last {
    display: none;/*はじめは非表示*/
	border-bottom: 1px solid #AFAFAF;
    padding-bottom: 10px;
}


.h_tel_sp {
	padding: 0 10% 0;
	margin: 17px 0 30px 0;
}
.h_tel_sp a {
	display: flex;
	flex-wrap: wrap;

}
.h_tel_sp .st {
	font-size: 18px;
}
.h_tel_sp .num {
	font-size: 32px;
	font-weight: bold;
}
.h_tel_sp .num img {
	width: 50px;
}

.h_tel_sp .time {
	font-size: 13px;
}



}



/*=======================================
　footer
=======================================*/
footer {
	/* height: 210px; */
	/* margin-top: 170px; */
	padding: 37px 0 45px;
	border-top: 8px solid #EBEBEB;
}
footer .inner {
	max-width: 1400px;
	/*! justify-content: space-between; */
	gap: 5%;
}
footer .inner .logo_area {
	/*! margin-top: 60px; */
	/* width: 19.42%; */
	width: 20.8%;
}
footer .inner .logo_area .logo {
	margin-bottom: 52px;
	max-width: 267;
}
footer .copyright {
	font-size: 12px;
	font-weight: 500;
	margin: 45px 50px 0 0;
	letter-spacing: inherit;
	line-height: inherit;
}
footer .inner nav {
	gap: 15px 0;
	justify-content: space-between;
	gap: 30px;
}
footer .inner nav ul {
	width: 25%;
}
footer .inner nav ul li .title2 {
	border-top: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
	padding: 12px 0 13px;
	margin-bottom: 10px;
	font-weight:bold;
}
footer .inner nav ul li .box p {
	margin-bottom: 10px;
	font-weight: bold;
}
footer .inner nav ul li .box p span {
		padding: 0px 20px 2px 0;
		background: url(../images/common/mega_arrow01.svg) no-repeat right center;
		background-size: 5px 11px;
}

footer .inner nav ul li {
	margin-bottom: 10px;
}
footer .inner nav ul li .box.last {
	margin-bottom: 15px;
}
footer .inner nav ul li .sub {
	padding: 0px 16px 0px 22px;
	background: url(../images/common/mega_arrow03.svg) no-repeat 5px top;
    background-size: auto;
	background-size: 11px 11px;
	font-size: 15px;
}
footer .inner nav ul li ul {
	width: 100%;
}
footer .inner nav ul li a {
	font-weight: 500;
	font-size: calc(15/1600*100vw);
}
footer .inner nav ul li.link_bo {
	border-top: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
	padding: 12px 0 13px;
	font-weight:bold;
	margin-bottom: 0;
	line-height: 1.8;
}
footer .inner nav ul li.link_bo2 {
	border-top: none;
}


footer .inner .sns_area {
	justify-content: center;
	gap: 2%;
	margin: 40px auto 0;
	align-items: center;
}
footer .inner .sns_area .icon.instagram,
footer .inner .sns_area .icon.facebook,
footer .inner .sns_area .icon.threads {
	width: 50px;
}
footer .inner .sns_area .icon.youtube {
	width: 52px;
}
footer .inner .sns_area .icon.x_icon {
	width: 40px;
}
footer .bottom {
	padding: 0 0 0 0;
	max-width: 1400px;
	margin: 30px auto 0;
	display: flex;
	flex-direction: row-reverse;
	justify-content: center;
}
footer .bottom .f_tel a {
	display: flex;
	align-items: center;
}
footer .bottom .f_tel .icon {
	margin-right: 15px;
	padding-top: 10px;
}
footer .bottom .f_tel .text{
	margin-right: 20px;
}
footer .bottom .f_tel .text p{
	font-size: 25px;
	line-height: inherit;
	letter-spacing: inherit;
}
footer .bottom .f_tel .text p span{
	display: block;
	font-size: 13px;
}
footer .bottom .f_tel .num {
	border-left: 2px solid #333;
	padding-left: 20px;
	line-height: 1.5;
	display: flex;
}
footer .bottom .f_tel .num p {
	font-size: 50px;
	line-height: 1.2;
	position: relative;
	top: -8px;
	/* font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN","Hiragino Maru Gothic W4 JIS2004", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif; */
	letter-spacing: inherit;
}
footer .bottom .f_tel .num p span {
	font-size: 13px;
	display: block;
}
footer .nolink{
	pointer-events: none;
	opacity: 0.2;
}
@media only screen and (min-width: 1600px){
footer .inner nav ul li a {
	font-size: 15px;
}
}
@media only screen and (max-width: 1070px){
	footer .bottom {

	}
	footer .bottom .f_tel {
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 0px 0 0px 0;
		width: 64%;
	}
	footer .bottom .f_tel .icon {
		margin-right: 15px;
		padding-top: 10px;
		width: 29px;
	}
	footer .bottom .f_tel .text{
		margin-right: 20px;
	}
	footer .bottom .f_tel .text p{
		font-size: calc(24 / 1200 * 100vw);
	}
	footer .bottom .f_tel .text p span{

	}
	footer .bottom .f_tel .num {
		border-left: none;
		padding-left: 0;
		line-height: 1.5;
		display: flex;
		width: 40%;
		justify-content: center;
		padding-top: 10px;
	}
	footer .bottom .f_tel .num p {
		font-size: calc(38 / 1200 * 100vw);
		line-height: 1.2;
		position: relative;
		top: -8px;
	}
	footer .bottom .f_tel .num p span {
		font-size: 13px;
		display: block;
	}
	footer .copyright {
		font-size: 12px;
		font-weight: 500;
		margin: 20px auto 30px;
		text-align: center;
	}

}
@media only screen and (max-width: 900px){
footer {
	/* height: 210px; */
}
footer .flex_area {display: flex;flex-wrap: wrap;}
footer .inner .logo_area {
	margin: 0 auto;
	width: 50%;
}
footer .inner .logo_area .logo {
	margin-bottom: 52px;
	max-width: 188.61px;
}
footer .inner .copyright {
	font-size: 10px;
	text-align: center;
}
footer .inner nav {
	/* width: fit-content; */
	margin: 0 auto 30px;
	gap: 0;
}
footer .inner nav ul {
	width: 48%;
	margin-bottom: 15px;
}
footer .inner nav ul li {
	margin-bottom: 10px;
}
footer .inner nav ul li a {font-size: 14px;}
footer .inner nav ul li .title {
	margin-bottom: 5px;
	font-size: 14px;
}

footer .inner nav .box {
    display: block;
    padding: 0;
}


footer .inner .sns_area {
	width: auto;
	display: flex;
	justify-content: center;
	margin: 0 auto 30px;
	gap: 30px;
}

}

@media only screen and (max-width: 767px){
	footer .bottom {
		padding: 0 0 0 0;
		max-width: 1400px;
		margin: 30px auto 0;

		display: block;
	}
	footer .bottom .f_tel {
		margin: 0px auto 0;
		width: auto;
	}
	footer .bottom .f_tel a {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		justify-content: center;
	}
	footer .bottom .f_tel .icon {
		margin-right: 11px;
		padding-top: 10px;
		width: 24px;
	}
	footer .bottom .f_tel .text{
		margin-right: 20px;
	}
	footer .bottom .f_tel .text p{
		font-size: 19px;
	}
	footer .bottom .f_tel .text p span{
		display: block;
		font-size: 13px;
	}
	footer .bottom .f_tel .num {
		border-left: none;
		padding-left: 0;
		line-height: 1.5;
		display: flex;
		width: 100%;
		justify-content: center;
		padding-top: 10px;
	}
	footer .bottom .f_tel .num p {
		font-size: 35px;
		line-height: 1.2;
		position: relative;
		top: -8px;
	}
	footer .bottom .f_tel .num p span {
		font-size: 13px;
		display: block;
	}
	footer .copyright {
		font-size: 12px;
		font-weight: 500;
		margin: 20px auto 30px;
		text-align: center;
	}
	footer .inner .sns_area .icon.instagram,
	footer .inner .sns_area .icon.facebook,
	footer .inner .sns_area .icon.threads {
		width: 30px;
	}
	footer .inner .sns_area .icon.youtube {
		width: 32px;
	}
	footer .inner .sns_area .icon.x_icon {
		width: 25px;
	}
}

/* ボタン */
.btn01 {
	height: 84px;
	width: fit-content;
}
.btn01 a {
	background: var(--main_color);
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 100%;
	color: #fff;
	font-size: 18px;
	border-radius: 200px;
	align-items: center;
	width: fit-content;
	margin: auto;
	padding: 0 6em 0 4.5em;
	position: relative;
}
.btn01 a::after {
	content: "";
	position: absolute;
	background: url("../images/common/arrow01.png") no-repeat;
	background-size: cover;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	right: 0.6em;
	width: 62px;
	height: 62px;
}
@media only screen and (max-width: 767px){
.btn01 {
	height: 60px;
	width: 100%;
}
.btn01 a {
	font-size: 14px;
}
.btn01 a::after {
	width: 40px;
	height: 40px;
}
}
.btn01 {
	height: 84px;
	width: fit-content;
}

.btn01 span {
	background: var(--main_color);
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 100%;
	color: #fff;
	font-size: 18px;
	border-radius: 200px;
	align-items: center;
	width: fit-content;
	margin: auto;
	padding: 0 6em 0 4.5em;
	position: relative;
}
.btn01 span::after {
	content: "";
	position: absolute;
	background: url("../images/common/arrow01.png") no-repeat;
	background-size: cover;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	right: 0.6em;
	width: 62px;
	height: 62px;
}
@media only screen and (max-width: 767px){
.btn01 {
	height: 60px;
	width: 100%;
}
.btn01 span {
	font-size: 14px;
}
.btn01 span::after {
	width: 40px;
	height: 40px;
}
}


/*=======================================
　パンくず
=======================================*/
.breadcrumbs {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.breadcrumbs.content {
	padding-top: 23px;
}
.breadcrumbs.content li,
.breadcrumbs.content li a {
	font-size: 16px;
	font-weight: 500;
}
.breadcrumbs.content li a {
	color: #AEAEAE;
}
.breadcrumbs.content li:not(:last-child) a {
	position: relative;
	padding-right: 30px;
}
.breadcrumbs.content li:not(:last-child) a::before {
	content: '';
	position: absolute;
	top: 50%; right: 8px;
	transform: translateY(-50%);
	height: 1px;
	width: 15px;
	background-color: #AEAEAE;
}

@media screen and (max-width: 767px) {
	.breadcrumbs.content {
		padding-top: 15px;
	}
	.breadcrumbs.content li,
	.breadcrumbs.content li a {
		font-size: 11px;
		letter-spacing: 0;
	}
	.breadcrumbs.content li:not(:last-child) a {
		padding-right: 20px;
		white-space: nowrap;
	}
	.breadcrumbs.content li:not(:last-child) a::before {
		width: 10px;
		right: 5px;
	}
}
/*============================
パーツ
============================*/
/* 下線ありの見出し */
.has_border_outline {
	font-size: 45px;
	font-weight: bold;
	letter-spacing: 0.05em;
	color: var(--main_color);
	padding-bottom: 30px;
	position: relative;
	text-align: center;
}
.has_border_outline::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100px;
	height: 2px;
	background-color: var(--main_color);
}
@media screen and (max-width: 1200px) {
	.has_border_outline {
		font-size: calc((45 / 1200) * 100vw);
	}
}


/*=======================================
　fix_btn
=======================================*/
/*.fix_btn {
	position: fixed;
	bottom: 10px;
	z-index: 499;
	width: 96%;
	display: flex;
	justify-content: space-between;
	left: 50%;
	-webkit-transform : translateX(-50%);
	transform : translateX(-50%);
	border-radius: 5px;
	-webkit-filter:drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.16));
	-moz-filter:drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.16));
	-ms-filter:drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.16));
	filter:drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.16));
	will-change: filter;
	background: #FFF;
}*/

.fix_btn {
    position: fixed;
    bottom: 0;
    z-index: 499;
    width: 100%;
    display: flex;
    left: 50%;
    transform: translateX(-50%);
    background: rgb(0 0 0 / 40%);
    padding: 8px 8px;
	border-radius: 0;
}

.fix_btn .btn {
	width: 50%;
	/* height: 40px; */
	/* height: 71.5px; */
	height: 62px;
	position: relative;
}
/*.fix_btn .btn:not(:last-child) {
	border-right: 1px solid linear-gradient(180deg, #fff 0%, #fff 17.3px, #DBDBDB 17.3px, #DBDBDB calc(100% - 17.3px), #fff calc(100% - 17.3px), #fff 100%);
	border-right: 1px solid #DBDBDB;
}
.fix_btn .btn:not(:last-child)::before,
.fix_btn .btn:not(:last-child)::after {
	content: "";
	width: 1px;
	height: 8px;
	display: inline-block;
	background-color: #fff;
	position: absolute;
	right: -1px;
}
.fix_btn .btn:first-child {
	border-right: none;
	background-color: #FCA12A;
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
}
.fix_btn .btn:not(:last-child)::before {
	top: 0;
}
.fix_btn .btn:not(:last-child)::after {
	bottom: 0;
}*/
.fix_btn .btn a {
	color: #fff;
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 100%;
	align-items: center;
	/*opacity: 0.3;
	pointer-events: none;*/
}
.fix_btn .btn.tel a {
	color: #FFF;
}
.fix_btn .btn.request a {
	color: #1FA4D1;
}
.fix_btn .btn.mitsumori a {
	color: #FF3399;
}
.fix_btn .btn.line a {
	color: #333;
}
.fix_btn .btn.free a {
	color: #BB2929;
}
.fix_btn .btn.line a span {
	/* padding-top: 0; */
}
.fix_btn .btn.line a strong {
	font-size: 20px;
	display: block;
}
.fix_btn .btn.line a {
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
}
.fix_btn .btn a span {
	font-size: 10px;
	font-weight: 500;
	position: relative;
	line-height: 1.15;
}
.fix_btn .btn a span {
	padding-top: 25px!important;
	text-align: center;
}
.fix_btn .btn a span::before {
	content: "";
	position: absolute;
	background-size: cover!important;
	top: 0;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	left: 50%;
	/* height: 28.72px; */
}
.fix_btn .btn.tel a span::before {
    background: url(../images/common/icon_tel03.png) no-repeat;
    width: 42px;
    height: 22px;
    top: -3px;
}
.fix_btn .btn.request a span::before {
	background: url(../images/common/icon_document02.png) no-repeat;
	width: 24px;
	height: 18px;
}
.fix_btn .btn.mitsumori a span::before {
	background: url(../images/common/icon_mitsumori02.png) no-repeat;
	width: 17px;
	height: 20px;
}
.fix_btn .btn.free a span::before {
	background: url(../images/common/icon_free.png) no-repeat;
	width: 17px;
	height: 23px;
	top: -2px;
}
.fix_btn .btn.line a span::before {
	background: url(../images/common/icon_line.png) no-repeat;
	width: 36px;
	height: 20px;
}



/*============================
 about_nav_area
============================*/
.about_nav_area {
	margin-bottom: 120px;
	height: 106px;
	background: var(--main_color);
}
.about_nav_area .flex_area {
	align-items: center;
	height: 106px;
	justify-content: space-between;
}
.about_nav_area .flex_area li {

	text-align: center;
	width: calc(100%/4);
	height: 100%;
}
.about_nav_area .flex_area li {
	/* border-right: 1px solid #fff; */
	/* padding: 6.5px 0; */
}
.about_nav_area .flex_area li:first-child {
	/* border-left: 1px solid #fff; */
}
.about_nav_area .flex_area li a {
	font-weight: 500;
	color: #fff;
	position: relative;
	/* display: block; */
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 100%;
}
.about_nav_area .flex_area li:first-child a::before,
.about_nav_area .flex_area li a::after {
    content:  "";
    width:  1px;
    height:  38px;
    display:  inline-block;
    background-color: #fff;
	position: absolute;
	top: 50%;
	-webkit-transform : translateY(-50%);
	transform : translateY(-50%);
}
.about_nav_area .flex_area li:first-child a::before {
	left: 0;
}
.about_nav_area .flex_area li a::after {
	right: 0;
}
@media only screen and (max-width: 767px){
.about_nav_area {
	margin-bottom: 60px;
	height: auto;
}
.about_nav_area .inner {
	width: 100%;
}
.about_nav_area .flex_area {
	height: auto;
}
.about_nav_area .flex_area li {
	width: 100%;
	border-right: none;
	padding: 10px 0;
	min-height: 59px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.about_nav_area .flex_area li:first-child {
	border-left: none;
}
.about_nav_area .flex_area li:not(:last-child) {
	border-bottom: 1px solid #fff;
}
.about_nav_area .flex_area li:first-child a::before,
.about_nav_area .flex_area li a::after {
    display: none;
}
}

/*============================
#mv_wrap
============================*/
section#mv_wrap div.contest {
	position: relative;
	width: 100%;
	height: 240px;
	border-bottom: 1px solid #C1C1C1;
}
section#mv_wrap div.contest div.title_area {
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform : translate(-50%,-50%);
	transform : translate(-50%,-50%);
	width: 100%;
}
section#mv_wrap div.contest div.title_area h2 {
	margin-bottom: 16px;
	font-size: 45px;
	letter-spacing: 0.05em;
}
section#mv_wrap div.contest div.title_area p {
	font-weight: 500;
	color: #BB2929;
	font-size: 20px;
}
@media screen and (max-width: 1200px) {
	section#mv_wrap div.contest div.title_area h2 {
		font-size: calc((45 / 1200) * 100vw);
		margin-bottom: 3px;
	}
	section#mv_wrap div.contest div.title_area p {
		font-size: calc((20 / 1200) * 100vw);
	}
}
@media only screen and (max-width: 767px){
	section#mv_wrap div.contest div.title_area h2 {
		font-size: 25px;
		margin-bottom: 10px;
		line-height: 1.2;
	}
	section#mv_wrap div.contest div.title_area p {
		font-size: 13px;
	}
}


#mv_wrap .contest .title_area {
	margin-bottom: 40px;
}
#mv_wrap .contest .txt01 {
	text-align: center;
	width: 90%;
	margin: 0 auto;
	letter-spacing: 0.1em;
}
@media only screen and (max-width: 767px){
section#mv_wrap div.contest {
	height: 120px;
}
#mv_wrap .contest .title_area {
	margin-bottom: 20px;
}
#mv_wrap .contest .txt01 {
	font-size: calc(18/750*100vw);
}
}


/*=======================================
　sec_case
=======================================*/
.sec_case {
    margin-bottom: 161px;
}
.sec_case .inner {
    background: url("../images/top/case_bg01.jpg") no-repeat center top;
    background-size: cover;
	padding: 86px 5%;
}
.sec_case h3 {
 	font-size: 60px;
	color: #fff;
	letter-spacing: 0.1em;
	margin-bottom: 30px;
}
.sec_case .txt01 {
 	color: #fff;
 	margin-bottom: 40px;
}
@media only screen and (max-width: 767px){
.sec_case {
    margin-bottom: 80.5px;
}
.sec_case .inner {
    padding: 25px 5% 15px;
    /* background: url("../images/top/case_bg01_sp.jpg") no-repeat center top; */
    background-size: cover;
}
.sec_case h3 {
 	font-size: 30px;
 	margin-bottom: 5px;
}
.sec_case .txt01 {
	margin-bottom: 10px;
	/* font-size: 10px; */
}
.sec_case .btn01 {
	width: fit-content;
	margin: auto;
}
}


/* pagetop */
#page_top {
	position: fixed;
	bottom: 30px;
	right: 20px;
	z-index: 1;
}
#page_top a {
	background: url(../images/common/pagetop.png) no-repeat;
	background-size: 60px auto;
	width: 60px;
	height: 60px;
	display: block;
}


@media only screen and (max-width: 767px){
	/* pagetop */
#page_top {
	position: fixed;
	bottom: 80px;
	right: 20px;
}
#page_top a {
	background-size: 50px auto;
	width: 50px;
	height: 50px;
	display: block;
}
}


/* グレーアウト */
.bnr_nolink{
	/* opacity: 0.3 !important; */
	/* pointer-events: none; */
}
.cp_bnr_nolink {
	pointer-events: none;
	display: inline-block;
}


/*=======================================
　h1_txt
=======================================*/
.h1_txt {
	font-size: 12px;
	text-align: left;
	font-weight: 500;
	position: fixed;
	top: 11px;
	left: 1.43%;
	z-index: 500;
}
@media only screen and (max-width: 900px){
	.h1_txt {
	    display: none;
	}
}


/*=======================================
　footer GoogleMap
=======================================*/
footer .gmap_area {
	border-bottom: 8px solid #EBEBEB;
	padding: 0 0 37px;
	margin-bottom: 45px;
}
footer .gmap_area .inner {
    max-width: 1000px;
    width: 90%;
    margin: 0 auto;
}
footer .intro_area {
	display:flex;
	align-items: center;
	gap:30px;
	margin-bottom:20px;
}
footer .intro_area .logo {
	width: 230px;
}
footer .intro_area p {
	font-size:13px;
}
footer .map_area {
	display:flex;
	align-items: center;
	gap: 30px;
	margin-bottom:20px;
	justify-content: space-between;
}
footer .map_area .gmap_box {
	width:50%;
	display: flex;
	flex-direction: column;
	gap: 20px;
	justify-content: flex-start;
	border: solid 2px #e50012;
	padding-bottom:20px;
}
footer .map_area .gmap_box .sttl {
	text-align:center;
	color:#fff;
	background-color: #e50012;
	padding: 5px 10px 6px;
	font-weight: bold;
}
footer .map_area .gmap_box p {
	margin: 0 5%;
	font-size:14px;
}
footer .map_area .gmap_box .gmap {
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	position: relative;
	margin: 0 5%;
}
footer .map_area .gmap_box iframe {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}

@media only screen and (max-width: 767px){
footer .gmap_area {
	padding: 0 0 25px;
	margin-bottom: 25px;
}
footer .gmap_area .inner {
    max-width: 1000px;
    width: 90%;
    margin: 0 auto;
}
footer .intro_area {
	gap: 20px;
	margin-bottom:20px;
	justify-content: space-between;
}
footer .intro_area .logo {
	width: 38%;
}
footer .intro_area p {
	font-size: 12px;
}
footer .map_area {
	display: block;
	margin-bottom: 0;
}
footer .map_area .gmap_box {
	width: auto;
	gap: 15px;
	padding-bottom: 15px;
	margin-bottom: 15px;
}
footer .map_area .gmap_box .sttl {
}
footer .map_area .gmap_box p {
	font-size: 13px;
}
footer .map_area .gmap_box .gmap {
}
footer .map_area .gmap_box iframe {
}

}

/*=======================================
　enefarm_bnr
=======================================*/
.enefarm_bnr {
	margin: 0 auto 50px;
	max-width: 1120px;
}
@media only screen and (max-width: 767px){
.enefarm_bnr {
	margin-bottom: 25px;
}
}



/*=======================================
　sec_request_bnr
=======================================*/
.sec_request_bnr {
	margin-bottom: 50px;
}

.sec_request_bnr .inner {
	max-width: 1000px;
}

.sec_bnr_mb .inner {
	max-width: 1000px;
}

.sec_bnr .inner{
	max-width: 1000px;
}


@media only screen and (max-width: 767px){
.sec_request_bnr {
	margin-bottom: 25px;
}
}



/*=======================================
　line_btn
=======================================*/
.line_btn {
	position: fixed;
	top: 20.56vw;
	right: 0;
	max-width: 100px;
	width: 6.25%;
	z-index: 10;
}
@media only screen and (min-width: 1600px){
	.line_btn {
		top: 329px;
	}
}



/* 2023/10/17追加
--------------------------------------------------------- */
/*=======================================
　honsya
=======================================*/
.honsya{
	padding-bottom:120px;
}
.honsya h3{
	background:#B62525;
	font-weight:700;
	font-size:24px;
	color:#fff;
	padding:0.5em;
	text-align:center;
	margin-bottom:40px;
}
.honsya .flex{
  	display: -webkit-flex;
  	display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;
 	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 	align-items: center; /* 縦方向中央揃え */
}
.honsya .flex table{
	width:64%;
  border-top: 1px solid #C4C4C4;
}
.honsya .flex table tr {
  border-bottom: 1px solid #C4C4C4;
  min-height: 65px;
}
.honsya .flex table th{
  width:30%;
  text-align: left;
  background: #F5F5F5;
	padding: 0.86em 1.2em;
  vertical-align: middle;
}
.honsya .flex table th .hd_txt{
position:relative;
	padding-left:1.3em;
}
.honsya .flex table th .hd_txt::before {
  content: "";
  width: 13px;
  height: 13px;
  display: inline-block;
  background-color: #D0261A;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 0.4em;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.honsya .flex table td {
  padding: 0.86em 2em;
	vertical-align:middle;
}
.honsya .flex table td p {
  line-height: 2.285;
  font-size: 14px;
  letter-spacing: 0.1em;
}
.honsya .flex .map{
	width:33%;
}
.honsya .flex .map iframe{
	width:100%;
	height:220px;
}
@media only screen and (max-width: 767px){
	.honsya{
		padding-bottom:60px;
	}
	.honsya h3 {
  font-size: 15px;
  color: #fff;
  padding: 0.5em;
  text-align: center;
  margin-bottom: 30px;
}
	.honsya .flex table{
		width:100%;
		margin-bottom:30px;
	}
	.honsya .flex table th{
		display:block;
		width:100%;
	}
	.honsya .flex table td{
display:block;
	width:100%;
	}
	.honsya .flex table td {
  padding: 0.86em 1.2em;
  vertical-align: middle;
}
	.honsya .flex .map{
		width:100%;
	}
	.honsya .flex .map iframe{
		width:100%;
		height:300px;
	}
}



/* 2023/11/24追加
--------------------------------------------------------- */
/*=======================================
　sec_area
=======================================*/
.sec_area {
    padding: 75.4px 72px 46px;
    border: 2px solid var(--main_color);
    border-radius: 20px;
    margin-bottom: 107.9px;
    position: relative;
}
.sec_area h3 {
    color: var(--main_color);
    font-size:40px;
    position: absolute;
    top:-30px;
    left: 0;
    right: 0;
    margin: 0 auto;
    background-color: #fff;
    display: inline-block;
    text-align: center;
    max-width: 280px;
}
@media only screen and (max-width: 767px){
.sec_area {
    padding: 48.45px 8.37% 30px;
    margin-bottom: 80px;
}
.sec_area h3 {
    font-size:20px;
    top:-15px;
    max-width: 190px;
}
}


.sec_area_img {
	width: 90%;
	margin: 0 auto;

}
.sec_area .flex_area {
	/* gap: 0 7.95%; */
	width: 100%;
	margin-bottom: 30px;
}
.sec_area > p {
	text-align: center;
	line-height: 1.6;
}
.sec_area > p.txt01 {
	text-align: left;
	font-size: 16px;
	margin-bottom: 20px;
}
.sec_area > p.txt01 {
	text-align: left;
	font-size: 16px;
	margin-bottom: 20px;
}
.sec_area .swiper02 {
	position: relative;
	overflow: hidden;
	padding-bottom: 20px;
}
.sec_area .area_notion {
	text-align: right;
	margin: -50px 0px 40px;
}

.sec_area .arealinks{
  /*display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;*/
	width: 100%;
	margin:0 auto;
	padding-top:1em;
}
.sec_area .arealinks .box{
	/*width: 46%;*/
	text-align: left;
}
.sec_area .arealinks .box dl{
	padding:1.5em 0.2em 1em;
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	align-items: flex-start;
}
.sec_area .arealinks .box dl.borderB{
	border-bottom:solid 1px #B62525;
}
.sec_area .arealinks .box dl dt{
	border-radius: 10em;
	width: 5em;
	background: #B62525;
	color:#fff;
	text-align: center;
	font-size: 16px;
	padding:0.3em 0;
	margin-bottom:0.5em;
}
.sec_area .arealinks .box dl dd{
	width: calc(100% - 6em);
	font-size: 18px;
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
}
.sec_area .arealinks .box dl dd p{
	padding:0 0 0.5em 1.5em;
	font-size: 14px;
}
.sec_area .arealinks .box dl dd p a{
	display: inline-block;
	/*color:#0059B2;
	text-decoration: underline;*/
	/* font-size: 18px; */
}

@media only screen and (max-width: 767px){
	.sec_area_img {
		width: 100%;

	}
.sec_area .area_notion {
	text-align: center;
	margin: 0;
}

.sec_area .arealinks .box{
	width: 100%;
	display: block !important;
	text-align: left;
}

.sec_area .arealinks .box dl{
	padding:1.5em 0;
}
.sec_area .arealinks .box dl dt{
	font-size: 13px;
}
.sec_area .arealinks .box dl dd{
	width: 100%;
	font-size: 14px;
}
.sec_area .arealinks .box dl dd p {
    padding: 0.4em 1em 0.4em 0;
		font-size: 12px;
}
.sec_area .arealinks .box dl dd p a{
	/* font-size: 14px; */
	/*display: block;
	width: 100%;
	padding:0.4em 0;*/
}
.sec_area .sp p.txt01 {
	height: 5em;
	margin-bottom: 0;
	line-height: 1.5;
}
}

.bnrs{
	width: 90%;
margin: 0 auto 150px;
max-width: 1120px;
}
.bnrs p{
padding-bottom:1em;
}

@media only screen and (max-width: 767px){
.bnrs{
	width: 90%;
margin: 0 auto 50px;
max-width: 1120px;
}
}

.sec_mado_bnr {
    margin-bottom: 50px;
}
.sec_mado_bnr .inner {
    max-width: 1000px;
}
.sec_bnr {
    margin-bottom: 50px;
}
.sec_request_bnr {
    margin-bottom: 170px;
}
.sec_bnr.mb50 {
    margin-bottom: 50px;
}
.sec_simu_bnr {
    margin-bottom: 50px;
}
.sec_simu_bnr .inner {
    max-width: 1000px;
}

@media only screen and (max-width: 767px){
.sec_mado_bnr {
    margin-bottom: 25px;
}
.sec_bnr {
    margin-bottom: 25px;
}
.sec_request_bnr {
    margin-bottom: 85px;
}
.sec_bnr.mb50 {
    margin-bottom: 25px;
}
.sec_simu_bnr {
    margin-bottom: 25px;
}
}

/* 2024/4/12追加
--------------------------------------------------------- */
/*============================
.title_set
============================*/

.title_set.set01 .content.inner {
	margin-bottom: 95px;
}
.title_set.set02 .content.inner {
	margin-bottom: 170px;
}

.title_set .content.inner .main_box {
	position: relative;
	padding: 63px 68px 80px;
	color: #fff;
}
.title_set .content.inner .main_box::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}
.title_set.set01 .content.inner .main_box {
	background: url(../images/strengths/achieve/main.jpg) no-repeat center;
	background-size: cover;
}
.title_set.set02 .content.inner .main_box {
	background: url(../images/strengths/achieve/main02.jpg) no-repeat center;
	background-size: cover;
}
.title_set.set01 .content.inner .main_box .logo {
	width: 294px;
	margin-bottom: 68px;
}
.title_set.set02 .content.inner .main_box .logo {
	width: 352px;
	margin-bottom: 60px;
}
.title_set .content.inner .main_box .wide {
	font-size: 45px;
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1.45555;
	/* drop-shadow */
filter: drop-shadow(0px 3px 20px rgba(0,0,0,1));
}
.title_set.set01 .content.inner .main_box .wide {
	margin-bottom: 44px;
}
.title_set.set02 .content.inner .main_box .wide {
	margin-bottom: 67px;
}
.txt_img_area {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
.txt_img_area .txt {
	font-size: 18px;
	letter-spacing: 0.1em;
	line-height: 1.77777;
		/* drop-shadow */
filter: drop-shadow(0px 3px 20px rgba(0,0,0,1));
}
.txt_img_area .btn01 a {
	padding: 0 5em 0 3.5em;
	font-size: 17px;
}

@media screen and (max-width: 1300px) {
	.txt_img_area .btn01 a {
		font-size: calc((17 / 1300) * 100vw);
	}
	.txt_img_area .btn01 a::after {
		width: 4.6vw;
		height: 4.6vw;
	}
	.title_set.set01 .content.inner {
		padding-top: 6.923vw;
		margin-bottom: 7.3vw;
	}
	.title_set.set02 .content.inner {
		margin-bottom: 13vw;
	}
	.title_set .content.inner .main_box {
		padding: 4.8vw 5.23vw 6.15vw;
	}
	.title_set.set01 .content.inner .main_box .logo {
		width: 22.6vw;
		margin-bottom: 5.23vw;
	}
	.title_set.set02 .content.inner .main_box .logo {
		width: 27vw;
		margin-bottom: 4.6vw;
	}
	.title_set .content.inner .main_box .wide {
		font-size: calc((45 / 1300) * 100vw);
	}
	.title_set.set01 .content.inner .main_box .wide {
		margin-bottom: 3.38vw;
	}
	.title_set.set02 .content.inner .main_box .wide {
		margin-bottom: 5.15vw;
	}
	.title_set .content.inner .main_box .txt {
		font-size: calc((18 /1300 ) * 100vw);
	}
}

@media screen and (max-width: 767px) {
	.title_set.set01 .content.inner {
		padding-top: 40px;
		margin-bottom: 50px;
	}
	.title_set.set02 .content.inner {
		margin-bottom: 80px;
	}
	.title_set.set01 .content.inner .main_box {
		background: url(../images/strengths/achieve/main_sp.jpg) no-repeat center;
		background-size: cover;
	}
	.title_set.set02 .content.inner .main_box {
		background: url(../images/strengths/achieve/main02_sp.jpg) no-repeat center;
		background-size: cover;
	}
	.title_set .content.inner .main_box {
		padding: 20px 18px 160px;
	}
	.title_set.set01 .content.inner .main_box .logo {
		width: 147px;
		margin-bottom: 20px;
	}
	.title_set.set02 .content.inner .main_box .logo {
		width: 176px;
		margin-bottom: 20px;
	}
	.title_set .content.inner .main_box .wide {
		font-size: 22px;
	}
	.title_set.set01 .content.inner .main_box .wide {
		margin-bottom: 20px;
	}
	.title_set.set02 .content.inner .main_box .wide {
		margin-bottom: 30px;
	}
	.title_set .content.inner .main_box .txt {
		font-size: 14px;
		filter: drop-shadow(0px 3px 5px rgba(0,0,0,1));
	}
.txt_img_area {
		flex-direction: column;
		gap: 40px 0;
	}
	.txt_img_area .btn01 a {
    padding-left: 0.5em;
    padding-right: 3.5em;
font-size: 14px;
width: 100%;
max-width: 400px;
	}
	.txt_img_area .btn01 a::after {
		width: 40px;
		height: 40px;
	}
}

/*============================
graph_area
============================*/

.graph_area .content.inner {
	display: flex;
	gap: 0 80px;
	margin-bottom: 150px;
	align-items: center;
	justify-content: space-between;
}
.graph_area .content.inner .left,
.graph_area .content.inner .right {
	width: 100%;
	max-width: 519px;
}
.graph_area .content.inner .left {
	/* padding: 0 0 0 50px; */
	max-width: 465px;
}

.graph_area .content.inner .right .title {
	font-size: 24px;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1.5;
	margin-bottom: 18px;
}
.graph_area .content.inner .right .img {
	margin-bottom: 6.3px;
}
.graph_area .content.inner .right .img figcaption {
	text-align: right;
}

@media screen and (max-width: 1300px) {
	.graph_area .content.inner {
		gap: 0 6.15vw;
		margin-bottom: 11.5vw;
	}
	.graph_area .content.inner .left {
		padding: 2.3vw 0 0 3.84vw;
	}
	.graph_area .content.inner .right .title {
		font-size: calc((24 / 1300) * 100vw);
	}
}

@media screen and (max-width: 767px) {
	.graph_area .content.inner {
		flex-direction: column;
		gap: 30px 0;
		margin-bottom: 50px;
		align-items: center;
	}
	.graph_area .content.inner .left {
		padding: 15px 0 0 25px;
		max-width: 100%;
	}
	.graph_area .content.inner .right .title {
		font-size: 18px;
		margin-bottom: 10px;
	}
	.graph_area .content.inner .title:before,
	.graph_area .content.inner .title:after {
		display: none;
	}
}



/*=======================================
　graph_area
=======================================*/
.graph_area .content.inner .right .title {
	border-bottom: none;
padding: 0;
}


.graph_area table {
width: 100%;
}
.graph_area table caption {
caption-side: bottom;
text-align: right;
font-weight: 400;
letter-spacing: 0.1em;
margin-top: 6.3px;
}
.graph_area table,
.graph_area table th {
border: 1px solid #707070;
}
.graph_area table td {
border-right: 1px solid #707070;
padding: 0 4%;
}
.graph_area table td,
.graph_area table th {
letter-spacing: 0.05em;
vertical-align: middle;
}
.graph_area table th {
background: #F5F5F5;
font-weight: 700;
font-size: 15px;
}
.graph_area table tr:first-child th:nth-child(2) {
width: 65.51%;
padding: 8.5px 0;
}
.graph_area table tr:first-child th:nth-child(3) {
width: clac(100% - 65.51% - 15.6%);
}
.graph_area table tr:not(:first-child) th {
width: 15.6%;
}
.graph_area table td {
font-weight: 400;
font-size: 15px;
border-bottom: 1px dashed #E5E5E5;
}
.graph_area table .border_btm td {
border-bottom: 1px solid #707070;
}
.graph_area table td:last-child {
font-size: 16px;
line-height: 2;
text-align: center;
}
.graph_area table .th_ver span {
-webkit-text-orientation: upright;
writing-mode: vertical-rl;
font-feature-settings: 'pkna';
}
.graph_area table .th_mid {
font-weight: 500;
font-size: 15px;
text-align: center;
}
.graph_area table .th_sma {
font-size: 12px;
line-height: 1.5;
/* text-align: left; */
}
@media only screen and (max-width: 767px){
.graph_area table caption {
	margin-top: 5px;
	font-size: 11px;
}
.graph_area table td {
	padding: 3px 3%;
}
.graph_area table th {
	font-size: 13px;
}
.graph_area table tr:first-child th:nth-child(2) {
	padding: 5px 0;
}
.graph_area table td {
	font-size: 12px;
}
.graph_area table td:last-child {
	font-size: 13px;
}
.graph_area table .th_mid {
	font-size: 13px;
}
.graph_area table .th_sma {
	font-size: 11px;
}
.graph_area table .th_ver span {
	white-space: pre;
	display: inline-block;
}
}



.graph_area .big_txt_area .hd_txt {
font-weight: 700;
font-size: 38px;
letter-spacing: 0.2em;
line-height: 1;
text-align: center;
border-top: 1px solid #333;
border-bottom: 1px solid #333;
padding: 29.2px 0;
margin-bottom: 22.8px;
}
.graph_area .big_txt_area .data {
font-weight: 700;
font-size: calc(52/1600*100vw);
text-align: center;
white-space: nowrap;
}
.graph_area .big_txt_area .data span {
font-size: calc(112/1600*100vw);
font-family: 'Noto Sans', sans-serif;
}
.graph_area .big_txt_area .caption {
font-weight: 400;
font-size: 16px;
letter-spacing: 0.1em;
text-align: right;
}
@media only screen and (min-width: 1120px){
.graph_area .big_txt_area .data {
	font-size: 52px;
}
.graph_area .big_txt_area .data span {
	font-size: 112px;
}
}
@media only screen and (max-width: 767px){
.graph_area .content.inner .left {
	padding: 0;
}
.graph_area .big_txt_area .hd_txt {
	font-size: 20px;
	padding: 15px 0;
	margin-bottom: 10px;
}
.graph_area .big_txt_area .data {
	font-size: calc(52/767*100vw);
}
.graph_area .big_txt_area .data span {
	font-size: calc(112/767*100vw);
}
.graph_area .big_txt_area .caption {
	font-size: 11px;
}
}



/*============================
#point_wrap
============================*/
#point_wrap .content.inner {
	padding-top: 80px;
	margin-bottom: 165px;
}
#point_wrap .content.inner .title_area h3 {
	text-align: center;
	font-size: 45px;
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1.35;
	margin-bottom: 140px;
}
#point_wrap .content.inner .title_area .mid {
	letter-spacing: 0.01em;
	font-size: 30px;
}
#point_wrap .content.inner .title_area .wide {
	font-size: 60px;
}
#point_wrap .content.inner .title_area  .red {
	color: var(--main_color);
}
#point_wrap .content.inner .point_box {
	position: relative;
	margin-bottom: 135px;
}
#point_wrap .content.inner .point_box .img_box {
	content: '';
	position: absolute;
	top: 0; right: 0;
	max-width: 440px;
}
#point_wrap .content.inner .point_box .img_box .img {
	/* filter: drop-shadow(5px 10px 10px rgba(0, 0, 0, 0.3)); */
}
#point_wrap .content.inner .point_box._box3 .img_box {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	max-width: 443.49px;
}
#point_wrap .content.inner .point_box._box2 .img_box {
	right: auto;
	left: 0;
}
#point_wrap .content.inner .point_box .img_box .text_box {
	content: '';
	position: absolute;
	top: 20px;
	right: 15px;
	z-index: 5;
}
#point_wrap .content.inner .point_box._box2 .img_box .text_box {
	right: auto;
	left: 15px;
	text-shadow: 3px 3px 4px rgba(0, 0, 0, 0.4);
}
#point_wrap .content.inner .point_box._box3 .img_box .text_box {
	top: -20px;
	right: -35px;
}
#point_wrap .content.inner .point_box .img_box .text_box p {
	text-align: center;
	color: #fff;
	font-size: 19px;
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1.2;
}
#point_wrap .content.inner .point_box._box3 .img_box .text_box p {
	color: #000;
}
#point_wrap .content.inner .point_box .img_box .text_box p span {
	font-size: 61px;
}
#point_wrap .content.inner .point_box .text_group {
	position: relative;
	padding: 0 0 0 84px;
}
#point_wrap .content.inner .point_box._box2 .text_group {
	position: relative;
	padding: 0 48px 0 0;
	margin-left: auto;
	display: flex;
	justify-content: flex-end;
}
#point_wrap .content.inner .point_box .text_group .bg_gray {
	content: '';
	position: absolute;
	top: 57px; bottom: 42px;
	left: 0;
	width: 980px;
	z-index: -1;
}
#point_wrap .content.inner .point_box._box3 .text_group .bg_gray {
	top: 29px; bottom: 42px;
}
#point_wrap .content.inner .point_box .text_group .bg_gray img {
	height: 100%;
}
#point_wrap .content.inner .point_box .text_group .str_box .icon_pt {
	width: 88px;
	margin-bottom: 32px;
	padding-top: 29px;
}
#point_wrap .content.inner .point_box._box3 .text_group .str_box .icon_pt {
	padding-top: 0px;
}
#point_wrap .content.inner .point_box .text_group .str_box h4 {
	font-size: 35px;
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1.685;
	margin-bottom: 42px;
}
#point_wrap .content.inner .point_box .text_group .str_box h4 span {
	color: var(--main_color);
}
#point_wrap .content.inner .point_box .text_group .str_box ul {
	display: flex;
	flex-direction: column;
	margin-bottom: 65px;
}
#point_wrap .content.inner .point_box .text_group .str_box ul li {
	line-height: 1.7778;
	padding-left: 18px;
	position: relative;
	font-weight: 500;
}
#point_wrap .content.inner .point_box .text_group .str_box ul li::before {
	content: '';
	position: absolute;
	top: 9px;
	left: 0;
	width: 8px;
	height: 8px;
	background-color: var(--main_color);
	border-radius: 50%;
}
#point_wrap .content.inner .point_box .text_group .str_box ul li::before {
	content: '';
	position: absolute;
	top: 9px;
	left: 0;
	width: 8px;
	height: 8px;
	background-color: var(--main_color);
	border-radius: 50%;
}
#point_wrap .content.inner .point_box .text_group .str_box .btn01.point01 {
	position: relative;
	left: -34%;
	width: auto;
}
#point_wrap .content.inner .point_box .text_group .str_box .btn01.point02 {
	position: relative;
	left: -21%;
	width: auto;
}
#point_wrap .content.inner .point_box .text_group .str_box .btn01.point03 {
	position: relative;
	left: -34%;
	width: auto;
}

@media screen and (max-width: 1200px) {
	#point_wrap .content.inner {
		padding-top: 6.66vw;
	}
	#point_wrap .content.inner .title_area  .mid {
		font-size: calc((30 / 1200) * 100vw);
	}
	#point_wrap .content.inner .title_area .wide {
		font-size: calc((60 / 1200) * 100vw);
	}
	#point_wrap .content.inner .title_area h3 {
		font-size: calc((45 / 1200) * 100vw);
		margin-bottom: 11.6vw;
	}
	#point_wrap .content.inner {
		margin-bottom: 13vw;
	}
	#point_wrap .content.inner .point_box {
		margin-bottom: 10vw;
	}
	#point_wrap .content.inner .point_box .text_group .str_box h4 {
		font-size: calc((35 / 1200) * 100vw);
		margin-bottom: 20px;
	}
	#point_wrap .content.inner .point_box .text_group .str_box .icon_pt {
		margin-bottom: 12px;
	}
	#point_wrap .content.inner .point_box .img_box {
		width: 34vw;
	}
	#point_wrap .content.inner .point_box .text_group {
		padding-left: 60px;
	}
	#point_wrap .content.inner .point_box .text_group .str_box ul {
		margin-bottom: 40px;
	}
	#point_wrap .content.inner .point_box .text_group .str_box ul li {
		font-size: calc((18 / 1200) * 100vw);
	}
	#point_wrap .content.inner .point_box .img_box .text_box p {
		font-size: calc((19 / 1200) * 100vw);
	}
	#point_wrap .content.inner .point_box .img_box .text_box p span {
		font-size: calc((60 / 1200) * 100vw);
	}
	#point_wrap .content.inner .point_box._box3 .img_box {
		/* width: 28vw; */
	}
	#point_wrap .content.inner .point_box .text_group .bg_gray {
		width: 81.05vw;
	}
	#point_wrap .content.inner .point_box._box2 .text_group {
		padding: 0;
	}
}

@media screen and (max-width: 767px) {
	#point_wrap .content.inner {
		padding-top: 50px;
	}
	#point_wrap .content.inner .title_area h3 {
		font-size: 20px;
		margin-bottom: 30px;
	}
	#point_wrap .content.inner .title_area .mid {
		font-size: 15px;
	}
	#point_wrap .content.inner .title_area .wide {
		font-size: 30px;
	}
	#point_wrap .content.inner .point_box {
		margin-bottom: 65px;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	#point_wrap .content.inner .point_box .img_box {
		position: relative;
		width: 100%;
	}
	#point_wrap .content.inner .point_box .text_group {
		padding: 0 0 0 5px;
	}
	#point_wrap .content.inner .point_box .text_group .str_box .icon_pt {
		width: 66px;
		padding-top: 20px;
	}
	#point_wrap .content.inner .point_box .text_group .str_box h4 {
		font-size: 18px;
	}
	#point_wrap .content.inner .point_box .text_group .str_box ul li {
		font-size: 15px;
		letter-spacing: 0.05em;
		padding-left: 10px;
	}
	#point_wrap .content.inner .point_box .text_group .str_box ul li::before {
		width: 6px;
		height: 6px;
	}
	#point_wrap .content.inner .point_box .img_box .text_box p {
		font-size: 13px;
	}
	#point_wrap .content.inner .point_box .img_box .text_box p span {
		font-size: 32px;
	}
	#point_wrap .content.inner .point_box .text_group .bg_gray {
		top: 40px;
		width: 100%;
	}
	#point_wrap .content.inner .point_box .text_group .str_box {
		width:80%;
		margin: auto;
		padding: 0 8px;
	}
	#point_wrap .content.inner .point_box._box3 .img_box {
		position: relative;
	}
	#point_wrap .content.inner .point_box._box3 .img_box {
		/* width: 43vw; */
		right: auto;
	}
	#point_wrap .content.inner .point_box._box3 .text_group .str_box .icon_pt {
		padding-top: 20px;
	}
	#point_wrap .content.inner .point_box._box3 .text_group .bg_gray {
		top: 40px;
		bottom: 30px;
	}
	#point_wrap .content.inner .point_box .text_group .str_box .btn01.point01 {
		position: relative;
		left: 0;
	}
	#point_wrap .content.inner .point_box .text_group .str_box .btn01.point02 {
		position: relative;
		left: 0;
	}
	#point_wrap .content.inner .point_box .text_group .str_box .btn01.point03 {
		position: relative;
		left: 0;
	}


}
@media screen and (max-width: 500px) {
	#point_wrap .content.inner .point_box .text_group .str_box {
		width: 100%;
	}
	#point_wrap .content.inner .point_box._box3 .img_box {
		/* width: 60%; */
	}
}



.osusumecolumn{
	padding-bottom:120px;
}

.osusumecolumn .box{
	border: solid 1px #B62525;
	padding:140px 80px 40px;
	position: relative;
}
.osusumecolumn .box h2{
	font-size: 30px;
	font-weight: 700;
	color:#fff;
	letter-spacing: 0.1em;
	background: #B62525;
	padding:0.6em 4em 0.6em 2.5em;
	position: absolute;
	left:0;
	top:0;
	display: inline-block;
	clip-path: polygon(0 0, 100% 0, 90% 100%, 0% 100%);
}
.osusumecolumn .box ul{
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;
}
.osusumecolumn .box ul li{
	width: 47%;
	position: relative;
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;
	margin-bottom:40px;
}
.osusumecolumn .box ul li .num{
	position: absolute;
	left:-1em;
	top:-1em;
	width: 2em;
	height: 2em;
	border-radius: 3em;
	background: #CEA65C;
	color:#fff;
	text-align: center;
	line-height: 1.8em;
	font-size:20px;
	color:#fff;
	z-index: 2;
}
.osusumecolumn .box ul li:nth-child(2) .num{
	background: #999999;
}
.osusumecolumn .box ul li:nth-child(3) .num{
	background: #B98353;
}
.osusumecolumn .box ul li .pic{
	width: 113px;
}
.osusumecolumn .box ul li .pic img{
	width: 100%;
	height: 73px;
	object-fit: cover;
}
.osusumecolumn .box ul li p{
	width: calc(100% - 130px);
	font-weight: 700;
	font-size: 15px;
}
@media only screen and (max-width: 767px){
.osusumecolumn{
	padding-bottom:50px;
}
.osusumecolumn .box{
	display: block !important;
	padding:75px 25px 5px;
	position: relative;
}

.osusumecolumn .box h2{
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.1em;
	padding:0.6em 3em 0.6em 25px;
	position: absolute;
	left:0;
	top:0;
	display: inline-block;
	clip-path: polygon(0 0, 100% 0, 90% 100%, 0% 100%);
}

.osusumecolumn .box ul li{
	width: 100%;
	position: relative;
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;
	margin-bottom:20px;
	padding-bottom:20px;
	border-bottom: solid 1px #B62525;
}
.osusumecolumn .box ul li:last-of-type{
	border: none;
	margin-bottom:0;
}
.osusumecolumn .box ul li .num{
	position: absolute;
	left:-0.5em;
	top:-0.5em;
	width: 2em;
	height: 2em;
	border-radius: 3em;
	text-align: center;
	line-height: 1.8em;
	font-size:15px;
	z-index: 2;
}

.osusumecolumn .box ul li .pic{
	width: 110px;
}
.osusumecolumn .box ul li .pic img{
	width: 100%;
	height: 85px;
	object-fit: cover;
}
.osusumecolumn .box ul li p{
	width: calc(100% - 125px);
	font-weight: 700;
	font-size: 13px;
}
}


.opt-ttl{
	text-align: center;
	color:#fff;
	padding:0.6em;
	font-size: 1.4em;
	font-weight: bold;
	background: #BB2929;
}



/*============================
#YouTubeの動画埋め込み
============================*/

.sec_movie {
    margin-top: 156px;
    margin-bottom: 156px;
}

.sec_movie.mtb120_50 {
    margin-top: 120px;
    margin-bottom: 50px;
}

.sec_movie.mt120 {
    margin-top: 120px;
    margin-bottom: 0;
}

.movie_area {
    width: 850px;
    margin: 0 auto;
}

.sec_movie .col2 {
    display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.sec_movie .col2 .movie_area {
    width: 48%;
    margin: 0 auto;
}

.movie_area div {
    position: relative;
    padding-bottom: 56.25%;
}

.movie_area div iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

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

	.movie_area,.sec_movie .col2 .movie_area {
		width: 100%;
	}

	.sec_movie {
		margin-top: 78px;
		margin-bottom: 78px;
	}
	
	.sec_movie.mtb120_50 {
        margin-top: 60px;
        margin-bottom: 0px;
    }	
	
	.sec_movie .col2 .movie_area {
		margin-bottom: 40px;
	}
	
	.sec_movie .col2 .movie_area:last-child {
		margin-bottom: 0;
	}

	.sec_movie.mt120 {
		margin-top: 70px;
	}	
	

}


