@charset "utf-8";

/**************************************************
Top Page
**************************************************/

/* #content_1 --------------- */

#content_1 {
width:100%;
padding-bottom:40px;
background:#fff;
float:left;
position:relative;
}

#content_1 .title {
width:600px;
height:500px;
padding-top:100px;
background:#fff;
position:absolute;
left:50%;
top:-160px;
transform:translate(-50%, 0%);
z-index:2;
border-radius:50%;
box-sizing:border-box;
}

#content_1 .title .img {
display:block;
position:relative;
}

#content_1 .title .img img {
position:absolute;
right:-50px;
top:-10px;
z-index:3;
}

#content_1 .title h2 {
width:100%;
line-height:1;
font-size:60px;
float:left;
letter-spacing:0.05em;
}

#content_1 .title h2 span.top {
width:100%;
margin-bottom:15px;
font-size:36px;
float:left;
}

#content_1 .title h2 span.bottom {
width:100%;
float:left;
}

#content_1 .title h2 span.bottom span {
padding-right:5px;
font-size:94px;
}

#content_1 .content_1_wrap {
width:86%;
margin:0 auto;
}

#content_1 .block {
width:100%;
margin-top:200px;
float:left;
position:relative;
z-index:4;
display:flex;
flex-wrap:wrap;
justify-content:center;
align-items:center;
}

#content_1 .block .box {
width:29%;
margin:0 2% 60px;
text-align:left;
display:table;
float:left;
}

#content_1 .block .box .img {
display:table-cell;
vertical-align:middle;
}

#content_1 .block .box .detail {
padding-left:15px;
display:table-cell;
vertical-align:middle;
box-sizing:border-box;
}

#content_1 .block .box .detail h3 {
width:100%;
line-height:1;
margin-bottom:10px;
font-size:30px;
float:left;
letter-spacing:0.1em;
}

#content_1 .block .box .detail h3 span {
font-size:48px;
}

#content_1 .block .box:nth-of-type(1) .detail h3 span {
color:#305cff;
}

#content_1 .block .box:nth-of-type(2) .detail h3 span {
color:#0ec310;
}

#content_1 .block .box:nth-of-type(3) .detail h3 span {
color:#ff2acc;
}

#content_1 .block .box:nth-of-type(4) .detail h3 span {
color:#fb4054;
}

#content_1 .block .box:nth-of-type(5) .detail h3 span {
color:#ffb61c;
}

#content_1 .block .box .detail .en {
width:100%;
margin-bottom:12px;
font-size:20px;
float:left;
letter-spacing:0.1em;
}

#content_1 .block .box .detail .text {
width:100%;
font-size:15px;
float:left;
}

/* -------------------------------------------------------------- */


/* #content_2 --------------- */

#content_2 {
width:100%;
padding:100px 0 140px;
background:#f8f8f8;
float:left;
position:relative;
}

#content_2 .title {
width:100%;
margin-bottom:80px;
display:table;
float:left;
}

#content_2 .title h2 {
width:250px;
line-height:1.3;
padding:14px 0;
border-top:1px solid #cd444a;
border-right:1px solid #cd444a;
font-size:24px;
display:table-cell;
vertical-align:middle;
letter-spacing:0.1em;
}

#content_2 .title h2 span {
font-size:18px;
color:#d8878b;
}

#content_2 .title .text {
padding:14px 0 14px 20px;
border-bottom:1px solid #cd444a;
text-align:left;
font-size:15px;
display:table-cell;
vertical-align:middle;
box-sizing:border-box;
}

#content_2 .content_2_wrap {
width:70%;
margin:0 auto;
}

#content_2 .block {
width:100%;
float:left;
}

#content_2 .block .box {
width:47%;
padding:30px 40px;
background:#fff;
text-align:left;
box-sizing:border-box;
position:relative;
}

#content_2 .block .box:nth-of-type(1),
#content_2 .block .box:nth-of-type(3),
#content_2 .block .box:nth-of-type(5) {
float:left;
}

#content_2 .block .box:nth-of-type(2),
#content_2 .block .box:nth-of-type(4) {
float:right;
}

#content_2 .block .box:nth-of-type(2) {
margin-top:120px;
}

