@charset "UTF-8";

* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}

/*----------------------------------------------------
	PC
----------------------------------------------------*/

@media print, screen and (min-width: 769px) {

html,body {
color: #000;
font-family: 'Noto Sans Japanese', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
font-weight: 400;
position: relative;
}

/* ********** HEADER ********** */

header {
width: 100%;
min-width: 1080px;
height: 100px;
margin: 0 auto;
border-bottom: 1px solid #e0e0e0;
background: url(../images/common/bg_header.jpg) repeat-x left top;
position: relative;
overflow: hidden;
}
header h1 {
margin: 36px 0 0 0;
background: url(../images/common/logo_header.jpg) no-repeat center center;
background-size: 190px auto;
float: left;
}
header h1 a {
width: 280px;
height: 64px;
text-indent: -9999px;
border-bottom: 1px solid #e0e0e0;
background: url(../images/common/bg_shadow.png) repeat-x left bottom;
display: block;
}
header h1:hover {
opacity: 0.5;
}
header p.menu {
display: none;
}
header nav {
padding: 36px 0 0 0;
}
header nav ul {
width : calc(100% - 280px) ;
border-top: 1px solid #e0e0e0;
overflow: hidden;
background: url(../images/common/bg_shadow.png) repeat-x left bottom;
}
header nav ul li {
width: 16%;
height: 62px;
font-size: 15px;
font-weight: 500;
line-height: 1.5;
border-left: 1px solid #e0e0e0;
float: left;
}
header nav ul li:nth-child(2) {
width: 20%;
}
header nav ul li a {
width: 100%;
height: 62px;
padding: 20px 0 0 0;
color: #282b2e;
text-align: center;
text-decoration: none;
display: block;
}
header nav ul li a span {
color: #1c60a7;
font-size: 11px;
font-weight: 500;
display: block;
letter-spacing: 1px;
}
header nav ul li.current a,
header nav ul li a:hover {
border-bottom: 4px #ea6173 solid;
background: #f4f7fa url(../images/common/bg_shadow.png) repeat-x left bottom;
}
header ul.snav {
font-size: 11px;
position: absolute;
top: 9px;
right: 140px;
}
header ul.snav li {
color: #fff;
float: left;
}
header ul.snav li a {
padding: 0 10px;
color: #fff;
text-decoration: none;
}
header ul.snav li a:hover {
text-decoration: underline;
}
header ul.snav li:after {
content: "|"
}
header ul.snav li:last-child:after {
content: none;
}
header ul.language {
font-size: 11px;
position: absolute;
top: 7px;
right: 15px;
}
header ul.language li {
margin: 0 5px 0 0;
float: left;
}
header ul.language li a {
padding: 4px 18px 5px 18px;
color: #fff;
text-decoration: none;
line-height: 1;
border: 1px solid #fff;
display: block;
}
header ul.language li a:hover {
color: #000;
background: #fff;
}
header ul.language li.current a {
color: #000;
background: #fff;
}

/* ********** PAGE TOP ********** */

.pagetop {
position: fixed;
right: 0;
bottom: 0;
}
.pagetop img {
width: 44px;
}

/* ********** FOOTER ********** */

footer {
min-width: 1080px;
color: #fff;
line-height: 2;
border-top: 1px solid #d7d7d7;
}
footer a {
color: #000;
text-decoration: none;
}
footer a:hover {
text-decoration: underline;
}
footer .inner {
width: 1000px;
margin: 0 auto;
padding: 30px 0;
}
footer ul.fnav {
overflow: hidden;
}
footer ul.fnav > li {
margin: 0 50px 0 0;
font-size: 14px;
float: left;
}
footer ul.fnav > li:last-child {
margin: 0;
}
footer ul.fnav > li > a {
padding: 0 0 0 15px;
background: url(../images/common/ico_arrow.png) no-repeat left center;
}
footer ul.fnav > li > ul > li {
font-size: 12px;
float: none;
}
footer ul.fnav > li > ul > li > a {
padding: 0 0 0 15px;
background: none;
}
footer .copy {
padding: 10px 0;
background: #1c60a7;
}
footer p {
width: 1000px;
margin: 0 auto;
font-size: 10px;
background: #1c60a7;
}
footer small {
width: 1000px;
margin: 0 auto;
color: #fff;
font-size: 12px;
display: block;
}

/* ********** UTIL ********** */

section a {
color: #1c60a7;
text-decoration: none;
}
.sp {
display: none;
}
}

/*----------------------------------------------------
	SP
----------------------------------------------------*/

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

html,body {
width: 100%;
color: #000;
font-family: 'Noto Sans Japanese', sans-serif;
font-weight: 400;
position: relative;
}

/* ********** HEADER ********** */

header {
width: 100%;
margin: 0 auto;
border-bottom: 1px solid #e0e0e0;
background: url(../images/common/bg_shadow.png) repeat-x left bottom;
position: relative;
overflow: hidden;
}
header h1 a {
width: 179px;
height: 36px;
text-indent: -9999px;
background: #fff url(../images/common/logo_header.jpg) no-repeat center center;
background-size: 100% auto;
position: absolute;
top: 12px;
left: 20px;
display: block;
}
header .menu {
width: 60px;
height: 60px;
float: right;
cursor: pointer;
}
header .menu img {
width: 100%;
}
header #menu {
clear: both;
display: none;
}
header nav {
}
header nav ul {
font-size: 18px;
background: #1c60a7;
overflow: hidden;
}
header nav ul li {
border-bottom: 1px solid #528bc6;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}
header nav ul li:last-child {
border-right: none;
}
header nav ul li a {
padding: 20px;
color: #fff;
background: url(../images/common/ico_arrow_w_sp.png) no-repeat 580px center;
text-decoration: none;
display: block;
}
header nav ul li a span {
font-size: 14px;
padding: 0 0 0 20px;
}
header ul.snav {
font-size: 14px;
background: #2d6eb2;
overflow: hidden;
}
header ul.snav li {
width: 100%;
border-bottom: 1px solid #528bc6;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}
header ul.snav li a {
padding: 20px;
color: #fff;
text-decoration: none;
display: block;
}
header ul.language {
font-size: 14px;
background: #194e84;
overflow: hidden;
}
header ul.language li {
width: 50%;
border-bottom: 1px solid #528bc6;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
float: left;
}
header ul.language li:first-child {
border-right: 1px solid #528bc6;
}
header ul.language li a {
padding: 20px;
color: #fff;
text-decoration: none;
display: block;
}

/* ********** PAGE TOP ********** */

.pagetop {
position: fixed;
right: 0;
bottom: 0;
}
.pagetop img {
width: 44px;
}

/* ********** FOOTER ********** */

footer {
color: #fff;
line-height: 2;
border-top: 1px solid #d7d7d7;
}
footer a {
color: #000;
text-decoration: none;
}
footer a:hover {
text-decoration: underline;
}
footer .inner {
display: none;
}
footer .copy {
padding: 10px;
background: #1c60a7;
}
footer p {
font-size: 10px;
background: #1c60a7;
}
footer small {
margin: 0 auto;
color: #fff;
font-size: 12px;
display: block;
}

/* ********** UTIL ********** */

section a {
color: #1c60a7;
text-decoration: none;
}
.pc {
display: none;
}
}





/* PRINT */


@media print {
header {
height: 66px;
background: none;
}
header h1 {
margin: 0;
}
header h1 a {
background: none;
}
header div#menu {
display: none;
}
.pagetop {
display: none;
}
footer .inner {
display: none;
}

section#index #content2 {
background-image: none;
}

}