 @charset "utf-8";
/* CSS Document */

/*-------------------------------
	all
--------------------------------*/
* {
	margin: 0px;
	padding: 0px;
	max-height: 9999999px; 
}
body {
	color:#000;
	font-size:14px;
	font-family:"Noto Sans JP", "Yu Gothic", YuGothic, "メイリオ", Miryo, sans-serif;
	font-weight:400;
	text-align:center;
	min-width:1000px;
	background-color:#FFF;
	-webkit-text-size-adjust:100%;
}
@media all and (-ms-high-contrast: none){
body {
	font-family: 'メイリオ', 'Meiryo', sans-serif;
}
}
p,dt,dl {
	line-height:1.6;
}
img {
	border: none;
	height:auto;
	-ms-interpolation-mode: bicubic;
	-webkit-backface-visibility: hidden;
}
a {
	color:#009AC9;
	transition: background-color 0.4s;
}
a img {
	opacity:1;
	transition:opacity 0.4s;
	backface-visibility: hidden;
}
a:hover img  {
	filter:alpha(opacity=60);
	opacity: 0.6;
}
.ov {
	transition:opacity 0.4s;
}
.ov:hover {
	filter:alpha(opacity=60);
	opacity: 0.6;
}
.pagetop {
	display: none;
	position: fixed;
	bottom: 50px;
	right: 10px;
	z-index:99999;
}
.pagetop a {
	display: block;
}
.pagetop img {
	width:50px;
	vertical-align:bottom;
}
br.spbr {
	display:none;
}
br.pcbr {
}
.clearfix:after {
	content:" ";
	display:block;
	clear:both;
}
.relative {
	position:relative;
}
.wrap {
	overflow:hidden;
}
.center {
	text-align:center;
}
.left {
	text-align:left;
}
.right {
	text-align:right;
}
.pic img {
	width:100%;
}
.box {
	width:1000px;
	margin:0 auto;
}
.w780 {
	width:780px;
	margin:0 auto;
	text-align:left;
}
a.tel {
	display:inline-block;
	pointer-events:none;
}
a.anchor {
	display:block;
	padding-top:150px;
    margin-top:-150px;
}
@media only screen and (max-width:600px){
body {
	font-size: 14px;
	min-width:320px;
	-webkit-text-size-adjust: 100%;
}
p,li,dt,dl {
	line-height:1.6;
}
a {
	transition: none;
}
a:hover img  {
	opacity:1;
}
.ov:hover {
	filter:alpha(opacity=100);
	opacity:1;
}
.i-b span {
	display:inline-block;
}
br.spbr {
	display:block;
}
br.pcbr {
	display:none;
}
.spleft {
	text-align:left;
}
.spcenter {
	text-align:center;
}
.pagetop {
	display: none;
	position: fixed;
	bottom: 20px;
	right: 10px;
	z-index:9999;
}
.pagetop img {
	width:50px;
	height:50px;
}
.box {
	width:auto;
	margin:0 10px;
}
.w780 {
	width:auto;
	margin:0 15px;
	text-align:left;
}
a.tel {
	pointer-events:auto;
}
a.anchor {
	display:block;
	padding-top:20px;
    margin-top:-20px;
}
}
/*-------------------------------
	margin
--------------------------------*/
.mb10 {
	margin-bottom:10px;
}
.mb15 {
	margin-bottom:15px;
}
.mb20 {
	margin-bottom:20px;
}
.mb30 {
	margin-bottom:30px;
}
.mb40 {
	margin-bottom:40px;
}
.mb50 {
	margin-bottom:50px;
}
.mb60 {
	margin-bottom:60px;
}
.mb70 {
	margin-bottom:70px;
}
.mb80 {
	margin-bottom:80px;
}
.mb90 {
	margin-bottom:90px;
}
@media only screen and (max-width:600px){
.mb10 {
	margin-bottom:5px;
}
.mb15 {
	margin-bottom:10px;
}
.mb20 {
	margin-bottom:10px;
}
.mb30 {
	margin-bottom:15px;
}
.mb40 {
	margin-bottom:20px;
}
.mb50 {
	margin-bottom:25px;
}
.mb60 {
	margin-bottom:30px;
}
.mb70 {
	margin-bottom:35px;
}
.mb80 {
	margin-bottom:40px;
}
.mb90 {
	margin-bottom:45px;
}
}
/*-------------------------------
	float
--------------------------------*/
.float-wrap {
	overflow:hidden;
	display:flex;
	flex-wrap:wrap;
	margin:0 -2%;
}
.float-pc-five .float-box {
	width:16%;
}
.float-pc-four .float-box {
	width:21%;
}
.float-pc-three .float-box {
	width:29.3%;
}
.float-pc-two .float-box {
	width:46%;
}
.float-box {
	float:left;
	display:block;
	margin-left:2%;
	margin-right:2%;
	margin-bottom:40px;
}
.float-box img {
	width:100%;
	margin-bottom:5px;
}
@media(max-width:600px){
.float-sp-three .float-box {
	width:29%;
}
.float-sp-two .float-box {
	width:46%;
}
.float-sp-one .float-box {
	width:100%;
}
.float-box {
	margin-left:2%;
	margin-right:2%
}
}
/*-------------------------------
	header
--------------------------------*/
.header-wrap {
	height:120px;
	position: fixed;
	top:0;
	left:0;
	right:0;
	z-index:9999;
	border-top:solid 10px #009AC9;
	background-color: rgba(255,255,255,.8);
}
.header {
	width:1000px;
	margin:0 auto;
	position:relative;
}
.header-logo {
	float:left;
	margin:37px 0 0 55px;
	position:relative;
	z-index:999999;
}
.main {
	margin-top:130px;
}
@media only screen and (max-width:600px){
.header-wrap {
	height:70px;
	position: absolute;
	top:0;
	left:0;
	right:0;
	z-index:9999;
	border-top:solid 7px #009AC9;
}
.header {
	width:auto;
	margin:0 auto;
	position:relative;
}
.header-logo {
	float:left;
	margin:23px 0 0 10px;
	z-index:9999;
}
.header-logo img {
	width:131px;
}
.main {
	margin-top:77px;
}
}
/*-------------------------------
	footer
--------------------------------*/
.footer {
	margin-top:-240px;
	padding:300px 0 50px;
	background-image: url(../images/footer-bg-2.png);
	background-repeat: no-repeat;
	background-position: center top;
}
.footer-contact {
	margin-bottom:35px;
}
.footer  span {
	display:inline-block;
	margin:0 20px;
}
.footer small {
	font-size:13px;
	line-height:1;
	margin-top:15px;
	display:block;
}
@media only screen and (max-width:600px){
.footer {
	font-size: clamp(8px, 3.5vw, 13px);
	margin-top:-190px;
	padding:210px 15px 40px;
	background-image: url(../images/footer-bg-2.png);
	background-repeat: no-repeat;
	background-position: center top;
	background-size:cover;
}
.footer-contact {
	margin-bottom:15px;
}
.footer-contact img {
	width:255px;
}
.footer  span {
	display:inline-block;
	margin:0;
}
.footer small {
	line-height:1;
	font-size:11px;
	margin-top:25px;
	display:block;
}
}