#content_2 .block .box:nth-of-type(4),
#content_2 .block .box:nth-of-type(3),
#content_2 .block .box:nth-of-type(5) {
margin-top:180px;
}

#content_2 .block .box img.img_1 {
position:absolute;
left:20px;
top:-50px;
}

#content_2 .block .box img.img_2 {
position:absolute;
right:-20px;
bottom:-50px;
}

#content_2 .block .box h3 {
width:100%;
margin-bottom:5px;
padding-left:140px;
font-size:20px;
float:left;
box-sizing:border-box;
}

#content_2 .block .box .en {
width:100%;
margin-bottom:40px;
padding-left:140px;
font-size:20px;
color:#d8878b;
float:left;
box-sizing:border-box;
letter-spacing:0.1em;
}

#content_2 .block .box .text {
width:100%;
font-size:15px;
float:left;
}

#content_2 .block .box .but {
width:100%;
margin-top:30px;
text-align:center;
float:left;
}

#content_2 .block .box .but a {
width:220px;
padding:8px 0;
background:#d8474e;
color:#fff;
display:inline-block;
position:relative;
border-radius:45px;
}

#content_2 .block .box .but a:after {
font-family:'Font Awesome 5 Free';
font-weight:900;
content:'\f054';
position:absolute;
top:50%;
right:20px;
transform:translate(0%, -50%);
transition:0.3s;
}

#content_2 .block .box .but a:hover {
background:#c3262e;
}

#content_2 .block .box .but a:hover:after {
right:15px;
}

#content_2 img.img_3 {
position:absolute;
right:-50px;
bottom:-70px;
}

/* -------------------------------------------------------------- */


/* #content_3 --------------- */

#content_3 {
width:100%;
padding:130px 0 100px;
background:#fff;
float:left;
}

#content_3 .title {
width:100%;
margin-bottom:80px;
display:table;
float:left;
}

#content_3 .title h2 {
width:250px;
line-height:1.3;
padding:14px 0;
border-top:1px solid #cd444a;
border-right:1px solid #cd444a;
font-size:24px;
display:table-cell;
vertical-align:middle;
letter-spacing:0.1em;
}

#content_3 .title h2 span {
font-size:18px;
color:#d8878b;
}

#content_3 .title .text {
padding:14px 0 14px 20px;
border-bottom:1px solid #cd444a;
text-align:left;
font-size:15px;
display:table-cell;
vertical-align:middle;
box-sizing:border-box;
}

#content_3 .title .text span {
color:#d8878b;
}

#content_3 .map {
width:100%;
height:0;
padding-top:30%;
float:left;
position:relative;
}

#content_3 .map iframe {
width:100%;
height:100%;
position:absolute;
top:0;
left:0;
}

#content_3 ul {
width:100%;
margin-top:60px;
padding:0 200px;
text-align:left;
float:left;
box-sizing:border-box;
}

#content_3 ul li {
width:100%;
margin-bottom:15px;
padding-bottom:15px;
border-bottom:2px dashed #e9e9e9;
float:left;
display:table;
}

#content_3 ul li:last-child {
margin-bottom:0;
}

#content_3 ul li span.list_1 {
width:25%;
display:table-cell;
vertical-align:middle;
}

#content_3 ul li span.list_1:before {
width:25px;
color:#d8878b;
font-family:'Font Awesome 5 Free';
font-weight:900;
display:inline-block;
}

#content_3 ul li:nth-of-type(1) span.list_1:before {
content:'\f1ad';
}

#content_3 ul li:nth-of-type(2) span.list_1:before {
content:'\f3c5';
}

#content_3 ul li:nth-of-type(3) span.list_1:before {
content:'\f3cd';
}

#content_3 ul li:nth-of-type(4) span.list_1:before {
content:'\f658';
}

#content_3 ul li span.list_2 {
width:75%;
display:table-cell;
vertical-align:middle;
}

#content_3 ul li span.list_2 span.at:after {
content:'@';
}

#content_3 ul li span.list_2 span.com:after {
content:'.com';
}

#content_3 .but {
width:100%;
margin-top:60px;
text-align:center;
float:left;
}

#content_3 .but a {
width:310px;
margin:0 20px;
padding:12px 0;
background:#d8474e;
color:#fff;
display:inline-block;
position:relative;
border-radius:45px;
}

