/* = home
-------------------------------------------------------------- */
.goodpointSlide{
	display:block !important;
	opacity:0;
}
.goodpointSlideSP{
	display:none !important;
}

#goodpoint{
	padding-top:85px;
}

.keyVisual{
	position:relative;
	z-index:0;
}

.keyVisualWave{
	position:absolute;
	left:0;
	height:44px;
	top:-44px;
	width:100%;
	background-image:url(/share/imgs/cp/images/pageWaveGray@2x.png);
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center;
	z-index:1000;
}
.keyVisualWave::after{
	content:"";
	position:absolute;
	left:0;
	bottom:-2px;
	width:100%;
	height:4px;
	background-color:#F7F5F5;
	z-index:1000;
}

.contentWrap{
	padding-top:47px;
}
.contentWrap2{
	padding-top:0;
}

.titleGoodpoint{
	width:442.73px;
	margin:0 auto;
}
.titleGoodpoint img{
	width:100%;
}
.goodpointDescription{
	font-size:16px;
	line-height:1.875em;
	letter-spacing:.01em;
	font-weight:normal;
	text-align:center;
	margin-top:51px;
}

.goodpointWrap{
	position:relative;
	padding:72px 0;
}
.anchor{
	position:absolute;
	top:-60px;
	width:100%;
}

.icon{
	width:78px;
	margin-left:11px;
	margin-right:11px;
	float:left;
}
.icon img{
	width:100%;
}
.textWrap{
	width:598px;
	float:left;
}
.textWrap h2{
	font-size:28px;
	line-height:1.5em;
	letter-spacing:.01em;
	font-weight:bold;
	text-align:left;
}
.textWrap p{
	font-size:16px;
	line-height:1.875em;
	letter-spacing:.01em;
	font-weight:normal;
	text-align:left;
}

.dotted {
	width:100%;
	height:20px; 
	margin-top:10px;
}

.dotted line{
	fill: none; 
	stroke: #058DBF;
	stroke-width: 2;
	stroke-linecap: round; 
         /* 線の端の部分を丸く、四角はsquare*/
	stroke-dasharray: 0.5, 4;
}
.iconTextWrap{
	float:right;
}

.round{
	float:left;
	width:350px;
}
.round img{
	width:100%;
}

.goodpointThum{
	display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-flex-wrap:wrap;
        -ms-flex-wrap:wrap;
            flex-wrap:wrap;
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
        -ms-flex-pack:justify;
            justify-content:space-between;
    margin-top:59px;
}
.goodpointThum li{
	width:336px;
	margin-bottom:30px;
}
.accessMap{
	width:693px;
    background-color:#ffffff;
    border-radius:5px;
    padding:30px 17px;
}
.accessMap img{
	width:100%;
}

.accessWay{
	width:336px;
    background-color:#ffffff;
    border-radius:5px;
    text-align:center;
}
.accessWay img{
	display:block;
	width:120px;
	height:auto;
	margin:8px auto;
	margin-top:16px;
}
.accessWay p{
	font-size:14px;
	line-height:1.875em;
	letter-spacing:.01em;
	font-weight:normal;
	text-align:left;
	display:inline-block;
}
.thumImage img{
	border-radius:5px;
}
.thumTitle{
	margin-top:4px;
	font-size:14px;
	line-height:1.714em;
	letter-spacing:.01em;
	font-weight:bold;
	text-align:left;
}
.thumCaption{
	margin-top:4px;
	font-size:10px;
	line-height:1.7em;
	letter-spacing:.01em;
	font-weight:normal;
	text-align:left;
}
.thumCaption a{
	text-decoration:underline;
}
.speech{
	position:relative;
}
.speech img{
	position:absolute;
	left:0;
	top:-56px;
}

.btn {
	margin:60px auto;
	text-align:center;
}
	
.btn a{
	position:relative;
	display:inline-block;
	font-size:12px;
	line-height:1em;
	letter-spacing:.01em;
	font-weight:normal;
	text-align:left;
	padding-left:19px;
	padding-right:42px;
	padding-top:24px;
	padding-bottom:24px;
	border:solid 1px #707070;
	background-color:#ffffff;
	opacity:1;
	-webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}
