@charset "utf-8";
/* CSS Document */

/*
theme name:NTC HYBRID TAXI
Theme URI: テーマのURLを記入します
Author: テーマの作者（組織名）を記入します
Author URI: テーマの作者のURLを記入します
Description: ここにテーマの説明文を記入します
version:1.0
*/

/*--------------------------------------
    main-content
--------------------------------------*/

.main-content{
	padding-top:165px;
}
section{
	margin: 60px 0;
}
.section{
	position: relative;
	text-align: center;
}
.section:before{
	position: absolute;
	top:0;
	left:0;
	width:100%;
	height:35px;
	content: "";
	background:#1D2088;
	z-index: 1;
}
.section h2{
	position: relative;
	display: inline-block;
	text-align: center;
	background: #FFFFFF;
	padding:0 55px;
	line-height: 28px;
	font-size:28px;
	font-size:2.8rem;
	font-weight: bold;
	margin-bottom: 70px;
	z-index: 10;
}
.section h2 span{
	font-size:14px;
	font-size:1.4rem;
	line-height: 24px;
	display: block;
	text-align: center;
	font-weight: bold;
}
.section h2:before{
	display: block;
    content: "";
    position: absolute;
    top: 0;
    right: 100%;
    width: 0;
    height: 0;
    border-top: 0px solid transparent;
    border-right: 30px solid #FFFFFF;
    border-bottom: 35px solid transparent;
	z-index: 10;
}
.section h2:after{
	display: block;
    content: "";
    position: absolute;
    top: 0;
    left: 100%;
    width: 0;
    height: 0;
    border-top: 0px solid transparent;
    border-left: 30px solid #FFFFFF;
    border-bottom: 35px solid transparent;
	z-index: 10;
}
@media (max-width: 740px) {
.main-content{
	padding-top:90px;
}
section{
	margin: 50px 0;
}
.section h2{
	padding:0 20px;
	line-height: 24px;
	font-size:24px;
	font-size:2.4rem;
	margin-bottom: 40px;
}
}

/*--------------------------------------
    keyvisual
--------------------------------------*/

.keyvisual{
	height:970px;
}
.keyvisual p img{
	width:100%;
	height:100%;
	object-fit: cover;
}
.bx-wrapper{
	position: relative;
}
.bx-wrapper .bx-prev {
	right: calc(50% + 30px);
	background: url(images/top/prev.png) no-repeat 0 0;
}
.bx-wrapper .bx-next {
	left: calc(50% + 30px);
	background: url(images/top/next.png) no-repeat 0 0;
}
.bx-wrapper .bx-controls-direction a {
	position: absolute;
	bottom: 30px;
	margin-top: -23px;
	outline: 0;
	width: 47px;
	height: 47px;
	text-indent: -9999px;
	z-index: 999;
}
@media (max-width: 740px) {
.keyvisual{
	height:360px;
}
.bx-wrapper .bx-controls-direction a {
	width: 30px;
	height: 30px;
	background-size: contain;
}
}

/*--------------------------------------
    new main-content
--------------------------------------*/

.main-content .new .content-width{
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin: 0 auto 70px;
}
.main-content .new .item{
	width:230px;
}
.main-content .new .item h3{
	width:230px;
	height:50px;
	line-height: 50px;
	font-weight: bold;
	background: #DEDEDE;
	text-align: center;
	margin: 15px 0;
}
.main-content .new .item dl dt{
	float:left;
	width:40px;
	height:20px;
	line-height: 20px;
	background: #DEDEDE;
	font-size:14px;
	font-size:1.4rem;
}
.main-content .new .item dl dd{
	padding-left: 50px;
	line-height: 20px;
	font-size:14px;
	font-size:1.4rem;
	margin-bottom: 10px;
	text-align: left;
}
.main-content .new .button{
	width:280px;
	height:40px;
	margin: 0 auto;
	background: #1D2088;
    -webkit-transition: opacity 0.3s ease-in-out; 
    -moz-transition: opacity 0.3s ease-in-out; 
    -o-transition: opacity 0.3s ease-in-out; 
    transition: opacity 0.3s ease-in-out;
	backface-visibility: hidden;
}
.main-content .new .button:hover{
	opacity:0.5;
	filter:alpha(opacity=50);
	-ms-filter: "alpha( opacity=50 )";
}
.main-content .new .button a{
	width:100%;
	height:100%;
	display: block;
	line-height: 40px;
	text-align: center;
	color:#ffffff;
}
@media (max-width: 740px) {
.main-content .new .content-width{
  	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	margin: 0 auto 30px;
	box-sizing: border-box;
	padding:0 5%;
}
.main-content .new .item{
	width:48%;
	margin-top: 20px;
}
.main-content .new .item h3{
	width:100%;
	height:40px;
	line-height: 40px;
}
}

