@charset "utf-8";

.fv {
	position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    opacity: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: 50% 100%;
    background-size: cover;
	padding-top: 200px;
}
.fv01 {
	background-image: url("../images/fv.jpg");
	padding-top: 100px;
}
.fv02 {
	background-image: url("../images/fv02.jpg");
}
.fv03 {
	background-image: url("../images/fv03.jpg");
}
.fv04 {
	background-image: url("../images/fv04.jpg");
}
.fvTxt01 {
	position: absolute;
	top: 238px;
	right: 10%;
}
.fvTxt02 {
	position: absolute;
	top: 310px;
	right: 10%;
}
.mTit01 {
    margin-bottom: 50px;
}
.topicsCont {
	margin-bottom: 90px;
}
.topicsCont dl {
	width: 70%;
	margin: 0 auto;
	border-bottom: #ccc 1px solid;
	font-size: 15px;
}
.topicsCont dl:first-child {
	border-top: #ccc 1px solid;
}
.topicsCont dt {
	float: left;
	padding: 15px 80px 12px 0;
}
.topicsCont dd {
	float: left;
	padding: 15px 0 12px;
}
.domBg {
	background-color: #F4F4F4;
	padding-bottom: 80px;
	margin-bottom: 80px;
}
.domCtrl {
	position: relative;
	margin-bottom: 80px;
	padding: 50px 0;
}
.domCont {
	max-width: 1400px;
	width: 90%;
	margin: 0 auto;
	position: static;
    z-index: 1;
	padding-left: 3%;
}
.domInner {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.domCont ul {
	margin: 0 auto;
}
.domBox01, .domBox04 {
	width: 50%;
}
.domBox02 {
    position: static;
	width: 80%;
	margin-left: 3%;
}
.domBox03 {
    position: static;
	width: 66%;
	margin-right: 3%;
}
.domImg01 {
    position: absolute;
    top: 0;
    left: 44%;
    width: 55vw;
    overflow: hidden;
    min-height: 100%;
}
.domImg02 {
    position: absolute;
    top: 0;
    width: 53vw;
    overflow: hidden;
    min-height: 100%;
}
.domImg01 img {
	position: absolute;
    max-width: none;
    height: 100%;
    width: auto;
}
.domImg02 img {
	position: absolute;
    max-width: none;
    height: 100%;
    width: auto;
}
.domTit01 {
	font-size: 30px;
	color: #DF0012;
	font-weight: bold;
	margin-bottom: 30px;
}
.domTxt01 {
	margin-bottom: 40px;
	line-height: 2.2;
}
.detail01 {
	background-color: #DF0012;
	text-align: center;
	width: 220px;
	line-height: 1.3;
}
.detail01 a {
	color: #fff;
	font-weight: bold;
	text-decoration: none;
}
.last {
	margin-bottom: 0;
}
.comCtrl {
	background-color: #DF0012;
	position: relative;
	margin-bottom: 70px;
	padding: 90px 0 100px;
}
.comCont {
	width: 100%;
	margin: 0 auto;
	position: static;
    z-index: 1;
}
.comBox01 {
    position: static;
	width: 54%;
	margin-right: 3%;
}
.comImg01 {
    position: absolute;
    top: 0;
    width: 50vw;
    overflow: hidden;
    min-height: 100%;
}
.comImg01 img {
	position: absolute;
    max-width: none;
    height: 100%;
    width: auto;
}
.comBox02 {
	width: 33%;
}
.comTit01 {
	font-size: 30px;
	color: #fff;
	font-weight: bold;
	margin-bottom: 30px;
}
.comTxt01 {
	margin-bottom: 40px;
	line-height: 2.2;
	color: #fff;
}
.detail02 {
	background-color: #fff;
	text-align: center;
	width: 220px;
	line-height: 1.3;
}
.detail02 a {
	color: #DF0012;
	font-weight: bold;
	text-decoration: none;
}
.conTxt01 {
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 60px;
}
.detail03 {
	line-height: 1.3;
	margin: 0 auto;
	text-align: center;
	width: 240px;
}
.detail03 a {
	color: #fff;
	font-weight: bold;
	text-decoration: none;
}
/*ナビ下線アニメーション*/
.gnavi li:last-child {
	border-bottom: 2px #df0012 solid;
	padding-bottom: 0;
}
.gnavi li:last-child::after {
	height: 0;
}
/*ナビ下線アニメーション*/
.underMenu {
    margin-bottom: 100px;
}
.btn-default {
	text-decoration: none;
	color: #111;
}
.line:hover {
	text-decoration: underline;
}

/*2100px以上*/
@media screen and (min-width: 2100px){
.comBox02 {
    width: 25%;
}
}

/*2200px以上*/
@media screen and (min-width: 2200px){
.comBox02 {
    width: 20%;
}
}

/*2000px以上*/
@media screen and (min-width: 2000px){
.comBox01 {
    width: 50%;
}
}
	
/*1800px以下*/
@media screen and (max-width: 1800px){
.fvTxt01, .fvTxt02 {
	right: 5%;
}
.fv {
	padding-top: 100px;
}
}

/*1650px以下*/
@media screen and (max-width: 1650px){
.fvTxt01, .fvTxt02 {
	right: 3%;
}
.fv {
	padding-top: 50px;
}
.domCont {
	padding-left: 0;
}
}

/*1600px以下*/
@media screen and (max-width: 1600px){
.domBox03 {
	width: 100%;
}
.topicsCont dl {
	width: 80%;
}
}

/*1400px以下*/
@media screen and (max-width: 1400px){
.domCtrl {
    padding: 30px 0;
}
.domBox04 {
    width: 60%;
}
.comCtrl {
    padding: 50px 0 50px;
}
.fv {
	padding-top: 0;
}
}

/*1240px以下*/
@media screen and (max-width: 1240px){
.domCtrl {
	padding: 0;
}
.topicsCont dl {
    width: 95%;
}
.topicsCont dt {
    padding-right: 55px;
}
.br {
	display: none;
}
.comBox02 {
	width: 40%;
}
.domBox03 {
	width: 55%;
}
.domBox04 {
	width: 45%;
}
.domImg01 {
    left: 48%;
}
.domImg02 {
    width: 48vw;
}
.domTit01 {
    font-size: 26px;
	margin-bottom: 30px;
}
.domTxt01 {
    line-height: 2;
	margin-bottom: 30px;
}
.comCtrl {
    padding: 50px 0 60px;
}
.comBox01 {
    width: 52%;
}
.comTit01 {
    font-size: 24px;
    margin-bottom: 15px;
}
.comTxt01 {
    margin-bottom: 20px;
    line-height: 1.8;
}
}

/*タブレット仕様1150px以下*/
@media screen and (max-width: 1150px){
.domTit01 {
	font-size: 24px;
    margin-bottom: 20px;
}
.domTxt01 {
    font-size: 14px;
}
}

/*タブレット仕様1000px以下*/
@media screen and (max-width: 1000px){
.fv {
    background-position: 15% 100%;
}
.fvBox {
	position: absolute;
    width: 70%;
	top: 44%;
    padding: 0 15%;
	right: 0;
}
.fvTxt01 {
	position: unset;
    width: 100%;
	top: 0;
    padding: 0;
	right: 0;
	line-height: 0;
}
.fvTxt02 {
	position: unset;
    width: 100%;
	top: 0;
    padding: 15px 0 0 0;
	right: 0;
	line-height: 0;
}
.topicsCont dl {
    width: 90%;
}
.topicsCont dt {
    float: none; 
    padding: 20px 0 5px 0;
	font-size: 15px;
}
.topicsCont dd {
    float: none;
    padding: 0 0 20px 0;
	font-size: 15px;
}
.domTit01 {
    font-size: 20px;
}
.domTxt01 {
    line-height: 1.8;
    font-size: 15px;
}
.mTit01 {
    margin-bottom: 40px;
}
}

/*900px以下*/
@media screen and (max-width: 900px){
.domBox01, .domBox04 {
    width: 100%;
}
.domTit01 {
    font-size: 20px;
    margin-bottom: 15px;
	line-height: 1.6;
}
.domImg03 {
	margin-bottom: 20px;
}
.domTxt01 {
    margin-bottom: 20px;
}
.detail01 {
    margin: 0 auto;
}
.domBg {
    margin-bottom: 60px;
}
.domTit01 {
    font-size: 24px;
}
}

/*700px以下*/
@media screen and (max-width: 700px){
.fv {
    background-position: 25% 100%;
}
.fvBox {
    width: 80%;
	top: 45%;
    padding: 0 10%;
}
.topicsCont {
    margin-bottom: 60px;
}
.comCtrl {
    padding: 0 0 60px 0;
}
.domInner {
    display: block;
}
.comCtrl {
    margin-bottom: 60px;
}
.comBox01 {
    width: 100%;
}
.comImg01 {
    position: static;
    width: 100%;
	margin-bottom: 30px;
	height: 70vw;
}
.comImg01 img {
    position: static;
}
.comBox02 {
    width: 90%;
	margin: 0 auto;
}
.comTit01 {
    font-size: 20px;
    margin-bottom: 15px;
	line-height: 1.6;
}
.detail02 {
	margin: 0 auto;
}
.conTxt01 {
    font-size: 18px;
    margin-bottom: 40px;
    padding: 0 20px;
}
}

/*600px以下*/
@media screen and (max-width: 600px){
.fvBox {
    width: 90%;
    padding: 0 5%;
}
.conTxt01 {
    font-size: 16px;
    margin-bottom: 40px;
    padding: 0 20px;
}
.fvTxt02 {
    padding: 10px 0 0 0;
}
.domBg {
    padding-bottom: 60px;
}
.domCtrl {
    margin-bottom: 60px;
}
.comCtrl {
    margin-bottom: 50px;
}
.comCtrl {
    padding: 0 0 50px 0;
}
.underMenu {
    margin-bottom: 60px;
}
.last {
    margin-bottom: 0;
}
}

/*500px以下*/
@media screen and (max-width: 500px){
.fvBox {
    width: 94%;
    padding: 0 3%;
}
}

.featherlight .featherlight-content {
	margin-left: 20%;
	margin-right: 20%;
}
.fvTxt01, .fvTxt02 {
   background-color: inherit !important;
   width: 538px;
   max-width: inherit;
   padding: inherit;
}
.fvSwiper{
	margin-bottom: 70px;
}

@media screen and (max-width: 1650px) {
}

/*1450px以下*/
@media screen and (max-width: 1450px) {
	.featherlight .featherlight-content {
		margin-left: 10%;
		margin-right: 10%;
	}
}

@media screen and (max-width: 1000px) {
	.featherlight .featherlight-content {
		margin-left: 2%;
		margin-right: 2%;
	}

	.fvTxt01 {
		top: 310px !important;
	}
	.fvTxt02 {
		top: 360px !important;
	}
	.fvTxt01,
	.fvTxt02 {
		width: 70% !important;
		left: 0% !important;
		margin: 0 auto;
	}
	
	.fvSwiper{
		margin-bottom: 42px;
	}
}

@media screen and (max-width: 600px) {
	.fvTxt01 {
		top: 266px !important;
	}
	.fvTxt02 {
		top: 318px !important;
	}
	.fvTxt01,
	.fvTxt02 {
		width: 94% !important;
		left: 0% !important;
		margin: 0 auto;
	}
}

@media screen and (min-width: 700px) and (max-width: 1000px) {
    .fvTxt02 {
        top: 385px !important;
    }
}