#content_3 .but a:after {
font-family:'Font Awesome 5 Free';
font-weight:900;
content:'\f054';
position:absolute;
top:50%;
right:20px;
transform:translate(0%, -50%);
transition:0.3s;
}

#content_3 .but a:hover {
background:#c3262e;
}

#content_3 .but a:hover:after {
right:15px;
}

/* -------------------------------------------------------------- */



/* #content_5 --------------- */

#content_5 {
width:100%;
padding:100px 0;
background:#fff;
float:left;
}

#content_5 .title {
width:100%;
margin-bottom:65px;
display:table;
float:left;
}

#content_5 .title h2 {
width:250px;
line-height:1.3;
padding:14px 0;
border-top:1px solid #cd444a;
border-right:1px solid #cd444a;
font-size:24px;
display:table-cell;
vertical-align:middle;
letter-spacing:0.1em;
}

#content_5 .title h2 span {
font-size:18px;
color:#d8878b;
}

#content_5 .title .text {
padding:14px 0 14px 20px;
border-bottom:1px solid #cd444a;
text-align:left;
font-size:15px;
display:table-cell;
vertical-align:middle;
box-sizing:border-box;
}

#content_5 ul {
width:100%;
padding:0 200px;
text-align:left;
float:left;
box-sizing:border-box;
}

#content_5 ul li {
width:100%;
float:left;
}

#content_5 ul li a {
width:100%;
padding:15px 0;
border-bottom:2px dashed #e9e9e9;
float:left;
}

#content_5 ul li a time {
width:150px;
float:left;
letter-spacing:0.1em;
}

#content_5 ul li a h3 {
float:left;
}

#content_5 .but {
width:100%;
margin-top:60px;
float:left;
}

#content_5 .but a {
width:310px;
padding:12px 0;
background:#d8474e;
color:#fff;
display:inline-block;
position:relative;
border-radius:45px;
}

#content_5 .but a:after {
font-family:'Font Awesome 5 Free';
font-weight:900;
content:'\f054';
position:absolute;
top:50%;
right:20px;
transform:translate(0%, -50%);
transition:0.3s;
}

#content_5 .but a:hover {
background:#c3262e;
}

#content_5 .but a:hover:after {
right:15px;
}

/* -------------------------------------------------------------- */


/**************************************************
***************************************************
width:[1700px] or less.
***************************************************
**************************************************/

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

#content_1 .content_1_wrap {
width:100%;
}

#content_1 .block .box {
width:31%;
margin:0 1% 60px;
}

}



/**************************************************
***************************************************
width:[1440px] or less.
***************************************************
**************************************************/

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

#content_1 .block .box {
width:32%;
margin:0 0 60px;
}

#content_1 .block .box .img {
width:30%;
}

#content_1 .block .box .img img {
width:100%;
max-width:189px;
height:auto;
}

/* #content_2 --------------- */

#content_2 .content_2_wrap {
width:80%;
}

#content_2 img.img_3 {
width:50%;
max-width:780px;
height:auto;
position:absolute;
right:-50px;
bottom:-70px;
}

}


/**************************************************
***************************************************
width:[1140px] or less.
***************************************************
**************************************************/

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

/* #content_1 --------------- */

#content_1 .content_1_wrap {
width:98%;
}

#content_1 .block {
margin-top:160px;
}

#content_1 .block .box {
width:45%;
margin:0 2% 60px;
}

#content_1 .block .box .img {
width:36%;
}

#content_1 .block .box .detail h3 {
font-size:24px;
}

#content_1 .block .box .detail h3 span {
font-size:38px;
}


/* #content_2 --------------- */

#content_2 .content_2_wrap {
width:100%;
}

#content_2 .block .box:nth-of-type(2),
#content_2 .block .box:nth-of-type(4),
#content_2 .block .box:nth-of-type(3),
#content_2 .block .box:nth-of-type(5) {
margin-top:120px;
}

#content_2 .block .box img.img_1 {
width:20%;
max-width:94px;
height:auto;
left:0;
}

#content_2 .block .box img.img_2 {
width:20%;
max-width:96px;
height:auto;
right:-5px;
}

#content_2 .block .box h3 {
padding-left:20%;
font-size:18px;
}