/*--------------------------------------
    type main-content
--------------------------------------*/

.main-content .type{
	padding:70px 0 80px;
	background: #F2F3EF;
}
.main-content .type.section:before{
	top:70px;
}
.main-content .type.section h2{
	background: #F2F3EF;
}
.main-content .type.section h2:before{
    border-right: 30px solid #F2F3EF;
}
.main-content .type.section h2:after{
    border-left: 30px solid #F2F3EF;
}
.main-content .type .column3{
	width:980px;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin: 0 auto 50px;
}
.main-content .type .column2{
	width:640px;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin: 0 auto;
}
.main-content .type .item{
	width:300px;
	height:484px;
	background: #FFFFFF;
	position: relative;
}
.main-content .type .item h3{
	position: absolute;
	top:50px;
	left:0;
	width:100%;
	text-align: center;
	font-size: 18px;
	font-size:1.8rem;
	line-height: 1.5;
	font-weight: bold;
}
.main-content .type .item h3 span{
	display: block;
	font-size: 14px;
	font-size:1.4rem;
	line-height: 1.5;
	font-weight: bold;
}
.main-content .type .item .text{
	font-size:14px;
	font-size:1.4rem;
	text-align: center;
	position: absolute;
	top:120px;
	left:0;
	width:100%;
}
.main-content .type .item .pic{
	width:100%;
	text-align: center;
	position: absolute;
	top:320px;
	left:0;
	transform: translate(0,-50%);
}
.main-content .type .item .button{
	width:160px;
	height:40px;
	text-align: center;
	position: absolute;
	bottom:24px;
	left:50%;
	transform: translate(-50%,0);
	background: #1D2088;
    -webkit-transition: opacity 0.3s ease-in-out; 
    -moz-transition: opacity 0.3s ease-in-out; 
    -o-transition: opacity 0.3s ease-in-out; 
    transition: opacity 0.3s ease-in-out;
	backface-visibility: hidden;
}
.main-content .type .item .button:hover{
	opacity:0.5;
	filter:alpha(opacity=50);
	-ms-filter: "alpha( opacity=50 )";
}
.main-content .type .item .button a{
	width:100%;
	height:100%;
	text-align: center;
	line-height: 40px;
	color:#FFFFFF;
}
@media (max-width: 740px) {
.main-content .type{
	padding:50px 0;
}
.main-content .type.section:before{
	top:50px;
}
.main-content .type .column3{
	width:95%;
  	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	margin: 0 auto;
}
.main-content .type .item{
	width:48%;
	height:auto;
	padding:20px 2% 80px;
	box-sizing: border-box;
	margin-top: 20px;
}
.main-content .type .item h3{
	position: static;
	font-size: 16px;
	font-size:1.6rem;
}
.main-content .type .item h3 span{
	font-size: 12px;
	font-size:1.2rem;
}
.main-content .type .item .text{
	position: static;
	margin: 20px 0;
	text-align: left;
}
.main-content .type .item .pic{
	position: static;
	transform: none;
}
.main-content .type .item .button{
	width:90%;
}
.main-content .type .item .button:hover{
	opacity:0.5;
	filter:alpha(opacity=50);
	-ms-filter: "alpha( opacity=50 )";
}
.main-content .type .item .button a{
	width:100%;
	height:100%;
	text-align: center;
	line-height: 40px;
	color:#FFFFFF;
}
}

/*--------------------------------------
    banner main-content
--------------------------------------*/

.main-content .banner{
	height:370px;
	text-align: left;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
  	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	justify-content: space-between;
	-ms-flex-line-pack: justify;
	align-content: space-between;
	margin: 60px auto;
}
.main-content .banner .item{
	width:300px;
	height:170px;
	position: relative;
	overflow: hidden;
}
.main-content .banner .item:after{
	width:100%;
	height:100%;
	display: block;
	content: "";
	position: absolute;
	top:0;
	left:0;
	z-index: -1;
	transition: 0.3s;
}
.main-content .banner .item:nth-child(1):after{
	background: url("images/top/bnr_top_001.jpg") no-repeat center center;
}
.main-content .banner .item:nth-child(2):after{
	background: url("images/top/bnr_top_002.jpg") no-repeat center center;
}
.main-content .banner .item:nth-child(3):after{
	background: url("images/top/bnr_top_003.jpg") no-repeat center center;
}
.main-content .banner .item:nth-child(4):after{
	background: url("images/top/bnr_top_004.jpg") no-repeat center center;
}
.main-content .banner .item:nth-child(5):after{
	background: url("images/top/bnr_top_005.jpg") no-repeat center center;
}
.main-content .banner .item:nth-child(6):after{
	background: url("images/top/bnr_top_006.jpg") no-repeat center center;
}
.main-content .banner .item:hover:after{
	transform: scale(1.2);
}
.main-content .banner .item a{
	width:100%;
	height:100%;
	position: relative;
	background: rgba(0,0,0,0.3);
	display: block;
}
.main-content .banner .item a h2{
	width:250px;
	position: absolute;
	top:50%;
	left:50%;
	transform: translate(-50%,-50%);
	color:#FFFFFF;
	font-size:24px;
	font-size:2.4rem;
	font-weight: bold;
	line-height: 1.5;
}
.main-content .banner .item a h2 span{
	color:#FFFFFF;
	font-size:15px;
	font-size:1.5rem;
	font-weight: bold;
	display: block;
}
@media (max-width: 740px) {
.main-content .banner{
	height:auto;
	margin: 50px auto;
}
.main-content .banner .item{
	width:50%;
	height:150px;
}
.main-content .banner .item a h2{
	width:90%;
	left:5%;
	transform: translate(0,-50%);
	font-size:21px;
	font-size:2.1rem;
}
}

