@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
.mainVisual,
.mainVisual .inner {
	position: relative;
}
.mainVisual:before {
	position: absolute;
	left: 0;
	bottom: -13px;
	width: 100%;
	background: url("../img/index/bg01.png") no-repeat;
	background-size: 100% 58px;
	height: 58px;
	content: "";
	z-index: 1;
}
.mainVisual h1 {
	max-width: 630px;
	position: absolute;
	padding: 3.4% 80px 3.2% 80px;
	left: 22px;
	bottom: 120px;
	z-index: 1;
	color: #0063C3;
	font-size: 1.7rem;
	font-weight: 500;
	background: url("../img/index/bg08.png") no-repeat top center;
	background-size: 100% 100%;
	box-sizing: border-box;
}
.mainVisual h1 span {
	margin: 0 -15px 1.8%;
	display: block;
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.02em;
}
/*新しいh1*/
.mainVisual h1.catch{
    max-width: 755px;
    background: none;
    padding-left: 0;
    right: 0;
    left: inherit;
}
.mainVisual h1.catch span{
    font-size: 5rem;
    margin-left: 0;
    padding: 0 1em;
    color: #00AAFF;
    display: inline-block;
    background-color: rgba( 255, 255, 255, 0.9);
}
.mainVisual h1.catch span.annotation{
    font-size: 13px;
    color: #4D4D4D;
    background: none;
    padding-left: 5rem;
}
.mainVisual h1.catch small{
    font-size: .6em;
    padding-left: .2em;
}
.mainVisual h1.catch ruby > rt{
    text-align: left;
}
.mainVisual .blue-circle{
    width: 615px;
	position: absolute;
	right: 10%;
	bottom: 70px;
	z-index: 1;
}
.mainVisual .blue-circle ul{
    display: flex;
    justify-content: space-between;
}
.mainVisual .blue-circle ul li{
    width: 40%;
}
.mainVisual .blue-circle ul li img{
    width: 100%;
}
@media all and (max-width: 1500px){
    .mainVisual h1.catch{
        width: 40vw;
    }
    .mainVisual h1.catch span{
        font-size: 3vw;
    }
    .mainVisual h1.catch span.annotation{
        font-size: 11px;
        padding-left: 1rem;
    }
    .mainVisual .blue-circle{
        width: 40vw;
    }
    .mainVisual h1.pc{
        width: 40vw;
        font-size: 1.2vw;
    }
    .mainVisual h1.pc span{
        font-size: 1.5vw;
    }
}
@media all and (max-width: 767px){
    .mainVisual h1:not([class]){
        position: static;
        width: 103vw;
        padding: 18px 20px 23px 75px;
        font-size: 2.8vw;
        margin-left: -7vw;
    }
    .mainVisual h1:not([class]) span{
        font-size: 1.5em;
        letter-spacing: .15em;
    }
    .mainVisual h1.catch{
        width: 100%;
        padding-bottom: 0;
    }
    .mainVisual h1.catch span {
        font-size: 7vw;
    }
    .mainVisual h1.catch span.annotation{
        font-size: 10px;
        padding-left: 6.2vw;
    }
    .mainVisual .blue-circle{
        position: initial;
    }
    .mainVisual .blue-circle{
        margin-top: 3vw;
        width: 100%;
        padding: 0 6vw;
        box-sizing: border-box;
    }
    .mainVisual .blue-circle ul li{
        width: 45%;
    }
}
.mainVisual .pho {
	height: calc(100vh - 100px);
	vertical-align: top;
	background: url("../img/index/slide_img01.jpg") no-repeat top center;
	background-size: cover;
}
.mainVisual .pho01 {
	background-image: url("../img/index/slide_img04.webp");
}
.mainVisual .pho02 {
	background-image: url("../img/index/slide_img02.webp");
}
.mainVisual .news {
	position: absolute;
	right: 0;
	bottom: 68px;
	padding: 19px 0 20px 118px;
	width: calc(50% - 1px);
	border-radius: 50px 0 0 50px;
	background-color: #E6FAFF;
	overflow: hidden;
	box-sizing: border-box;
}
.mainVisual .news h2 {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 97px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #0063C3;
	font-size: 1.5rem;
	background-color: #F7E6EC;
}
.mainVisual .news li {
	padding: 0 5px 0 7.8em;
	color: #0063C3;
	font-weight: 500;
	font-size: 1.5rem;
	position: relative;
}
.mainVisual .news li a {
	padding-right: 50px;
	color: #0063C3;
	display: inline-block;
	background: url("../img/common/icon10.png") no-repeat center right;
	background-size: 22px auto;
}
.mainVisual .news li a:hover {
	opacity: 0.5;
}
.mainVisual .news li .time {
	position: absolute;
	left: 0;
	top: 0;
	font-weight: 700;
}
#main .sec01 {
	padding: 86px 0;
}
#main .sec02 {
	margin: 100px 0;
	padding: 146px 0 74px;
	position: relative;
	background: url("../img/index/bg02.jpg") no-repeat;
	background-size: 100% 100%;
}
#main .sec02 .imgBox {
	max-width: 1200px;
	margin: 0 auto 60px;
}
#main .sec02 .pho {
	margin: -198px 0 0 -1%;
	width: 50.58%;
}
#main .sec02 .textBox {
	margin-left: 6.5%;
	width: 37.5%;
}
#main .sec02 .textBox p {
	line-height: 2;
	text-align: justify; 
	text-justify:inter-ideograph;
}
#main .sec02 .textBox p strong{
	font-weight: bold;
    padding-bottom: 2px;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0) 50%, #ffffd7 50%);
}
#main .sec02 .textBox .ttl {
	margin-bottom: 35px;
	text-align: center;
	color: #0063C3;
	font-size: 2.5rem;
	line-height: 1.6;
}
#main .sec02 .textUl {
	max-width: 986px;
	margin: 0 auto;
	padding: 0 15px;
	box-sizing: border-box;
}
#main .sec02 .textUl > li {
	width: 45.39%;
	padding: 20px 30px 40px;
	box-sizing: border-box;
	background: linear-gradient(0.64deg, rgba(218, 241, 255, 0.7) 0%, rgba(126, 201, 255, 0.7) 51.79%, rgba(131, 202, 196, 0.7) 100%);
	border-radius : 30px;
}
#main .sec02 .textUl h3 {
	margin-bottom: 27px;
	text-align: center;
	font-weight: 700;
	color: #fff;
	font-size: 2.5rem;
}
#main .sec02 .textUl .comLink a {
	background-color: #00AAFF;
}
#main .sec02 .textUl .comLink span {
	background-image: url("../img/common/icon07.png");
	background-size: 22px auto;
}
#main .sec02 .textUl .comLink.color a {
	background-color: #006FFF;
}
#main .sec02 .textUl .comLink.color span {
	background-image: url("../img/common/icon06.png");
	background-size: 33px auto;
}
#main .sec02 .textUl li li:not(:last-child) {
	margin-bottom: 33px;
}
#main .sec02 .textUl p {
	margin: 20px 0 0;
	line-height: 2;
	font-weight: 500;
}