/*-------------------------------
	top：Information
--------------------------------*/
.top-info {
	width:800px;
	margin:0 auto 150px;
	padding:90px 0 0;
	background-image: url(../images/top-info-bg.jpg);
	background-repeat: no-repeat;
	background-position: right 50px top;
}
.top-info h2 {
	text-align:left;
	margin:0 0 15px 20px;
}
.top-info h2 img {
	vertical-align:bottom;
}
.top-info-wrap {
	overflow:hidden;
	height:300px;
	border:solid 1px #AFDDDA;
	border-left:solid 20px #AFDDDA;
	background-color:#FFF;
}
.top-info-wrap iframe {
	width:100%;
	height:300px;
	border:none;
}
@media only screen and (max-width:600px){
.top-info {
	width:auto;
	margin:0 15px 100px;
	padding:30px 0 0;
	background-image: url(../images/top-info-bg.jpg);
	background-repeat: no-repeat;
	background-position: right 25px top;
	background-size:223px 127px;
}
.top-info h2 {
	text-align:left;
	margin:0 0 10px;
}
.top-info h2 img {
	width:195px;
}
.top-info-wrap {
	height:300px;
	overflow:hidden;
	border:solid 1px #AFDDDA;
	border-left:solid 10px #AFDDDA;
}
.top-info-wrap iframe {
	width:100%;
	height:300px;
	border:none;
}
}

/*-------------------------------
	top：greetings
--------------------------------*/
.greetings {
	padding:90px 0 0;
	background-image: url(../images/greeting-bg.jpg);
	background-repeat: no-repeat;
	background-position: center top;
}
.greetings h2 {
	text-align:center;
	margin-bottom:130px;
}
.greetings-wrap {
	width:890px;
	margin:0 auto 300px;
	text-align:left;
}
.greetings-pic {
	font-size:16px;
	font-weight:600;
	width:258px;
	float:right;
	text-align:center;
	margin-left:25px;
}
.greetings-pic img {
	border-radius:20px;
}
.greetings h3 {
	font-size:30px;
	padding:10px 0  35px 70px;
}
@media only screen and (max-width:600px){
.greetings {
	padding:0;
	background-image: url(../images/greeting-bg.jpg);
	background-repeat: no-repeat;
	background-position: center 50px;
	background-size:110% auto;
}
.greetings h2 {
	text-align:center;
	margin-bottom:45px;
}
.greetings h2 img {
	width:172px;
}
.greetings-wrap {
	width:auto;
	margin:0 25px 80px;
	text-align:left;
}
.greetings-pic {
	font-size:16px;
	font-weight:600;
	width:100%;
	float:none;
	text-align:center;
	margin-left:0;
}
.greetings-pic img {
	width:129px;
	border-radius:20px;
}
.greetings h3 {
	font-size:18px;
	padding:30px 0  20px 0;
}
}

