media-mobile.scss 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381
  1. @import "variables";
  2. @media screen AND (max-width: 559px) {
  3. .map {
  4. display: grid;
  5. grid-template-columns: 1fr;
  6. grid-template-rows: 1fr auto;
  7. grid-gap: 50px;
  8. border: 1px solid $color2;
  9. border-radius: 10px;
  10. padding: 10px;
  11. .info {
  12. display: flex;
  13. flex-direction: column;
  14. justify-content: space-evenly;
  15. h2 {
  16. margin: 10px 0;
  17. font-size: 1.25rem;
  18. }
  19. }
  20. }
  21. header {
  22. margin-bottom: 20px;
  23. flex-direction: column;
  24. padding: 13px 0;
  25. > .logo > .text {
  26. font-size: 3rem;
  27. color: $color-white;
  28. }
  29. > .organization,
  30. > .logo-art {
  31. display: none;
  32. }
  33. }
  34. main {
  35. padding: 0 5px;
  36. grid-template-columns: calc(100vw - 10px);
  37. .article-title {
  38. font-size: 2rem;
  39. }
  40. article {
  41. text-align: center;
  42. font-size: 1.2rem;
  43. margin-bottom: 20px;
  44. }
  45. > section {
  46. // margin-bottom: 20px;
  47. &:nth-child(1) {
  48. grid-row: 2/3;
  49. }
  50. &:nth-child(2) {
  51. grid-row: 1/2;
  52. }
  53. &:nth-child(3) {
  54. grid-row: 3/4;
  55. }
  56. }
  57. }
  58. .hamburger-main,
  59. .hamburger-top {
  60. display: block;
  61. position: fixed;
  62. top: 0;
  63. left: 0;
  64. width: $mobile-hamburger-height;
  65. height: $mobile-hamburger-height;
  66. z-index: 60;
  67. > .background {
  68. background-color: $color-black;
  69. position: absolute;
  70. left: 0;
  71. top: 0;
  72. width: 100vw;
  73. height: 100%;
  74. z-index: -1;
  75. }
  76. > .line {
  77. position: absolute;
  78. width: 50%;
  79. height: 6px;
  80. border-radius: $border-radius;
  81. background-color: $color-grey;
  82. transform: translateY(-50%);
  83. transition-property: top, left, transform, opacity, color;
  84. transition-duration: 250ms;
  85. &:nth-child(1) {
  86. top: 25%;
  87. left: 5px;
  88. }
  89. &:nth-child(2) {
  90. top: 25%;
  91. left: calc(50% - 5px);
  92. }
  93. &:nth-child(3) {
  94. top: 50%;
  95. left: 5px;
  96. width: calc(100% - 10px);
  97. }
  98. &:nth-child(4) {
  99. top: 75%;
  100. left: 5px;
  101. }
  102. &:nth-child(5) {
  103. top: 75%;
  104. left: calc(50% - 5px);
  105. }
  106. }
  107. &.open {
  108. > .line {
  109. background-color: $color-white;
  110. &:nth-child(1) {
  111. top: calc(25% + 5px);
  112. left: 5px;
  113. transform: translateY(-50%) rotateZ(45deg);
  114. }
  115. &:nth-child(2) {
  116. top: calc(25% + 5px);
  117. left: calc(50% - 5px);
  118. transform: translateY(-50%) rotateZ(-45deg);
  119. }
  120. &:nth-child(3) {
  121. opacity: 0;
  122. }
  123. &:nth-child(4) {
  124. top: calc(75% - 5px);
  125. left: 5px;
  126. transform: translateY(-50%) rotateZ(-45deg);
  127. }
  128. &:nth-child(5) {
  129. top: calc(75% - 5px);
  130. left: calc(50% - 5px);
  131. transform: translateY(-50%) rotateZ(45deg);
  132. }
  133. }
  134. }
  135. }
  136. .hamburger-top {
  137. left: unset;
  138. right: 0;
  139. }
  140. nav,
  141. .menu {
  142. position: fixed;
  143. width: 100vw;
  144. z-index: 250;
  145. top: $mobile-hamburger-height;
  146. bottom: 0;
  147. left: 0;
  148. overflow: auto;
  149. opacity: 0.95;
  150. transform: translateX(-100%);
  151. transition: transform 250ms ease-in-out;
  152. }
  153. .menu {
  154. .item {
  155. > .text {
  156. font-size: 1.5em;
  157. text-align: center;
  158. padding: 25px;
  159. display: block;
  160. text-decoration: none;
  161. color: $color-black;
  162. }
  163. }
  164. }
  165. nav {
  166. flex-direction: column;
  167. transform: translateX(100%);
  168. background-color: $color-white;
  169. .item {
  170. > .text {
  171. font-size: 1.75em;
  172. text-align: center;
  173. padding: 25px;
  174. display: block;
  175. text-decoration: none;
  176. color: $color-black;
  177. &[data-click] {
  178. background-color: $color-purple-900;
  179. color: $color-white;
  180. position: relative;
  181. &::before {
  182. content: "\f0a7";
  183. font-family: "Font Awesome 5 Free";
  184. font-size: 2rem;
  185. right: 30px;
  186. position: absolute;
  187. font-weight: 700;
  188. animation: touchItem 500ms linear infinite;
  189. }
  190. }
  191. }
  192. > .submenu {
  193. height: 0;
  194. overflow: hidden;
  195. background-color: $color-green-500;
  196. }
  197. &.open {
  198. background-color: $color-green-900;
  199. color: $color-white;
  200. }
  201. }
  202. &::before {
  203. content: none;
  204. }
  205. }
  206. footer {
  207. display: flex;
  208. flex-direction: column;
  209. justify-content: space-around;
  210. height: 150px;
  211. }
  212. .hamburger-main {
  213. &.open {
  214. ~ main {
  215. .menu {
  216. transform: translateX(0);
  217. }
  218. }
  219. }
  220. }
  221. .hamburger-top {
  222. &.open {
  223. ~ nav {
  224. transform: translateX(0);
  225. background-image: linear-gradient(0deg, #fbff00, #7cff00);
  226. animation: navBackground 5s linear infinite;
  227. }
  228. }
  229. }
  230. .notice-container {
  231. .carousel {
  232. height: 500px;
  233. > .slider {
  234. > .slide {
  235. flex-direction: column;
  236. > .image {
  237. height: 40%;
  238. > img {
  239. object-fit: cover;
  240. &.blur {
  241. display: none;
  242. }
  243. }
  244. }
  245. > .content {
  246. height: 60%;
  247. padding: 15px 15px 35px 15px;
  248. justify-content: space-evenly;
  249. text-align: center;
  250. align-items: center;
  251. }
  252. &.expand {
  253. top: $mobile-hamburger-height;
  254. padding: 20px;
  255. overflow: auto;
  256. display: block;
  257. > .content {
  258. padding: 20px 0;
  259. height: auto;
  260. > .full-text {
  261. overflow: unset;
  262. padding: 0;
  263. }
  264. }
  265. }
  266. }
  267. }
  268. }
  269. }
  270. .news-container {
  271. grid-template-columns: 1fr;
  272. > .news {
  273. padding: 20px;
  274. > .text {
  275. font-size: 1rem;
  276. }
  277. > .image {
  278. display: none;
  279. }
  280. }
  281. }
  282. .news-pagination {
  283. margin-bottom: 20px;
  284. > a {
  285. padding: 10px 25px;
  286. font-size: 1.4rem;
  287. }
  288. }
  289. a {
  290. &.gradient-button {
  291. width: 160px;
  292. height: 40px;
  293. font-size: 1.4rem;
  294. }
  295. }
  296. .block {
  297. &.flex {
  298. font-size: 1.5rem;
  299. }
  300. > .icon {
  301. width: 80px;
  302. }
  303. .fas {
  304. font-size: 50px;
  305. }
  306. }
  307. }
  308. @media screen AND (max-width: 359px) {
  309. header {
  310. > .logo {
  311. > .text {
  312. font-size: 2rem;
  313. }
  314. }
  315. }
  316. .block {
  317. &.flex {
  318. font-size: 1.1rem;
  319. }
  320. }
  321. }
  322. @keyframes touchItem {
  323. 0% {
  324. transform: translateY(-15px);
  325. }
  326. 80% {
  327. transform: translateY(5px);
  328. }
  329. 100% {
  330. transform: translateY(-15px);
  331. }
  332. }