/*  追加 2022年 4/7 */
#main .sec02 .textUl.sp{
	margin-top: -20px;
}
#main .sec02 .textUl.sp h3{
	color: #0063C3;
	margin-bottom: 3.666vw;
}
#main .sec02 .textUl .flex{
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
	box-sizing: border-box;
	padding: 0 3vw;
}
#main .sec02 .textUl .flex .half{
	width: calc(50% - 1.5vw);
}
#main .sec02 .textUl .flex img{
	width: 100%;
	border-radius: 15px 15px 0 0;
}
#main .sec02 .textUl .flex .half .button {
    display: table;
    width: 100%;
    height: 54px;
    text-align: center;
    text-decoration: none;
    line-height: 54px;
    outline: none;
    background-color: #00AAFF;
    color: #fff;
    margin: 0px auto;
	border-radius: 0 0 15px 15px;
	box-shadow: 0 10px 25px 0 rgb(0 0 0 / 20%);
}
#main .sec02 .textUl .flex .half .button.color{
	background-color: #CFDB13;
}

/*  追加ここまで 2022年 4/7 */

#main .sec03 {
	padding: 77px 0;
}
#main .sec03 .content {
	max-width: 1130px;
	position: relative;
}
#main .sec03 .iconImg01 {
	position: absolute;
	left: 143px;
	top: 49px;
	width: 56px;
}
#main .sec03 .iconImg02 {
	position: absolute;
	right: 123px;
	top: 4px;
	width: 124px;
}
#main .sec03 .headLine01 {
	margin-bottom: 37px;
}
#main .sec03 .textUl {
	margin-top: -21px;
}
#main .sec03 .textUl li {
	width: 30.63%;
	margin: 21px 1.8% 0 0;
	box-sizing: border-box;
	border-radius: 30px;
	overflow: hidden;
	background: linear-gradient(0.64deg, rgba(218, 241, 255, 0.7) 0%, rgba(126, 201, 255, 0.7) 51.79%, rgba(131, 202, 196, 0.7) 100%);
}
#main .sec03 .textUl li:nth-child(3n) {
	margin-right: 0;
}
#main .sec03 .textUl a {
	display: block;
	padding: 27px 25px 48px;
	height: 100%;
	box-sizing: border-box;
	background: url("../img/common/icon08.png") no-repeat bottom 20px center;
	background-size: 22px auto;
}
#main .sec03 .textUl .pho {
	position: relative;
	max-width: 198px;
	margin: 0 auto 18px;
}
#main .sec03 .textUl .pho .on {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	transition: .3s;
	opacity: 0;
}
#main .sec03 .textUl p {
	font-size: 1.3rem;
	font-weight: 500;
	line-height: 2.07;
}
#main .sec03 .textUl h3 {
	margin-bottom: 6px;
	text-align: center;
	font-weight: 700;
	font-size: 1.7rem;
	letter-spacing: 0.06em;
}
#main .sec04 {
	padding: 38px 0;
}
#main .sec04 .content {
	position: relative;
}
#main .sec04 .iconImg01 {
	position: absolute;
	right: 33px;
	top: -53px;
	width: 117px;
}
#main .sec04 .headLine01 {
	margin-bottom: 21px;
}
#main .sec04 .headLine01 .en {
	margin-bottom: 9px;
}
#main .sec04 .bgBox {
	margin-bottom: 28px;
	position: relative;
}
#main .sec04 .bgBox:before {
	position: absolute;
	left: 0;
	top: 100px;
	bottom: 100px;
	width: 100%;
	background-color: #FFF6E4;
	content: "";
}
/*後で消す*/
#main .sec04 .bgBox.new:before{
    bottom: 0;
}
#main .sec04 .info {
	min-height: 374px;
	padding: 54px 0 20px;
	position: relative;
	z-index: 1;
	box-sizing: border-box;
}
#main .sec04 .info:nth-child(2n + 1) {
/*	min-height: 472px;*/
	padding-top: 72px;
	background: url("../img/index/bg03.png") no-repeat;
	background-size: 100% 100%;
}
#main .sec04 .info02,
#main .sec04 .info04{
    min-height: 472px;
}
#main .sec04 .info05{
    min-height: 424px;
}
#main .sec04 .info06{
    min-height: 532px;
}
#main .sec04 .content {
	max-width: 1100px;
}
#main .sec04 .imgBox {
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
}
#main .sec04 .pho {
	position: absolute;
	left: -6.7%;
	top: -27px;
	width: 56.66%;
}
#main .sec04 .info01 .pho {
	left: auto;
	right: -5.4%;
	top: -94px;
	width: 57.16%;
}
#main .sec04 .info02 .pho {
	left: -3%;
	top: -50px;
	width: 51.75%;
}
#main .sec04 .info03 .pho {
	left: auto;
	right: -5.4%;
	top: -94px;
	width: 53.75%;
}
#main .sec04 .info04 .pho {
	left: -3%;
	top: -26px;
	width: 50.91%;
}
#main .sec04 .info05 .pho {
	left: auto;
	right: -5.4%;
	top: -94px;
	width: 53.75%;
}
#main .sec04 .textBox {
	width: 43.8%;
	position: relative;
}
#main .sec04 .textBox .icon {
	position: absolute;
	left: 10px;
	top: -18px;
	width: 52px;
}
#main .sec04 .info:nth-child(2n + 1) .textBox {
	margin: 0 0 0 auto;
}
#main .sec04 .textBox p {
	line-height: 1.875;
	letter-spacing: 0.05em;
}
#main .sec05 {
	padding: 84px 0 0;
}
#main .sec05 .content {
	max-width: 1130px;
	position: relative;
}
#main .sec05 .iconImg01 {
	position: absolute;
	left: 143px;
	top: 0;
	width: 56px;
}
#main .sec05 .iconImg02 {
	position: absolute;
	right: 123px;
	top: -44px;
	width: 124px;
}
#main .sec05 .headLine01 {
	margin-bottom: 13px;
	font-size: 3.4rem;
}
#main .sec05 .headLine01 .sml {
	margin: -3px 0 4px;
}
#main .sec05 .imgBox {
	padding: 0.7% 0 0;
	margin-bottom: -5.5%;
	position: relative;
	align-items: center;
	z-index: 1;
	background: url("../img/index/bg04.png") no-repeat;
	background-size: 100% 100%;
}
#main .sec05 .pho {
	width: 50%;
}
#main .sec05 .textBox {
	width: 50%;
	padding: 0 15px 34px 70px;
	box-sizing: border-box;
}
#main .sec05 .textBox > div {
	max-width: 450px;
}
#main .sec05 .headLine02 {
	padding-bottom: 42px;
	font-family: 'Zen Maru Gothic', sans-serif;
}
#main .sec05 .textBox p {
	margin-bottom: 70px;
	line-height: 2;
}
#main .sec06 {
	position: relative;
	padding: 65px 0 91px;
	background: url("../img/index/bg05.png") no-repeat bottom center #F3E7D7;
	background-size: 100% auto;
}
#main .sec06:before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border: 25px solid rgba(255,255,255,0.5);
	content: "";
	box-sizing: border-box;
}
#main .sec06 .content {
	position: relative;
	z-index: 1;
}
#main .sec06 .headLine01 {
	margin-bottom: 30px;
	font-size: 3.4rem;
}
#main .sec06 .headLine01 .sml {
	margin: -2px 0 3px;
}
#main .sec06 p {
	margin-bottom: 50px;
	text-align: center;
	line-height: 2;
}
#main .sec06 .comLink a span {
	background: url("../img/common/icon09.png") no-repeat center left 34px;
	background-size: 41px auto;
}
#main .sec06 .comLink:nth-of-type(2) a span{
    background: url("../img/common/icon09-02.png") no-repeat center left 34px;
    background-size: 41px auto;
}
#main .sec07 {
	padding: 68px 0 159px;
	background-color: #C1E4E0;
}
#main .sec07 .headLine01 {
	margin-bottom: 12px;
	font-size: 3.4rem;
	letter-spacing: -0.05em;
}
#main .sec07 .headLine01 .icon {
	display: block;
	width: 302px;
	margin: 0 auto 35px;
}
#main .sec07 p {
	margin-bottom: 50px;
	text-align: center;
	line-height: 2;
}
#main .sec08 {
	padding-bottom: 157px;
	position: relative;
	background-color: #F8F3ED;
}
#main .sec08:before {
	position: absolute;
	left: 0;
	top: -69px;
	width: 100%;
	background: url("../img/index/bg06.png") no-repeat;
	background-size: 100% 69px;
	height: 69px;
	content: "";
}
#main .sec08 .headLine01 {
	margin-bottom: 26px;
	font-size: 3.4rem;
}
#main .sec08 .headLine01 .en {
	margin-bottom: 4px;
}
#main .sec08 p {
	margin-bottom: 44px;
	text-align: center;
	line-height: 2;
}
#main .sec08 .pho {
	max-width: 978px;
	margin: 0 auto 31px;
}

