@charset "UTF-8";

#wrapper {}
.container {
max-width:1200px;
margin:0 auto;
background:#fff;
box-shadow:0 0 3px 0 rgba(0,0,0,0.6);}
.contents-1col {
margin:70px 0 0 0;
padding:0 75px 75px 75px;}
.contents-2col {
margin:70px 0 0 0;
padding:0 55px 75px 75px;}
.contents-ttl {
margin:70px 0;
padding:0 75px;}
.contents-dsc {
font-size:110%;
line-height:1.6;
border-left:5px solid #0048a8;
margin:1.8em 0 0 0;
padding-left:12px;}

@media only screen and (max-width:960px) {

.container {
width:100%;}
.contents-1col , .contents-2col {
width:92%;
padding:0 0 7% 0;
margin:7% auto 0;}
.contents-ttl {
width:92%;
padding:0;
margin:7% auto;}

}

@media only screen and (max-width:640px) {

.contents-1col , .contents-2col {
padding:0 0 9% 0;
margin:9% auto 0;}
.contents-ttl {
margin:9% auto;}
.contents-dsc {
font-size:100%;}

}

/* MAIN-SIDEBAR =====================*/

#main {
width:67%;
float:left;}
#sidebar {
width:27%;
float:right;
font-size:80%;
line-height:1.5;
text-align:center;}
#sidebar img {
margin:12px 0;}

@media only screen and (max-width:960px) {

#main {
width:100%;
float:none;}
#sidebar {
width:100%;
float:none;
margin:36px 0 0 0;}
#sidebar .col50 {
float:left;
width:50%;}

}

@media only screen and (max-width:480px) {

#sidebar .col50 {
float:none;
width:100%;}

}

/* header menu =============================*/

.header {
width:100%;
background:linear-gradient(0deg, #000, #171717);
box-shadow:0 0 3px 0 rgba(0,0,0,0.6);}
.header-contents {
position:relative;
margin:0 auto;
width:100%;
max-width:1200px;}
.header-contents .logo {
padding:3px 0;}
.header-contents .b-voice {
position:absolute;
bottom:22px;
right:18px;
z-index:9997;
width:100%;
max-width:380px;}
.header-contents .b-voice a img {
transition:margin 0.25s;}
.header-contents .b-voice a:hover img {
margin:-5px 0 5px 0;}

@media only screen and (max-width:960px) {

.header-contents .b-voice {
bottom:15px;
right:15px;
width:calc(100% - 520px);}

}

@media only screen and (max-width:800px) {

.header-contents .b-voice {
display:none;}

}

.gmenu-pc {
position:sticky;
z-index:9997;
top:0px;
width:100%;
background:linear-gradient(0deg, #1055b2, #1e71d1);
box-shadow:0 0 3px 0 rgba(0,0,0,0.6);}
.gmenu-pc ul {
width:100%;}
.gmenu-pc ul li {
text-align:center;
position:relative;
float:left;
padding:8px 4px;
width:16.6666%;}

.gmenu-pc ul.col-08 li {
width:12.5%;}

.gmenu-pc ul li::after {
content:"";
position:absolute;
right:0;
top:30%;
width:1px;
height:40%;
background:rgba(255,255,255,0.5);}
.gmenu-pc ul li:first-child::after {
display:none;}
.gmenu-pc ul li a {
display:block;
padding:4px 0;
line-height:0;}
.gmenu-pc ul li:first-child a {
background:rgba(255,255,255,0.4);
border-radius:5px;}

@media only screen and (max-width:1150px) {

.gmenu-pc ul li:last-child::after {
display:none;}

}

@media only screen and (max-width:960px) {

.gmenu-pc {
position:relative;}
.gmenu-pc ul.col-08 li {
padding:0px 0 !important;
width:25% !important;}
.gmenu-pc ul.col-08 li::after {
display:none;}
.gmenu-pc ul.col-08 li img {
max-width:85%;}
.gmenu-pc ul.col-08 li a {
padding:4% 0;
box-shadow:1px 1px 0 0 rgba(255,255,255,0.3);}
.gmenu-pc ul.col-08 li:first-child a {
border-radius:0px;}

}

@media only screen and (max-width:800px) {

.gmenu-pc ul li {
padding:0;
width:33.3333%;}
.gmenu-pc ul li::after {
display:none;}
.gmenu-pc ul li img {
max-width:80%;}
.gmenu-pc ul li a {
padding:4% 0;
box-shadow:1px 1px 0 0 rgba(255,255,255,0.3);}
.gmenu-pc ul li:first-child a {
border-radius:0px;}

}

/* hamburger gmenu-sp =================== */

.gmenu-sp-button {
position:fixed;
z-index:10000;
display:none;
cursor:pointer;
justify-content:center;
align-items:center;
border:none;
outline:none;
-webkit-appearance:none;
-moz-appearance:none;
appearance:none;
top:0px;
right:0px;
width:55px;
height:55px;
background:#fff;
border-radius:0 0 0 15px;
transition:0.25s;}

@media only screen and (max-width:960px) {

.gmenu-sp-button {
display:flex;}

}

.gmenu-sp-button span, .gmenu-sp-button span::before, .gmenu-sp-button span::after {
content:"";
position:absolute;
display:block;
height:1px;
width:30px;
background:#000;
transition:0.25s;}
.gmenu-sp-button span::before {
bottom:7px;}
.gmenu-sp-button span::after {
top:7px;}
.gmenu-sp-button.active {
display:flex;
background:none;}
.gmenu-sp-button.active span {
background:none;}
.gmenu-sp-button.active span::before {
bottom:0;
background:#000;
transform:rotate(45deg);}
.gmenu-sp-button.active span::after {
top:0;
background:#000;
transform:rotate(-45deg);}
#gmenu-sp-btn-check {
display:none;}
.gmenu-sp-bg {
pointer-events:none;
opacity:0;
position:fixed;
z-index:9998;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.05);
transition:0.25s;}
.gmenu-sp-bg.active {
pointer-events:auto;
opacity:1;}
.gmenu-sp-container {
-webkit-overflow-scrolling:touch;
overflow-scrolling:touch;
pointer-events:none;
opacity:0;
position:fixed;
z-index:9999;
overflow-y:auto;
overscroll-behavior-y:contain;
left:0;
top:0;
width:100%;
height:100%;
background:rgba(255,255,255,0.95);
transition:0.25s;}
.gmenu-sp-container.active {
pointer-events:auto;
opacity:1;}
.gmenu-sp-modal {
margin:70px auto 40px;
width:85%;
max-width:480px;}
.gmenu-sp-modal .gmenu-sp-logo {
text-align:center;
margin:0 auto 3.5%;
width:100%;}
.gmenu-sp-modal .gmenu-sp-b-voice {
text-align:center;
margin:0 auto 4%;
width:100%;}

