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

/****************************************
		1. 基本設定 
*****************************************/

/*
Copyright (c) 2010, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.com/yui/license.html
version: 3.3.0
build: 3167
　↓YUI3 CSS Reset　ブラウザー固有のスタイルをリセットします↓　*/
body,div,dl,dt,dd,
ul,ol,li,h1,h2,h3,h4,h5,h6,
pre,code,form,fieldset,legend,
input,textarea,p,blockquote,th,td {
	margin:0;
	padding:0;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}

/*
Copyright (c) 2010, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.com/yui/license.html
version: 3.3.0
build: 3167
↓YUI3 CSS Fonts　フォントサイズを相対指定する↓*/


/*---↓リンクに対する共通設定↓---*/
*{
	margin:0;
	padding:0;
	line-height:1.5;
	list-style:none;
	text-decoration:none;
	box-sizing:border-box;
	color:#252525;
	font-family: Noto, 游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.row{
	display: flex;
    justify-content: space-between;
}
img{
	vertical-align:middle;
}
html{
    scroll-behavior: smooth;
}
.header.change-color{
	background-color:rgb(255 255 255 / 95%);
}



/*＝＝＝＝このページの共通設定＝＝＝＝*/
.bg_white{
	background:#fff;
	padding:150px 0;
	min-width:1100px;
	overflow:hidden;
}
.ttl{
	background: #00419a;
	position: absolute;
	width: 40%;
    height: 500px;
}
.ttl h2{
	color: #fff;
    font-size: 40px;
    margin-left: 50%;
    border-bottom: solid 5px;
    padding-left: 15px;
}

/*＝＝＝＝MV＝＝＝＝*/
.mv_container{
	position:relative;
}
#mainvisual{
	height:90vh !important;
	width:100%;
}
.mv_text{
	position:absolute;
	bottom:-50px;
	background:rgba(0, 65, 154, 0.9);
	width: 55vw;
    padding: 70px 10% 70px 0;
    text-align: right;
	min-width:720px;
}
.mv_text h1{
	color:#fff;
	font-size: 40px;
    line-height: 2;
	text-shadow: 1px 1px 7px #00419a;
}

/*＝＝＝＝MAIN_TEXT＝＝＝＝*/
.main_text{
	background:url(../img/top/awa_back.png) no-repeat bottom;
	padding-bottom:90px;
}
.main_text p{
	margin: 30px auto;
    width: 998px;
    text-align: center;
    line-height: 1.8;
    letter-spacing: 2px;
}
.bg_img{
	background-image:url(../img/top/24470088_m.jpg);
	background-size: cover;
	padding: 70px 0 80px;
	position:relative;
}
.under_wave{
	position:absolute;
	bottom:-1px;
	width:100%;
}
.under_wave img{
	width:100%;
}
.bg_img p{
	font-size:25px;
	color:#fff;
	font-weight:bold;
	line-height:2;
}

/*文字をふわっと表示*/
.fadeInDown {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:1.5s;
 -ms-animation-duration:1.5s;
 animation-duration:1.5s;
 -webkit-animation-name: fadeInDown;
 animation-name: fadeInDown;
 visibility: visible !important;
}
@-webkit-keyframes fadeInDown {
 0% { opacity: 0; -webkit-transform: translateY(-50px); }
 100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes fadeInDown {
 0% { opacity: 0; -webkit-transform: translateY(-20px); -ms-transform: translateY(-20px); transform: translateY(-20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
}

/*＝＝＝＝BLOG＝＝＝＝*/
.blog{
	position:relative;
	background: #f6faff;
    padding: 130px 0;
}
.blog .ttl{
    top: -30px;
	display: flex;
    flex-direction: column;
    justify-content: center;
	z-index:100;
}
.blog .ttl a{
	margin: 10px 0 0 54%;
    color: #fff;
}
.blog .ttl span{
	position:relative;
	padding-right: 38px;
    font-size: 14px;
	color:#fff;
	font-weight:bold;
}
.blog .ttl span:after{
content: "";
    display: block;
    width: 23px;
    height: 23px;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
	background:url(../img/top/yajirushi.png);
    background-size: cover;
}
.day{
	font-weight:bold;
	color:#00419a;
	margin-bottom:10px;
}
.day , .headline{
	font-size:18px;
}
.blog_list{
	width: 85vw;
    margin: 0 auto 0 12vw;
	background:#f7f7f7;
    padding:50px 31%;
}
.blog_list>ul{
	width:600px;
}
.blog_list>ul>li{
	margin-bottom:15px;
	border-bottom: dotted 1px #999;
}
.blog_list .row{
	justify-content: flex-start;
}

.blog_img{
	width:240px;
	height:175px;
	margin-right:30px;
	background:#fff;
	overflow:hidden;
}
.blog_img img{
	width:100%;
	height:auto;
	background: #fff;
	transition-duration: 0.5s;

}
.blog_ttl{
	padding-top:5px;
}

/*ホバー*/
.blog_list a{
	display: block;
    padding-bottom: 15px;
    position: relative;
}
.blog_list a::after {
	position: absolute;
	left: 0;
	content: '';
	width: 100%;
	height: 1px;
	background: #00419a;
	bottom: -1px;
	transform: scale(0, 1);
	transform-origin: right top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
	transition: transform 0.3s;  /*変形の時間*/
	}

.blog_list a:hover::after {
	transform: scale(1, 1);     /*ホバー後、x軸方向に1（相対値）伸長*/
	transform-origin: left top; /*左から右に向かう*/
}
.blog_img img:hover{
  transform: scale(1.2);
  transition-duration: 0.5s;
}
.blog .ttl span:hover{
	padding-right:42px;
	transition-duration: 0.3s;
}


/*＝＝＝＝CONTACT＝＝＝＝*/
.contact{
	width:100%;
	margin:300px auto 50px;
	position:relative;
}
.contact .ttl{
    top: -140px;
    padding-top: 30px;
}
.bg_dot{
	margin: 0 0 0 auto;
    width: 90%;
    height: 334px;
	background-image:
    radial-gradient(#d5d5d5 10%, transparent 10%);
	background-size: 12px 12px;
	padding:60px 0 0;
}
.contact ul{
	width:900px;
	margin:0 auto 0 16%;
	
}
.tel , .mail{
	width:400px;
	height:210px;
	text-align:center;
	box-shadow: 5px 2px 5px 0 rgba(135, 135, 135, .5);
	 padding:15px 0;
	 background:#fff;
}
.mail:hover{
   box-shadow: 14px 14px 10px 0 rgb(135 135 135 / 50%);
   transition: all 0.5s 0s ease;
}
.contact_img{
	width:70px;
	margin:0 auto;
}
.contact_img img{
	width:100%;
	height:auto;
}
.mail p{
	color:#f49f2f;
	font-size:22px;
	margin-top:20px;
	font-weight:500;
}
.tel .tel_no{
	background: #f49f2f;
    border-radius: 10px;
    font-size: 22px;
    width: 235px;
    color: #fff;
    margin: 10px auto;
    font-weight: bold;
}
.tel .tantou{
	font-size:18px;
	margin-bottom:5px;
	color: #f49f2f;
	font-weight:bold;
}