/*-------------------------------
	top：profile
--------------------------------*/
.profile {
	width:690px;
	height:auto;
	padding:60px 100px;
	margin:0 auto 280px;
	border:solid 2px #AFDDDA;
	border-radius:20px;
	background-color:#FFF;
	position: relative;
	overflow:hidden;
}
.profile::before,
.profile::after,
.corners::before,
.corners::after {
    content: "";
    position: absolute;
    width: 60px;
    height: 60px;
    background: #AFDDDA;
    transform: rotate(45deg);
}
.profile::before {
    top: -30px;
    left: -30px;
}
.profile::after {
    top: -30px;
    right: -30px;
}
.corners::before {
    bottom: -30px;
    right: -30px;
}
.corners::after {
    bottom: -30px;
    left: -30px;
}

.profile h2 {
	text-align:center;
	margin-bottom:100px;
}
.profile dl {
	text-align:left;
}
.profile dl dt {
	float:left;
	width:115px;
	padding:13px 0;
	text-align:center;
}
.profile dl dd {
	padding:13px 0 13px 125px;
	background-image: url(../images/profile-line.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size:auto 1px;
}
.blue {
	color:#009AC9;
	font-size:90%;
}
@media only screen and (max-width:600px){
.profile {
	width:auto;
	height:auto;
	padding:30px 15px;
	margin:0 15px 100px;
	border:solid 2px #AFDDDA;
	border-radius:20px;
	background-color:#FFF;
	position: relative;
	overflow:hidden;
}
.profile::before,
.profile::after,
.corners::before,
.corners::after {
    content: "";
    position: absolute;
    width: 40px;
    height: 40px;
    background: #AFDDDA;
    transform: rotate(45deg);
}
.profile::before {
    top: -22px;
    left: -22px;
}
.profile::after {
    top: -22px;
    right: -22px;
}
.corners::before {
    bottom: -22px;
    right: -22px;
}
.corners::after {
    bottom: -22px;
    left: -22px;
}

.profile h2 {
	text-align:center;
	margin-bottom:40px;
}
.profile h2 img {
	width:172px;
}
.profile dl {
	text-align:left;
}
.profile dl dt {
	float:left;
	width:86px;
	padding:10px 0;
	text-align:center;
}
.profile dl dd {
	padding:10px 0 10px 94px;
	background-image: url(../images/profile-line.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size:540px 1px;
}
}

/*-------------------------------
	top：executive
--------------------------------*/
.executive {
	padding-bottom:80px;
	margin-bottom:400px;
	background-image: url(../images/executive-bg.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
}
.executive h2 {
	margin-bottom:60px;
}
.executive-wrap img {
	margin:0 15px 10px;
}
@media only screen and (max-width:600px){
.executive {
	padding:0 5px 30px;
	margin-bottom:50px;
	background-image: url(../images/executive-bg.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
}
.executive h2 {
	margin-bottom:30px;
}
.executive h2 img {
	width:280px;
}
.executive-wrap img {
	width:28%;
	margin:0 1% 10px;
}
}

/*-------------------------------
	top：history
--------------------------------*/
.history {
	padding:180px 0;
	background-image: url(../images/history-bg.jpg);
	background-repeat: no-repeat;
	background-position: center top;
}
.history h2 {
	margin-bottom:60px;
}
.history-wrap {
	width:680px;
	margin:0 auto 150px;
	padding:50px 0 80px;
	background-color:rgba(255,255,255,.8)
}
.history dl {
	padding:10px 0 15px;
	margin:0 0 0 140px;
	text-align:left;
	border-left:solid 8px #AFDDDA;
}
.history dl dt {
	color:#009AC9;
	font-family: "Jost", sans-serif;
	font-size:28px;
	font-weight:500;
	line-height:1;
	margin: 0 0 5px 15px;
}
.history dl dd {
	margin: 0 0 15px 70px;
}
.history-1947 {
	display:block;
	margin-top:10px;
}
@media only screen and (max-width:600px){
.history {
	padding:90px 0;
	background-image: url(../images/history-bg.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size:cover;
}
.history h2 {
	margin-bottom:20px;
}
.history h2 img {
	width:238px;
}
.history-wrap {
	width:auto;
	margin:0 15px;
	padding:30px 0 15px;
	background-color:rgba(255,255,255,.8)
}
.history dl {
	padding:10px 0 5px;
	margin:0 20px 30px;
	text-align:left;
	border-left:solid 6px #AFDDDA;
}
.history dl dt {
	color:#009AC9;
	font-family: "Jost", sans-serif;
	font-size:20px;
	font-weight:500;
	line-height:1;
	margin: 0 0 5px 10px;
}
.history dl dd {
	margin: 0 0 15px 10px;
}
.history-1947 {
	display:block;
	margin-top:10px;
}
.blog-btn img {
	width:152px;
}
}

/*-------------------------------
	Member introduction
--------------------------------*/
.member {
	margin-bottom:100px;
}
.member-jun {
	margin-bottom:150px;
}
h1.member-h1 {
	height:140px;
	padding:40px;
	margin-bottom:90px;
	background-image: url(../images/page-ttl-bg.png);
	background-repeat: no-repeat;
	background-position: center center;	
}
h2.member-h2 {
	color:#FFF;
	font-size:24px;
	width:220px;
	padding:3px 25px 8px;
	margin:0 auto 70px;
	display:inline-block;
	border-radius:40px;
	background-color:#66C2DF;
}
h2.member-h2 span {
	color:#FFF;
	font-size:12px;
	font-style:italic;
	display:block;
	margin-top:3px;
	padding-top:3px;
	border-top:solid 1px #FFF;
}
.member-wrap {
	width:960px;
	margin:0 auto;
	overflow:hidden;
}
.member-box {
	font-size:17px;
	font-weight:600;
	float:left;
	width:320px;
	height:100px;
	box-sizing:border-box;
	padding:0 0 0 25px;
	margin-bottom:35px;
	text-align:left;
	background-image: url(../images/member-bg.png);
	background-repeat: no-repeat;
	background-position: left center;
	display:table;
}
.member-box p {
	line-height:1.5;
	display:table-cell;
	vertical-align:middle;
}
.member-box a {
	font-size:13px;
	text-decoration:none;
}
.member-box a:hover {
	text-decoration:underline;
}
@media only screen and (max-width:600px){
.member {
	margin-bottom:50px;
}
.member-jun {
	margin-bottom:80px;
}
h1.member-h1 {
	height:70px;
	padding:20px;
	margin-bottom:50px;
	background-image: url(../images/page-ttl-bg.png);
	background-repeat: no-repeat;
	background-position: center center;	
}
h1.member-h1 img {
	width:285px;
}
h2.member-h2 {
	color:#FFF;
	font-size:18px;
	width:180px;
	padding:2px 20px 6px;
	margin:0 auto 30px;
	display:inline-block;
	border-radius:40px;
	background-color:#66C2DF;
}
h2.member-h2 span {
	color:#FFF;
	font-size:10px;
	font-style:italic;
	display:block;
	margin-top:2px;
	padding-top:2px;
	border-top:solid 1px #FFF;
}
.member-wrap {
	width:auto;
	margin:0 20px;
	overflow:hidden;
}
.member-box {
	font-size:15px;
	font-weight:600;
	float:none;
	width:auto;
	height:60px;
	box-sizing:border-box;
	padding:0 0 0 20px;
	margin-bottom:20px;
	text-align:left;
	background-image: url(../images/member-bg.png);
	background-repeat: no-repeat;
	background-position: left center;
}
.member-box p {
	line-height:1.3;
}
.member-box a {
	font-size:12px;
	text-decoration:none;
}
}

/*-------------------------------
	Executive History
--------------------------------*/
.executive-history-list {
	padding:50px 0 250px;
}
.executive-history-list img {
	width:895px;
}
@media only screen and (max-width:600px){
.executive-history-list {
	padding:0 15px 100px;
}
.scroll-hint .scroll-hint-icon-wrap {
	height:200px;
}
}

/*-------------------------------
	Site policy
--------------------------------*/
h1.site-policy-h1 {
	padding:20px 0 30px;
}
.site-policy {
	width:680px;
	margin:0 auto 150px;
	text-align:left;
}
.site-policy h2 {
	font-size:15px;
	font-weight:400;
	margin:15px 0 5px;
}
@media only screen and (max-width:600px){
h1.site-policy-h1 {
	padding:10px 0;
}
h1.site-policy-h1 img {
	width:246px;
}
.site-policy {
	width:auto;
	margin:0 15px 80px;
	text-align:left;
}
.site-policy h2 {
	font-size:14px;
	font-weight:400;
	margin:15px 0 5px;
}
}