﻿/*----------BODY&HTML----------*/

* {
	margin : 0;
	padding : 0;
}

img {
	border : 0;
	vertical-align : top;
	font-size : 0;
	line-height : 0;
	-webkit-backface-visibility : hidden;
}

@font-face {
	src : url("googlefonts/NotoSansJP-Regular.ttf") format("truetype");
	font-family : "Noto Sans JP";
	font-weight : 400;
	font-style : normal;
	font-display : swap;
}

@font-face {
	src : url("googlefonts/NotoSansJP-SemiBold.ttf") format("truetype");
	font-family : "Noto Sans JP";
	font-weight : 600;
	font-style : normal;
	font-display : swap;
}

@font-face {
    src : url("googlefonts/ZenOldMincho-Medium.ttf") format("truetype");    
    font-family : "Zen Old Mincho";
    font-weight : 500;
    font-style : normal;
    font-display : swap;
}

@font-face {
    src : url("googlefonts/ZenOldMincho-SemiBold.ttf") format("truetype");    
    font-family : "Zen Old Mincho";
    font-weight : 600;
    font-style : normal;
    font-display : swap;
}

@font-face {
    src : url("googlefonts/Spectral-Medium.ttf") format("truetype");    
    font-family : "Spectral";
    font-weight : 500;
    font-style : normal;
    font-display : swap;
}

body {
	margin : 0 0 150px 0;
	padding : 0;
	font-family : "Noto Sans JP","sans-serif";
	font-style : normal;
	font-weight : 400;
	font-size : 105%;
	color : #3c3c3c;
	background : #ffffff;
}

/*----------HEADER----------*/

#header {
    overflow : hidden;
    width : 100%;
    margin-bottom : 50px;
    background : #ffffff url(body_sky.png) center top no-repeat;
}

#hnavi {
    position : relative;
    width : 1200px;
    height : 150px;
    margin : 32px auto 40px auto;
    background : #ffffff;
    border-radius : 10px;
}

#hline {
	position : absolute;
	width : 950px;
	height : 40px;
	background-color : #05236e;
    border-top-right-radius : 10px;
	top : 0;
	right : 0;
	z-index : 0;
}

#hnavi h1 {
    position : absolute;
    color : #ffffff;
    font-family : "Zen Old Mincho";
    font-weight : 500;
    font-style : normal;
    font-size : 74.5%;
    top : 10px;
    left : 270px;
    z-index : 1;
}

#hnavi h1 a {
    color : #ffffff;
    text-decoration : none;
}

h2#hlogo {
    position : absolute;
    width : 174px;
    top : 36px;
    left : 42px;
}

h2#hlogo img {
    width : 100%;
    height : 100%;
}

ul#gnavi {
    position : absolute;
    list-style : none;
    border-right : solid 1px #c8c8c8;
    font-family : "Zen Old Mincho";
    font-weight : 500;
    font-style : normal;
    font-size : 122%;
    top : 60px;
    left : 250px;
}

ul#gnavi li {
    float : left;
    border-left : solid 1px #c8c8c8;
    text-align : center;
	line-height : 1.42em;
}

ul#gnavi li font {
	letter-spacing : -1px;
}

ul#gnavi li span {
    display : block;
    font-size : 80%;
    font-family : "Spectral";
	font-style : normal;
	font-weight : 500;
	letter-spacing : 1px;
    color : #b9b9b9;
	transform : scale(1.01, 1.02);
}

ul#gnavi li a {
	position : relative;
    padding : 7px 17px 2px 17px;
	color : #282828;
	text-decoration : none;
	display : inline-block;
	transition : .3s;
}

ul#gnavi li:nth-child(1) a {
    padding : 7px 14px 2px 17px;
}

ul#gnavi li:nth-child(2) a {
    padding : 7px 17px 2px 14px;
}

ul#gnavi li:nth-child(4) a {
    padding : 7px 18px 2px 17px;
}

ul#gnavi li:last-child a {
    padding : 7px 19px 2px 18px;
}

ul#gnavi li a::after {
	position: absolute;
	color : #282828;
	text-decoration : none;
	bottom : -23px;
	left : 50%;
	content : '';
	width : 0;
	height : 8px;
	background-color : #4169aa;
	transition : .3s;
	-webkit-transform : translateX(-50%);
	transform : translateX(-50%);
}

ul#gnavi li a:hover::after {
	width: 100%;
}

p#hmail {
	position : absolute;
	width : 110px;
	font-family : "Zen Old Mincho";
    font-weight : 500;
    font-style : normal;
    font-size : 110%;
	line-height : 1.15em;
	text-align : center;
	top : 61px;
	right : 22px;
}

p#hmail span {
	display : block;
	font-size : 86%;
}

p#hmail a {
	display : block;
	padding : 12px 0 12px 0;
	color : #ffffff;
	background : #0aa5fa;
	text-decoration : none;
	border-radius : 8px;
}

p#hmail a:hover {
	background : #007dc0;
}