.btn a::after{
	position:absolute;
	content:"";
	width:6px;
	height:11px;
	right:16px;
	top:24px;
	background-image:url(/share/imgs/cp/images/arrow@2x.png);
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center;
}

.bannerWrap{
	width:998px;
	margin:0 auto;
}
.bannerWrap a{
	display:block;
	float:left;
	width:489px;
	opacity:1;
	-webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}

.bannerWrap a img{
	width:100%;
}
.bannerWrap a:first-child{
	margin-right:20px;
}

.homeVoice{
	padding-top:72px;
	padding-bottom:72px;
}
.titleVoice{
	text-align:center;
}
.titleVoice img{
	width:581.53px;
}
.textVoice{
	font-size:16px;
	line-height:1.875em;
	letter-spacing:.01em;
	font-weight:normal;
	text-align:center;
	margin-top:35px;
	margin-bottom:32px;
}

.slideTopVoice .slideItem a{
	position:relative;
	width:100%;
	height:100%;
	display:block;
}
.slideTopVoice .slideItem a{
	position:relative;
	padding-top:2px;
}
.voiceThumHover{
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	opacity:0;
	-webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}


.voiceTextWrap{
	position:absolute;
	top:50%;
	left:50%;
	z-index:1000;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width:100%;
	opacity:0;
	-webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}

.slideTopVoice li:nth-child(2n+1) .voiceTextWrap{
	margin-left:-6px;
	margin-top:-6px;
}
.slideTopVoice li:nth-child(2n) .voiceTextWrap{
	margin-left:-9px;
}

.voiceTitle{
	font-size:14px;
	line-height:24px;
	letter-spacing:.01em;
	font-weight:normal;
	text-align:center;
	color:#ffffff;
	margin-bottom:24px;
}
.voiceTitle.longText{
	margin-bottom:8px;
}
.voiceName{
	font-size:13px;
	line-height:21px;
	letter-spacing:.01em;
	font-weight:normal;
	text-align:center;
	color:#ffffff;
}

/* = Media (Responsive Setting)
-------------------------------------------------------------- */
@media only screen and (min-width: 768px) and (max-width: 1079px) {
	
#goodpoint{
	padding-top:58px;
}
.contentWrap{
	padding-top:32.9px;
}
.titleGoodpoint{
	width:309.911px;
}
.goodpointDescription{
	font-size:13px;
	line-height:1.875em;
	margin-top:35.7px;
}
.goodpointWrap{
	padding:50.4px 0;
}
.anchor{
	position:absolute;
	top:-40px;
	width:100%;
}


.icon{
	width:54.6px;
	margin-left:7.7px;
	margin-right:7.7px;
}
.textWrap{
	width:418.6px;
}
.textWrap h2{
	font-size:19.6px;
}
.textWrap p{
	font-size:12px;
}
.round{
	width:245px;
}
.goodpointThum{
    margin-top:41.3px;
}

.goodpointThum li{
	width:235.2px;
	margin-bottom:30px;
}

.accessMap{
	width:485.1px;
    padding:21px 11.9px;
}
.accessWay{
	width:235.2px;
}
.accessWay img{
	width:84px;
	margin:5.6px auto;
	margin-top:11.2px;
}
.accessWay p{
	font-size:12px;
}
.thumImage img{
	border-radius:5px;
	width:100%;
}
.thumTitle{
	margin-top:2.8px;
	font-size:10px;
}
.thumCaption{
	margin-top:2.8px;
	font-size:10px;
}
.speech img{
	top:-39.2px;
	left:-8px;
	width:111.9402%;
}
.btn {
	margin:42px auto;
}
.btn a{
	font-size:12px;
	padding-left:13.3px;
	padding-right:29.4px;
	padding-top:16.8px;
	padding-bottom:16.8px;
}
.btn a::after{
	position:absolute;
	content:"";
	width:4.2px;
	height:7.7px;
	right:11.2px;
	top:16.8px;
}
.bannerWrap{
	width:698.6px;
}
.bannerWrap a{
	width:342.3px;
}
.bannerWrap a:first-child{
	margin-right:14px;
}
.homeVoice{
	padding-top:50.4px;
	padding-bottom:50.4px;
}
.titleVoice img{
	width:407.071px;
}
.textVoice{
	font-size:11.2px;
	margin-top:24.5px;
	margin-bottom:22.4px;
}
.voiceTitle{
	font-size:10px;
	line-height:16.8px;
	margin-bottom:16.8px;
}
.voiceName{
	font-size:10px;
	line-height:14.7px;
}



} /*Query End*/
@media only screen and (max-width: 767px) {
	
.goodpointSlide{
	display:none !important;
}
.goodpointSlideSP{
	display:block !important;
}
	
#goodpoint{
	padding-top:47px;
}
.contentWrap{
	padding-top:32.9px;
}
.titleGoodpoint{
	width:309.911px;
}
.goodpointDescription{
	font-size:13px;
	line-height:1.875em;
	margin-top:35.7px;
}
.goodpointWrap{
	padding:25.2px 0;
	padding-top:47px;
}
.anchor{
	position:absolute;
	top:-28px;
	width:100%;
}

