├── LICENSE
├── README.md
├── css
└── style.css
├── img
└── icons
│ ├── facebook@2x.png
│ ├── nicovideo@2x.png
│ ├── novelist@2x.png
│ ├── piapro@2x.png
│ ├── pixiv@2x.png
│ ├── soundcloud@2x.png
│ ├── tinami@2x.png
│ ├── tumblr@2x.png
│ └── twitter@2x.png
├── index.html
├── js
└── func.js
└── scss
├── _media-queries.scss
├── _mixin.scss
├── _normalize.scss
└── style.scss
/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2014 oui
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in
13 | all copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | THE SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | OSHIRASE
2 | ========
3 |
4 | アンソロジーや合同誌、オンリーイベントなどの告知サイトのためのHTMLテンプレートです。デモページは[こちら](http://monsier-oui.github.io/OSHIRASE/demo.html)
5 |
6 | ## 使い方
7 | 1. [ここ](https://github.com/monsier-oui/OSHIRASE/archive/master.zip)からダウンロードする
8 | * index.html をテキストエディタで開いて必要な情報を書く
9 | ※ソースはガンガン削ったり足したりしてオッケーです。叩き台として使ってください。
10 | * サーバにアップロードする
11 |
12 | ### 用意する画像ファイル
13 | * 表紙
14 | * イメージイラスト(横幅2000px推奨)
15 | * 内容サンプル(小さすぎるとジャギるので600px四方くらい推奨)
16 | * バナー
17 | * フライヤー(あれば)
18 |
19 | ## 作業上の注意
20 | ファイルの編集には必ずテキストエディタ(メモ帳、ビルダーはNG)を使ってください。普段テキストエディタを使わない方へのオススメは、Windowsなら[サクラエディタ](http://sakura-editor.sourceforge.net/)、Macなら[CotEditor](http://coteditor.github.io/)。
21 |
22 | ## 動作確認環境
23 | * Firefox 35
24 | * Google Chrome 40
25 | * iPhone Safari
26 |
27 | ## ワンポイント解説
28 | ### 画像ファイルの指定について
29 | アイキャッチ、サンプルはimg要素ではなく、div要素の背景画像として指定します。たとえばimgフォルダのimage.jpgを表示させたいなら、`style="background-image: url('img/image.jpg');"`と書きます。
30 |
31 | ### フォントについて
32 |
33 | 一部の要素に[Google Fonts](https://www.google.com/fonts)を利用しています。他のフォントに変えたい場合は、Google FontsからCSSファイルを呼び出すコードと、`style.css`で指定している`font-family`プロパティを修正してください。
34 |
35 | ### OGPについて
36 |
37 | OGPは、ざっくり言えばTwitterやFacebookに投稿したときにサムネイルやページ概要を自動で表示してくれる機能です。詳しくは以下の記事が参考になると思います。
38 |
39 | [OGP設定がしてあれば10分で設定完了!ツイートをより魅力的にしてくれる「Twitterカード」の設定方法|Tips*Blog|株式会社コプロシステム](http://www.coprosystem.co.jp/tipsblog/2014/05/01.html)
40 |
41 | Twitterへの申請は承認までちょっと時間がかかる(1日〜数日?くらい?)こともあるので、申請だけでも先にしておいたほうがよさそうです。
42 |
43 | もちろん、いらない!ということであればヘッダの記述ごと削除していただいて構いません。
44 |
45 | ### ソーシャルメディアアイコンについて
46 |
47 | [こちら](http://wolfrosch.com/works/webdesign/socialicons)から以下のアイコンをお借りして同梱しています。
48 |
49 | * pixiv
50 | * novelist
51 | * TINAMI
52 | * Twitter
53 | * Facebook
54 | * tumblr
55 | * ピアプロ
56 | * ニコニコ動画
57 | * soundcloud
58 |
59 | 他のサービスのアイコンが必要であれば追加でダウンロードして、`style.css`の984行目あたりにクラスを追加してください。
60 |
61 | ```
62 | .icon-XXX { /* XXX=サービスの名前 */
63 | background-image: url(../img/icons/XXX@2x.png);
64 | }
65 | ```
66 |
67 | そして、アイコンを追加したいところに下記を追加します。
68 |
69 | ```
70 |
71 | ```
72 |
73 | ### Enterページ的なやつについて
74 |
75 | 同人サイトによくあるEnterページ的なやつです。Cookieに訪問フラグを記憶し、2回め以降の訪問では表示しません。この機能が不要であれば、下記を`index.html`から削除してください。
76 |
77 | ```
78 |
25 |
26 |
30 |
31 |
32 |
33 |
34 |
35 |
46 |
47 |
48 |
50 |
51 |
52 |
53 |
54 |
55 |
56 | About
57 |
58 |
![]()
59 |
60 |
61 | - タイトル
62 |
63 | - 内容
64 |
65 | - 発行日
66 |
67 | - 頒布予定
68 | -
69 |
74 |
75 | - 装丁
76 |
77 | - 価格
78 |
79 | - 主催
80 |
81 |
82 | 執筆者募集について
83 |
84 |
85 |
86 | 参加資格
87 |
91 | リンクについて
92 | 下記のバナーに限り、転載、直リンクを可とします。
93 |
94 | <a href="" title="" target="_blank"><img src="" alt="" width="200px" height="40px" /></a>
95 |
96 | -
97 |
98 |
99 |
100 | -
101 |
102 |
103 |
104 | -
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 | Sample
114 |
115 | -
116 |
117 |
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 |
126 |
127 |
128 |
129 |
130 |
131 |
132 |
133 |
134 |
135 |
136 |
167 |
168 |
169 |
170 |
171 | Flier
172 |
173 |
![]()
174 |
175 | 配布イベント
176 |
177 |
178 |
179 |
180 |
181 |
182 | 配布サークル募集
183 |
184 |
185 |
186 |
187 |
188 |
205 |
206 |
207 |
220 |
221 |
222 |
223 |
224 |
225 |
226 |
227 |
--------------------------------------------------------------------------------
/js/func.js:
--------------------------------------------------------------------------------
1 | $(document).ready(function(){
2 | // Enterページ的なやつ
3 | if($('#enter').length > 0){ // 要素が存在していたら処理を行う
4 | // 訪問済みかCookieで判定
5 | var flag = false;
6 | var cookies = document.cookie;
7 | if(cookies.length>0){
8 | cookies = cookies.split(';');
9 | for(var i in cookies){
10 | if(cookies[i].indexOf('entered') > -1){
11 | flag = true;
12 | }
13 | }
14 | }
15 |
16 | // Enterページ的なやつを表示
17 | if(!flag){
18 | $('#enter').addClass('show');
19 | }
20 |
21 | // Enterボタンクリックで訪問済みフラグ樹立
22 | $('#button-enter').click(function(){
23 | // Cookieでフラグをたてる
24 | var path = location.pathname.split('/');
25 | if(path[path.length-1] != ''){
26 | path[path.length-1] = '';
27 | path = path.join('/');
28 | }
29 | var extime = new Date().getTime();
30 | extime = new Date(extime + (60*60*24*180*1000)); // 有効期限=180日
31 | extime = extime.toUTCString();
32 | document.cookie = 'entered=true; path='+path+'; expires='+extime+'; ';
33 |
34 | // スクロール位置を初期化
35 | if($(window).scrollTop()>0){
36 | $(window).delay(1000).scrollTop(0,0);
37 | }
38 |
39 | // Enterページ的なやつをはずす
40 | $('#enter').removeClass('show');
41 | });
42 | }
43 |
44 | // ナビゲーションリンクをクリックしてスクロールする
45 | $('#nav a[href^="#"]').click(function(event){
46 | var id = $(this).attr("href");
47 | var offset = 60;
48 | var target = $(id).offset().top - offset;
49 | $('html, body').animate({scrollTop:target}, 300);
50 | event.preventDefault();
51 | //メニュー開閉用チェックボックスをfalseにする
52 | $('#nav-opener-check').prop({'checked': false});
53 | return false;
54 | });
55 | // 最上部リンク
56 | var btnToTop = $('#scroll-to-top');
57 | btnToTop.hide();
58 | $(window).scroll(function () {
59 | if ($(this).scrollTop() > 300) {
60 | btnToTop.fadeIn();
61 | }else{
62 | btnToTop.fadeOut();
63 | }
64 | });
65 | btnToTop.click(function () {
66 | $('body, html').animate({scrollTop:0}, 500, 'swing');
67 | return false;
68 | });
69 |
70 | // サムネイルクリックでキャプション表示
71 | $('.caption-toggle').click(function(event){
72 | $(this).parent('.sample-caption').toggleClass('on');
73 | });
74 |
75 | //ソーシャルなんとか
76 | var url = location.href;
77 | var title = encodeURIComponent(document.title);
78 | //ツイートボタン
79 | $('#tweet').click(function(){
80 | window.open('http://twitter.com/share?text='+title+'&url='+url, 'tweetwindow', 'width=550, height=420');
81 | });
82 | //ツイート数
83 | //JSONの読み込み
84 | $.ajax({
85 | type: 'GET',
86 | url: 'http://urls.api.twitter.com/1/urls/count.json',
87 | data: {
88 | url : encodeURI(url),
89 | noncache: new Date()
90 | },
91 | dataType: 'jsonp',
92 | success: function(data) {
93 | $('#count-tweet').find('a').text(data.count).attr({'href': 'https://twitter.com/search?q='+url+'&src=typd'});
94 | }
95 | });
96 | //いいねボタン
97 | $('#like').click(function(){
98 | window.open('http://www.facebook.com/sharer.php?u='+url+'&t='+title, 'sharewindow', 'width=550, height=420');
99 | });
100 | //シェア数
101 | var count;
102 | $.ajax({
103 | url:'http://graph.facebook.com/?id=' + url,
104 | dataType:"jsonp",
105 | success:function(obj){
106 | if(typeof(obj.shares) == 'undefined'){
107 | count = 0;
108 | }else{
109 | count = obj.shares;
110 | }
111 | $('#count-like').text(count);
112 | }
113 | });
114 | //LINEで送るボタン
115 | $('#line').click(function(){
116 | window.location.href = 'line://msg/text/'+title+' '+url;
117 | });
118 | });
--------------------------------------------------------------------------------
/scss/_media-queries.scss:
--------------------------------------------------------------------------------
1 | // ---------------------------------------------------------------------------------------------------------------------
2 | //
3 | // Author: Rafal Bromirski
4 | // www: http://paranoida.com/
5 | // twitter: http://twitter.com/paranoida
6 | // dribbble: http://dribbble.com/paranoida
7 | //
8 | // Licensed under a MIT License
9 | //
10 | // ---------------------------------------------------------------------------------------------------------------------
11 | //
12 | // Requirements:
13 | // Sass 3.2.0+
14 | //
15 | // Version:
16 | // 1.3 // developed on 14/11/2013
17 | //
18 | // Mixins:
19 | // @ min-screen(width) // shortcut for @media screen and (min-width ...)
20 | // @ max-screen(width) // shortcut for @media screen and (max-width ...)
21 | // @ screen(min-width, max-width) // shortcut for @media screen and (min-width ...) and (max-width ...)
22 | // ---
23 | // @ min-screen-height(height) // shortcut for @media screen and (min-height ...)
24 | // @ max-screen-height(height) // shortcut for @media screen and (max-height ...)
25 | // @ screen-height(min-height, max-height) // shortcut for @media screen and (min-height ...) and (max-height ...)
26 | // ---
27 | // @ iphone3 // only iPhone (2, 3G, 3GS) landscape & portrait
28 | // @ iphone3(landscape) // only iPhone (2, 3G, 3GS) only landscape
29 | // @ iphone3(portrait) // only iPhone (2, 3G, 3GS) only portrait
30 | // ---
31 | // @ iphone4 // only iPhone (4, 4S) landscape & portrait
32 | // @ iphone4(landscape) // only iPhone (4, 4S) only landscape
33 | // @ iphone4(portrait) // only iPhone (4, 4S) only portrait
34 | // ---
35 | // @ iphone5 // only iPhone (5) landscape & portrait
36 | // @ iphone5(landscape) // only iPhone (5) only landscape
37 | // @ iphone5(portrait) // only iPhone (5) only portrait
38 | // ---
39 | // @ ipad // all iPads (1, 2, 3, 4, Mini) landscape & portrait
40 | // @ ipad(landscape) // all iPads (1, 2, 3, 4, Mini) only landscape
41 | // @ ipad(portrait) // all iPads (1, 2, 3, 4, Mini) only portrait
42 | // ---
43 | // @ ipad-retina // only iPad (3, 4) landscape & portrait
44 | // @ ipad-retina(landscape) // only iPad (3, 4) only landscape
45 | // @ ipad-retina(portrait) // only iPad (3, 4) only portrait
46 | // ---
47 | // @ hdpi(ratio) // devices with hidpi displays (default ratio: 1.3)
48 | //
49 | // ---------------------------------------------------------------------------------------------------------------------
50 |
51 | // ---------------------------------------------------------------------------------------------------------------------
52 | // --- screen ----------------------------------------------------------------------------------------------------------
53 | // ---------------------------------------------------------------------------------------------------------------------
54 |
55 | @mixin screen($resMin, $resMax)
56 | {
57 | @media screen and (min-width: $resMin) and (max-width: $resMax)
58 | {
59 | @content;
60 | }
61 | }
62 |
63 | @mixin max-screen($res)
64 | {
65 | @media screen and (max-width: $res)
66 | {
67 | @content;
68 | }
69 | }
70 |
71 | @mixin min-screen($res)
72 | {
73 | @media screen and (min-width: $res)
74 | {
75 | @content;
76 | }
77 | }
78 |
79 | @mixin screen-height($resMin, $resMax)
80 | {
81 | @media screen and (min-height: $resMin) and (max-height: $resMax)
82 | {
83 | @content;
84 | }
85 | }
86 |
87 | @mixin max-screen-height($res)
88 | {
89 | @media screen and (max-height: $res)
90 | {
91 | @content;
92 | }
93 | }
94 |
95 | @mixin min-screen-height($res)
96 | {
97 | @media screen and (min-height: $res)
98 | {
99 | @content;
100 | }
101 | }
102 |
103 | // ---------------------------------------------------------------------------------------------------------------------
104 | // --- hdpi ------------------------------------------------------------------------------------------------------------
105 | // ---------------------------------------------------------------------------------------------------------------------
106 |
107 | // Based on bourbon hidpi-media-queries file (https://github.com/thoughtbot/bourbon/blob/master/app/assets/stylesheets/css3/_hidpi-media-query.scss)
108 | // HiDPI mixin. Default value set to 1.3 to target Google Nexus 7 (http://bjango.com/articles/min-device-pixel-ratio/)
109 |
110 | @mixin hdpi($ratio: 1.3)
111 | {
112 | $deviceMaxWidth: 1080px;
113 |
114 | @media only screen and (-webkit-min-device-pixel-ratio: $ratio) and (max-device-width: $deviceMaxWidth),
115 | only screen and (min--moz-device-pixel-ratio: $ratio) and (max-device-width: $deviceMaxWidth),
116 | only screen and (-o-min-device-pixel-ratio: #{$ratio}/1) and (max-device-width: $deviceMaxWidth),
117 | only screen and (min-resolution: #{round($ratio*96)}dpi) and (max-device-width: $deviceMaxWidth),
118 | only screen and (min-resolution: #{$ratio}dppx) and (max-device-width: $deviceMaxWidth)
119 | {
120 | @content;
121 | }
122 | }
123 |
124 | // ---------------------------------------------------------------------------------------------------------------------
125 | // --- iphone ----------------------------------------------------------------------------------------------------------
126 | // ---------------------------------------------------------------------------------------------------------------------
127 |
128 | @mixin iphone3($orientation: all)
129 | {
130 | $deviceMinWidth: 320px;
131 | $deviceMaxWidth: 480px;
132 | $devicePixelRatio: 1;
133 |
134 | @if $orientation == all
135 | {
136 | @media only screen and (min-device-width: $deviceMinWidth) and (max-device-width: $deviceMaxWidth)
137 | and (-webkit-device-pixel-ratio: $devicePixelRatio)
138 | {
139 | @content;
140 | }
141 | }
142 | @else
143 | {
144 | @media only screen and (min-device-width: $deviceMinWidth) and (max-device-width: $deviceMaxWidth)
145 | and (-webkit-device-pixel-ratio: $devicePixelRatio) and (orientation:#{$orientation})
146 | {
147 | @content;
148 | }
149 | }
150 | }
151 |
152 | // ---------------------------------------------------------------------------------------------------------------------
153 | // --- iphone-retina ---------------------------------------------------------------------------------------------------
154 | // ---------------------------------------------------------------------------------------------------------------------
155 |
156 | @mixin iphone4($orientation: all)
157 | {
158 | $deviceMinWidth: 320px;
159 | $deviceMaxWidth: 480px;
160 | $devicePixelRatio: 2;
161 | $deviceAspectRatio: '2/3';
162 |
163 | @if $orientation == all
164 | {
165 | @media only screen and (min-device-width: $deviceMinWidth) and (max-device-width: $deviceMaxWidth)
166 | and (-webkit-device-pixel-ratio: $devicePixelRatio) and (device-aspect-ratio: $deviceAspectRatio)
167 | {
168 | @content;
169 | }
170 | }
171 | @else
172 | {
173 | @media only screen and (min-device-width: $deviceMinWidth) and (max-device-width: $deviceMaxWidth)
174 | and (-webkit-device-pixel-ratio: $devicePixelRatio) and (device-aspect-ratio: 2/3) and (orientation:#{$orientation})
175 | {
176 | @content;
177 | }
178 | }
179 | }
180 |
181 | // ---------------------------------------------------------------------------------------------------------------------
182 | // --- iphone-5 --------------------------------------------------------------------------------------------------------
183 | // ---------------------------------------------------------------------------------------------------------------------
184 |
185 | @mixin iphone5($orientation: all)
186 | {
187 | $deviceMinWidth: 320px;
188 | $deviceMaxWidth: 568px;
189 | $devicePixelRatio: 2;
190 | $deviceAspectRatio: '40/71';
191 |
192 | @if $orientation == all
193 | {
194 | @media only screen and (min-device-width: $deviceMinWidth) and (max-device-width: $deviceMaxWidth)
195 | and (-webkit-device-pixel-ratio: $devicePixelRatio) and (device-aspect-ratio: $deviceAspectRatio)
196 | {
197 | @content;
198 | }
199 | }
200 | @else
201 | {
202 | @media only screen and (min-device-width: $deviceMinWidth) and (max-device-width: $deviceMaxWidth)
203 | and (-webkit-device-pixel-ratio: $devicePixelRatio) and (device-aspect-ratio: $deviceAspectRatio) and (orientation:#{$orientation})
204 | {
205 | @content;
206 | }
207 | }
208 | }
209 |
210 | // ---------------------------------------------------------------------------------------------------------------------
211 | // --- ipads (all) -----------------------------------------------------------------------------------------------------
212 | // ---------------------------------------------------------------------------------------------------------------------
213 |
214 | @mixin ipad($orientation: all)
215 | {
216 | $deviceMinWidth: 768px;
217 | $deviceMaxWidth: 1024px;
218 |
219 | @if $orientation == all
220 | {
221 | @media only screen and (min-device-width: $deviceMinWidth) and (max-device-width: $deviceMaxWidth)
222 | {
223 | @content;
224 | }
225 | }
226 | @else
227 | {
228 | @media only screen and (min-device-width: $deviceMinWidth) and (max-device-width: $deviceMaxWidth)
229 | and (orientation:#{$orientation})
230 | {
231 | @content;
232 | }
233 | }
234 | }
235 |
236 | // ---------------------------------------------------------------------------------------------------------------------
237 | // --- ipad-retina -----------------------------------------------------------------------------------------------------
238 | // ---------------------------------------------------------------------------------------------------------------------
239 |
240 | @mixin ipad-retina($orientation: all)
241 | {
242 | $deviceMinWidth: 768px;
243 | $deviceMaxWidth: 1024px;
244 | $devicePixelRatio: 2;
245 |
246 | @if $orientation == all
247 | {
248 | @media only screen and (min-device-width: $deviceMinWidth) and (max-device-width: $deviceMaxWidth)
249 | and (-webkit-device-pixel-ratio: $devicePixelRatio)
250 | {
251 | @content;
252 | }
253 | }
254 | @else
255 | {
256 | @media only screen and (min-device-width: $deviceMinWidth) and (max-device-width: $deviceMaxWidth)
257 | and (-webkit-device-pixel-ratio: $devicePixelRatio) and (orientation:#{$orientation})
258 | {
259 | @content;
260 | }
261 | }
262 | }
263 |
264 |
265 |
266 | @mixin sumaho {
267 | /* ラッパ */
268 | .wrapper {
269 | padding: 0.5rem;
270 | }
271 |
272 | /* ナビゲーションバー */
273 | #navbar {
274 | position: fixed;
275 | min-height: 45px;
276 | font-size: 1.8rem;
277 | box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
278 | }
279 | #nav {
280 | @include no-margin;
281 | width: 86%;
282 | li {
283 | @include no-margin;
284 | display: block;
285 | a {
286 | padding: 0.8rem 0.6em;
287 | }
288 | a:active {
289 | background-color: $color-yellow;
290 | }
291 | }
292 | }
293 | #nav-opener {
294 | display: block;
295 | position: relative;
296 | float: right;
297 | margin: 0 10px 0 0;
298 | padding: 10px;
299 | color: $color-white;
300 | line-height: 1;
301 | }
302 | #nav-opener-check {
303 | &+ul {
304 | overflow: hidden;
305 | @include transition(1s, 0.5s);
306 | opacity: 0;
307 | max-height: 0;
308 | }
309 | &:checked+ul {
310 | opacity: 1;
311 | max-height: 50rem;
312 | }
313 | }
314 |
315 | /* アイキャッチ */
316 | #eyecatch {
317 | margin-top: 45px;
318 | height: 400px;
319 | }
320 |
321 | /* 紙もの */
322 | .paper {
323 | margin: 0 auto;
324 | width: 100%;
325 | float: none;
326 | }
327 |
328 | /* LINEボタンはスマホのみ表示 */
329 | .btn.line {
330 | display: block;
331 | }
332 |
333 | /* サンプル一覧 */
334 | #sample-list {
335 | li {
336 | width: 100%;
337 | margin: 0.2rem 0;
338 | }
339 | }
340 | .sample-img {
341 | &:before {
342 | padding-top: 45%;
343 | }
344 | }
345 | .icon-social {
346 | width: 40px;
347 | height: 40px;
348 | }
349 |
350 | /* dl要素 */
351 | dl,
352 | dl.contact-form {
353 | dt,
354 | dd {
355 | display: block;
356 | width: 100%;
357 | }
358 | dt {
359 | text-align: left;
360 | &:before,
361 | &:after {
362 | display: none;
363 | }
364 | }
365 | &:before {
366 | display: none;
367 | }
368 | }
369 |
370 | /* フッター */
371 | #footer {
372 | &>div {
373 | width: 100%;
374 | float: none;
375 | }
376 | }
377 |
378 | }
379 |
380 | @include min-screen(1200px) {
381 | #sample-list li {
382 | width: 24%;
383 | }
384 | .wrapper:not(#footer) {
385 | margin: 0 auto;
386 | width: 1200px;
387 | }
388 | }
389 |
390 | @include hdpi(1.5) {
391 | @include sumaho;
392 | }
393 |
394 | @include max-screen(580px) {
395 | @include sumaho;
396 | }
--------------------------------------------------------------------------------
/scss/_mixin.scss:
--------------------------------------------------------------------------------
1 | //========================
2 | // Mixins
3 | //========================
4 |
5 | // clear
6 | @mixin clear {
7 | clear: both;
8 | }
9 | @mixin clearfix {
10 | display: block;
11 | *zoom: 1;
12 | &:after {
13 | content: ".";
14 | display: block;
15 | visibility: hidden;
16 | height: 0;
17 | font-size: 0;
18 | clear: both;
19 | }
20 | }
21 |
22 | // inline-block
23 | @mixin inline-block {
24 | display: inline-block;
25 | *display: inline;
26 | *zoom: 1;
27 | }
28 |
29 | // 余白をつめる
30 | @mixin no-margin {
31 | margin: 0;
32 | padding: 0;
33 | }
34 |
35 | // リスト頭を消す
36 | @mixin no-bullets {
37 | list-style: none;
38 | padding: 0;
39 | li {
40 | list-style-image: none;
41 | list-style-type: none;
42 | margin-left: 0;
43 | }
44 | }
45 |
46 | // hover時の色変え
47 | @mixin background-color-hover($color: #AAAAAA) {
48 | background-color: $color;
49 | &:hover,
50 | &:active {
51 | background-color: lighten($color, 8%);
52 | }
53 | }
54 |
55 | // 角丸
56 | @mixin border-radius($radius) {
57 | border-radius: $radius;
58 | }
59 |
60 | // 透過
61 | @mixin opacity($opacity) {
62 | opacity: $opacity;
63 | $ms-opacity: $opacity*100;
64 | filter: alpha(opacity=$ms-opacity);
65 | }
66 |
67 | // トランジション
68 | @mixin transition($duration:0.2s, $ease:ease-out) {
69 | transition: all $duration $ease;
70 | }
--------------------------------------------------------------------------------
/scss/_normalize.scss:
--------------------------------------------------------------------------------
1 | /*! normalize.css v3.0.1 | MIT License | git.io/normalize */
2 |
3 | /**
4 | * 1. Set default font family to sans-serif.
5 | * 2. Prevent iOS text size adjust after orientation change, without disabling
6 | * user zoom.
7 | */
8 |
9 | html {
10 | font-family: sans-serif; /* 1 */
11 | -ms-text-size-adjust: 100%; /* 2 */
12 | -webkit-text-size-adjust: 100%; /* 2 */
13 | }
14 |
15 | /**
16 | * Remove default margin.
17 | */
18 |
19 | body {
20 | margin: 0;
21 | }
22 |
23 | /* HTML5 display definitions
24 | ========================================================================== */
25 |
26 | /**
27 | * Correct `block` display not defined for any HTML5 element in IE 8/9.
28 | * Correct `block` display not defined for `details` or `summary` in IE 10/11 and Firefox.
29 | * Correct `block` display not defined for `main` in IE 11.
30 | */
31 |
32 | article,
33 | aside,
34 | details,
35 | figcaption,
36 | figure,
37 | footer,
38 | header,
39 | hgroup,
40 | main,
41 | nav,
42 | section,
43 | summary {
44 | display: block;
45 | }
46 |
47 | /**
48 | * 1. Correct `inline-block` display not defined in IE 8/9.
49 | * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
50 | */
51 |
52 | audio,
53 | canvas,
54 | progress,
55 | video {
56 | display: inline-block; /* 1 */
57 | vertical-align: baseline; /* 2 */
58 | }
59 |
60 | /**
61 | * Prevent modern browsers from displaying `audio` without controls.
62 | * Remove excess height in iOS 5 devices.
63 | */
64 |
65 | audio:not([controls]) {
66 | display: none;
67 | height: 0;
68 | }
69 |
70 | /**
71 | * Address `[hidden]` styling not present in IE 8/9/10.
72 | * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
73 | */
74 |
75 | [hidden],
76 | template {
77 | display: none;
78 | }
79 |
80 | /* Links
81 | ========================================================================== */
82 |
83 | /**
84 | * Remove the gray background color from active links in IE 10.
85 | */
86 |
87 | a {
88 | background: transparent;
89 | }
90 |
91 | /**
92 | * Improve readability when focused and also mouse hovered in all browsers.
93 | */
94 |
95 | a:active,
96 | a:hover {
97 | outline: 0;
98 | }
99 |
100 | /* Text-level semantics
101 | ========================================================================== */
102 |
103 | /**
104 | * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
105 | */
106 |
107 | abbr[title] {
108 | border-bottom: 1px dotted;
109 | }
110 |
111 | /**
112 | * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
113 | */
114 |
115 | b,
116 | strong {
117 | font-weight: bold;
118 | }
119 |
120 | /**
121 | * Address styling not present in Safari and Chrome.
122 | */
123 |
124 | dfn {
125 | font-style: italic;
126 | }
127 |
128 | /**
129 | * Address variable `h1` font-size and margin within `section` and `article`
130 | * contexts in Firefox 4+, Safari, and Chrome.
131 | */
132 |
133 | h1 {
134 | font-size: 2em;
135 | margin: 0.67em 0;
136 | }
137 |
138 | /**
139 | * Address styling not present in IE 8/9.
140 | */
141 |
142 | mark {
143 | background: #ff0;
144 | color: #000;
145 | }
146 |
147 | /**
148 | * Address inconsistent and variable font size in all browsers.
149 | */
150 |
151 | small {
152 | font-size: 80%;
153 | }
154 |
155 | /**
156 | * Prevent `sub` and `sup` affecting `line-height` in all browsers.
157 | */
158 |
159 | sub,
160 | sup {
161 | font-size: 75%;
162 | line-height: 0;
163 | position: relative;
164 | vertical-align: baseline;
165 | }
166 |
167 | sup {
168 | top: -0.5em;
169 | }
170 |
171 | sub {
172 | bottom: -0.25em;
173 | }
174 |
175 | /* Embedded content
176 | ========================================================================== */
177 |
178 | /**
179 | * Remove border when inside `a` element in IE 8/9/10.
180 | */
181 |
182 | img {
183 | border: 0;
184 | }
185 |
186 | /**
187 | * Correct overflow not hidden in IE 9/10/11.
188 | */
189 |
190 | svg:not(:root) {
191 | overflow: hidden;
192 | }
193 |
194 | /* Grouping content
195 | ========================================================================== */
196 |
197 | /**
198 | * Address margin not present in IE 8/9 and Safari.
199 | */
200 |
201 | figure {
202 | margin: 1em 40px;
203 | }
204 |
205 | /**
206 | * Address differences between Firefox and other browsers.
207 | */
208 |
209 | hr {
210 | -moz-box-sizing: content-box;
211 | box-sizing: content-box;
212 | height: 0;
213 | }
214 |
215 | /**
216 | * Contain overflow in all browsers.
217 | */
218 |
219 | pre {
220 | overflow: auto;
221 | }
222 |
223 | /**
224 | * Address odd `em`-unit font size rendering in all browsers.
225 | */
226 |
227 | code,
228 | kbd,
229 | pre,
230 | samp {
231 | font-family: monospace, monospace;
232 | font-size: 1em;
233 | }
234 |
235 | /* Forms
236 | ========================================================================== */
237 |
238 | /**
239 | * Known limitation: by default, Chrome and Safari on OS X allow very limited
240 | * styling of `select`, unless a `border` property is set.
241 | */
242 |
243 | /**
244 | * 1. Correct color not being inherited.
245 | * Known issue: affects color of disabled elements.
246 | * 2. Correct font properties not being inherited.
247 | * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
248 | */
249 |
250 | button,
251 | input,
252 | optgroup,
253 | select,
254 | textarea {
255 | color: inherit; /* 1 */
256 | font: inherit; /* 2 */
257 | margin: 0; /* 3 */
258 | }
259 |
260 | /**
261 | * Address `overflow` set to `hidden` in IE 8/9/10/11.
262 | */
263 |
264 | button {
265 | overflow: visible;
266 | }
267 |
268 | /**
269 | * Address inconsistent `text-transform` inheritance for `button` and `select`.
270 | * All other form control elements do not inherit `text-transform` values.
271 | * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
272 | * Correct `select` style inheritance in Firefox.
273 | */
274 |
275 | button,
276 | select {
277 | text-transform: none;
278 | }
279 |
280 | /**
281 | * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
282 | * and `video` controls.
283 | * 2. Correct inability to style clickable `input` types in iOS.
284 | * 3. Improve usability and consistency of cursor style between image-type
285 | * `input` and others.
286 | */
287 |
288 | button,
289 | html input[type="button"], /* 1 */
290 | input[type="reset"],
291 | input[type="submit"] {
292 | -webkit-appearance: button; /* 2 */
293 | cursor: pointer; /* 3 */
294 | }
295 |
296 | /**
297 | * Re-set default cursor for disabled elements.
298 | */
299 |
300 | button[disabled],
301 | html input[disabled] {
302 | cursor: default;
303 | }
304 |
305 | /**
306 | * Remove inner padding and border in Firefox 4+.
307 | */
308 |
309 | button::-moz-focus-inner,
310 | input::-moz-focus-inner {
311 | border: 0;
312 | padding: 0;
313 | }
314 |
315 | /**
316 | * Address Firefox 4+ setting `line-height` on `input` using `!important` in
317 | * the UA stylesheet.
318 | */
319 |
320 | input {
321 | line-height: normal;
322 | }
323 |
324 | /**
325 | * It's recommended that you don't attempt to style these elements.
326 | * Firefox's implementation doesn't respect box-sizing, padding, or width.
327 | *
328 | * 1. Address box sizing set to `content-box` in IE 8/9/10.
329 | * 2. Remove excess padding in IE 8/9/10.
330 | */
331 |
332 | input[type="checkbox"],
333 | input[type="radio"] {
334 | box-sizing: border-box; /* 1 */
335 | padding: 0; /* 2 */
336 | }
337 |
338 | /**
339 | * Fix the cursor style for Chrome's increment/decrement buttons. For certain
340 | * `font-size` values of the `input`, it causes the cursor style of the
341 | * decrement button to change from `default` to `text`.
342 | */
343 |
344 | input[type="number"]::-webkit-inner-spin-button,
345 | input[type="number"]::-webkit-outer-spin-button {
346 | height: auto;
347 | }
348 |
349 | /**
350 | * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
351 | * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
352 | * (include `-moz` to future-proof).
353 | */
354 |
355 | input[type="search"] {
356 | -webkit-appearance: textfield; /* 1 */
357 | -moz-box-sizing: content-box;
358 | -webkit-box-sizing: content-box; /* 2 */
359 | box-sizing: content-box;
360 | }
361 |
362 | /**
363 | * Remove inner padding and search cancel button in Safari and Chrome on OS X.
364 | * Safari (but not Chrome) clips the cancel button when the search input has
365 | * padding (and `textfield` appearance).
366 | */
367 |
368 | input[type="search"]::-webkit-search-cancel-button,
369 | input[type="search"]::-webkit-search-decoration {
370 | -webkit-appearance: none;
371 | }
372 |
373 | /**
374 | * Define consistent border, margin, and padding.
375 | */
376 |
377 | fieldset {
378 | border: 1px solid #c0c0c0;
379 | margin: 0 2px;
380 | padding: 0.35em 0.625em 0.75em;
381 | }
382 |
383 | /**
384 | * 1. Correct `color` not being inherited in IE 8/9/10/11.
385 | * 2. Remove padding so people aren't caught out if they zero out fieldsets.
386 | */
387 |
388 | legend {
389 | border: 0; /* 1 */
390 | padding: 0; /* 2 */
391 | }
392 |
393 | /**
394 | * Remove default vertical scrollbar in IE 8/9/10/11.
395 | */
396 |
397 | textarea {
398 | overflow: auto;
399 | }
400 |
401 | /**
402 | * Don't inherit the `font-weight` (applied by a rule above).
403 | * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
404 | */
405 |
406 | optgroup {
407 | font-weight: bold;
408 | }
409 |
410 | /* Tables
411 | ========================================================================== */
412 |
413 | /**
414 | * Remove most spacing between table cells.
415 | */
416 |
417 | table {
418 | border-collapse: collapse;
419 | border-spacing: 0;
420 | }
421 |
422 | td,
423 | th {
424 | padding: 0;
425 | }
--------------------------------------------------------------------------------
/scss/style.scss:
--------------------------------------------------------------------------------
1 | @charset "UTF-8";
2 |
3 | @import "_mixin";
4 | @import "_normalize";
5 |
6 | //========================
7 | // Variables
8 | //========================
9 |
10 | $color-white: #ffffff;
11 | $color-green: #1ba5a5;
12 | $color-yellow: #f9d76d;
13 | $color-light: #efefef;
14 | $color-gray: #aaaaaa;
15 | $color-dark: #555555;
16 | $color-black: #000000;
17 |
18 | $link: $color-green;
19 | $hover: darken($link,8%);
20 |
21 | $font-sans-serif: 'Roboto', sans-serif;
22 | $font-serif: 'Merriweather', Georgia, "Times New Roman", Times, serif;
23 |
24 |
25 | /* Main
26 | ========================================================================== */
27 |
28 | * {
29 | box-sizing: border-box;
30 | }
31 | html {
32 | font-size: 12px;
33 | }
34 |
35 | body {
36 | background: $color-white;
37 | color: $color-dark;
38 | font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
39 | }
40 | #body-wrapper {
41 | display: table;
42 | table-layout: fixed;
43 | position: relative;
44 | height: 100%;
45 | width: 100%;
46 | }
47 | .wrapper {
48 | margin: 37.5px 0;
49 | padding: 37.5px;
50 | }
51 |
52 | /* リンク */
53 | a {
54 | color: $link;
55 | text-decoration: none;
56 | &:not(#scroll-to-top):not(.btn):not(.banner):hover, {
57 | border-bottom: 3px solid $color-yellow;
58 | }
59 | }
60 |
61 | /* 画像 */
62 | img {
63 | vertical-align: top;
64 | }
65 |
66 | /* 見出し */
67 | h1,
68 | h2,
69 | h3,
70 | h4,
71 | h5,
72 | h6 {
73 | clear: both;
74 | -webkit-font-smoothing: antialiased;
75 | }
76 | h1,
77 | h2 {
78 | font-family: $font-serif;
79 | }
80 | h1 {
81 | font-size: 3.6rem;
82 | font-weight: 900;
83 | line-height: 1.12rem;
84 | text-align: center;
85 | }
86 | h2 {
87 | display: flex;
88 | align-items: center;
89 | text-align: center;
90 | color: $color-gray;
91 | font-size: 2.4rem;
92 | font-weight: normal;
93 | &:before,
94 | &:after {
95 | border-top: 1px solid $color-gray;
96 | content: '';
97 | display: inline; /* for IE */
98 | flex-grow: 1;
99 | }
100 | &:before {
101 | margin-right: 0.5em;
102 | }
103 | &:after {
104 | margin-left: 0.5em;
105 | }
106 | }
107 |
108 | /* 寄せ */
109 | .left {
110 | text-align: left;
111 | }
112 | .center {
113 | text-align: center;
114 | }
115 | .right {
116 | text-align: right;
117 | }
118 |
119 | /* セクション */
120 | section {
121 | display: block;
122 | margin-bottom: 5rem;
123 | @include clearfix;
124 | }
125 |
126 | /* 定義リスト */
127 | dl {
128 | margin: 20px auto;
129 | overflow: hidden;
130 | position: relative;
131 | dt {
132 | float: left;
133 | width: 28%;
134 | clear: both;
135 | padding: 3px 2% 15px 0;
136 | position: relative;
137 |
138 | }
139 | dd {
140 | float: right;
141 | width: 67%;
142 | margin: 0;
143 | padding: 3px 0 15px 3%;
144 | }
145 | &.contact-form {
146 | dt {
147 | width: 36%;
148 | text-align: right;
149 | position: relative;
150 | top: 5px;
151 | }
152 | dd {
153 | width: 62%;
154 | }
155 | }
156 | }
157 |
158 | /* 整形済みテキスト */
159 | pre {
160 | padding: 0.5rem;
161 | width: 98%;
162 | background: darken($color-white, 8%);
163 | border: 1px solid darken($color-white, 16%);
164 | @include border-radius(0.2em);
165 | font-size: 0.9em;
166 | font-family: Consolas, 'Courier New', Courier, Monaco, monospace;
167 | white-space: pre;
168 | white-space: pre-wrap;
169 | }
170 |
171 | /* Enterページ的なやつ */
172 | #enter {
173 | margin: 0;
174 | position: absolute;
175 | background-color: $color-white;
176 | @include transition(0.8s);
177 | z-index: -1;
178 | top: 0;
179 | right: 0;
180 | bottom: 0;
181 | left: 0;
182 | padding: 20% 2em;
183 | @include opacity(0);
184 | &.show {
185 | z-index: 99999;
186 | @include opacity(1);
187 | }
188 | }
189 | #button-enter {
190 | margin-top: 2em;
191 | }
192 |
193 | /* アイキャッチ */
194 | #eyecatch {
195 | margin: 0 auto;
196 | height: 600px;
197 | background-repeat: no-repeat;
198 | background-size: cover;
199 | background-position: top;
200 | position: relative;
201 | color: $color-white;
202 | h1 {
203 | @include no-margin;
204 | line-height: 480px;
205 | }
206 | }
207 |
208 | /* ナビゲーションメニュー */
209 | #navbar {
210 | @include no-margin;
211 | position: absolute;
212 | z-index: 999;
213 | top: 0;
214 | width: 100%;
215 | background-color: lighten($color-black, 8%);
216 | }
217 | #nav {
218 | @include no-margin;
219 | @include no-bullets;
220 | float: left;
221 | li {
222 | @include inline-block;
223 | margin: 0;
224 | position: relative;
225 | font-family: $font-sans-serif;
226 | font-weight: bold;
227 | text-transform: uppercase;
228 | background-color: transparent;
229 | }
230 | a {
231 | position: relative;
232 | display: block;
233 | padding: 10px 15px;
234 | text-decoration: none;
235 | box-sizing: border-box;
236 | color: $color-white;
237 | &:hover {
238 | border: 0px !important;
239 | .nav-label {
240 | border-bottom: 3px solid $color-yellow;
241 | }
242 | }
243 | }
244 | }
245 | #nav-opener {
246 | display: none;
247 | }
248 | #nav-opener-check {
249 | display: none;
250 | }
251 |
252 | /* 最上部へスクロールするボタン */
253 | #scroll-to-top {
254 | position: fixed;
255 | z-index: 99;
256 | bottom: 10px;
257 | right: 10px;
258 | font-size: 5rem;
259 | text-decoration: none;
260 | color: rgba(0, 0, 0, 0.6);
261 | @include border-radius(0.4em);
262 | @include transition(0.3s, 0.2s);
263 | &:hover {
264 | color: rgba(0, 0, 0, 0.8);
265 | }
266 | }
267 |
268 | ///* 表紙 */
269 | #cover {
270 | }
271 |
272 | ///* フライヤー */
273 | #flier-paper {
274 | }
275 |
276 | /* ダミー */
277 | .dummy {
278 | text-align: center;
279 | position: relative;
280 | &:before {
281 | content: '';
282 | display: block;
283 | width: 100%;
284 | vertical-align: middle;
285 | z-index: 0;
286 | background-color: $color-light;
287 | background-image: linear-gradient(
288 | -45deg,
289 | $color-green 25%,
290 | $color-gray 25%, $color-gray 50%,
291 | $color-green 50%, $color-green 75%,
292 | $color-gray 75%, $color-gray
293 | );
294 | background-size: 16px 16px;
295 | }
296 | &:after {
297 | color: $color-white;
298 | font-family: $font-sans-serif;
299 | z-index: 1;
300 | position: absolute;
301 | top: 50%;
302 | right: 0;
303 | left: 0;
304 | }
305 | * {
306 | position: absolute;
307 | top: 0;
308 | right: 0;
309 | bottom: 0;
310 | left: 0;
311 | z-index: 2;
312 | }
313 | }
314 |
315 | /* 紙ものを格納する要素 */
316 | .paper {
317 | margin: 0 1rem 1rem 0;
318 | float: left;
319 | width: 36%;
320 | height: auto;
321 | img {
322 | width: 100%;
323 | min-width: 250px;
324 | height: auto;
325 | }
326 | &.dummy:before {
327 | padding-top: 141.4%;
328 | }
329 | &.dummy:after {
330 | content: 'Now Printing';
331 | font-size: 2.4rem;
332 | }
333 | }
334 |
335 | /* 概要 */
336 | #spec {
337 | @include clearfix;
338 | dt {
339 | &:before {
340 | content: "";
341 | width: 30px;
342 | position: absolute;
343 | border-top: 1px solid #333;
344 | top: -5px;
345 | right: -15px;
346 | }
347 | &:after {
348 | content: "";
349 | width: 5px;
350 | height: 5px;
351 | background: #333;
352 | position: absolute;
353 | border-radius: 50%;
354 | top: -7px;
355 | right: -3px;
356 | }
357 | }
358 | &:before {
359 | content: "";
360 | width: 1px;
361 | position: absolute;
362 | border-left: 1px solid #333;
363 | top: 0;
364 | bottom: 0;
365 | left: 28%;
366 | }
367 | ul {
368 | @include no-margin;
369 | }
370 | }
371 |
372 | /* ソーシャルメディア */
373 | #share {
374 | @include no-margin;
375 | margin-top: 2rem;
376 | @include no-bullets;
377 | text-align: center;
378 | li {
379 | @include inline-block;
380 | }
381 | }
382 | .btn {
383 | i{
384 | margin-right: 0.2rem;
385 | }
386 | }
387 | .btn.twitter {
388 | @include background-color-hover(#55acee);
389 | }
390 | .btn.facebook {
391 | @include background-color-hover(#3b5998);
392 | }
393 | .btn.line {
394 | @include background-color-hover(#00c300);
395 | display: none;
396 | }
397 | .social-count {
398 | margin: 0 auto 12px auto;
399 | padding: 8px 0;
400 | position: relative;
401 | width: 95%;
402 | color: #777777;
403 | font-size: 1.1em;
404 | text-align: center;
405 | background: $color-white;
406 | border: 1px solid $color-light;
407 | @include border-radius(0.3rem);
408 | &:after,
409 | &:before{
410 | position: absolute;
411 | top: 100%;
412 | left: 50%;
413 | border: solid transparent;
414 | content: ' ';
415 | height: 0;
416 | width: 0;
417 | pointer-events: none;
418 | }
419 | &:after {
420 | border-color: rgba(255, 255, 255, 0);
421 | border-top-color: $color-white;
422 | border-width: 10px;
423 | margin-left: -10px;
424 | }
425 | &:before {
426 | border-color: rgba(175, 175, 175, 0);
427 | border-top-color: $color-light;
428 | border-width: 11px;
429 | margin-left: -11px;
430 | }
431 | a {
432 | color: $color-dark;
433 | display: block;
434 | width: 80%;
435 | margin: auto;
436 | }
437 | }
438 |
439 | /* サンプル一覧 */
440 | #sample-list {
441 | @include no-bullets;
442 | margin: 0 auto;
443 | text-align: center;
444 | @include clearfix;
445 | li {
446 | @include inline-block;
447 | position: relative;
448 | overflow: hidden;
449 | width: 32.7%;
450 | margin: 0.3%;
451 | float: left;
452 | @include border-radius(0.5rem);
453 | .sample-caption.on {
454 | bottom: 0;
455 | }
456 | }
457 | }
458 | .sample-img {
459 | background-size: cover;
460 | background-position: center 20%;
461 | background-repeat: no-repeat;
462 | -webkit-background-clip: padding-box;
463 | background-clip: padding-box;
464 | &:before {
465 | content: '';
466 | display: block;
467 | padding-top: 100%;
468 | }
469 | }
470 | .banner {
471 | @include inline-block;
472 | width: 200px;
473 | &.dummy:after {
474 | margin-top: -6%;
475 | top: 50%;
476 | }
477 | &.dummy {
478 | &:before {
479 | padding-top: 20%;
480 | @include border-radius(0.25rem);
481 | }
482 | &:after {
483 | content: 'no banner';
484 | font-size: 13px;
485 | }
486 | }
487 | }
488 | .sample-caption {
489 | position: absolute;
490 | bottom: -70%;
491 | left: 0;
492 | z-index: 2;
493 | padding: 0.5rem;
494 | width: 100%;
495 | height: 100%;
496 | color: $color-white;
497 | background: rgba(0, 0, 0, 0.6);
498 | text-align: left;
499 | @include transition(0.5s, 0.2s);
500 | p {
501 | @include no-margin;
502 | margin-bottom: 0.2rem;
503 | z-index: 9;
504 | @include opacity(0);
505 | @include transition(0.5s, 0.2s);
506 | }
507 | img {
508 | width: 200px;
509 | }
510 | }
511 | .caption-toggle {
512 | float: right;
513 | font-size: 2rem;
514 | cursor: pointer;
515 | z-index: 99;
516 | @include transition(0.5s, 0.2s);
517 | &:before {
518 | content: '\f0fe';
519 | }
520 | .on &:before {
521 | content: '\f146';
522 | }
523 | &+p {
524 | @include opacity(1);
525 | }
526 | }
527 | .on p {
528 | @include opacity(1);
529 | }
530 |
531 | /* ソーシャルメディアアイコン */
532 | .icon-pixiv {
533 | background: url(../img/icons/pixiv@2x.png);
534 | }
535 | .icon-twitter {
536 | background: url(../img/icons/twitter@2x.png);
537 | }
538 | .icon-novelist {
539 | background-image: url(../img/icons/novelist@2x.png);
540 | }
541 | .icon-tinami {
542 | background-image: url(../img/icons/tinami@2x.png);
543 | }
544 | .icon-tumblr {
545 | background-image: url(../img/icons/tumblr@2x.png);
546 | }
547 | .icon-facebook {
548 | background-image: url(../img/icons/facebook@2x.png);
549 | }
550 | .icon-piapro {
551 | background-image: url(../img/icons/piapro@2x.png);
552 | }
553 | .icon-soundcloud {
554 | background-image: url(../img/icons/soundcloud@2x.png);
555 | }
556 | .icon-nicovideo {
557 | background-image: url(../img/icons/nicovideo@2x.png);
558 | }
559 | .icon-disabled {
560 | filter: grayscale(100%);
561 | -webkit-filter: grayscale(100%);
562 | }
563 | .icon-social {
564 | display: inline-block;
565 | width: 20px;
566 | height: 20px;
567 | vertical-align: text-top;
568 | background-size: 100%;
569 | background-repeat: no-repeat;
570 | background-position: center;
571 | }
572 |
573 | /* テキストボックス、テキストエリア */
574 | input[type='text'],
575 | textarea {
576 | padding: 0.3rem;
577 | width: 24rem;
578 | max-width: 95%;
579 | border: 1px solid $color-gray;
580 | @include border-radius(0.3rem);
581 | outline: none;
582 | &:focus {
583 | border-color: $color-green;
584 | }
585 | }
586 | input[type='text'] {
587 | }
588 | textarea {
589 | height: 7rem;
590 | }
591 |
592 | /* ボタン */
593 | button,
594 | input[type='submit'],
595 | input[type='reset'],
596 | .btn {
597 | margin: 3px;
598 | padding: 0.7rem 2rem;
599 | font-size: 1.1rem;
600 | outline: none;
601 | border: none;
602 | @include border-radius(0.3em);
603 | @include inline-block;
604 | color: $color-white;
605 | font-family: $font-sans-serif;
606 | text-transform: uppercase;
607 | box-shadow: inset 0 -0.2rem rgba(0, 0, 0, 0.1);
608 | @include transition(0.2s);
609 | cursor: pointer;
610 | @include background-color-hover($color-gray);
611 | &:hover {
612 | text-decoration: none;
613 | }
614 | &:active {
615 | box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.4);
616 | }
617 | .icon {
618 | margin: 0.1rem;
619 | width: 1rem;
620 | height: 1rem;
621 | }
622 | }
623 | button[type='submit'],
624 | input[type='submit'],
625 | .submit {
626 | @include background-color-hover($color-green);
627 | }
628 |
629 | /* チェックボックス、ラジオボタン */
630 | input[type="checkbox"],
631 | input[type="radio"] {
632 | @include opacity(0);
633 | position: absolute;
634 | &+i {
635 | margin-right: 0.2rem;
636 | font-size: 1.2rem;
637 | width: 1.2rem;
638 | vertical-align: middle;
639 | }
640 | }
641 | input[type="checkbox"]{
642 | &+i:before {
643 | content: '\f096';
644 | }
645 | &:checked+i:before {
646 | content: "\f14a";
647 | }
648 | }
649 | input[type="radio"]{
650 | &+i:before {
651 | content: '\f10c';
652 | }
653 | &:checked+i:before {
654 | content: "\f192";
655 | }
656 | }
657 |
658 | /* フッター */
659 | #footer {
660 | margin-bottom: 0;
661 | background: $color-gray;
662 | color: $color-white;
663 | &>div {
664 | margin: 0;
665 | padding: 1rem;
666 | width: 50%;
667 | float: left;
668 | }
669 | }
670 | #credit {
671 | margin-top: 2rem;
672 | text-align: center;
673 | clear: both;
674 | font-family: $font-serif;
675 | font-size: 0.9rem;
676 | }
677 |
678 | @import "_media-queries";
--------------------------------------------------------------------------------