@charset "utf-8";
/*************************************************
* 共通定義
**************************************************/
:root {
--view-width: 94%;/* サイトの幅 */
--mb-view-width: 98%;/* モバイルサイトの幅 */
--base-color: #FFF;/* 背景色や余白など*/
--main-color: #0d70f3; /* メインカラー:印象色 */ /* 2577e3,1d53a4*/
--accent-color: blue;/* アクセントカラー:強調色 */
--color-from: #2FCDED;/* 色変化(開始色) */
--color-to: #1d53a4;/* 色変化(終了色) 0062B8*/
--border-color: #CCC;/* 枠の色(デフォルト) */
--border-color-on: #1d53a4;/* 枠の色(active、オン) 0062B8*/
--border-color-focus: #00f;
--txt-color: #222;/* 文字の色(デフォルト) */
--txt-color-on: #FFF;/* 文字の色(背景色付きの場合) */
--device-sp-width: 768px;/* スマホ幅 */
--device-tablet-width: 1024px;/* タブレート幅 */
--width-side-menu: 18%;
--width-main-content: 64%;
}
/*************************************************
* 共通CSS
**************************************************/
* {
margin: 0;
padding: 0;
}
*,*::after {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
html,body {
font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HiraKakuPro-W3","MS Pゴシック","MS PGothic",Osaka,Verdana,sans-serif;
font-size: 16px;
color: #222;
color: var(--txt-color);
}
body {
overflow-y: scroll;
}
/*************************************************
* 基本タグ<a>,<ul>,<img>,
**************************************************/
a {text-decoration: none;}
a:link {}
a:visited {}
a:hover {color: blue;color:var(--accent-color);}
a:active {}
ul {list-style-type: none;}
img {object-fit: cover;}
.ToggleOn {
display: block!important;
}
/*************************************************
* header css
**************************************************/
header {
position: absolute;
width: 100%;
height: 90px;
z-index: 10;
line-height: 1;
text-decoration: none;
border-bottom: 4px solid #2577e3;
border-bottom: 0.25rem solid var(--main-color);
background: -webkit-linear-gradient(top, #c9dbe9 0%, #fff 100%);
background: -moz-linear-gradient(top, #c9dbe9 0%, #fff 100%);
background: -ms-linear-gradient(top, #c9dbe9 0%, #fff 100%);
background: linear-gradient(top, #c9dbe9 0%, #fff 100%);
}
@media screen and (max-width: 1024px) {/* mobile css */
header {
top: 0;
position: fixed;
height: 3.875rem;
margin-top: 0;
padding: 0;
}
}
/* -------------------------------------------------------- header.Header__inner */
.Header__inner {
position: relative;
width: 94%;
width: var(--view-width);
height: 100%;
margin: 0 auto;
}
@media screen and (max-width: 1024px) {
.Header__inner {
width: 100%;
padding: 0;
}
}
.Header__inner:after {
content: "";
clear: both;
display: block;
}
/* -------------------------------------------------------- header.Header--fixed */
header.Header--fixed {
margin-top: 0;
top: 0;
position: fixed;
height: 3.875rem;
background: #fff;
transition: top 0.65s ease-in;
-webkit-transition: top 0.65s ease-in;
-moz-transition: top 0.65s ease-in;
opacity: 0.9;
}
@media screen and (max-width: 1024px) {
header.Header--fixed {
padding-top: 0;
background: #FFF;
height: 3.5rem;
}
}
/* -------------------------------------------------------- .Header__logo */
.Header__logo {
float: left;
padding: 0.35rem 0 0.35rem 90px;
font-size: 1rem;
color: var(--main-color);
z-index: 100;
font-weight: normal;
background-image: url("../img/common/logo.png");
background-repeat: no-repeat;
background-size:contain;
height: 90px;
}
@media screen and (max-width: 1024px) {
.Header__logo {
position: absolute;
height: 100%;
width: 100%;
font-size: 1rem;
text-align: center;
text-indent: 0;
padding: 1.15rem 4rem 1.15rem 4rem;
text-align: center;
}
}
/* -------------------------------------------------------- header.Header--fixed .Header__logo */
header.Header--fixed .Header__logo {
height: 3.875rem;
text-indent: -9999px;
}
@media screen and (max-width: 1024px) {
header.Header--fixed .Header__logo {
height: 3.5rem;
text-indent: 0;
}
}
.Header__logo strong {
color: var(--accent-color);
font-size: 1rem;
font-weight: bolder;
}
.Header__logo strong:hover {
color: var(--accent-color);
font-size: 0.85rem;
}
/* -------------------------------------------------------- .GNav */
.GNav {
width: 100%;
padding: 1.75rem 0 0 90px;
}
header.Header--fixed .GNav {
padding-top: 0;
}
.GNav__contents {
width: calc(100% - 90px);
height: calc(100% - 1.75rem);
list-style: none;
position: absolute;
right: 0;
bottom: 0;
margin: 0;
padding: 0;
list-style-type: none;
display:inline-block;
z-index: 999;
}
header.Header--fixed .GNav__contents {
height: 100%;
}
.GNav__menu {
width: calc(100% / 6);
float: left;
display: table-cell; /* IE8から使用可能 */
vertical-align: middle;
text-align: center;
height: 100%;
}
.GNav__menu:hover:after {
background: red;;
bottom: -3px;
}
.GNav__menu:last-child {
border-right: 0;
}
/* -------------------------------------------------------- first level menu's a-link style */
.GNav__menu>a {
font-weight: bold;
padding: 1.25rem 0;
display: inline-block;
font-size: 1.375rem;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
width: 100%;
height: 100%;
color: var(--txt-color);
}
@media screen and (max-width: 1024px) {/* TODO */
#gNav ul li a,
header.Header--fixed #gNav ul li a {
width: 100%;
display: block;
color: #fff;
padding: 18px 0;
}
}
.GNav__menu>a:hover {
color: #775cad;
}
@media screen and (max-width: 1024px) {
.GNav {
position: absolute;
top: -500px;
background: #0062B8;
width: 100%;
text-align: center;
padding: 2px 0;
-webkit-transition: .5s ease-in-out;
-moz-transition: .5s ease-in-out;
transition: .5s ease-in-out;
}
.Header--mobile-nav-open .GNav {
-moz-transform: translateY(556px);
-webkit-transform: translateY(556px);
transform: translateY(556px);
overflow: auto;
}
.GNav__contents {
width: 100%;
list-style: none;
position: static;
right: 0;
bottom: 0;
font-size: 0.8rem;
overflow: auto;
}
.GNav ul li {
float: none;
position: static;
display: block;
text-align: left;
}
.GNav ul li:after {
display: none;
}
.Header--mobile-nav-open .GNav ul li {
width: 30%;
clear: both;
text-align: left;
padding-left: 1rem;
}
}
.GNav ul li.GNav__menu--open > a,
.GNav ul li.GNav__menu--open > a:hover {
width: 100%;
color: #fff;
color: var(--txt-color-on);
background: #2577e3;
background: var(--main-color);
text-align: center;
-webkit-border-top-right-radius: 3px;
-webkit-border-top-left-radius: 3px;
-moz-border-radius-topright: 3px;
-moz-border-radius-topleft: 3px;
-webkit-box-shadow: 0px 0px 1px #2577e3;
-moz-box-shadow: 0px 0px 1px #2577e3;
box-shadow: 0px 0px 1px #2577e3;
}
header.Header--fixed .GNav ul li:after {
bottom: -10px;
}
header.Header--fixed .GNav ul li:hover:after {
bottom: -3px;
}
/* -------------------------------------------------------- GNav__submenu */
div.GNav__submenu {
display: none;
position: absolute;
background: #2577e3;
background: var(--main-color);
width: 100%;
left: 0;
box-sizing: border-box;
-webkit-border-bottom-right-radius: 3px;
-webkit-border-bottom-left-radius: 3px;
-moz-border-radius-bottomright: 3px;
-moz-border-radius-bottomleft: 3px;
-webkit-box-shadow: 0px 0px 3px #2577e3;
-moz-box-shadow: 0px 0px 3px #2577e3;
box-shadow: 0px 0px 3px #2577e3;
color: #FFF;
}
.GNav__menu--open .GNav__submenu {
display: block;
z-index: 100;
top: 3.625rem;/* header border-bottom:4px=0.25remを引く */
}
@media screen and (max-width:1024px) {/* mobile css */
.GNav__menu--open .GNav__submenu {
width: 70%;
left: 30%;
}
}
div.GNav__submenu a {
color: #fff;
}
div.GNav__submenu .GNav__submenuInner {
width: 100%;
padding-left: 1%;
}
div.GNav__submenu .GNav__submenuInner:before,
div.GNav__submenu .GNav__submenuInner:after {
content: " ";
display: table;
}
div.GNav__submenuTop {
width: 100%;
padding: 0.5em 0 0 1em;
text-align: left;
display: inline-block;
font-weight: bolder;
}
div.GNav__submenuTop h2 {
font-size: 0.9rem;
font-weight: bolder;
}
.GNav__submenuTtlList{
width: 32%;
float: left;
text-align: left;
margin: 1rem 1% 0.5rem;
display: table;
border-right: 1px dotted #FFF;
}
@media screen and (max-width: 1024px) {/* mobile css */
.GNav__submenuTtlList {
width: 98%;
border-right: 0;
}
}
.GNav__submenuTopTtl {
width: 100%;
padding: 0.5rem 0;
font-size: 85%;
font-weight:bold;
/*display:table-caption;*/
}
.GNav__submenuTtlList > * {
width: 100%;
display: table-row;
}
.GNav__submenuTtl {
text-indent: 0.5em;
margin-left: 1em;
line-height: 2em;
}
@media screen and (max-width: 1024px) {/* mobile css */
.GNav__submenuTtl {
text-indent: 0;
margin-left: 0.5em;
width: 100%!important;
}
}
.GNav__submenuTtl:hover {
background-color: #0050d4;
}
.GNav__submenuTtl a {
font-size: 1rem;
display: inline-block;
width: 100%;
}
.GNav__submenuTtl a:hover {color: #775cad;}
.GNav__submenuTtl a:hover:before { content:" ";}
.GNav__submenuTtl a:hover:after {content:" »";}
.GNav__submenuInfo {
width: 45%;
height: 80%;
float: left;
position: relative;
padding: 1rem;
display:none;
font-size: 0.85rem;
}
@media screen and (max-width: 1024px) {/* mobile css */
.GNav__submenuInfo {
display: none!important;
}
}
.GNav__close {
clear: both !important;
color: #FFF !important;
text-align: right !important;
float: right !important;
font-size: 150% !important;
height: 1.2rem;
}
@media screen and (max-width: 1024px) {/* mobile css */
.GNav__close {
height: auto;
}
}
.GNav__close a:hover {
color: red;
font-weight: bolder;
}
/* -------------------------------------------------------- header <a> */
header a {
color: blue;
text-decoration: none;
}
/* -------------------------------------------------------- header.Mobile-nav */
@media screen and (max-width: 1024px) {
.Mobile-nav {
width: 100%;
height: 100%;
z-index: 100;
position: relative;
}
}
.Mobile-nav__icon {
display: none;
position: absolute;
right: 12px;
top: 1rem;
width: 34px;
height: 36px;
cursor: pointer;
z-index: 101;
}
.Mobile-nav__icon div {
position: relative;
}
.Mobile-nav__icon span {
display: block;
position: absolute;
height: 4px;
width: 100%;
background: #666;
left: 0;
-webkit-transition: .35s ease-in-out;
-moz-transition: .35s ease-in-out;
transition: .35s ease-in-out;
}
.Mobile-nav__icon span:after {
content:"";
display:block;
height:4px;
width:100%;
background: -webkit-linear-gradient(-45deg, var(--color-from), var(--color-to) );
background: -moz-linear-gradient(-45deg, var(--color-from), var(--color-to) );
background: -ms-linear-gradient(-45deg, var(--color-from), var(--color-to) );
background: -o-linear-gradient(-45deg, var(--color-from), var(--color-to) );
background: linear-gradient(-45deg, #0062B8, #850047);
background: linear-gradient(-45deg, var(--color-from), var(--color-to) );
}
.Mobile-nav__icon span:nth-child(1) {
top: 0;
}
.Mobile-nav__icon span:nth-child(2) {
top: 11px;
}
.Mobile-nav__icon span:nth-child(3) {
top: 22px;
}
@media screen and (max-width: 1024px) {
.Mobile-nav__icon {
display: block;
}
.Header--mobile-nav-open .Mobile-nav__icon span:nth-child(1) {
top: 11px;
-webkit-transform: rotate(315deg);
-moz-transform: rotate(315deg);
transform: rotate(315deg);
}
.Header--mobile-nav-open .Mobile-nav__icon span:nth-child(2) {
width: 0;
left: 50%;
}
.Header--mobile-nav-open .Mobile-nav__icon span:nth-child(3) {
top: 11px;
-webkit-transform: rotate(-315deg);
-moz-transform: rotate(-315deg);
transform: rotate(-315deg);
}
}
/*************************************************
* <footer> tag CSS
**************************************************/
footer::before {
background: -webkit-linear-gradient(-45deg, var(--color-from), var(--color-to) );
background: -moz-linear-gradient(-45deg, var(--color-from), var(--color-to) );
background: -ms-linear-gradient(-45deg, var(--color-from), var(--color-to) );
background: -o-linear-gradient(-45deg, var(--color-from), var(--color-to) );
background: linear-gradient(-45deg, #0062B8, #850047);
background: linear-gradient(-45deg, var(--color-from), var(--color-to) );
}
footer {
font-size: 0.9rem;
height: auto;
padding: 0.5rem;
border-top: solid 2px #0d70f3;
border-top: solid 2px var(--main-color);
background: url(./img/common/bg_footer.gif) repeat;
background: -webkit-linear-gradient(top, #c9dbe9 0%, #fff 100%);
background: -moz-linear-gradient(top, #c9dbe9 0%, #fff 100%);
background: -ms-linear-gradient(top, #c9dbe9 0%, #fff 100%);
}
footer .footer_inner {
width: 980px;
width: var(--view-width);
margin: 0 auto;
float: center;
}
@media screen and (max-width: 1024px) {/* mobile css */
footer .footer_inner {
width: 100%;
padding: 0.5rem;
}
}
footer a {
color: #666;
text-decoration: none;
}
/*************************************************
* 部品ID/ブロック CSS
**************************************************/
/* -------------------------------------------------------- #container:画面メインコンテンツ ====*/
#container {
width: 100%;
position: relative;
top: 90px;
margin: 0 auto;
margin-bottom: 6.5rem;
display: flex;
flex-direction: column;
}
@media screen and (max-width: 1024px) {/* mobile css */
#container {
width: 100%;
top: 3.875rem;
padding: 0 0 3.875rem;
}
}
header.Header--fixed + #container {
top: 6rem;
}
@media screen and (max-width: 1024px) {/* mobile css */
header.Header--fixed + #container {
top: 4rem;
}
}
.Contents {
width: 98%;
width: var(--view-width);
margin: 0 auto;
float: left;
}
@media screen and (max-width: 1024px) {/* mobile css */
.Contents {
width: 98%;
width: var(--mb-view-width);}
}
/********************************************************
** .Clouds 定義
*********************************************************/
@media screen and (max-width: 1024px) {
.CloudsWrap {
position: relative;
top: -4rem;
}
}
.Clouds{
top: 0;
left: 0;
height: 3.875rem;
}
.Clouds__cloud {
top:20px;
width: 200px;
height: 70px;
background: #fff;
border-radius: 200px;
-moz-border-radius: 200px;
-webkit-border-radius: 200px;
position: absolute;
}
.Clouds__cloud:before,
.Clouds__cloud:after {
content: '';
position: absolute;
background: #fff;
width: 100px;
height: 80px;
position: absolute;
top: -15px;
left: 10px;
border-radius: 100px;
-moz-border-radius: 100px;
-webkit-border-radius: 100px;
-webkit-transform: rotate(30deg);
transform: rotate(30deg);
-moz-transform: rotate(30deg);
}
.Clouds__cloud:after {
width: 120px;
height: 120px;
top: -55px;
left: auto;
right: 15px;
}
/* --------------------------------------------------------Time to animate*/
.x1 {
-webkit-animation: movecloudsX1 25s linear infinite;
-moz-animation: movecloudsX1 25s linear infinite;
-o-animation: movecloudsX1 25s linear infinite;
animation: movecloudsX1 25s linear infinite;
}
@-webkit-keyframes movecloudsX1 {
0% {left: 70%;opacity: 0.1;-webkit-transform: scale(0.3);-moz-transform: scale(0.3);transform: scale(0.3);}
50% {opacity: 0.8;-webkit-transform: scale(0.6);-moz-transform: scale(0.6);transform: scale(0.6);}
100% {left: 10%;opacity:0.1;-webkit-transform: scale(0.3);-moz-transform: scale(0.3);transform: scale(0.3);}
}
@-moz-keyframes movecloudsX1 {
0% {left: 70%;opacity: 0.1;-webkit-transform: scale(0.3);-moz-transform: scale(0.3);transform: scale(0.3);}
50% {opacity: 0.8;-webkit-transform: scale(0.6);-moz-transform: scale(0.6);transform: scale(0.6);}
100% {left: 10%;opacity:0.1;-webkit-transform: scale(0.3);-moz-transform: scale(0.3);transform: scale(0.3);}
}
@-o-keyframes movecloudsX1 {
0% {left: 70%;opacity: 0.1;-webkit-transform: scale(0.3);-moz-transform: scale(0.3);transform: scale(0.3);}
50% {opacity: 0.8;-webkit-transform: scale(0.6);-moz-transform: scale(0.6);transform: scale(0.6);}
100% {left: 10%;opacity:0.1;-webkit-transform: scale(0.3);-moz-transform: scale(0.3);transform: scale(0.3);}
}
@keyframes movecloudsX1 {
0% {left: 70%;opacity: 0.1;-webkit-transform: scale(0.3);-moz-transform: scale(0.3);transform: scale(0.3);}
50% {opacity: 0.8;-webkit-transform: scale(0.6);-moz-transform: scale(0.6);transform: scale(0.6);}
100% {left: 10%;opacity:0.1;-webkit-transform: scale(0.3);-moz-transform: scale(0.3);transform: scale(0.3);}
}
.x2 {
left: 50%;
top: 20px;
-webkit-animation: movecloudsX2 45s linear infinite;
-moz-animation: movecloudsX2 45s linear infinite;
-o-animation: movecloudsX2 45s linear infinite;
animation: movecloudsX2 35s linear infinite;
}
@-webkit-keyframes movecloudsX2 {
0% {left: 70%;opacity: 0.1;-webkit-transform: scale(0.25);-moz-transform: scale(0.25);transform: scale(0.25);}
50% {opacity: 0.8;-webkit-transform: scale(0.5);-moz-transform: scale(0.5);transform: scale(0.5);}
100% {left: 10%;opacity:0.1;-webkit-transform: scale(0.25);-moz-transform: scale(0.25);transform: scale(0.25);}
}
@-moz-keyframes movecloudsX2 {
0% {left: 70%;opacity: 0.1;-webkit-transform: scale(0.25);-moz-transform: scale(0.25);transform: scale(0.25);}
50% {opacity: 0.8;-webkit-transform: scale(0.5);-moz-transform: scale(0.5);transform: scale(0.5);}
100% {left: 10%;opacity:0.1;-webkit-transform: scale(0.25);-moz-transform: scale(0.25);transform: scale(0.25);}
}
@-o-keyframes movecloudsX2 {
0% {left: 70%;opacity: 0.1;-webkit-transform: scale(0.25);-moz-transform: scale(0.25);transform: scale(0.25);}
50% {opacity: 0.8;-webkit-transform: scale(0.5);-moz-transform: scale(0.5);transform: scale(0.5);}
100% {left: 10%;opacity:0.1;-webkit-transform: scale(0.25);-moz-transform: scale(0.25);transform: scale(0.25);}
}
@keyframes movecloudsX2 {
0% {left: 70%;opacity: 0.1;-webkit-transform: scale(0.25);-moz-transform: scale(0.25);transform: scale(0.25);}
50% {opacity: 0.8;-webkit-transform: scale(0.5);-moz-transform: scale(0.5);transform: scale(0.5);}
100% {left: 10%;opacity:0.1;-webkit-transform: scale(0.25);-moz-transform: scale(0.25);transform: scale(0.25);}
}
.x3 {
left: 80%;
top: 10px;
opacity: 0.5; /*opacity proportional to the size*/
-webkit-animation: movecloudsX3 60s linear infinite;
-moz-animation: movecloudsX3 60s linear infinite;
-o-animation: movecloudsX3 60s linear infinite;
animation: movecloudsX3 60s linear infinite;
}
@-webkit-keyframes movecloudsX3 {
0% {left: 70%;opacity: 0.1;-webkit-transform: scale(0.2);-moz-transform: scale(0.2);transform: scale(0.2);}
50% {opacity: 0.8;-webkit-transform: scale(0.3);-moz-transform: scale(0.3);transform: scale(0.3);}
100% {left: 10%;opacity:0.1;-webkit-transform: scale(0.2);-moz-transform: scale(0.2);transform: scale(0.2);}
}
@-moz-keyframes movecloudsX3 {
0% {left: 70%;opacity: 0.1;-webkit-transform: scale(0.2);-moz-transform: scale(0.2);transform: scale(0.2);}
50% {opacity: 0.8;-webkit-transform: scale(0.3);-moz-transform: scale(0.3);transform: scale(0.3);}
100% {left: 10%;opacity:0.1;-webkit-transform: scale(0.2);-moz-transform: scale(0.2);transform: scale(0.2);}
}
@-o-keyframes movecloudsX3 {
0% {left: 70%;opacity: 0.1;-webkit-transform: scale(0.2);-moz-transform: scale(0.2);transform: scale(0.2);}
50% {opacity: 0.8;-webkit-transform: scale(0.3);-moz-transform: scale(0.3);transform: scale(0.3);}
100% {left: 10%;opacity:0.1;-webkit-transform: scale(0.2);-moz-transform: scale(0.2);transform: scale(0.2);}
}
@keyframes movecloudsX3 {
0% {left: 70%;opacity: 0.1;-webkit-transform: scale(0.2);-moz-transform: scale(0.2);transform: scale(0.2);}
50% {opacity: 0.8;-webkit-transform: scale(0.3);-moz-transform: scale(0.3);transform: scale(0.3);}
100% {left: 10%;opacity:0.1;-webkit-transform: scale(0.2);-moz-transform: scale(0.2);transform: scale(0.2);}
}
@-webkit-keyframes moveclouds {
0% {left: 80%;}
100% {left: 10%;}
}
@-moz-keyframes moveclouds {
0% {left: 80%;}
100% {left: 10%;}
}
@-o-keyframes moveclouds {
0% {left: 80%;}
100% {left: 10%;}
}
♪ 当記事がお役に立ちましたらシェアして頂ければ嬉しいです。
zanmai @2016年03月31日
» ①②③④の順で設定できるはず。…