ul.gmenu-sp {}
ul.gmenu-sp a {
display:block;
color:#222;}
ul.gmenu-sp a:hover {
color:#e82;}
ul.gmenu-sp > li {
text-align:left;
padding:0 0 0 8px;
border-bottom:1px solid #ddd;}
ul.gmenu-sp > li > a {
position:relative;
padding:0 0 0 4px;
font-size:108%;
line-height:48px;
white-space:nowrap;}
ul.gmenu-sp > li > a::before {
content:"";
position: absolute;
right:100%;
top:50%;
width:0;
height:0;
border-style:solid;
border-width:5px 0 5px 8px;
border-color:transparent transparent transparent #000;
transform:translate(0,-50%);}
ul.gmenu-sp ul.sub-menu {
padding:0 0 15px 0;}
ul.gmenu-sp ul.sub-menu a {
padding:0 0 0 6px;
font-size:92%;
line-height:30px;
white-space:nowrap;}

@media only screen and (max-width:640px) {

ul.gmenu-sp > li > a {
font-size:100%;
line-height:45px;}

}

.gmenu-sp-container .icon-social {
justify-content:center;
margin:20px 0;
width:100%;}
.gmenu-sp-container .icon-social li {
margin:0 5px;}
.gmenu-sp-container .icon-social li img {
width:44px;
box-shadow:1px 1px 2px 0 rgba(0,0,0,0.15);
border-radius:50%;}

/* mainmg ================*/

.mainimg {
position:relative;
margin:0 auto 0;
width:100%;
max-width:1150px;
box-shadow:2px 2px 3px 0 rgba(0,0,0,0.2);}

/* bread =================*/

#bread {
font-size:70%;
padding:16px 15px 14px;
background:#e9e9ea;
line-height:1.2;}
#bread h1 {
display:inline;
font-size:100%;
line-height:1.2;
font-weight:bold;
padding:0;
margin:0;
border:none;
background:none;}

/* FOOTER ========================*/

.social {
padding:18px;
background:#f3f2e6;}
.social li {
margin-right:3px;
float:left;
line-height:0;}

#footer {
clear:both;
font-size:80%;
line-height:1.3;}
#footer-menu {
padding:20px;
background:#e9e9ea;}

#footer-menu .icon-social {
margin:0 0 20px 0;
width:100%;}
#footer-menu .icon-social li {
margin:0 5px;}
#footer-menu .icon-social li img {
width:44px;
box-shadow:1px 1px 2px 0 rgba(0,0,0,0.15);
border-radius:50%;}

#footer-menu #menu {
float:left;}
#footer-menu #menu ul li {
position:relative;}
#footer-menu #menu ul li:not(:last-child)::after {
position:absolute;
content:"";
width:1px;
height:13px;
background:#666;
display:block;
top:50%;
right:0;
transform:translateY(-50%);}
#footer-menu #menu ul li a {
display:block;
padding:0 8px;}
#footer-contents {
font-size:90%;
background:#1055b2;
padding:10px 10px 10px 16px;}
#footer-contents a {
color:#FFF;}
#footer-contents .privacy {
padding:5px 0 0 0;
float:left;}
#footer-contents .copyright {
float:right;}

@media only screen and (max-width:960px) {

.social {
padding:12px 0 12px 12px;}

#footer-menu {
padding:20px 0 0 0;}

#footer-menu .icon-social {
justify-content:center;}

#footer-menu #menu {
text-align:center;
float:none;}
#footer-menu #menu ul li {
width:25%;
border-top:1px solid #ccc;
border-right:1px solid #ccc;}
#footer-menu #menu ul li:nth-child(4n) {
border-right:none;}
#footer-menu #menu ul li:not(:last-child)::after {
display:none;}
#footer-menu #menu ul li a {
padding:15px 0;}
#footer-contents {
padding:8px;}
#footer-contents .privacy {
text-align:center;
padding:8px 0;
float:none;}
#footer-contents .copyright {
text-align:center;
float:none;}

}

@media only screen and (max-width:640px) {

#footer-menu #menu ul li {
width:50%;}
#footer-menu #menu ul li:nth-child(2n) {
border-right:none;}

}

#page-top {
position:fixed;
z-index:999;
bottom:50px;
right:10px;
width:36px;
height:36px;
line-height:0;}
#page-top a {
padding:10px;
display:block;
background:#1055b2;
transition:background 0.25s;
border-radius:5px;}
#page-top a:hover {
background:#e82;}