p#htel {
    position : absolute;
	padding-left : 20px;
    color : #ffffff;
	background-image : url(hiconT.svg);
	background-repeat : no-repeat;
	background-position : 0 5px;
	background-size : 15px;
    font-size : 115%;
    font-family : "Spectral";
	font-style : normal;
	font-weight : 500;
	letter-spacing : 1px;
    top : 7px;
    right : 25px;
    z-index : 1;
}

h2#ptitle {
    clear : both;
    margin-bottom : 45px;
    font-size : 210%;
    font-family : "Zen Old Mincho";
    font-weight : 600;
    font-style : normal;
    color : #ffffff;
    text-align : center;
}

h2#ptitle span {
    margin-left : 25px;
    vertical-align : 5px;
    font-size : 68%;
    font-family : "Spectral";
	font-style : normal;
	font-weight : 500;
	letter-spacing : 2px;
	transform : scale(1.01, 1.02);
    opacity: 0.6;
}

/*----------TABNAVI----------*/

ul#tnavi01 {
	list-style : none;
	overflow : hidden;
    width : 1200px;
    margin : 0 auto 0 auto;
    text-align : center;
    font-size : 115%;
    font-weight : 600;
    border-top-left-radius : 10px;
    border-top-right-radius : 10px;
}

ul#tnavi01 li {
    display : inline-block;
	width : 400px;
	text-align : center;
}

ul#tnavi01 li a {
	display : block;
	width : 100%;
    padding : 15px 0 16px 0;
	color : #ffffff;
    background : #007dc0;
	text-decoration : underline;
    border-right : solid 1px #37a5f0;
    box-sizing : border-box;
}

ul#tnavi01 li a:hover {
	background : #0f6eaf;
	text-decoration : none;
}

ul#tnavi01 li p {
	width : 100%;
    padding : 15px 0 16px 0;
	background : #ffffff;
    border : none;
}

ul#tnavi02 {
	list-style : none;
	overflow : hidden;
    width : 1200px;
    margin : 0 auto 0 auto;
    text-align : center;
    font-size : 115%;
    font-weight : 600;
    border-top-left-radius : 10px;
    border-top-right-radius : 10px;
}

ul#tnavi02 li {
    display : inline-block;
	width : 300px;
	text-align : center;
}

ul#tnavi02 li a {
	display : block;
	width : 100%;
    padding : 15px 0 16px 0;
	color : #ffffff;
    background : #007dc0;
	text-decoration : underline;
    border-right : solid 1px #37a5f0;
    box-sizing : border-box;
}

ul#tnavi02 li a:hover {
	background : #0f6eaf;
	text-decoration : none;
}

ul#tnavi02 li p {
	width : 100%;
    padding : 15px 0 16px 0;
	background : #ffffff;
    border : none;
}

/*----------CONTENTS----------*/

#contents {
	width : 1200px;
	margin : 0 auto 60px auto;
}

#contents1 {
    overflow : hidden;
    position : relative;
    width : 1110px;
    margin : 0 auto 70px auto;
}

/*----------FOOTER----------*/

#footer {
	clear : both;
	width : 100%;
	margin-bottom : 40px;
	padding : 50px 0 60px 0;
	background : #05236e;
	text-align : center;
}

#footer h1 {
	width : 200px;
	margin : 0 auto 30px auto;
}

#footer h1 img {
	width : 100%;
	height : 100%;
}

#footer ul {
	list-style : none;
    display : inline;
    font-family : "Zen Old Mincho";
    font-weight : 500;
    font-style : normal;
    font-size : 110%;
}

#footer ul li {
    display : inline;
	padding : 3px 15px 6px 15px;
	border-right : solid 1px #2855af;
}

#footer ul li:first-child {
	border-left : solid 1px #2855af;
}

#footer ul li a {
	color : #ffffff;
	text-decoration : underline;
}

#footer ul li a:hover {
	color : #ffffff;
	text-decoration : none;
}

/*----------LBOX----------*/

#lbox {
    clear : both;
    position : relative;
    width : 1200px;
    margin : 0 auto 0 auto;
}

#lbox p {
    font-family : "Zen Old Mincho";
    font-weight : 500;
    font-style : normal;
    font-size : 105%;
    line-height : 1.7em;
}

#lbox p a {
    color : #282828;
    text-decoration : underline;
}

address {
    position : absolute;
    font-size : 100%;
    font-family : "Zen Old Mincho";
    font-weight : 500;
    font-style : normal;
    top : 10px;
    right : 0;
}

/*----------PAGETOP----------*/

#toPageTop {
	position : fixed;
	bottom : 60px;
	right : 60px;
}

#toPageTop a {
	display : block;
	width : 80px;
	background-image : url(ptop_ov.svg);
	background-size : 100%;
	background-repeat : no-repeat;
}

#toPageTop img {
	width : 100%;
	height : 100%;
}

#toPageTop a:hover img {
	visibility : hidden;
}

/*----------MODALWINDOW----------*/

p#mdmenu,p#mdtel {
	display : none;
}

/*----------iPad（縦・横両対応）----------*/
@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px) 
and (-webkit-min-device-pixel-ratio : 1) {

#hbox h1 {
	position : absolute;
	font-size : 63%;
	font-weight : 600;
    font-style : noraml;
    color : #4b2d2d;
	top : 33px;
	left : 0;
}

}