/*--------------------------------------
    topics main-content
--------------------------------------*/

.main-content .topics .left-box,
.main-content .topics .right-box{
	width:475px;
	box-sizing: border-box;
	padding:35px;
	box-shadow: 0 0 5px #CFCFCF;
	text-align: left;
}
.main-content .topics h2{
	font-size:22px;
	font-size:2.2rem;
	margin-bottom:30px;
	text-align: center;
}
.main-content .topics .inner .box{
	width:405px;
	height:120px;
	margin-bottom: 30px;
}
.main-content .topics .inner .box a{
	width:100%;
	height:100%;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.main-content .topics .inner .box a .pic{
	width:174px;
}
.main-content .topics .inner .box a .area{
	width:214px;
	font-size:14px;
	font-size:1.4rem;
}
.main-content .topics .inner .box a .area .date{
	color:#808080;
	margin:10px 0;
	line-height: 1.5;
}
.main-content .topics .inner .box a .area .date span{
	margin-left: 30px;
	padding:0 7px;
	line-height: 20px;
	background: #1D2088;
	color:#FFFFFF;
	font-size:12px;
	font-size:1.2rem;
}
.main-content .topics .inner .box a .area h3{
	line-height: 1.5;
}
.main-content .topics .button.button003{
	float:right;
	width:160px;
	height:30px;
    -webkit-transition: opacity 0.3s ease-in-out; 
    -moz-transition: opacity 0.3s ease-in-out; 
    -o-transition: opacity 0.3s ease-in-out; 
    transition: opacity 0.3s ease-in-out;
}
.main-content .topics .button.button003:hover{
	opacity:0.5;
	filter:alpha(opacity=50);
	-ms-filter: "alpha( opacity=50 )";
}
.main-content .topics .button.button003 a{
	font-size:12px;
	font-size:1.2rem;
	width:100%;
	height:100%;
	display: block;
	text-align: center;
	line-height: 30px;
	position: relative;
	background: #1D2088;
	color:#FFFFFF;
	font-family: futura-pt, sans-serif;
}
.main-content .topics .button.button003 a:after{
	content: "";
	width:3px;
	height:3px;
	border:1px solid;
	border-color:transparent #FFFFFF #FFFFFF transparent;
	position: absolute;
	top:50%;
	right:10px;
	transform: translate(0,-50%) rotate(-45deg);
}
@media (max-width: 740px) {
.main-content .topics .left-box,
.main-content .topics .right-box{
	width:90%;
	padding:20px;
	margin:0px auto;
}
.main-content .topics .right-box{
	margin-top:20px;
}
.main-content .topics h2{
	font-size:21px;
	font-size:2.1rem;
}
.main-content .topics .inner .box{
	width:100%;
	height:auto;
}
.main-content .topics .inner .box a .pic{
	width:30%;
}
.main-content .topics .inner .box a .area{
	width:65%;
}
}

/*--------------------------------------
    shop main-content
--------------------------------------*/

.main-content .shop .left-box{
	width:320px;
	text-align: left;
}
.main-content .shop .left-box .text{
	font-weight:bold;
	margin: 50px 0;
}
.main-content .shop .left-box .address{
	font-size:14px;
	font-size:1.4rem;
}
.main-content .shop .right-box{
	width:600px;
}
.main-content .shop .map{
	height:400px;
	margin-top: 30px;
}
.main-content .shop .map iframe{
	width:100%;
	height:100%;
}
@media (max-width: 740px) {
.main-content .shop .left-box{
	width:100%;
}
.main-content .shop .left-box .text{
	margin: 30px 0;
}
.main-content .shop .right-box{
	width:100%;
	margin: 30px 0 0;
}
.main-content .shop .map{
	height:auto;
	position: relative;
	padding-top:60%;
}
.main-content .shop .map iframe{
	position: absolute;
	top:0;
	left:0;
}
}

