@charset "utf-8";

/**
 *
 * TopPage
 *
 */

/*===============================================
●index.css 画面の横幅が641px以上
===============================================*/
@media screen and (min-width: 641px){
img{
    max-width: 100%;
    height: auto;
    width /***/:auto;　;
}

/* MAIN VISUAL */
.main-visual {
	background: #fff9e6;

	height: 460px;
	position: relative;
	margin-bottom: 34px;
}
.main-visual:before {
	background: -moz-linear-gradient(left, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 10%, rgba(255,255,255,0) 100%);
background: -webkit-linear-gradient(left, rgba(255,255,255,1) 0%,rgba(255,255,255,1) 10%,rgba(255,255,255,0) 100%);
background: linear-gradient(to right, rgba(255,255,255,1) 0%,rgba(255,255,255,1) 10%,rgba(255,255,255,0) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=1 );
	content: "";
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100px;
	height: 460px;
	z-index: 5;
}
.main-visual:after {
	background: -moz-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 90%, rgba(255,255,255,1) 100%);
background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 90%,rgba(255,255,255,1) 100%);
background: linear-gradient(to right, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 90%,rgba(255,255,255,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=1 );
	content: "";
	position: absolute;
	right: 0px;
	top: 0px;
	width: 100px;
	height: 460px;
	visibility: visible;
	z-index: 5;
}
.main-visual .main-visual-inner {
	background: url(/img/top/mainvisual.jpg) center top no-repeat;	
	width: 1110px;
	margin: 0 auto;
	position: relative;
	height: 460px;
}
.main-visual-inner:before {
	background: -moz-linear-gradient(left, rgba(255,249,230,0) 0%, rgba(255,249,230,1) 90%, rgba(255,249,230,1) 100%);
background: -webkit-linear-gradient(left, rgba(255,249,230,0) 0%,rgba(255,249,230,1) 90%,rgba(255,249,230,1) 100%);
background: linear-gradient(to right, rgba(255,249,230,0) 0%,rgba(255,249,230,1) 90%,rgba(255,249,230,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=1 );
	content: "";
	position: absolute;
	right: 0px;
	top: 0px;
	width: 100px;
	height: 460px;
	visibility: visible;
	z-index: 2;
}
.main-visual-inner:after {
	background: -moz-linear-gradient(right, rgba(255,249,230,0) 0%, rgba(255,249,230,1) 90%, rgba(255,249,230,1) 100%);
background: -webkit-linear-gradient(right, rgba(255,249,230,0) 0%,rgba(255,249,230,1) 90%,rgba(255,249,230,1) 100%);
background: linear-gradient(to left, rgba(255,249,230,0) 0%,rgba(255,249,230,1) 90%,rgba(255,249,230,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=1 );
	content: "";
	position: absolute;
	left: 0px;
	top: 0px;
	width: 50px;
	height: 460px;
	visibility: visible;
	z-index: 2;
}
.main-visual .obi {
	visibility: visible;
	width: 100%;
	height: 108px;
	left: 0;
	bottom: 0px;
	position: absolute ;
	background: url(/img/top/obi.png) center bottom no-repeat;
	background-size: 100% 37px;
	content: "";
	z-index: 4;
}
.main-visual h2 {
	font-size: 34px;
	color: #0085B2;
	line-height: 1.47em;
	margin-left: 50px;
	font-weight: bold;
	padding-top: 40px;
	margin-bottom: 1em;
}
.main-visual h2 span {
	text-shadow: white 2px 0px 2px, white -2px 0px 2px,
    white 0px -2px 2px, white -2px 0px 2px,
    white 2px 2px 2px, white -2px 2px 2px,
    white 2px -2px 2px, white -2px -2px 2px,
    white 1px 2px 2px, white -1px 2px 2px,
    white 1px -2px 2px, white -1px -2px 2px,
    white 2px 1px 2px, white -2px 1px 2px,
    white 2px -1px 2px, white -2px -1px 2px,
    white 1px 1px 2px, white -1px 1px 2px,
    white 1px -1px 2px, white -1px -1px 2px;
}
.main-visual p {
	line-height: 1.77em;
	font-size: 15px;
	color: #391F00;
	text-shadow: white 2px 0px 2px, white -2px 0px 2px,
    white 0px -2px 2px, white -2px 0px 2px,
    white 2px 2px 2px, white -2px 2px 2px,
    white 2px -2px 2px, white -2px -2px 2px,
    white 1px 2px 2px, white -1px 2px 2px,
    white 1px -2px 2px, white -1px -2px 2px,
    white 2px 1px 2px, white -2px 1px 2px,
    white 2px -1px 2px, white -2px -1px 2px,
    white 1px 1px 2px, white -1px 1px 2px,
    white 1px -1px 2px, white -1px -1px 2px;
	width: 484px;
}
.main-visual .list-circle {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	margin-bottom: 40px;	
	margin-left: 50px;	
}
.main-visual .list-circle > li {
	margin-right: 10px;
}
.main-visual .list-circle-2 {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;	
	margin-left: 50px;	
}
.main-visual .list-circle-2 > li {
	margin-right: 10px;
}
.main-visual .main-visual-cor {
	position: absolute;
	right: 0px;
	bottom: 50px;
	z-index: 6;
}


/* MAIN BANNERS */
.main-banners {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	flex-wrap: wrap;	
}
.main-banners:after {
	content: none;
}
.main-banners > div {
	width: 540px;
	line-height: 1.52em;
	font-size: 13px;
	color: #000000;
	margin-bottom: 20px;
}
.main-banners > div img {
	display: block;
	margin: 0 auto 5px;
}

.box-990 .main-banners > div {
	width: 480px;
}


/* main feature */
.main-feature {
	padding-top: 50px;
}
.main-feature h2 {
	text-align: center;
	color: #FF8000;
	background: url(/img/title-line.png) left center repeat-x;
	margin: 30px auto 50px;
	letter-spacing: 0.3em;
	font-weight: normal;
}
.main-feature h2 span {
	display: inline-block;
	text-align: center;
	background: white;
	font-size: 30px;
	padding: 0 40px;
}
.main-feature h2 span small {
	font-size: 20px;
	display: block;	
	letter-spacing: normal;
	margin-bottom: 15px;
}
/*
.main-feature .title-main:before {
	content: "";
	background: white url(/img/title-feature.png) center top no-repeat;
	display: block;
	height: 50px;
	width: 222px;
	margin: 0 auto;

}
*/
.list-feature {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 30px auto 20px;	
}
.list-feature > li {
	width: 350px;
}
.list-feature .feature {
	
}
.list-feature .feature a {
	display: block;
	width: 100%;
	height: 100%;
	line-height: 0;
	text-decoration: none;
	position: relative;
}
.list-feature .feature a:hover {
	opacity: 0.7;
}
.list-feature .feature-pic {
	position: relative;
}

.list-feature .feature-pic img {
	
}
.list-feature .feature-title {
	font-size: 24px;
	color: white;
	text-align: center;
	padding: 0px 0;
	background: rgba(255,147,38,.8);
	height: 48px;
	line-height: 48px;
	position: absolute;
	left: 0;
	top: 142px;
	width: 100%;
	box-sizing: border-box;
	border-bottom-right-radius: 0px;
}
.list-feature p {
	line-height: 1.65em;
	font-size: 14px;
	color: #000000;
	padding: 8px 0px;
}

/* main news */
.main-news {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;	
	margin: 45px auto 0;
}
.main-news > div {
	width: 480px;
}

.main-news h2 {
	font-size: 18px;
	text-align: left;
	color: #FF8000;
	border-bottom: 1px solid #BBBBBB;
	padding-bottom: 8px;
	font-weight: normal;
	margin-bottom: 20px;
}

.list-news {
	
}
.list-news > li {
	position: relative;
}
.list-news .news-time {
	font-size: 14px;
	color: #333333;
	position: absolute;
	left: 0;
	top: 2px;
}
.list-news .news-title {
	padding-left: 90px;
}
.list-news .news-title a {
	font-size: 16px;
	color: #00A3D9 !important;
	text-decoration: underline !important;
}


/* main treat */
.main-treat {
	margin-top: 100px;
}
.main-treat h2 {
	text-align: center;
	color: #FF8000;
	background: url(/img/title-line.png) left center repeat-x;
	margin: 30px auto 45px;
	letter-spacing: 0.3em;
	font-weight: normal;	
}
.main-treat h2 span {
	display: inline-block;
	text-align: center;
	background: white;
	color: #FF8000;
	font-size: 22px;
	font-weight: normal;
	padding: 0 20px;
}
.main-treat .title-main:before {
	content: "";
	background: white url(/img/title-treat.png) center top no-repeat;
	display: block;
	height: 50px;
	width: 300px;
	margin: 0 auto;	
}
.list-treat {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	flex-wrap: wrap;	
	margin-top: 40px;
}
.list-treat > li {
	width: 230px;	
	margin-bottom: 55px;
}
.list-treat .treat {
	
}
.list-treat .treat a {
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
}
.list-treat .treat a:hover {
	opacity: 0.7;
}
.list-treat .treat .treat-pic {
	text-align: center;
	height: 180px;
}
.list-treat .treat .treat-title {
	text-align: center;
	font-size: 20px;
	color: #442E1F;
	padding: 10px 0 10px;
	font-weight: normal;
	line-height: 1.4em;
}
.list-treat .treat p {
	line-height: 1.42em;
	font-size: 12px;
	color: #442E1F;
}

/* MAIN MEDIA */
.main-media {
	margin-bottom: 90px;
}
.title-line {
	clear: both;
	display: block;
	line-height: 1.3em;
	font-size: 22px !important;
	margin: 5px 0 15px 0 !important;
	padding: 10px 0 7px 0px !important;
	font-weight: normal;
	color: #FF8000 !important;
	border-bottom: solid #BBB 1px;	
}
.main-media .alignR {
	float: right;
	margin-left: 20px;
}
.main-media p {
	font-size: 16px;
}
.main-media p a {
	color: #FF8000;
	position: relative;
	text-decoration: underline;
}
.main-media p a:hover {
	text-decoration: none;
}
.main-media p a:after {
	content: "";
	background: url(/img/link.png) center center no-repeat;
	position: absolute;
	left: 100%;
	padding-left: 3px;
	top: 0;
	width: 15px;
	height: 15px;
	display: inline-block;
	vertical-align: middle;
	visibility: visible;
	top: 4px;
	
}

.index-content p { 
}


.list-reason {
	display: -webkit-flex;
	display: flex !important;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 30px auto 20px !important;
	list-style: none !important;
}
.list-reason > li {
	width: 230px;
	position: relative;
	margin-bottom: 30px;
}

.list-reason  a {
	display: block;
	width: 100%;
	height: 100%;
	line-height: 0;
	text-decoration: none;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 3;
}
.list-reason  a:hover {
	background: rgba(255,255,255,0.3);
}
.list-reason img {
	position: relative;
}

.list-reason p {
	font-size: 19px;
	color: white;
	text-align: center;
	padding: 0px 0;
	background: rgba(0,178,178,0.8);
	height: 48px;
	line-height: 48px;
	position: absolute;
	left: 0;
	top: 142px;
	width: 100%;
	box-sizing: border-box;
	border-bottom-right-radius: 0px;
}
.list-reason-2 p {
	background: rgba(255,158,59,0.8);
}


}
/*===============================================
●index.css  画面の横幅が640pxまで
===============================================*/
@media screen and (max-width:640px){
img{
    max-width: 100%;
    height: auto;
    width /***/:auto;　;
}

/* MAIN VISUAL */
.main-visual {

	position: relative;
}
.main-visual .main-visual-inner {

}
.main-visual .main-visual-inner .box-1110 {
	background: url(/img/top/mainvisual.jpg?2020) center center no-repeat;
	background-size: cover;
	/* background-size: contain;
	padding-top: 55.78%; */	
	width: 100%;
	height: 310px;
}
.main-visual h2 {
	font-size: 18px;
	color: #0085B2;
	line-height: 1.37em;
	text-shadow: 0px 0px 5px white, 0px 0px 5px white, 0px 0px 5px white, 0px 0px 5px white, 0px 0px 5px white;
	font-weight: normal;
	padding: 10px;
	margin-bottom: 1em;
	position: absolute;
	left: 0;
	top: 0px;
}
.main-visual h2 span {
	text-shadow: white 2px 0px 2px, white -2px 0px 2px,
    white 0px -2px 2px, white -2px 0px 2px,
    white 2px 2px 2px, white -2px 2px 2px,
    white 2px -2px 2px, white -2px -2px 2px,
    white 1px 2px 2px, white -1px 2px 2px,
    white 1px -2px 2px, white -1px -2px 2px,
    white 2px 1px 2px, white -2px 1px 2px,
    white 2px -1px 2px, white -2px -1px 2px,
    white 1px 1px 2px, white -1px 1px 2px,
    white 1px -1px 2px, white -1px -1px 2px;
}
.main-visual .obi {
	visibility: visible;
	width: 100%;
	height: 37px;
	left: 0;
	bottom: 0px;
	position: absolute ;
	background: url(/img/top/obi.png) center bottom no-repeat;
	background-size: 100% 37px;
	content: "";
	z-index: 4;
}
.main-visual p {
	padding-top: 55.78%;		
	line-height: 1.77em;
	font-size: 14px;
	color: #391F00;
	text-shadow: 0px 0px 5px white, 0px 0px 5px white, 0px 0px 5px white, 0px 0px 5px white, 0px 0px 5px white;
	padding-left: 15px;
	padding-right: 15px;
	position: absolute;
	left: 0;
	top: 0px;
}

.main-visual .list-circle {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	position: absolute;
	left: 10px;
	top: 140px;
}
.main-visual .list-circle > li {
	margin-right: 2px;
	width: 60px;
}
.main-visual .list-circle-2 {
	
	position: absolute;
	left: 10px;
	top: 220px;		
}
.main-visual .list-circle-2 > li {
	margin-right: 5px;
	width: 160px;
}
.main-visual .main-visual-cor {
	position: absolute;
	right: 10px;
	bottom: 10px;
	z-index: 6;
	width: 160px;
}


/* MAIN BANNERS */
.main-banners {
	padding: 50px 15px 15px;

}
.main-banners > div {

	line-height: 1.52em;
	font-size: 13px;
	color: #000000;
}
.main-banners > div img {
	display: block;
	margin: 0 auto 5px;
}
.box-990 .main-banners {
	padding-top: 0px;
}
.box-990 .main-banners > div {
	line-height: 1.52em;
	font-size: 13px;
	color: #000000;
	margin-bottom: 15px;
}


/* main feature */
.main-feature {
	
}
.main-feature h2 {
	text-align: center;
	color: #FF8000;
	background: url(/img/title-line.png) left center repeat-x;
	margin: 40px auto 50px;
	letter-spacing: 0.3em;
	font-weight: normal;
	line-height: 2em;
}
@media screen and (max-width:320px){
	.main-feature h2 {
		margin-top: 100px;	
	}
}
.main-feature h2 span {
	display: inline-block;
	text-align: center;
	background: white;
	font-size: 20px;
	padding: 0 15px;
}
.main-feature h2 span small {
	font-size: 14px;
	display: block;	
	letter-spacing: normal;
	margin-bottom: 5px;
}
.main-feature .title-main:before {
	content: "";
	background: white url(/img/title-feature.png) center top no-repeat;
	display: block;
	height: 50px;
	width: 222px;
	margin: 0 auto;

}
.list-feature {
	margin: 0px 15px 20px;	
}
.list-feature > li {

}
.list-feature .feature {
	
}
.list-feature .feature a {
	display: block;
	width: 100%;
	height: 100%;
	line-height: 0;
	text-decoration: none;
	position: relative;
}
.list-feature .feature a:hover {
	opacity: 0.7;
}
.list-feature .feature-pic {
	position: relative;
	overflow: hidden;
	height: 80px;
	text-align: center;
	border-radius: 4px;
}

.list-feature .feature-pic img {
	width: 115%;
	position: relative;
	left: -1%;
	top: -20px;
	max-width: 115%;
}
.list-feature .feature-title {
	font-size: 17px;
	color: #FF8000;
	text-align: center;
	padding: 0px 0;
	text-shadow: 0px 0px 5px white, 0px 0px 5px white, 0px 0px 5px white, 0px 0px 5px white, 0px 0px 5px white;

	line-height: 80px;
	position: absolute;
	left: 0;
	top: 0;
	
	width: 100%;
	box-sizing: border-box;
	border-bottom-right-radius: 17px;
}
.list-feature p {
	line-height: 1.65em;
	font-size: 12px;
	color: #000000;
	padding: 4px 0px;
}

/* main news */
.main-news {

	margin: 5px 15px 0;
}
.main-news > div {
	margin-bottom: 15px;
}

.main-news h2 {
	font-size: 18px;
	text-align: left;
	color: #FF8000;
	border-bottom: 1px solid #BBBBBB;
	padding-bottom: 8px;
	font-weight: normal;
	margin-bottom: 15px;
	line-height: 1.5em;
}
.list-news {
	
}
.list-news > li {
	position: relative;
	margin-bottom: 10px;
}
.list-news .news-time {
	font-size: 14px;
	color: #333333;
	display: block;
}
.list-news .news-title {

}
.list-news .news-title a {
	font-size: 16px;
	color: #00A3D9 !important;
	text-decoration: underline !important;
}

/* main treat */
.main-treat {

}
.main-treat h2 {
	text-align: center;
	color: #FF8000;
	background: url(/img/title-line.png) left center repeat-x;
	margin: 30px auto 45px;
	letter-spacing: 0.3em;
	font-weight: normal;	
}
.main-treat h2 span {
	display: inline-block;
	text-align: center;
	background: white;
	color: #FF8000;
	font-size: 18px;
	font-weight: normal;
	padding: 0 15px;
}
.main-treat .title-main:before {
	content: "";
	background: white url(/img/title-treat.png) center top no-repeat;
	display: block;
	height: 50px;
	width: 300px;
	margin: 0 auto;	
}
.list-treat {
	margin: 15px;
	display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		flex-wrap: wrap;		
}
.list-treat > li {
	margin-bottom: 15px;
	width: 50%;
}
.list-treat .treat {
	
}
.list-treat .treat a {
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
}
.list-treat .treat a:hover {
	opacity: 0.7;
}
.list-treat .treat .treat-pic {
	text-align: center;
	width: 100px;
	margin: 0 auto 10px;
}
.list-treat .treat .treat-title {
	text-align: center;
	font-size: 13px;
	color: #332010;
	padding: 0px 0 10px;
	font-weight: normal;
	line-height: 1.3em;
}
.list-treat .treat p {
	line-height: 1.42em;
	font-size: 12px;
	color: #000000;
	overflow: auto;
	zoom: 1;
}

/* MAIN MEDIA */
.main-media {
	margin: 15px;
}
.title-line {
	clear: both;
	display: block;
	line-height: 1.3em;
	font-size: 22px !important;
	margin: 5px 0 15px 0 !important;
	padding: 10px 0 7px 0px !important;
	font-weight: normal;
	color: #FF8000 !important;
	border-bottom: solid #BBB 1px;	
}
.main-media .alignR {
	display: block;
	margin: 15px auto;
	float: none !important;
	width: 200px;
}
.main-media p {
	font-size: 16px;
}
.main-media p a {
	color: #FF8000 !important;
	position: relative;
	text-decoration: underline;
}
.main-media p a:hover {
	text-decoration: none;
}
.main-media p a:after {
	content: "";
	background: url(/img/link.png) 0 0 no-repeat;
	position: absolute;
	left: 100%;
	padding-left: 3px;
	top: 4px;
	width: 15px;
	height: 15px;
	display: block;
	
}

.index-content p { 
	margin-bottom: 0em;
}

.list-reason {
	display: -webkit-flex;
	display: flex !important;
	-webkit-justify-content: center;
	justify-content: center;
	flex-wrap: wrap;
	margin: 30px auto 20px !important;
	list-style: none !important;
}
.list-reason > li {
	width: 48%;
	position: relative;
	margin: 1%;
}

.list-reason  a {
	display: block;
	width: 100%;
	height: 100%;
	line-height: 0;
	text-decoration: none;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 3;
}
.list-reason  a:hover {
	background: rgba(255,255,255,0.3);
}
.list-reason img {
	position: relative;
}

.list-reason p {
	font-size: 19px;
	color: white;
	text-align: center;
	padding: 0px 0;
	background: rgba(0,178,178,0.8);
	height: 48px;
	line-height: 48px;
	position: absolute;
	left: 0;
	bottom: 6px;
	width: 100%;
	margin: 0;
	box-sizing: border-box;
	border-bottom-right-radius: 0px;
}
.list-reason-2 p {
	background: rgba(255,158,59,0.8);
}


}