@charset "utf-8";
/* CSS Document */
.banner {position: relative; z-index: 2;}

.ind_A {padding: 7.2% 0 7.462% 0; position: relative; z-index: 1;}
.ind_A > div.frame_1440 {display: flex; flex-wrap: wrap;}
.ind_AL {width: 50%; padding: 0 2.084% 0 10px; line-height: 0; position: relative; z-index: 1; letter-spacing: 0;}
.ind_AL::before {content: ''; background: url("../images/bg_03.png") no-repeat center / cover; width: 666px; height: 666px; position: absolute; top: -20px; right: 12.5%; z-index: -1; animation: rotate 10s linear infinite;}
.ind_AR {width: 50%; padding: 1px 4.514% 0 2.084%; color: #666666;}
.ind_AR h1 {color: #333; font-weight: 800; line-height: 1.2; position: relative; z-index: 1; padding: 0 0 2.24% 0; margin: 0 0 4.64% 0; /*-webkit-animation: change_color_333333 5000ms infinite; animation: change_color_333333 5000ms infinite;*/}
.ind_AR h1 > span {color: #b61900;}
.ind_AR h1::after {content: ''; width: 30px; height: 2px; background: #b61900; position: absolute; bottom: 0; left: -1px; z-index: -1;}
.ind_AR > div {color: #333; font-weight: 800; line-height: 1.38889; letter-spacing: -0.2px; padding: 0 0 4.96% 2px;}
.ind_AR > p {padding: 0 0 0 4px; letter-spacing: 0.05px;}
.ind_AR > a.btn_a {margin: 8.64% 0 0 4px;}

.ind_B {display: flex; flex-wrap: wrap;}
.ind_B > div {width: 50%; position: relative; z-index: 1; text-align: center; padding: 110px 20px 444px 20px; line-height: 1.3; overflow: hidden;}
.ind_B > div:nth-child(1) {background: url("../images/bg_04.png") no-repeat center / cover; color: #333333;}
.ind_B > div:nth-child(2) {background: url("../images/bg_05.png") no-repeat center / cover; color: #fff;}
.ind_B > div > div.txt {position: relative; z-index: 10;}
.ind_B > div span {color: #b61900; font-weight: 700; /*-webkit-animation: change_color 5000ms infinite; animation: change_color 5000ms infinite;*/}
.ind_B > div h2 {font-weight: 700; letter-spacing: 0.5px; line-height: 1.1; margin-bottom: 25px;}
.ind_B > div font {font-weight: 300; margin-bottom: 21px; display: block;}
.ind_B > div .btn_a {margin: 38px auto 0 auto;}
.ind_B > div > div.photo {position: absolute; bottom: 0; left: 0; z-index: 1; width: 100%; text-align: center; padding: 0 20px;}

.ind_C {padding: 6.832% 0 7.147% 0; position: relative; z-index: 3;}
.ind_C font {display: block; text-align: center; color: #333333; font-weight: 700; line-height: 1.2; letter-spacing: 0.2px; margin: 0 0 26px 0; position: relative; z-index: 10;}
.ind_C div.seo_txt {color: #666666; text-align: center; letter-spacing: 0.13px; max-width: 712px; margin: auto; position: relative; z-index: 10;}
.ind_CL {padding: 54px 0 0 0; position: relative; z-index: 1; display: flex; flex-wrap: wrap;}
.ind_CL::before {content: ''; background: url("../images/bg_08.png") no-repeat center / cover; width: 547px; height: 547px; position: absolute; top: -138px; left: -149px; z-index: -1; animation: rotate 10s linear infinite;}
.ind_CL > div {width: 23.889%; margin: 0 1.48133% 0 0;}
.ind_CL > div:nth-child(4n+4) {margin: 0 0 0 0;}
.ind_CL > div:nth-child(2n+2) {margin-top: 75px;}
.ind_CLC {position: relative; z-index: 1; overflow: hidden;}
.ind_CLC > div.photo {height: 0; padding-bottom: 146.221%; overflow: hidden; position: relative; z-index: 1;}
.ind_CLC > div.photo::after {content: ''; position: absolute; top: 60%; left: 0; right: 0; bottom: 0; z-index: 50; background-image: linear-gradient(0deg, rgb(0, 0, 0, 1) 40%, rgba(0, 0, 0, 0) 100%); filter:alpha(opacity=43); Opacity:0.43; transition: all 0.5s ease 0s;}
.ind_CLC:hover > div.photo::after {top: 0%; filter:alpha(opacity=0); Opacity:0; transition: all 0.25s ease 0s;}
.ind_CLC > div.txt {position: absolute; bottom: 48px; left: 0; right: 0; z-index: 50; text-align: center; color: #fff; transition: all 0.25s ease 0s;}
.ind_CLC:hover > div.txt {bottom: 50%; -moz-transform:translateY(50%); -webkit-transform:translateY(50%); -o-transform:translateY(50%); -ms-transform:translateY(50%); transform:translateY(50%); transition: all 0.5s ease 0s;}
.ind_CLC > div.txt > div.photo {line-height: 0;}
.ind_CLC > div.txt > h3 {padding: 2px 10px 0 10px;}

.ind_D {background: #eeeeee; padding: 4.204% 0 5.728% 0; position: relative; z-index: 1;}
.ind_DL {display: flex; flex-wrap: wrap; position: relative; z-index: 1; padding: 21px 4.584% 0 4.584%;}
.ind_DL::before {content: ''; background: url("../images/bg_09.png") no-repeat center / cover; width: 234px; height: 166px; position: absolute; bottom: -14.613%; left: 4px; z-index: -1;}
.ind_DL > div {width: 48.853211%; margin: 0 2.293578% 20px 0; background: #fff; box-shadow: 0 0 27px rgba(0, 0, 0, 0.1); position: relative; z-index: 1; display: flex; flex-wrap: wrap; align-items: center; transition: all 0.5s ease 0s;}
.ind_DL > div:nth-child(2n+2) {margin: 0 0 20px 0;}
.ind_DL > div:hover {box-shadow: 0 0 27px rgba(0, 0, 0, 0.4);}
.ind_DL > div::before {content: ''; width: 35px; height: 35px; border-width: 1px 0 0 1px; border-color: #b61900; border-style: solid; position: absolute; top: -1px; left: -1px; z-index: -1; transition: all 0.5s ease 0s;}
.ind_DL > div::after {content: ''; width: 35px; height: 35px; border-width: 0 1px 1px 0; border-color: #b61900; border-style: solid; position: absolute; bottom: -1px; right: -1px; z-index: -1; transition: all 0.5s ease 0s;}
.ind_DL > div:hover::before, .ind_DL > div:hover::after {width: calc(100% + 2px); height: calc(100% + 2px);}
.ind_DL > div > div.photo {width: 53.20814%; line-height: 0;}
.ind_DL > div > div.photo > div {width: 100%; max-width: 340px; height: 0; padding-bottom: 76.475%; overflow: hidden; position: relative; z-index: 1;}
.ind_DL > div > div.txt {width: 46.79186%; color: #333333; padding: 0 5.947% 0 5.01%;}
.ind_DL > div > div.txt > div.txtD {display: flex; flex-direction: column; font-size: 12px; line-height: 1.1; letter-spacing: 0.2px; font-weight: 400; margin-bottom: 7.43%;}
.ind_DL > div > div.txt > div.txtD span {font-weight: 900; letter-spacing: -0.5px;}
.ind_DL > div > div.txt > h3 {line-height: 1.22; letter-spacing: -0.15px; font-weight: 900; margin-bottom: 3.5%; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; line-clamp: 2; -webkit-box-orient: vertical; transition: all 0.5s ease 0s;}
.ind_DL > div:hover > div.txt > h3 {color: #b61900;}
.ind_DL > div > div.txt > div.txtC {line-height: 20px; letter-spacing: 0.2px; height: 62px; overflow: hidden;}
.ind_DL > div > div.txt > div.txtC p {color: #666666;}
.ind_DL > div > div.txt > div.txtS {text-decoration:underline; color:#b61900; text-align: right; padding: 0 4px 0 0;}
.ind_D .btn_b {margin: 44px auto 0 auto; position: relative; z-index: 10;}

.ind_E {background: url("../images/bg_10.png") no-repeat center top; color: #fff; text-align: center; letter-spacing: 0.2px; padding: 6.149% 0 6.7263% 0;}
.ind_E h2 {font-weight: 700; letter-spacing: 0.2px; line-height: 1.2; margin-bottom: 1.25%;}
.ind_E .btn_c {margin: 4.098% auto 0 auto;}

