25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

443 lines
9.1 KiB

  1. //@import "../../variables/wood";
  2. //@import "../../variables/color-set";
  3. //@import "../../variables/variables";
  4. //@import "../components/mixins";
  5. @import "../styles/mixins";
  6. .magazine-header {
  7. position: sticky;
  8. display: block;
  9. height: 90px;
  10. top: var(--header-height);
  11. z-index: 99;
  12. font-size: 0;
  13. line-height: 0;
  14. text-align: center;
  15. pointer-events: none;
  16. margin-bottom: 0;
  17. @media(max-width: 767px) {
  18. top: 80px;
  19. height: 70px;
  20. }
  21. @media(max-width: 359px) {
  22. top: 70px;
  23. }
  24. .gradient {
  25. @include full-size;
  26. background: linear-gradient(90deg, $color-gradient-01 10%, $color-gradient-02 55%, $color-gradient-03 90%);
  27. background: linear-gradient(90deg, var(--theme-color-gradient-01, $color-gradient-01) 10%, var(--theme-color-gradient-02, $color-gradient-02) 55%, var(--theme-color-gradient-03, $color-gradient-03) 90%);
  28. transform-origin: center top;
  29. }
  30. .title {
  31. position: absolute;
  32. top: 50%;
  33. left: 50%;
  34. transform-origin: center 7%;
  35. transform: translate(-50%, -50%);
  36. display: inline-block;
  37. font-size: 60px;
  38. color: white;
  39. line-height: 1;
  40. padding: 15px;
  41. font-weight: 400;
  42. text-decoration: none;
  43. pointer-events: all;
  44. @media(max-width: 999px) {
  45. font-size: 48px;
  46. }
  47. @media(max-width: 567px) {
  48. display: block;
  49. width: 100%;
  50. font-size: 32px;
  51. }
  52. }
  53. &.narrow .title {
  54. font-size: 36px;
  55. }
  56. &.narrow {
  57. height: 50px;
  58. }
  59. }
  60. .magazine-start, .magazine-article {
  61. .page-header {
  62. @media(min-width: 1200px) {
  63. height: 100px;
  64. .logo img {
  65. height: 50px;
  66. }
  67. }
  68. &:not(.nav-open):before {
  69. box-shadow: none;
  70. }
  71. }
  72. @media(min-width: 1200px) {
  73. .page-wrapper {
  74. border-top: 100px solid #fff;
  75. }
  76. }
  77. a.teaser .kicker:first-child + .text-box h4, a.teaser .text-box:first-child h4,
  78. a.teaser .kicker:first-child + .text-box h4, a.teaser .text-box:first-child .like-h4{
  79. @include h4;
  80. text-decoration-thickness: 0.07em;
  81. margin-top: 0.4em;
  82. margin-bottom: 0.4em;
  83. @media(min-width: 1000px) {
  84. @include h2;
  85. text-decoration-thickness: 0.07em;
  86. margin-top: 0;
  87. }
  88. }
  89. .teasers h2 {
  90. text-transform: uppercase;
  91. margin-left: 0;
  92. margin-right: 0;
  93. @include h4;
  94. margin-bottom: 1.2em;
  95. &:before {
  96. content: "";
  97. position: relative;
  98. display: block;
  99. background: linear-gradient(90deg, $color-gradient-01 10%, $color-gradient-02 55%, $color-gradient-03 90%);
  100. background: linear-gradient(90deg, var(--theme-color-gradient-01, $color-gradient-01) 10%, var(--theme-color-gradient-02, $color-gradient-02) 55%, var(--theme-color-gradient-03, $color-gradient-03) 90%);
  101. height: 4px;
  102. margin-bottom: 0.5em;
  103. }
  104. }
  105. }
  106. .magazine-start {
  107. .page-content > .teasers:first-child {
  108. @media(max-width: 767px) {
  109. margin-top: 10px;
  110. }
  111. @media(min-width: 768px) and (max-height: 999px) {
  112. margin-top: 30px;
  113. }
  114. @media(min-width: 768px) and (min-height: 1000px) {
  115. margin-top: 50px;
  116. }
  117. }
  118. .teasers[data-items="1"] {
  119. .kicker:first-child {
  120. margin-bottom: 0;
  121. }
  122. .text-box:first-child, .kicker:first-child ~ .text-box {
  123. position: relative;
  124. border-top: 0;
  125. margin-top: 0;
  126. padding-top: 0;
  127. padding-bottom: 44px;
  128. @media(max-width: 1199px) {
  129. padding-right: 20%;
  130. }
  131. @media(max-width: 767px) {
  132. padding-right: 0;
  133. }
  134. &:after {
  135. content: "";
  136. position: absolute;
  137. bottom: 0;
  138. left: 0;
  139. right: 0;
  140. height: 8px;
  141. transition: 0.3s ease;
  142. z-index: 1;
  143. border-bottom-right-radius: 4px;
  144. border-bottom-left-radius: 4px;
  145. }
  146. ~ .reading-time {
  147. margin-bottom: 0;
  148. }
  149. }
  150. a:hover .text-box:after {
  151. height: 14px !important;
  152. }
  153. @media(min-width: 1000px) {
  154. .teaser {
  155. display: block;
  156. &:after {
  157. content: "";
  158. display: block;
  159. clear: left;
  160. }
  161. }
  162. .image-box {
  163. width: calc(50% - 20px);
  164. max-width: none;
  165. float: left;
  166. margin-right: 40px;
  167. @media(max-width: 1199px) {
  168. margin-right: 30px;
  169. width: calc(50% - 15px);
  170. }
  171. ~ .text-box {
  172. min-width: 0;
  173. max-width: calc(50% - 20px);
  174. float: left;
  175. @media(max-width: 1199px) {
  176. width: calc(50% - 15px);
  177. }
  178. }
  179. ~ .kicker {
  180. position: relative;
  181. margin: 0;
  182. display: inline-block;
  183. left: auto;
  184. max-width: calc(50% - 40px);
  185. }
  186. }
  187. &[data-image-size="l"] {
  188. .image-box {
  189. width: calc(66.66667% - 12px);
  190. @media(max-width: 1199px) {
  191. width: calc(66.66667% - 10px);
  192. }
  193. &:before {
  194. padding-top: 55%;
  195. }
  196. ~ .text-box, ~ .kicker {
  197. max-width: calc(33.33333% - 28px);
  198. @media(max-width: 1199px) {
  199. width: calc(33.33333% - 20px);
  200. }
  201. }
  202. }
  203. }
  204. &[data-image-size="s"] {
  205. .image-box {
  206. width: calc(41.66667% - 23px);
  207. min-width: 0;
  208. @media(max-width: 1199px) {
  209. width: calc(41.66667% - 18px);
  210. }
  211. &:before {
  212. padding-top: 100%;
  213. }
  214. ~ .text-box, ~ .kicker {
  215. max-width: calc(58.33333% - 17px);
  216. @media(max-width: 1199px) {
  217. width: calc(58.33333% - 12px);
  218. }
  219. }
  220. }
  221. }
  222. h4, .like-h4 {
  223. @include h2;
  224. text-decoration-thickness: 0.07em;
  225. margin-top: 0;
  226. }
  227. }
  228. }
  229. .teasers[data-items="2"], .teasers[data-items="3"], .teasers[data-items="4"] {
  230. .teaser {
  231. height: calc(100% + 12px);
  232. }
  233. }
  234. }
  235. .reading-time {
  236. position: absolute;
  237. bottom: 0;
  238. right: 0;
  239. font-size: 0;
  240. font-weight: 700;
  241. font-family: "Korb", sans-serif;
  242. text-transform: uppercase;
  243. margin: 8px;
  244. color: $color-primary;
  245. color: var(--theme-color-primary, $color-primary);
  246. transition: color 0.3s ease;
  247. z-index: 2;
  248. span {
  249. padding-left: 4px;
  250. font-size: 14px;
  251. line-height: 1.4;
  252. display: inline-block;
  253. }
  254. .value {
  255. background-color: $color-primary;
  256. background-color: var(--theme-color-primary, $color-primary);
  257. color: white;
  258. padding: 0 6px;
  259. transition: background-color 0.3s ease;
  260. }
  261. }
  262. a:hover .reading-time {
  263. color: $color-secondary-dark;
  264. color: var(--theme-color-secondary-intensed, $color-secondary-dark);
  265. .value {
  266. background-color: $color-secondary-dark;
  267. background-color: var(--theme-color-secondary-intensed, $color-secondary-dark);
  268. }
  269. }
  270. .magazine-article, .magazine-start {
  271. .teaser {
  272. .text-box:not(:last-child) {
  273. padding-bottom: 24px;
  274. }
  275. }
  276. .page-details {
  277. margin-bottom: 20px;
  278. }
  279. }
  280. .magazine-article {
  281. .row {
  282. justify-content: center;
  283. }
  284. .richtext .detail-text {
  285. overflow-x: visible;
  286. }
  287. article.col {
  288. position: relative;
  289. z-index: 1;
  290. max-width: 66.6667%;
  291. background-color: #fff;
  292. @media(max-width: 1199px) {
  293. max-width: 83.3333%;
  294. }
  295. @media(max-width: 999px) {
  296. box-shadow: 0 0 0 10px white;
  297. }
  298. @media(max-width: 767px) {
  299. max-width: 100%;
  300. box-shadow: 0 -4px 0 2px white;
  301. }
  302. }
  303. blockquote {
  304. border-left: 0;
  305. font-weight: 300;
  306. font-size: 48px;
  307. font-style: normal;
  308. margin: 1em 0 1.3em;
  309. padding: 0 40px;
  310. @media(max-width: 1199px) {
  311. font-size: 36px;
  312. }
  313. @media(max-width: 767px) {
  314. font-size: 28px;
  315. padding: 0 0 0 20px;
  316. }
  317. p:not(.author), div.text {
  318. line-height: 1.3;
  319. &:first-child:before {
  320. content: "";
  321. position: relative;
  322. display: block;
  323. width: 30px;
  324. height: 30px;
  325. background-image: url(../../assets/img/quote.svg);
  326. background-size: 100%;
  327. margin: 2px 0 2px -40px;
  328. @media(max-width: 767px) {
  329. margin-left: -20px;
  330. }
  331. }
  332. }
  333. p:not(.author):last-child:after, div.text:last-child:after, .author:after, h4:after, .like-h4:after {
  334. content: "";
  335. position: relative;
  336. display: block;
  337. width: 30px;
  338. height: 30px;
  339. background-image: url(../../assets/img/quote.svg);
  340. background-size: 100%;
  341. margin: 2px 0 2px -40px;
  342. transform: rotate(180deg);
  343. @media(max-width: 767px) {
  344. margin-left: -20px;
  345. }
  346. }
  347. .author, h4, .like-h4 {
  348. position: relative;
  349. font-weight: 400;
  350. text-align: right;
  351. margin-right: -40px;
  352. margin-top: 36px;
  353. font-family: "Source Sans Pro", sans-serif;
  354. font-size: 18px;
  355. &:before {
  356. content: "— ";
  357. position: relative;
  358. top: -1px;
  359. margin-right: 2px;
  360. }
  361. &:after {
  362. position: absolute;
  363. top: -36px;
  364. left: 0;
  365. }
  366. @media(max-width: 767px) {
  367. margin-right: 0;
  368. padding-left: 30px;
  369. font-size: 16px;
  370. font-weight: 500;
  371. margin-top: 32px;
  372. &:after {
  373. top: -30px;
  374. }
  375. }
  376. }
  377. }
  378. }