@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
.mainVisual {
	padding: 0 20px;
	position: relative;
	z-index: 1;
}
.mainVisual::before {
	width: 100%;
	position: absolute;
	left: 0;
	top: 182px;
	bottom: 0;
	background-color: #FAECEC;
	content: "";
	z-index: -1;
}
.mainVisual .photo {
	margin: 0 auto 26px;
	width: 1160px;
	position: relative;
	z-index: 2;
}
.mainVisual .title {
	margin-bottom: 1px;
	text-align: center;
	font-size: 1.8rem;
	font-weight: 500;
}
.mainVisual .title .txt {
	padding-bottom: 2px;
	display: inline-block;
	border-bottom: 2px solid #000;
}
.mainVisual .title .red {
	color: #B93841;
}
.mainVisual .title .big {
	font-size: 2.6rem;
	font-weight: 700;
}
.mainVisual .comBtnBox {
	padding-bottom: 59px;
	position: relative;
	z-index: 2;
}
#main .sec01 {
	padding: 56px 0 71px;
}
#main .sec01 .content {
	position: relative;
}
#main .sec01 .btn {
	width: 120px;
	position: absolute;
	right: 0;
	top: 12px;
}
#main .sec01 .btn a {
	padding: 7px 17px 8px;
	display: block;
	font-size: 1.3rem;
	font-weight: 700;
	background: #E8E8E8 url("../img/common/icon01.png") no-repeat right 15px center / 8px;
	border-radius: 40px;
}
#main .sec01 .btn a:hover {
	opacity: 0.7;
}
#main .sec02 {
	padding: 50px 0 70px;
	background-color: #FAECEC;
}
#main .sec02 h2 {
	margin-bottom: 33px;
	text-align: center;
}
#main .sec02 .bgBox {
	padding: 51px 0 60px;
	position: relative;
	z-index: 1;
}
#main .sec02 .bgBox .content {
	width: 1160px;
	position: relative;
}
#main .sec02 .bgBox::before {
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	width: calc(100% - 100px);
	background-color: #fff;
	border-radius: 30px 0 0 30px;
	content: "";
	z-index: -1;
}
#main .sec02 .bgBox h3 {
	margin-bottom: 60px;
	text-align: center;
	font-size: 2.8rem;
	font-weight: 700;
}
#main .sec02 .bgBox h3 span {
	background: linear-gradient(transparent 75%, #FFF686 0%);
}
#main .sec02 .textList {
	margin: -15px -10px 0 0;
	width: 910px;
}
#main .sec02 .textList li {
	margin: 15px 10px 0 0;
	display: inline-block;
}
#main .sec02 .textList li .txt {
	padding: 13px 18px 10px;
	display: inline-block;
	background-color: #F5F5F5;
	border-radius: 10px;
	font-size: 1.8rem;
}
#main .sec02 .textList li .blue {
	color: #2C569B;
	font-weight: 700;
}
#main .sec02 .bgBox .photo {
	margin-right: -675px;
	width: 330px;
	position: absolute;
	right: 50%;
	top: 15px;
}
#main .sec03 {
	padding: 80px 0 90px;
}
#main .sec03 h2 {
	margin-bottom: 17px;
	color: #B93841;
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 1.44;
	text-align: center;
}
#main .sec03 h2 span {
	display: inline-block;
	position: relative;
}
#main .sec03 h2 span::before {
	width: 59px;
	height: 54px;
	position: absolute;
	left: -42px;
	top: -23px;
	background: url("../img/index/img01.png") no-repeat left top / 100%;
	content: "";
}
#main .sec03 .content {
	width: 600px;
}
#main .sec03 .photo {
	margin-bottom: 17px;
}
#main .sec03 .textInner {
	margin-bottom: 24px;
}
#main .sec03 .textInner p {
	margin-bottom: 28px;
	line-height: 1.87;
}
#main  .sec03 .textInner .hide {
	display: none;
}
#main .sec03 .textInner p:last-child {
	margin-bottom: 0;
}
#main .sec04 {
	padding: 59px 0 112px;
}
#main .sec04 .content {
	width: 1160px;
}
#main .sec04 .bgBox {
	margin-bottom: 70px;
	padding-bottom: 63px;
	position: relative;
	z-index: 1;
}
#main .sec04 .bgBox:last-child {
	margin-bottom: 0;
}
#main .sec04 .bgBox::before {
	width: calc(50% + 500px);
	position: absolute;
	right: 0;
	top: 41px;
	bottom: 0;
	background-color: #F5F5F5;
	border-radius: 30px 0 0 30px;
	content: "";
	z-index: -1;
}
#main .sec04 .bgBox p {
	line-height: 1.87;
}
#main .sec04 .imgBox:not(:last-child) {
	margin-bottom: 38px;
}
#main .sec04 .imgBox .photoBox {
	width: 460px;
}
#main .sec04 .imgBox .textBox {
	margin-top: 62px;
	width: 673px;
}
#main .sec04 .imgBox .textBox h3 {
	margin: 0 -15px 17px 0;
	color: #B93841;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.58;
}
#main .sec04 .imgBox .textBox h3 span {
	font-size: 2.8rem;
}
#main .sec04 .imgBox01 {
	align-items: flex-end;
}
#main .sec04 .imgBox01 .textBox h3 {
	margin-bottom: 0;
}
#main .sec04 .imgBox .textBox p {
	margin-bottom: 28px;
}
#main .sec04 .imgBox .textBox p:last-child {
	margin-bottom: 0;
}
#main .sec04 .imgBox .textBox .ttl {
	margin-bottom: 14px;
	color: #B93841;
	font-size: 2.8rem;
	font-weight: 700;
}
#main .sec04 .imgBox .textBox .ttl span {
	padding-bottom: 3px;
	border-bottom: 3px solid #B93841;
}
#main .sec04 .imgBox .textBox .comLink {
	margin: 41px 0 0;
	width: 240px;
}
#main .sec04 .imgBox .textBox .comLink a {
	padding: 15px 20px;
	color: #fff;
	font-size: 1.6rem;
	border-radius: 45px;
	background-color: #B93841;
	background-image: url("../img/common/icon03.png");
	background-size: 9px;
	background-position: right 15px top 23px;
}
#main .sec04 .subInner {
	margin-left: auto;
	width: 1000px;
}
#main .sec04 .subInner .textImg {
	padding: 38px 127px 28px 106px;
	background-color: #fff;
	border-radius: 15px;
}
#main .sec04 .subInner .textImg02 {
	margin-bottom: 16px;
	padding: 31px 24px 44px 30px;
	background-color: #fff;
	border-radius: 15px;
}
#main .sec04 .subInner .text {
	margin-bottom: 50px;
}
#main .sec04 .subInner .info h3 {
	margin-bottom: 13px;
	padding-bottom: 7px;
	color: #B93841;
	font-size: 2rem;
	font-weight: 700;
	border-bottom: 1px solid #B93841;
}
#main .sec05 {
	padding: 79px 0 76px;
	background-color: #F0D6D6;
}
#main .sec05 .content {
	width: 1160px;
}
#main .sec05 .headLine01 {
	margin-bottom: 53px;
}
#main .sec05 .inner {
	margin-bottom: 40px;
	background-color: #fff;
	border-radius: 30px;
	overflow: hidden;
}
#main .sec05 .inner:last-child {
	margin-bottom: 0;
}
#main .sec05 .inner .ttlBox {
	padding: 16px 15px 15px;
	align-items: center;
	background-color: #CE8C8C;
}
#main .sec05 .inner .ttlBox .lPho {
	margin-right: 108px;
	width: 150px;
	position: relative;
}
#main .sec05 .inner .ttlBox .lPho::before {
	width: 2px;
	position: absolute;
	right: -58px;
	top: 4px;
	bottom: 4px;
	background-color: #fff;
	content: "";
}
#main .sec05 .inner .ttlBox .rTtl h3 {
	color: #fff;
	font-size: 2.8rem;
	font-weight: 700;
}
#main .sec05 .inner .innerBox {
	padding: 18px 50px 33px;
}
#main .sec05 .inner .innerBox p {
	margin-bottom: 28px;
	line-height: 1.87;
}
#main .sec05 .inner .innerBox p:last-child {
	margin-bottom: 0;
}
#main .sec05 .inner .innerBox .pTop {
	margin-bottom: 19px;
}
#main .sec05 .textInner {
	margin-bottom: 40px;
}
#main .sec05 .textInner .textList {
	margin-right: 50px;
	width: 320px;
}
#main .sec05 .textInner .textList:nth-child(3n) {
	margin-right: 0;
}
#main .sec05 .textInner .textList li:not(:last-child) {
	margin-bottom: 18px;
}
#main .sec05 .textInner .textList li p {
	line-height: 1.6;
}
#main .sec05 .textInner .textList li p:last-child {
	margin-bottom: 0;
}
#main .sec05 .textInner .textList li .title {
	margin-bottom: 7px;
}
#main .sec05 .textInner .textList li .title span {
	padding: 5px 11px 6px;
	display: inline-block;
	color: #fff;
	font-size: 1.6rem;
	font-weight: 700;
	background-color: #CE8C8C;
	border-radius: 10px;
}
#main .sec05 .info h4 {
	margin-bottom: 17px;
	padding-bottom: 6px;
	color: #B93841;
	font-size: 1.6rem;
	font-weight: 700;
	border-bottom: 1px solid #B93841;
}
#main .sec05 .inner02 .innerBox .pTop {
	margin-bottom: 14px;
}
#main .sec05 .inner02 .videoBox {
	margin: 0 auto 26px;
	width: 560px;
}
#main .sec05 .inner02 .videoBox p {
	margin-bottom: 4px;
}
#main .sec05 .inner02 .video {
	position: relative;
	height: 315px;
}
#main .sec05 .inner02 .video iframe {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 100%;
	height: 100%;
}
#main .sec05 .info {
	margin-bottom: 29px;
}
#main .sec05 .info .imgList {
	margin: -20px 0 18px;
}
#main .sec05 .info .imgList li {
	margin: 20px 20px 0 0;
	width: 160px;
}
#main .sec05 .info .imgList li:nth-child(6n) {
	margin-right: 0;
}
#main .sec05 .info .imgList li .subText {
	margin: -28px 0 0 16px;
	padding: 9px 0 9px 14px;
	background-color: #fff;
	position: relative;
	z-index: 2;
}
#main .sec05 .info .imgList li p {
	line-height: 1.6;
}
#main .sec05 .info .imgList li .ttl {
	margin-bottom: 0;
	color: #2C569B;
	font-size: 1.6rem;
	font-weight: 700;
}
#main .sec05 .info .picList {
	margin: -20px 22px 0;
	justify-content: center;
}
#main .sec05 .info .picList li {
	margin: 20px 20px 0 0;
	width: 144px;
}
#main .sec05 .info .picList li .pho {
	margin: 0 auto 4px;
	width: 105px;
}
#main .sec05 .info .picList li p {
	font-size: 1.6rem;
	line-height: 1.5;
	text-align: center;
}
#main .sec05 .info01 {
	margin-bottom: 41px;
}
#main .sec05 .infoBox h4 {
	margin-bottom: 20px;
	text-align: center;
	font-size: 2.8rem;
	font-weight: 700;
}
#main .sec05 .infoBox h4 span {
	padding-bottom: 7px;
	display: inline-block;
	border-bottom: 3px solid #000;
}
#main .sec05 .infoBox .subInfo {
	margin: 0 auto 23px;
	width: 850px;
}
#main .sec05 .infoBox .subInfo:last-child {
	margin-bottom: 0;
}
#main .sec05 .infoBox .subInfo .ttl {
	margin-bottom: 0;
	padding: 3px 30px 2px;
	color: #B93841;
	font-size: 1.6rem;
	font-weight: 700;
	text-align: center;
	background: #F5F5F5 url("../img/common/icon04.png") no-repeat right 12px center / 14px;
	cursor: pointer;
}
#main .sec05 .infoBox .subInfo .ttl.on {
	background-image: url("../img/common/icon04_on.png")
}
#main .sec05 .infoBox .subInfo .comTextList {
	margin-top: 7px;
	display: none;
}
#main .sec05 .infoBox .subInfo .comTextList li {
	margin-bottom: 5px;
	padding-bottom: 2px;
	border-bottom: 1px solid #D8D8D8;
}
#main .sec05 .inner03 .comLink {
	width: 294px;
}
#main .sec05 .inner03 .comLink a {
	padding: 15px 20px;
	display: block;
	color: #fff;
	font-size: 1.6rem;
	font-weight: 700;
	background: #B93841 url("../img/common/icon03.png") no-repeat right 17px top 23px / 9px;
}
#main .sec06 {
	padding: 89px 0 96px;
}
#main .sec06 .content {
	width: 1160px;
}
#main .sec06 .slideBox {
	position: relative;
}
#main .sec06 .slideBox .arrow li {
	margin-top: -9px;
	width: 58px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: -77px;
	cursor: pointer;
}
#main .sec06 .slideBox .arrow .next {
	right: -77px;
	left: auto;
}
#main .sec06 .slideList .slick-slide > div {
	margin-right: 40px;
	width: 360px;
}
#main .sec06 .slideList li {
	float: left;
}
#main .sec06 .slideList li .photo {
	margin-bottom: 16px;
}
#main .sec06 .slideList li h3 {
	margin-bottom: 13px;
	color: #CE8C8C;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.55;
}
#main .sec06 .slideList li h3 span {
	margin-bottom: 7px;
	display: block;
	color: #000;
	font-size: 1.5rem;
}
#main .sec06 .slideList li .btmText {
	padding: 20px 0 33px;
	background: url("../img/index/line01.png") no-repeat left top / 100%, url("../img/index/line01.png") no-repeat left bottom/ 100%;
}
#main .sec06 .slideList li p {
	margin-bottom: 17px;
	line-height: 1.87;
}
#main .sec06 .slideList li .comLink a {
	background-image: url("../img/common/icon01.png");
	background-size: 8px auto;
}
#main .sec07 {
	padding: 79px 0 59px;
	background-color: #FBF6EA;
}
#main .sec07 .headLine01 {
	margin-bottom: 52px;
}
#main .sec07 .content {
	width: 1160px;
}
#main .sec07 .whiteBg {
	margin: 0 auto 57px;
	padding: 16px 48px;
	width: 735px;
	align-items: center;
	background-color: #fff;
	border-radius: 15px;
	box-sizing: border-box;
}
#main .sec07 .subInner {
	margin-right: 20px;
	width: 275px;
	box-sizing: border-box;
	position: relative;
}
#main .sec07 .subInner:nth-child(4n) {
	margin-right: 0;
}
#main .sec07 .subInner h3 {
	min-height: 110px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-size: 2.4rem;
	font-weight: 700;
	text-align: center;
	background-color: #C3AD87;
	border-radius: 15px 15px 0 0;
	box-sizing: border-box;
}
#main .sec07 .subInner h3 span {
	margin-bottom: 8px;
	display: block;
	font-size: 1.5rem;
	line-height: 1.47;
}
#main .sec07 .subInner .sub {
	margin-bottom: 7px;
	padding-top: 21px;
	position: relative;
	background-color: #fff;
}
#main .sec07 .subInner .subTxt {
	position: absolute;
	left: 12px;
	top: -13px;
	color: #fff;
	font-size: 1.2rem;
	letter-spacing: 0.05em;
	font-weight: 700;
	background-color: #2C569B;
	padding: 3px 12px;
    border-radius: 11px;
}
#main .sec07 .subInner .subTxt::before {
	width: 9px;
	height: 10px;
	position: absolute;
	left: 28px;
    bottom: -7px;
	background: url("../img/common/icon05.png") no-repeat left top / 100%;
	content: "";
}
#main .sec07 .subInner .listUl {
	margin: 0 0 11px 14px;
}
#main .sec07 .subInner .listUl li {
	padding-left: 15px;
	line-height: 1.73;
	background: url("../img/common/icon06.png") no-repeat left center / 11px;
}