@media all and (min-width: 768px) {
	#main .sec03 .textUl a:hover .pho .on {
		opacity: 1;
	}
	#main .sec03 .textUl a:hover {
		background-image: url("../img/common/icon08_on.png");
	}
}
@media all and (min-width: 768px) and (max-width: 1050px) {
	.mainVisual .news li {
		padding-left: 5.8em;
	}
	#main .sec02 .textBox {
	  margin-left: 1.5%;
	  width: 45%;
	}
	#main .sec02 .textBox .ttl {
		font-size: 2.2rem;
	}
	#main .sec02 .textUl > li {
		width: 49%;
		padding: 20px 10px 40px;
	}
	#main .sec02 .textUl .comLink a {
		letter-spacing: 0;
	}
	#main .sec03 .textUl a {
		padding: 27px 10px 48px;
	}
	#main .sec04 .textBox {
	  width: 47.8%;
	}
	#main .sec04 .textBox p {
	  line-height: 1.6;
	  letter-spacing: 0;
	}
	#main .sec05 .textBox {
		padding-left: 20px;
	}
	#main .sec05 .textBox p {
		margin-bottom: 10px;
	}
}
@media all and (min-width: 768px) and (max-width: 1180px) {
	.mainVisual h1 {
		padding: 3.4% 3vw 3.2% 6.5vw;
		left: 2%;
		bottom: 15%;
		width: 51vw;
		font-size: 1.41vw;
	}
	.mainVisual h1 span {
		margin: 0 -5% 1.8vw -3%;
		font-size: 2.6vw;
	}
}
@media all and (max-width: 767px) {
	.mainVisual:before {
		display: none;
	}
	.mainVisual .inner:before {
		position: absolute;
		bottom: -12px;
		left: 0;
		width: 100%;
		background: url("../img/index/sp_bg01.png") no-repeat;
		background-size: 100% 32px;
		height: 32px;
		content: "";
		z-index: 1;
	}
	.mainVisual h1 {
		width: 372px;
		padding: 24px 20px 23px 45px;
		left: -13px;
		bottom: 25px;
		font-size: 1.05rem;
	}
	.mainVisual h1 span {
		margin: 0 -6px 5px;
		font-size: 1.8rem;
	}
	.mainVisual .pho {
		height: 320px;
		background-image: url("../img/index/sp_slide_img01.webp");
	}
	.mainVisual .pho01 {
		background-image: url("../img/index/sp_slide_img04.webp");
	}
	.mainVisual .pho02 {
		background-image: url("../img/index/sp_slide_img02.webp");
	}
	.mainVisual .news {
		position: relative;
		right: auto;
		bottom: auto;
		padding: 9px 0 10px 70px;
		width: auto;
		margin: 25px 0 15px 17px;
	}
	.mainVisual .news h2 {
		width: 58px;
		padding-bottom: 4px;
		box-sizing: border-box;
		font-size: 1rem;
	}
	.mainVisual .news li {
		padding: 0 5px 0 5em;
		font-size: 1.2rem;
	}
	.mainVisual .news li a {
		min-height: 17px;
		padding-right: 20px;
		background-size: 17px auto;
	}
	.mainVisual .news li .time {
		font-size: 1.2rem;
	}
	#main .sec01 {
		padding: 63px 15px 40px;
	}
	#main .sec02 {
		margin: 80px 0 50px;
		padding: 1px 20px 0;
		background: linear-gradient(90deg, rgba(131, 202, 196, 0.3) 0%, rgba(127, 201, 198, 0.3) 18.02%, rgba(115, 198, 203, 0.3) 35.45%, rgba(96, 193, 212, 0.3) 52.65%, rgba(69, 187, 224, 0.3) 69.7%, rgba(34, 178, 240, 0.3) 86.48%, rgba(0, 170, 255, 0.3) 100%);
	}
	#main .sec02:before {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		background: url("../img/index/sp_bg02.png") no-repeat;
		background-size: 100% 15px;
		height: 15px;
		content: "";
	}
	#main .sec02:after {
		position: absolute;
		left: 0;
		bottom: 0;
		width: 100%;
		background: url("../img/index/sp_bg03.png") no-repeat;
		background-size: 100% 15px;
		height: 15px;
		content: "";
	}
	#main .sec02 .imgBox {
		max-width: inherit;
		margin: 0 auto 60px;
		position: relative;
		z-index: 1;
	}
	#main .sec02 .pho {
		margin: -49px 7px 22px;
		width: auto;
		text-align: center;
	}
	#main .sec02 .textBox .headLine02 {
		margin: 0 20px 17px;
	}
	#main .sec02 .textBox {
		margin-left: 0;
		width: auto;
	}
	#main .sec02 .textBox .ttl {
		margin-bottom: 18px;
		font-size: 1.75rem;
	}
	#main .sec02 .textUl {
		max-width: inherit;
		margin: 0 -20px;
		padding: 0;
		display: block;
	}
	#main .sec02 .textUl > li {
		width: auto;
		padding: 16px 22px 20px;
		border-radius: 0;
	}
	#main .sec02 .textUl > li:last-child {
		margin-top: 28px;
		padding-bottom: 68px;
		background : linear-gradient(90deg, rgba(218, 241, 255, 0.7) 0%, rgba(126, 201, 255, 0.7) 51.79%, rgba(131, 202, 196,0.7) 100%);
	}
	#main .sec02 .textUl h3 {
		margin-bottom: 10px;
		font-size: 1.95rem;
	}
	#main .sec02 .textUl > li:last-child h3 {
		margin-bottom: 17px;
	}
	#main .sec02 .textUl .comLink span {
		background-size: 20px auto;
	}
	#main .sec02 .textUl .comLink.color span {
		background-size: 29px auto;
	}
	#main .sec02 .textUl li li:not(:last-child) {
		margin-bottom: 30px;
	}
	#main .sec02 .textUl p {
		margin: 10px 20px 0;
		font-size: 1.25rem;
	}
	#main .sec03 {
		padding: 57px 20px 30px;
	}
	#main .sec03 .iconImg01 {
		left: 6px;
		top: -22px;
		width: 28px;
	}
	#main .sec03 .iconImg02 {
		right: 0;
		top: -38px;
		width: 62px;
	}
	#main .sec03 .headLine01 {
		margin-bottom: 30px;
	}
	#main .sec03 .headLine01 .en {
	  margin: 0 auto 4px;
	}
	#main .sec03 .textUl {
		margin-top: -18px;
		justify-content: space-between;
	}
	#main .sec03 .textUl li {
		width: 48.2%;
		margin: 18px 0 0;
		border-radius: 20px;
	}
	#main .sec03 .textUl a {
		padding: 17px 19px 38px;
		background-position: bottom 14px center;
		background-size: 20px auto;
	}
	#main .sec03 .textUl .pho {
		margin: 0 auto 7px;
	}
	#main .sec03 .textUl .pho .on {
		opacity: 0 !important;
	}
	#main .sec03 .textUl p {
		font-size: 0.85rem;
	}
	#main .sec03 .textUl h3 {
		margin-bottom: 4px;
		font-size: 1.25rem;
	}
	#main .sec04 {
		padding: 15px 0;
	}
	#main .sec04 .iconImg01 {
		right: 30px;
		top: -51px;
		width: 59px;
	}
	#main .sec04 .headLine01 {
		margin-bottom: 28px;
	}
	#main .sec04 .bgBox {
		margin-bottom: 41px;
	}
	#main .sec04 .info {
		min-height: inherit !important;
		padding: 13px 0 36px;
	}
	#main .sec04 .info:nth-child(2n + 1) {
		padding: 24px 0 42px;
		background-image: url("../img/index/sp_bg04.png");
	}
	#main .sec04 .imgBox {
		max-width: inherit;
	}
	#main .sec04 .pho {
		margin-bottom: 5px;
		position: static !important;
		width: auto !important;
	}
	#main .sec04 .pho img {
		width: 100%;
	}
	#main .sec04 .info01 .pho {
		margin-bottom: 24px;
	}
	#main .sec04 .textBox {
		width: auto;
		padding: 0 20px;
	}
	#main .sec04 .textBox .icon {
		left: 26px;
		width: 37px;
	}
	#main .sec04 .info:nth-child(2n + 1) .textBox {
		margin: 0;
	}
	#main .sec04 .textBox p {
		line-height: 2;
		letter-spacing: 0;
	}
	#main .sec05 {
		padding: 54px 0 0;
	}
	#main .sec05 .iconImg01 {
		left: 24px;
		top: -12px;
		width: 28px;
	}
	#main .sec05 .iconImg02 {
		right: 17px;
		top: -28px;
		width: 62px;
	}
	#main .sec05 .headLine01 {
		margin-bottom: 27px;
	}
	#main .sec05 .headLine01 .sml {
		margin: 11px 0 4px;
	}
	#main .sec05 .imgBox {
		padding: 0;
		margin-bottom: -9%;
		display: block;
		background-image: url("../img/index/sp_bg05.png");
	}
	#main .sec05 .pho {
		width: auto;
	}
	#main .sec05 .pho img {
		width: 100%;
	}
	#main .sec05 .textBox {
		width: auto;
		padding: 29px 23px 62px;
	}
	#main .sec05 .textBox > div {
		max-width: inherit;
	}
	#main .sec05 .headLine02 {
		padding-bottom: 32px;
		margin-bottom: 19px;
	}
	#main .sec05 .textBox p {
		margin-bottom: 34px;
	}
	#main .sec05 .photo img {
		width: 100%;
	}
	#main .sec06 {
		padding: 44px 20px 60px;
		background: url("../img/index/sp_bg06.png") no-repeat left -0 bottom #F3E7D7;
		background-size: 340px auto;
	}
	#main .sec06:before {
		border-width: 15px;
	}
	#main .sec06 .headLine01 {
		margin-bottom: 40px;
	}
	#main .sec06 .headLine01 .sml {
		margin: 10px 0 3px;
	}
	#main .sec06 p {
		margin: 0 20px 30px;
	}
	#main .sec06 .comLink a span {
		background-position: center left 30px;
		background-size: 38px auto;
	}
	#main .sec07 {
		padding: 37px 20px 86px;
	}
	#main .sec07 .headLine01 {
		margin-bottom: 19px;
		line-height: 1.52;
		letter-spacing: -0.05em;
	}
	#main .sec07 .headLine01 .icon {
		width: 240px;
		margin: 0 auto 25px;
	}
	#main .sec07 p {
		margin-bottom: 35px;
	}
	#main .sec08 {
		padding: 38px 20px 100px;
	}
	#main .sec08:before {
		top: -22px;
		background: url("../img/index/sp_bg07.png") no-repeat;
		background-size: 100% 22px;
		height: 22px;
	}
	#main .sec08 p {
		margin-bottom: 30px;
	}
	#main .sec08 .pho {
		max-width: inherit;
		text-align: center;
		margin: 0 -8px 41px -7px;
	}
}
@media all and (max-width: 365px) {
	.mainVisual h1 {
		width: 325px;
	}
	.mainVisual h1 span {
		font-size: 1.8rem;
	}
}