@charset "utf-8";
/* CSS Document */
footer { position: relative; line-height: 1.875; overflow: hidden; z-index: 1;}
footer a:link, footer a:visited { position: relative; text-decoration:none; color: #393939; z-index: 1; transition: all 0.25s ease 0s;}
footer a:active, footer a:hover {text-decoration:none; color: #145398; cursor:pointer; transition: all 0.25s ease 0s;}

.footer { color: #393939; background: #d9d5ff;}
.footer .ft_logo { position: relative; padding: 18px 55px 18px 0; max-width: 335px; z-index: 1;}
.footer .ft_logo::before { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: -200%; background: #fff; border-radius: 0 60px 60px 0; z-index: -1;}
.footer .ft_logo a { display: block; width: 100%;}
.footer .tit { font-size: 112.5%; border-bottom: 2px solid rgba(119, 72, 150, 0.5); margin-bottom: 20px; padding-bottom: 15px; font-weight: 500;}
.footer .infor > div { position: relative; padding-left: 35px; margin-bottom: 12px;}
.footer .infor > div:last-child { margin-bottom: 0;}
.footer .infor > div a { position: relative; font-size: 93.75%; font-weight: 500; font-family: "poppins", 'Noto Sans TC', sans-serif;}
.footer .infor > div > a::after { content: '｜'; color: #000; font-weight: 600;}
.footer .infor > div > a:last-child::after { display: none;}
.footer .infor .address::before { content: ''; position: absolute; top: 2px; left: 3px; width: 18px; height: 28px; background: url("../images/icon_address_01.svg") no-repeat center / contain;}
.footer .infor .phone::before { content: ''; position: absolute; top: 5px; left: 2px; width: 20px; height: 21px; background: url("../images/icon_phone_03.svg") no-repeat center / contain;}
.footer .infor .email::before { content: ''; position: absolute; top: 8px; left: 2px; width: 20px; height: 15px; background: url("../images/icon_email_02.svg") no-repeat center / contain;}
.footer .social { display: flex; flex-flow: row; margin-top: 5px;}
.footer .social > div { width: 35px; height: 35px; display: flex; align-items: center; justify-content: center; margin-right: 10px; transition: all 0.25s ease 0s;}
.footer .social > div:last-child { margin-right: 0;}
.footer .social > div a { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;}
.footer .social > div img { width: 22px;}
.footer .social .line { background: #0AD12E; border-radius: 20px;}
.footer .social .fb { background: #2D4D94; border-radius: 20px;}
.footer .social .yt { background: #FF0000; border-radius: 20px;}
.footer .ft_T { display: flex; flex-flow: wrap; padding: 8.5% 0 10.5% 0;}
.footer .ft_T .ft_T_L { width: 30%; padding-right: 1%; margin-top: 7px;}
.footer .ft_T .ft_T_C { width: 52%; display: flex; flex-flow: wrap; justify-content: space-between; padding: 0 2.5%;}
.footer .ft_T .ft_T_C .ft_T_C_L { max-width: 62%; padding-right: 5%;}
.footer .ft_T .ft_T_C .ft_T_C_R { width: 38%; margin-top: 10px;}
.footer .ft_T .ft_T_C .ft_T_C_R li { margin-bottom: 13px; border-bottom: 1px solid rgba(119, 72, 150, 0.15);}
.footer .ft_T .ft_T_C .ft_T_C_R li a { position: relative; font-size: 94.1176%; display: block; line-height: 1.4; padding-bottom: 10px; font-weight: 400; letter-spacing: 2px; padding-left: 28px;}
.footer .ft_T .ft_T_C .ft_T_C_R li a::after { content: '+'; position: absolute; top: 3px; left: 0; background: #774896; line-height: 0; width: 16px; height: 16px; display: flex; text-align: center; align-items: center; justify-content: center; letter-spacing: 0; border-radius: 20px; padding-bottom: 2px;  color: rgba(255, 255, 255, 0.7); font-size: 14px; transition: all 0.25s ease 0s;}
.footer .ft_T .ft_T_R { max-width: 18%; margin: auto 30px 10px auto; font-weight: 700; color: #774896;}
.footer .ft_B { position: relative; padding: 20px 0; display: flex; flex-flow: wrap; justify-content: space-between; align-items: center; font-weight: 500; z-index: 1;}
.footer .ft_B::before { content: ''; position: absolute; top: 0; bottom: 0; left: -100%; right: -100%; background: #774896; z-index: -1;}
.footer .ft_B .copyright { color: #fff;}
.footer .ft_B .sitemap { position: relative; padding-left: 30px;}
.footer .ft_B .sitemap a { color: #fff;}
.footer .ft_B .sitemap::before { content: '｜'; color: #fff;}
.footer .ft_B .sitemap::after { content: ''; position: absolute; top: 50%; transform: translateY(-50%); left: 10px; width: 16px; height: 13px; background: url("../images/icon_sitemap_01.png") no-repeat center / contain;}