#main .sec07 .subInner .textList {
	margin-bottom: 21px;
}
#main .sec07 .subInner .textList li {
	padding: 10px 12px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	border-top: 1px solid #C4C4C4;
}
#main .sec07 .subInner .textList li:last-child {
	border-bottom: 1px solid #C4C4C4;
}
#main .sec07 .subInner .textList li .lSpan {
	margin-top: 2px;
	padding: 12px 2px;
	display: block;
	width: 51px;
	text-align: center;
	background-color: #E4E4E4;
	border-radius: 5px;
	font-size: 1.2rem;
	box-sizing: border-box;
}
#main .sec07 .subInner .textList li .rSpan {
	display: block;
	width: calc(100% - 63px);
	font-size: 1.3rem;
	line-height: 1.54;
	box-sizing: border-box;
}
#main .sec07 .subInner .textList li .rSpan .red {
	color: #B93841;
	font-weight: 700;
}
#main .sec07 .subInner .textList li .rSpan .red .num {
	font-size: 2.4rem;
	display: inline-block;
	line-height: 1;
}
#main .sec07 .subInner .textList li .rSpan .arrow {
	margin: -2px 0;
	font-size: 1.5rem;
	display: block;
}
#main .sec07 .subInner .textList li .rSpan .txtBg {
	background: linear-gradient(transparent 68%, #FFF686 0%);
    display: inline-block;
    padding: 0 4px;
    margin-left: -4px;
}
#main .sec07 .subInner .textList li .rSpan .txtBg .num {
	font-size: 3.2rem;
}
#main .sec07 .subInner .comBtn {
	margin: 0 auto 21px;
}
#main .sec07 .subInner table {
	width: 100%;
	border-collapse: collapse;
}
#main .sec07 .subInner th,
#main .sec07 .subInner td {
	padding: 2px 8px;
	font-size: 1.3rem;
	font-weight: 400;
	text-align: left;
	vertical-align: middle;
	box-sizing: border-box;
	word-break: break-all;
}
#main .sec07 .subInner th {
	width: 80%;
	padding: 10px 0 9px 9px;
}
#main .sec07 .subInner td {
	font-size: 1.6rem;
	text-align: center;
}
#main .sec07 .subInner td span {
	font-size: 1.3rem;
}
#main .sec07 .subInner tr:nth-child(2n+1) {
	background-color: #F7F7F7;
}
#main .sec07 .subInner .note {
	font-size: 1.3rem;
	line-height: 1.71;
}
#main .sec07 .subInner04 h3 {
	background-color: #C75D5D;
}
#main .sec07 .subInner04 h3 span {
	margin-bottom: 0;
}
#main .sec07 .subInner04 .subTtl {
	position: absolute;
	left: 0;
	top: -29px;
	width: 100%;
	box-sizing: border-box;
	text-align: center;
}
#main .sec07 .subInner04 .subTtl span {
	padding: 0 24px;
	color: #B93841;
	letter-spacing: 0.08em;
	font-weight: 700;
	background: url("../img/index/line02.png") no-repeat left center / 13px , url("../img/index/line03.png") no-repeat right center / 13px;
}
#main .sec08 {
	padding: 127px 0 90px;
}
#main .sec08 .content {
	width: 1160px;
}
#main .sec08 .bg {
	padding: 40px 42px 55px;
	background-color: #FAECEC;
	border-radius: 30px;
}
#main .sec08 h2 {
	margin-bottom: 30px;
	color: #B93841;
	font-size: 2.4rem;
	font-weight: 700;
	text-align: center;
}
#main .sec08 .imgBox {
	margin: 0 auto 37px;
	width: 706px;
	align-items: flex-end;
	justify-content: center;
}
#main .sec08 .imgBox .photoBox {
	width: 200px;
	margin:0 20px;
	/* border-radius: 100%; */
	overflow: hidden;
}
#main .sec08 .imgBox .textBox {
	width: 361px;
	position: relative;
}
#main .sec08 .imgBox .textBox p {
	line-height: 1.53;
}
#main .sec08 .imgBox .textBox .name {
	margin-top: 8px;
	font-size: 1.8rem;
	font-weight: 700;
}
#main .sec08 .imgBox .textBox .pic {
	width: 51px;
	position: absolute;
	right: 10px;
    bottom: -8px;
}
#main .sec08 .textInner {
	padding-top: 25px;
	border-top: 1px solid #B93841;
}
#main .sec08 .textInner p {
	margin-bottom: 28px;
	line-height: 1.87;
}
#main .sec08 .textInner p:last-child {
	margin-bottom: 0;
}
#main .sec09 {
	padding: 79px 0 96px;
	background-color: #F5F5F5;
}
#main .sec09 .content {
	width: 850px;
}
#main .sec09 .headLine01 {
	margin-bottom: 51px;
}
#main .sec09 .pTop {
	margin-bottom: 39px;
	text-align: center;
}
#main .sec09 .textList {
	position: relative;
}
#main .sec09 .textList::before {
	position: absolute;
	left: 50%;
	top: 2px;
	bottom: 2px;
	transform: translateX(-50%);
	width: 10px;
	background-color: #fff;
	content: "";
}
#main .sec09 .textList li {
	margin-bottom: 40px;
	padding: 17px 20px;
	background-color: #fff;
	border-radius: 30px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
	z-index: 2;
}
#main .sec09 .textList li:last-child {
	margin-bottom: 0;
}
#main .sec09 .textList li .lTxt {
	width: 288px;
}
#main .sec09 .textList li .lTxt p {
	padding: 20px 20px 19px;
	font-size: 1.8rem;
    font-weight: 700;
    color: #B93841;
	text-align: center;
	background-color: #FAECEC;
	border-radius: 15px;
}
#main .sec09 .textList li .rTxt {
	width: 504px;
}
#main .sec09 .textList li .rTxt p {
	line-height: 1.6;
}
#main .sec09 .textList li .rTxt .red {
	color: #B93841;
	font-weight: 700;
}
#main .sec10 {
	padding: 84px 0 106px;
}
#main .sec10 .headLine01 {
	margin-bottom: 58px;
}
#main .sec10 dl {
	margin-bottom: 20px;
	background-color: #F5F5F5;
	border-radius: 10px;
}
#main .sec10 .dlBox dl:last-child {
	margin-bottom: 0;
}
#main .sec10 dt {
	padding: 24px 62px 19px;
	color: #2C569B;
	font-size: 1.8rem;
	font-weight: 700;
	position: relative;
	cursor: pointer;
}
#main .sec10 dd {
	padding: 11px 98px 21px;
	position: relative;
	display: none;
}
#main .sec10 .en {
	width: 29px;
	position: absolute;
	left: 22px;
    top: 19px;
}
#main .sec10 dd .en {
	width: 24px;
    left: 64px;
    top: 4px;
}
#main .sec10 dd a {
	color: #B93841;
	text-decoration: underline;
}
#main .sec10 .dlBox:not(:last-child) {
	margin-bottom: 50px;
}
#main .sec10 .dlBox h3 {
	margin-bottom: 14px;
	text-align: center;
	font-size: 2.4rem;
	font-weight: 700;
}
@media all and (max-width: 1400px) {
	#main .sec06 .slideBox .arrow li {
		left: -60px;
	}
	#main .sec06 .slideBox .arrow .next {
		right: -60px;
	}
	#main .sec04 .bgBox::before {
		width: calc(100% - 30px);
	}
	#main .sec02 .bgBox .photo {
		margin-right: -626px;
	}
}
@media all and (min-width: 897px) {
	#main .sec10 dd a:hover {
		text-decoration: none;
	}
}
@media all and (max-width: 896px) {
	.mainVisual {
		padding: 0;
	}
	.mainVisual::before {
		display: none
	}
	.mainVisual .photo {
		margin-bottom: 15px;
		width: auto;
	}
	.mainVisual .title {
		margin-bottom: 22px;
		font-size: 1.4rem;
		line-height: 1.78;
	}
	.mainVisual .title .txt {
		border-bottom: 0;
		text-decoration: underline;
	}
	.mainVisual .title .big {
		font-size: 1.6rem;
	}
	.mainVisual .comBtnBox {
		padding-bottom: 29px;
	}
	#main .sec01 {
		padding: 35px 0 40px;
	}
	#main .sec01 .content {
		padding: 0 15px;
	}
	#main .sec01 .btn {
		width: 90px;
		right: 15px;
		top: 7px;
	}
	#main .sec01 .btn a {
		padding: 4px 12px;
		font-size: 1.1rem;
		background-position: right 10px center;
		background-size: 7px auto;
	}
	#main .sec02 {
		padding: 31px 0 45px;
		overflow: hidden;
	}
	#main .sec02 h2 {
		margin-bottom: 20px;
	}
	#main .sec02 .bgBox {
		padding: 19px 0 38px 17px;
	}
	#main .sec02 .bgBox::before {
		width: calc(100% - 20px);
		border-radius: 15px 0 0 15px;
	}
	#main .sec02 .bgBox h3 {
		margin-bottom: 23px;
		font-size: 1.9rem;
		line-height: 1.44;
	}
	#main .sec02 .textList {
		margin: 0;
		width: auto;
	}
	#main .sec02 .textList li {
		margin: 0 0 6px;
		display: block;
	}
	#main .sec02 .textList li:last-child {
		margin-bottom: 0;
	}
	#main .sec02 .textList li .txt {
		padding: 10px 12px 10px;
		border-radius: 7px;
		font-size: 1.4rem;
	}
	#main .sec02 .bgBox .photo {
		margin-right: 0;
		width: 200px;
		right: -57px;
		top: 138px;
	}
	#main .sec03 {
		padding: 48px 0 45px;
	}
	#main .sec03 h2 {
		margin-bottom: 14px;
		font-size: 2.1rem;
		line-height: 1.45;
	}
	#main .sec03 h2 span::before {
		width: 38px;
		height: 35px;
		left: -24px;
		top: -16px;
	}
	#main .sec03 .photo {
		margin: 0 -20px 25px;
	}
	#main .sec03 .textInner {
		margin-bottom: 17px;
		padding: 0 5px;
	}
	#main .sec03 .textInner p {
		margin-bottom: 22px;
		line-height: 1.61;
	}
	#main .sec04 {
		padding: 51px 0 50px;
	}
	#main .sec04 .bgBox {
		margin-bottom: 50px;
		padding-bottom: 44px;
	}
	#main .sec04 .bgBox::before {
		width: calc(100% - 20px);
		top: 140px;
		border-radius: 15px 0 0 15px;
	}
	#main .sec04 .bgBox p {
		line-height: 1.61;
	}
	#main .sec04 .imgBox:not(:last-child) {
		margin-bottom: 15px;
	}
	#main .sec04 .imgBox  {
		display: block;
	}
	#main .sec04 .imgBox .photoBox {
		margin: 0 5px 16px -20px;
		width: auto;
	}
	#main .sec04 .imgBox .textBox {
		margin: 0 0 0 22px;
		width: auto;
	}
	#main .sec04 .imgBox .textBox h3 {
		margin: 0 0 14px;
		font-size: 1.8rem;
		line-height: 1.5;
	}
	#main .sec04 .imgBox .textBox h3 span {
		font-size: 2.3rem;
	}
	#main .sec04 .imgBox .textBox p {
		margin-bottom: 20px;
	}
	#main .sec04 .imgBox .textBox .ttl {
		margin-bottom: 15px;
		font-size: 1.9rem;
	}
	#main .sec04 .imgBox .textBox .ttl span {
		padding-bottom: 2px;
		border-bottom: 2px solid #B93841;
	}
	#main .sec04 .imgBox .textBox .comLink {
		margin: 30px auto 0;
		width: 166px;
	}
	#main .sec04 .imgBox .textBox .comLink a {
		padding: 12px 15px 11px 5px;
		font-size: 1.3rem;
		background-size: 7px;
		background-position: right 10px center;
	}
	#main .sec04 .subInner {
		margin: 0 5px 0 22px;
		width: auto;
	}
	#main .sec04 .subInner .textImg {
		padding: 26px 21px 29px 22px;
		border-radius: 8px;
		text-align: center;
	}
	#main .sec04 .subInner .textImg02 {
		margin-bottom: 21px;
		padding: 24px 10px 30px 20px;
		border-radius: 8px;
		text-align: center;
	}
	#main .sec04 .subInner .text {
		margin-bottom: 26px;
	}
	#main .sec04 .subInner .text .smlTxt {
		font-size: 1.1rem;
		line-height: 1.9;
	}
	#main .sec04 .subInner .info h3 {
		margin-bottom: 15px;
		padding-bottom: 5px;
		font-size: 1.4rem;
	}
	#main .sec05 {
		padding: 50px 0 53px;
	}
	#main .sec05 .headLine01 {
		margin-bottom: 41px;
	}
	#main .sec05 .inner {
		margin-bottom: 30px;
		border-radius: 15px;
	}
	#main .sec05 .inner .ttlBox {
		padding: 16px 15px 14px;
		display: block;
	}
	#main .sec05 .inner01 .comLink {
		margin-top: 20px;
	}
	#main .sec05 .inner .ttlBox .lPho {
		padding-bottom: 15px;
		margin: 0 0 13px;
		width: auto;
		text-align: center;
	}
	#main .sec05 .inner .ttlBox .lPho img {
		width: 143px;
	}
	#main .sec05 .inner .ttlBox .lPho::before {
		height: 1px;
		width: auto;
		right: 22px;
		left: 22px;
		top: auto;
		bottom: 0;
	}
	#main .sec05 .inner .ttlBox .rTtl h3 {
		font-size: 1.8rem;
		text-align: center;
	}
	#main .sec05 .inner .innerBox {
		padding: 18px 21px 33px;
	}
	#main .sec05 .inner .innerBox p {
		margin-bottom: 14px;
		line-height: 1.62;
	}
	#main .sec05 .inner .innerBox .pTop {
		margin-bottom: 12px;
	}
	#main .sec05 .textInner {
		margin-bottom: 10px;
	}
	#main .sec05 .textInner .textList {
		margin: 0 0 10px;
		width: auto;
	}
	#main .sec05 .textInner .textList.on {
		display: none;
	}
	#main .sec05 .innerBox .subTxtBox {
		display: none;
	}
	#main .sec05 .textInner .textList:last-child {
		margin-bottom: 0;
	}
	#main .sec05 .textInner .textList li:not(:last-child) {
		margin-bottom: 10px;
	}
	#main .sec05 .textInner .textList li .title {
		margin-bottom: 4px;
	}
	#main .sec05 .textInner .textList li .title span {
		padding: 2px 5px 2px;
		font-size: 1.4rem;
		border-radius: 7px;
	}
	#main .sec05 .info h4 {
		margin-bottom: 14px;
		padding-bottom: 4px;
		font-size: 1.4rem;
	}
	#main .sec05 .inner02 .innerBox .pTop {
		margin-bottom: 18px;
	}
	#main .sec05 .inner02 .videoBox {
		margin: 0 7px 26px;
		width: auto;
	}
	#main .sec05 .inner02 .videoBox p {
		margin-bottom: 5px;
	}
	#main .sec05 .inner02 .video {
		height: 0;
		padding-bottom: 56%;
	}
	#main .sec05 .info .imgList {
		margin: -13px 0 26px;
		justify-content: space-between;
	}
	#main .sec05 .info .imgList li {
		margin: 13px 0 0;
		width: 48%;
	}
	#main .sec05 .info .imgList.on li:nth-child(n+3) {
		display: none !important;
	}
	#main .sec05 .info .imgList li .pho img {
		width: 100%;
	}
	#main .sec05 .info .imgList li .subText {
		margin: -23px 0 0 15px;
		padding: 4px 4px 0 8px;
	}
	#main .sec05 .info .imgList li .ttl {
		font-size: 1.4rem;
	}
	#main .sec05 .info .picList {
		margin: -8px -10px 0 0;
	}
	#main .sec05 .info .picList li {
		margin: 15px 0 0;
		width: 48%;
	}
	#main .sec05 .info .picList li .pho {
		margin-bottom: 7px;
		width: 94px;
	}
	#main .sec05 .info .picList li p {
		font-size: 1.3rem;
		line-height: 1.38;
	}
	#main .sec05 .info01 {
		margin-bottom: 41px;
	}
	#main .sec05 .infoBox h4 {
		margin-bottom: 20px;
		font-size: 1.8rem;
	}
	#main .sec05 .infoBox h4 span {
		padding-bottom: 2px;
		border-bottom: 2px solid #000;
	}
	#main .sec05 .infoBox .subInfo {
		margin: 0 auto 23px;
		width: auto;
	}
	#main .sec05 .infoBox .subInfo .ttl {
		margin-bottom: 0;
		padding: 3px 30px 4px;
		font-size: 1.3rem;
		background-size: 10px auto;
		background-position: right 7px center;
	}
	#main .sec05 .infoBox .subInfo .comTextList {
		margin-top: 4px;
	}
	#main .sec05 .infoBox .subInfo .comTextList li {
		margin-bottom: 3px;
		padding: 0 0 5px 17px;
	}
	#main .sec05 .infoBox .subInfo .comTextList li::before {
		left: 6px;
	}
	#main .sec05 .inner03 .innerBox p {
		margin-bottom: 25px;
	}
	#main .sec05 .inner03 .comLink {
		width: auto;
		max-width: 231px;
	}
	#main .sec05 .inner03 .comLink a {
		padding: 11px 16px 12px;
		text-align: left;
		font-size: 1.3rem;
		background-position: right 15px top 17px;
		background-size: 7px auto;
	}
	#main .sec05 .inner02 .comLink01 {
		margin-top: 20px;
	}
	#main .sec05 .toggleBox .hideBox {
		display: none;
	}
	#main .sec05 .inner .innerBox .toggleBox .text01 {
		display: none;
	}
	#main .sec06 {
		padding: 50px 0 52px;
	}
	#main .sec06 .headLine01 {
		margin-bottom: 46px;
	}
	#main .sec06 .slideBox .arrow {
		display: none;
	}
	#main .sec06 .slideList .slick-slide > div {
		margin-right: 36px;
		width: 285px;
	}
	#main .sec06 .slideList li .photo {
		margin-bottom: 10px;
	}
	#main .sec06 .slideList li h3 {
		margin-bottom: 11px;
		font-size: 1.4rem;
		line-height: 1.5;
	}
	#main .sec06 .slideList li h3 span {
		margin-bottom: 5px;
		font-size: 1.3rem;
	}
	#main .sec06 .slideList li .btmText {
		padding: 16px 0 28px;
	}
	#main .sec06 .slideList li p {
		line-height: 1.62;
	}
	#main .sec06 .slideList li .comLink a {
		background-size: 7px auto;
	}
	#main .sec07 {
		padding: 15px 0 64px;
	}
	#main .sec07 .headLine01 {
		margin-bottom: 36px;
	}
	#main .sec07 .whiteBg {
		margin-bottom: 30px;
		padding: 18px 20px 24px;
		width: auto;
		display: block;
	}
	#main .sec07 .whiteBg p {
		margin-bottom: 13px;
		text-align: center;
		font-size: 1.4rem;
		line-height: 1.36;
	}
	#main .sec07 .inner {
		display: block;
	}
	#main .sec07 .subInner {
		margin: 0 0 38px;
		width: auto;
	}
	#main .sec07 .subInner:last-child {
		margin-bottom: 0;
	}
	#main .sec07 .subInner h3 {
		min-height: 118px;
		font-size: 2.4rem;
	}
	#main .sec07 .subInner h3 span {
		margin-bottom: 13px;
		font-size: 1.4rem;
		line-height: 1.5;
	}
	#main .sec07 .subInner .sub {
		margin-bottom: 7px;
		padding-top: 27px;
	}
	#main .sec07 .subInner .subTxt {
		left: 15px;
		top: -11px;
		font-size: 1.4rem;
		padding: 3px 13px;
		border-radius: 15px;
	}
	#main .sec07 .subInner .subTxt::before {
		width: 13px;
		height: 11px;
		left: 28px;
		bottom: -9px;
		background-image: url("../img/common/sp_icon05.png");
	}
	#main .sec07 .subInner .listUl {
		margin: 0 0 11px 19px;
	}
	#main .sec07 .subInner .listUl li {
		padding-left: 21px;
		line-height: 1.62;
		font-size: 1.6rem;
		background-size: 13px auto;
	}
	#main .sec07 .subInner .textList {
		margin-bottom: 23px;
	}
	#main .sec07 .subInner .textList li {
		padding: 11px 20px;
	}
	#main .sec07 .subInner .textList li:last-child {
		border-bottom: 1px solid #C4C4C4;
	}
	#main .sec07 .subInner .textList li .lSpan {
		width: 59px;
		font-size: 1.3rem;
	}
	#main .sec07 .subInner .textList li .rSpan {
		width: calc(100% - 72px);
	}
	#main .sec07 .subInner04 .textList .spec .rSpan {
		margin-top: 5px;
	}

	#main .sec07 .subInner .textList li .rSpan .arrow {
		margin: 0;
		font-size: 1.3rem;
		display: block;
	}
	#main .sec07 .subInner .textList li .rSpan .txtBg {
		padding: 0;
		margin-left: 0;
	}
	#main .sec07 .subInner04 .textList li .rSpan .txtBg .num {
		font-size: 2.9rem;
	}
	#main .sec07 .subInner04 .textList .spec .rSpan .txtBg .num {
		font-size: 2.9rem;
	}
	#main .sec07 .subInner .textList li .rSpan .sml {
		font-size: 1.1rem;
		word-break: break-all;
	}
	#main .sec07 .subInner .comBtn {
		margin-bottom: 22px;
	}
	#main .sec07 .subInner th,
	#main .sec07 .subInner td {
		padding: 3px 8px;
	}
	#main .sec07 .subInner th {
		width: 74%;
		font-size: 1.3rem;
		padding: 8px 0 11px 12px;
	}
	#main .sec07 .subInner td span {
		font-size: 1.1rem;
	}
	#main .sec07 .subInner .note {
		font-size: 1.1rem;
		line-height: 1.54;
	}
	#main .sec07 .subInner04 {
		margin-top: 67px;
	}
	#main .sec07 .subInner04 h3 span {
		margin-bottom: 3px;
	}
	#main .sec07 .subInner04 .subTtl span {
		padding: 0 19px;
		font-size: 1.6rem;
		background: url("../img/index/sp_line02.png") no-repeat left bottom / 12px , url("../img/index/sp_line03.png") no-repeat right bottom / 12px;
	}
	#main .sec08 {
		padding: 41px 0 50px;
	}
	#main .sec08 .bg {
		padding: 35px 25px 27px;
		border-radius: 15px;
	}
	#main .sec08 h2 {
		margin-bottom: 19px;
		font-size: 1.8rem;
	}
	#main .sec08 .imgBox {
		margin-bottom: 15px;
		width: auto;
		display: block;
	}
	#main .sec08 .imgBox .photoBox {
		margin:0 auto 9px;
		width: auto;
		max-width: 200px;
	}
	#main .sec08 .imgBox .photoBox img {
		width: 100%;
	}
	#main .sec08 .imgBox .textBox {
		width: auto;
	}
	#main .sec08 .imgBox .textBox p {
		line-height: 1.45;
		font-size: 1.1rem;
		text-align: center;
	}
	#main .sec08 .imgBox .textBox .name {
		margin-top: 4px;
		font-size: 1.4rem;
	}
	#main .sec08 .imgBox .textBox .pic {
		width: 40px;
		right: -2px;
	}
	#main .sec08 .textInner {
		padding-top: 13px;
	}
	#main .sec08 .textInner p {
		margin-bottom: 21px;
		line-height: 1.62;
	}
	#main .sec09 {
		padding: 35px 0 45px;
	}
	#main .sec09 .headLine01 {
		margin-bottom: 40px;
	}
	#main .sec09 .pTop {
		margin-bottom: 30px;
	}
	#main .sec09 .textList li {
		margin-bottom: 30px;
		padding: 13px 14px 18px;
		border-radius: 15px;
		display: block;
	}
	#main .sec09 .textList li .lTxt {
		margin-bottom: 7px;
		width: auto;
	}
	#main .sec09 .textList li .lTxt p {
		padding: 12px 20px 11px;
		border-radius: 7px;
	}
	#main .sec09 .textList li .rTxt {
		width: auto;
	}
	#main .sec10 {
		padding: 48px 0 106px;
	}
	#main .sec10 .headLine01 {
		margin-bottom: 48px;
	}
	#main .sec10 dl {
		margin-bottom: 10px;
		border-radius: 5px;
	}
	#main .sec10 dt {
		padding: 13px 31px 10px;
		font-size: 1.4rem;
		line-height: 1.5;
	}
	#main .sec10 dd {
		padding: 2px 20px 15px 53px;
		line-height: 1.62;
	}
	#main .sec10 .en {
		width: 19px;
		left: 9px;
		top: 12px;
	}
	#main .sec10 dd .en {
		width: 15px;
		left: 33px;
		top: 3px;
	}
	#main .sec10 .dlBox:not(:last-child) {
		margin-bottom: 30px;
	}
	#main .sec10 .dlBox h3 {
		margin-bottom: 9px;
		font-size: 1.8rem;
	}
}
@media all and (max-width: 360px) {
	#main .sec03 h2 {
		font-size: 1.8rem;
	}
	#main .sec04 .imgBox .textBox h3 span {
		font-size: 2.1rem;
	}
}