.icon{
	width:54.6px;
	margin-left:0px;
	margin-right:3.4px;
}
.textWrap{
	width:262px;
}
.textWrap h2{
	font-size:19.6px;
}
.textWrap p{
	font-size:12px;
}
.iconTextWrap{
	margin-bottom:24px;
}
.round{
	width:320px;
}
.goodpointWrap.access{  
	position:relative;
}
.goodpointWrap.access .goodpointMain .round{
	position:absolute;
    bottom:0;
   }

.goodpointThum{
	width:100%;
    margin-top:41.3px;
    position:relative;
    padding-bottom:260px;
}
.goodpointThum li{
	width:48%;
	margin-bottom:30px;
}

#accessWrap{
	margin-bottom:40px;
}
#accessWrap .goodpointThum{
	padding-bottom:196px;
}
.accessMap{
    padding:21px 11.9px;
}
.accessMap{
	width:100%;
}
.accessWay{
	width:100%;
}
.accessWay span{
	display:block;
	clear:both;
}

.accessWay img{
	width:84px;
	margin:16px 16px;
	margin-top:16px;
	display:block;
	float:left;
}
.accessWay p{
	font-size:12px;
	width:200px;
	display:block;
	float:left;
	margin-top:24px;
}
.thumImage img{
	border-radius:5px;
	width:100%;
}
.thumTitle{
	margin-top:2.8px;
	font-size:10px;
}
.thumCaption{
	margin-top:2.8px;
	font-size:10px;
}
.speech{
	position:absolute;
	width:100% !important;
    bottom:0;
}
.speech img{
	position:relative;
	top:-20px;
	width:100%;
}
.btn {
	margin:42px auto;
}
.btn a{
	font-size:12px;
	padding-left:13.3px;
	padding-right:29.4px;
	padding-top:16.8px;
	padding-bottom:16.8px;
}
.btn a::after{
	position:absolute;
	content:"";
	width:4.2px;
	height:7.7px;
	right:11.2px;
	top:16.8px;
}
.bannerWrap{
	width:320px;
}
.bannerWrap a{
	width:320px;
	margin-bottom:24px;
}
.bannerWrap a:first-child{
	margin-right:0px;
}
.homeVoice{
	padding-top:50.4px;
	padding-bottom:50.4px;
}
.titleVoice img{
	width:305.55px;
	height:35.175px;
}
.textVoice{
	font-size:11.2px;
	margin-top:24.5px;
	margin-bottom:11.2px;
}
.voiceTitle{
	font-size:10px;
	line-height:16.8px;
	margin-bottom:16.8px;
}
.voiceName{
	font-size:10px;
	line-height:14.7px;
}	
	
} /*Query End*/
@media only screen and (min-width: 768px) {

.btn:hover a{
	-webkit-transform: translate(1%, 1%);
	transform: translate(1%, 1%);
	-webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
    transform-origin:center center;

}
.bannerWrap a:hover{
	-webkit-transform: translate(1%, 1%);
	transform: translate(1%, 1%);
	-webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
    transform-origin:center center;

}
.slideTopVoice .slideItem a:hover .voiceThumHover{
	opacity:.79;
	
}

.slideTopVoice .slideItem a:hover .voiceTextWrap{
	opacity:1;
}

} /*Query End*/