#content_2 .block .box .en {
margin-bottom:30px;
padding-left:20%;
font-size:18px;
}


/* #content_3 --------------- */

#content_3 ul {
padding:0 10%;
}


/* #content_5 --------------- */

#content_5 ul {
padding:0 6%;
}

}


/**************************************************
***************************************************
width:[768px] or less.
***************************************************
**************************************************/

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

/* #content_1 --------------- */

#content_1 {
padding-bottom:20px;
}

#content_1 .content_1_wrap {
width:100%;
}

#content_1 .block .box {
width:46%;
margin:0 1% 60px;
}


/* #content_2 --------------- */

#content_2 {
padding:60px 0 46vw;
}

#content_2 .title {
display:block;
}

#content_2 .title h2 {
width:100%;
margin-bottom:30px;
padding:0 0 10px;
border-top:0;
border-right:0;
border-bottom:1px solid #cd444a;
display:block;
}

#content_2 .title .text {
padding:0;
border-bottom:0;
display:block;
}

#content_2 .content_2_wrap {
padding:0 10px;
box-sizing:border-box;
}

#content_2 .block .box {
width:100%;
padding:30px 20px;
}

#content_2 .block .box:nth-of-type(2),
#content_2 .block .box:nth-of-type(4),
#content_2 .block .box:nth-of-type(3),
#content_2 .block .box:nth-of-type(5) {
margin-top:60px;
}

#content_2 .block .box .but a {
width:200px;
}

#content_2 .block .box h3,
#content_2 .block .box .en {
font-size:17px;
}

#content_2 img.img_3 {
width:90%;
}


/* #content_3 --------------- */

#content_3 {
padding:130px 0 60px;
}

#content_3 .title {
margin-bottom:40px;
display:block;
}

#content_3 .title h2 {
width:100%;
margin-bottom:30px;
padding:0 0 10px;
border-top:0;
border-right:0;
border-bottom:1px solid #cd444a;
display:block;
}

#content_3 .title .text {
padding:0;
border-bottom:0;
display:block;
}

#content_3 .map {
padding-top:40%;
}

#content_3 ul {
padding:0;
}

#content_3 .but a {
margin:0 0 20px;
}

#content_3 .but a:last-child {
margin:0;
}


/* #content_5 --------------- */

#content_5 {
padding:60px 0;
}

#content_5 .title {
margin-bottom:40px;
display:block;
}

#content_5 .title h2 {
width:100%;
margin-bottom:30px;
padding:0 0 10px;
border-top:0;
border-right:0;
border-bottom:1px solid #cd444a;
display:block;
}

#content_5 .title .text {
padding:0;
border-bottom:0;
display:block;
}

#content_5 ul {
padding:0 5%;
font-size:15px;
}

#content_5 ul li a time {
width:25%;
}

}


/**************************************************
***************************************************
width:[640px] or less.
***************************************************
**************************************************/

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

/* #content_1 --------------- */

#content_1 .title {
width:96%;
height:300px;
padding-top:50px;
top:-100px;
}

#content_1 .title h2 {
font-size:8vw;
}

#content_1 .title h2 span.top {
font-size:6vw;
}

#content_1 .title h2 span.bottom span {
font-size:12vw;
}

#content_1 .title .img img {
right:-10px;
top:-30px;
}

#content_1 .block {
margin-top:20vw;
}

#content_1 .block .box {
width:400px;
}


/* #content_3 --------------- */

#content_3 ul li {
display:block;
}

#content_3 ul li span.list_1 {
width:100%;
margin-bottom:5px;
display:block;
float:left;
}

#content_3 ul li span.list_2 {
width:100%;
display:block;
float:left;
}


/* #content_5 --------------- */

#content_5 ul {
padding:0;
}

#content_5 ul li a time {
width:100%;
margin-bottom:10px;
}

}


/**************************************************
***************************************************
width:[480px] or less.
***************************************************
**************************************************/

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

/* #content_1 --------------- */

#content_1 .title .img img {
width:90px;
height:auto;
}

#content_1 .content_1_wrap {
width:100%;
padding:0 10px;
float:left;
box-sizing:border-box;
}

#content_1 .block .box {
width:100%;
margin:0 0 40px;
}

#content_1 .block .box .img {
width:26%;
}

}