@charset "UTF-8";

/*
	Theme Name: law
	Version: 1.0
	License: GNU General Public License
	License URI: http://www.gnu.org/licenses/gpl-2.0.html

*/

/* General Setting */

html,body{margin:0;border:0;padding:0; width:100%; height:100%;font-family: "Helvetica Neue", "ヒラギノ角ゴ Pro", Hiragino Kaku Gothic Pro, "メイリオ", Meiryo, "Yu Gothic", YuGothic, Arial, sans-serif;-webkit-text-size-adjust: 100%;-webkit-font-smoothing:subpixel-antialiased; -moz-osx-font-smoothing: grayscale; color:#555; font-size:15px; line-height:1.8;letter-spacing: .09em;}
*{box-sizing:border-box}
h1,h2,h3,h4,h5,p{margin:0; padding:0}
table{width:100%;border-collapse:collapse;border-spacing:0;}
img{max-width: 100%; height:auto; border: 0;-ms-interpolation-mode:bicubic;vertical-align: middle;}
a{selector-dummy:expression(this.hideFocus=true); outline: none; text-decoration:none; color:#2d4d82;}
a:focus, a:active, button::-moz-focus-inner,input[type="reset"]::-moz-focus-inner,input[type="button"]::-moz-focus-inner,input[type="submit"]::-moz-focus-inner,select::-moz-focus-inner,input[type="file"] > input[type="button"]::-moz-focus-inner {border: 0;outline : 0;}
.ns,.ns li, .ns dd, .ns dt, .ns ul{margin:0; padding:0;list-style:none;}
.cf:after {content:"";display:block; clear:both}
.cf {*zoom: 1;}


.slick-list,.slick-slider,.slick-track{position:relative;display:block}.slick-loading .slick-slide,.slick-loading .slick-track{visibility:hidden}.slick-slider{box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:0}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.slick-track{top:0;left:0;margin-left:auto;margin-right:auto}.slick-track:after,.slick-track:before{display:table;content:''}.slick-track:after{clear:both}.slick-slide{display:none;float:left;height:100%;min-height:1px}[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}

#slide{position:relative;}
#slide .slick-dots{text-align:center; margin:0; padding:0; position:absolute; left:0; bottom:30px; width:100%}
#slide .slick-dots li{display:inline-block;}
#slide .slick-dots li button{display:inline-block; padding:0; margin:0 5px; width:12px; height:12px; border:none; cursor:pointer; line-height:0; text-indent:-9999em; border-radius:50%; background-color:#fff}
#slide .slick-dots li button:hover,#slide .slick-dots li.slick-active button{background-color:#2d4d82}


@font-face {font-family: 'fontello';src: url('./font/fontello.eot?82127515');src: url('./font/fontello.eot?82127515#iefix') format('embedded-opentype'),url('./font/fontello.woff?82127515') format('woff'),url('./font/fontello.ttf?82127515') format('truetype'),url('./font/fontello.svg?82127515#fontello') format('svg');font-weight: normal;font-style: normal;}
.icon{font-family: "fontello";font-style: normal;font-weight: normal;speak: none;display: inline-block;text-decoration: inherit;width: 1em;margin-right: .2em;text-align: center;font-variant: normal;      text-transform: none;line-height: 1em;margin-left: .2em;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;}

#page_top_wrap{height:40px; margin-top:50px}
#pageTop.fix{position:fixed; left:0; bottom:0; width:100%; z-index:9999}
#pageTop a{display:block; position:relative; width:40px; height:40px; float:right; background-color:#2d4d82; text-indent:-9999em}
#pageTop a:after{position: absolute; left:0; right:0; top:15px; margin: auto;content: "";vertical-align: middle;width:10px;height:10px;border-top:4px solid #fff;
border-right:4px solid #fff;-webkit-transform: rotate(-45deg);transform: rotate(-45deg);-webkit-transition: all .2s ease-in-out;-moz-transition: all .2s ease-in-out;-ms-transition: all .2s ease-in-out;-o-transition: all .2s ease-in-out;transition: all .2s ease-in-out;}
#pageTop a:hover:after{top:12px}
#nav{z-index:999}
#footer{background-color:#2d4d82; padding:15px 0; font-size:10px; color:#fff; text-align:center}
.fade.slideup.on {opacity: 1;animation: slideup .6s ease;}

#breadcrumb{font-size:12px; margin-top:10px; margin-bottom:30px}
#breadcrumb a{font-size:12px; color:#000}

#sub_top{background-color:#f1f1f1; text-align:center;}

#sub_top h1{font-size:32px; display:inline-block; color:#2d4d82; border:2px solid #2d4d82; padding:30px 100px; margin:50px 0}

@keyframes slideup {0% {opacity: 0;transform: translate(0,35px);}100% {opacity: 1;transform: translate(0,0);}}
.fade.zoomin.on {opacity: 1;animation:zoomin .25s ease;}
@keyframes zoomin {0% {opacity: 0;transform: scale(.95);}100% {opacity: 1;	transform: scale(1);}}
@keyframes submit_hover {0% {left: -100%;}100% {left: 100%;}}

.gallery li{font-size:12px; border-top:2px solid #2d4d82; padding-top:10px; margin-bottom:30px}
.gallery li h3{margin-top:25px; margin-bottom:20px}
.gallery li a h3{font-weight:normal; font-size:15px}
.gallery li a .thum{display:block; padding:0; margin:0; overflow:hidden}

.widgets h2{position:relative; text-align:center; color:#2d4d82; text-align:center; line-height:1}
.widgets h2:before{position:absolute; content:""; left:50%; bottom:0; margin-left:-40px; width:80px; height:2px; background-color:#2d4d82}
.normal li{margin-bottom:20px}
.normal span,#news li a span{color:#ccc; font-size:12px; font-weight:bold}
.normal h3,#news li a h2{font-weight:normal; font-size:13px; color:#555}
#news li{border-bottom:1px solid #e7e7e7}
#news li a{display:block; position:relative;}
#news li a:after{position:absolute; right:5px; top:50%; margin-top:-12px; font-family: "fontello";content:"\e803";-webkit-transition: all .2s ease-in-out;-moz-transition: all .2s ease-in-out;-ms-transition: all .2s ease-in-out;-o-transition: all .2s ease-in-out;transition: all .2s ease-in-out;}
#news li a:hover:after{right:0;}
.btn{margin:0; border:none; padding:0; font-size:18px; padding:10px 30px; cursor:pointer}
.btn:hover{opacity:0.8}
.btn.back{background-color:#ccc; color:#555}
.btn_area{text-align:center; margin-top:30px}
.btn_area a,.btn{display:inline-block; color:#fff; background-color:#2d4d82; overflow:hidden; border-radius:5px; position:relative}
.btn_area a:before{position:absolute; left:20px; top:50%; margin-top:-13px; font-family: "fontello";content:"\e802";-webkit-transition: all .2s ease-in-out;-moz-transition: all .2s ease-in-out;-ms-transition: all .2s ease-in-out;-o-transition: all .2s ease-in-out;transition: all .2s ease-in-out;}
.btn_area a:hover:before{left:15px}
.fade{opacity:0}

.single_title{border-left:3px solid #2d4d82; background-color:#f9f9f9; color:#2d4d82; line-height:1.5}
.single_date{display:block; text-align:right; font-weight:bold; color:#ccc; font-size:12px; margin-top:20px; }
.t_arrow{border-spacing: 0px 2px;border-collapse: separate;}
.t_arrow th,.t_arrow td{font-size:14px;padding:10px;}
.t_arrow th{background-color:#2d4d82; color:#fff; position:relative; font-size:14px}
.t_arrow td{background-color:#F9F9F9; padding-left:20px}
.t_arrow th:after{position:absolute; vertical-align:middle; margin:auto; content:"";width: 0;height: 0;border-style: solid;}
#contact .t_arrow th{text-align:left; padding-left:20px}
#contact .t_arrow th span{font-size:12px; color:#F00}
#contact .t_arrow input[type="text"],#contact .t_arrow textarea,#contact .t_arrow input[type="email"]{border:1px solid #e7e7e7; padding:5px 10px; line-height:40px; height:40px; width:100%}
#contact .t_arrow textarea{height:200px; line-height:1.2}
#contact .t_arrow span input[type="text"]{width:auto}


.box{border:1px solid #e7e7e7; border-top:none;}
.box h3{border-bottom:1px solid #e7e7e7; border-top:3px solid #2d4d82;background-color:#f9f9f9; color:#2d4d82}
.dot li{position:relative; padding-left:20px; margin-top:10px}
.dot li:before{position:absolute; content:""; left:0; top:12px; width:7px; height:7px; border-radius:50%; background-color:#2d4d82}
.square li{position:relative; padding-left:20px; margin-top:10px}
.square li:before{position:absolute; content:""; left:0; top:12px; width:7px; height:7px;  background-color:#2d4d82}

.gray_box{border:1px solid #e7e7e7; background-color:#f9f9f9}
.gray_box h5{font-size:18px; margin:10px 0}
@media screen and (min-width:1101px){
.b_wrap{max-width:1200px; margin:0 auto;position:relative; height:90px;}
#header{position:fixed; left:0; top:0; width:100%; z-index:9999; background-color:#fff; border-bottom:1px solid #e7e7e7}
.wrap{max-width:1000px; margin:0 auto}

#logo{position:absolute; left:0; top:20px; width:200px; line-height:1.2}
#logo a{display:block; font-weight:bold; font-size:24px; color:#000}
#nav{position:absolute; right:0; top:15px; width:auto; display:block;}
#nav li{float:left; position:relative; padding:15px}

#nav li a{position:relative; font-weight:bold; line-height:30px; display:block;}
#nav li a:after{content:"";background-color:#2d4d82;width:0;height:2px;position: absolute;left:50%;bottom: 0;transition: all .2s;}
#nav li:hover a:after,#nav li.current-menu-parent a:after,#nav li.current-menu-item a:after{width:100%; left:0}
#nav li.last{padding-right:0}
#nav li.last a{background-color:#FFEF79; color:#2d4d82; padding:0 15px; padding-left:10px; border-radius:20px; overflow:hidden}
#nav li.last a i{margin-right:5px}
#nav li.last a:after{display:none}
#nav li.last a:before{content: "";width: 100%;height: 100%;	background: rgba(255,255,255,.2);	transform: rotate(-45deg);	position: absolute;	top: -10%;	left: -100%;	transition: .6s ease;}
#nav li.last a:hover{opacity:1}
#nav li.last a:hover:before{animation:submit_hover .8s ease;}

#nav li ul{visibility:hidden; position:absolute; left:0; width:100%;top:70px; opacity: 0;z-index: 1;position: absolute; background: #fff; -webkit-transition: all .2s ease; transition: all .2s ease;
border: 1px solid #cccccc;}
#nav li:hover ul{top:60px;visibility: visible; opacity: 1;}
#nav li li{padding:0; border-top:1px dashed #ccc; width:100%}
#nav li li:first-child{border-top:none}
#nav li li a{font-size:13px; padding:10px 0; padding-left:25px; position:relative; line-height:1.2; font-weight:normal}
#nav li li a:before{font-family: "fontello"; position:absolute; left:10px; top:15px; content:"\e807";-webkit-transition: all .2s ease; transition: all .2s ease;}
#nav li li a:hover:before{left:11px}
#nav li li a:after{display:none}
}

@media screen and (max-width:1100px){
.wrap{margin:0 3%}
.sp_fixed{position:fixed; width:100%; height:100%; left:0;}
#logo{position:absolute; left:10px; top:0}
#logo a{display:block;font-weight:bold; font-size:4vw; line-height:70px; color:#000}

#header{height:70px; border-bottom:1px solid #E5F4FB; width:100%; background-color:#fff; position:fixed; left:0; top:0; z-index:7777}
#header .b_wrap{position:relative;}
	
#menu_btn {position:absolute; cursor:pointer; display:block;width:50px;height:50px; text-align:center; right:10px; top:10px; display:block; background-color:#2d4d82; line-height:0; text-decoration:none}
#menu_btn a{position:relative; width:28px; height:12px; margin-top:15px;}
#menu_btn a,#menu_btn a span {transition: all .4s;display: inline-block;}
#menu_btn span { position: absolute;left:0; width:100%;height:2px;background-color:#fff;}
#menu_btn span:nth-of-type(1) {top:0;}
#menu_btn span:nth-of-type(2) {top:5px;}
#menu_btn span:nth-of-type(3) {bottom:0;}
#menu_btn.active a{-webkit-transform: rotate(360deg);transform: rotate(360deg);}
#menu_btn.active span:nth-of-type(1) {-webkit-transform: translateY(10px) rotate(-45deg);transform: translateY(10px) rotate(-45deg);}
#menu_btn.active span:nth-of-type(2) {opacity: 0;}
#menu_btn.active span:nth-of-type(3) {-webkit-transform: translateY(-1px) rotate(45deg);transform: translateY(-1px) rotate(45deg);}
#menu_btn font{font-family: "Poppins", sans-serif;font-weight:bold;font-size: 8px;letter-spacing:.12em;line-height:1;color: #fff;margin-top:5px; display:block;opacity:1;filter:alpha(opacity=100);-ms-filter: "alpha( opacity=100)";}
#menu_btn.active font{opacity:0;filter:alpha(opacity=0);-ms-filter: "alpha( opacity=0)";}

#nav{ position:absolute;width:100%; display:none; left:0; top:70px;background-color:rgba(255,255,255,.9); overflow:auto; padding:20px; padding-top:0}
#nav li{border-bottom:1px solid #ccc}
#nav li a{display:block; line-height:45px; position:relative}
#nav li ul{display:none}
#nav li.have_sub a:before,#nav li.have_sub a:after{content: "";display: inline-block;width: 14px;height: 2px;margin-top: -2px;background: #2d4d82;position: absolute;top: 50%;right: 15px;}
#nav li.have_sub a:after {-webkit-transform: rotate(90deg);  transform: rotate(90deg);  transition: -webkit-transform .25s cubic-bezier(.165, .84, .44, 1);   transition: transform .25s cubic-bezier(.165, .84, .44, 1); transition: transform .25s cubic-bezier(.165, .84, .44, 1), -webkit-transform .25s cubic-bezier(.165, .84, .44, 1);}
#nav li.have_sub a.active:after {-webkit-transform: rotate(180deg);  transform: rotate(180deg);}
#nav li ul{padding-bottom:10px}
#nav li li{border-bottom:none}
#nav li li a{font-size:14px; padding-left:20px; position:relative}
#nav li a span{display:block}

#nav li.have_sub li a:after,#nav li.have_sub li a:before{display:none}

#nav li.last{border-bottom:none; margin-bottom:30px; padding-top:15px; text-align:center}
#nav li.last a{background-color:#2d4d82; display:inline-block; color:#fff; padding:0 30px;  border-radius:5px; text-align:center; line-height:50px; font-size:20px}
#nav li.last a i{margin-right:10px}


}

@media screen and (min-width:641px){
body{padding-top:90px}	
.sp{display:none}


a:hover{opacity:0.6;filter:alpha(opacity=60);-ms-filter: "alpha( opacity=60)";}
a.x:hover{opacity:1;filter:alpha(opacity=100);-ms-filter: "alpha( opacity=100)";}

.widgets h2{margin:50px 0; padding-bottom:20px; font-size:27px}
.gallery li{float:left; width:32%;}
.gallery li:nth-child(2),.gallery li:nth-child(5){margin-left:2%; margin-right:2%}
.gallery li a img {transition: transform .3s ease-out;}
.gallery li a:hover img { transform: scale(1.1);}

.normal h3,.normal span,#news li a span,#news li a h2{display:table-cell}
.normal h3,#news li a h2{padding-left:20px;}
#news li a{padding:50px 0; padding-right:20px}
.btn_area a{padding:10px 50px}

.single_title{padding:30px; font-size:27px}
.single_contents{font-size:17px; line-height:2; padding:30px; padding-top:50px}

.box h3{padding:10px 0; padding-left:20px}
.box_contents{padding:20px}
.company_info{margin-bottom:50px}
.company_info div{float:left; width:30%; padding-right:50px}
.company_info table{float:left; width:70%}
.t_arrow th:after{ right:-10px; top:0; bottom:0; border-width: 10px 0 10px 10px;border-color: transparent transparent transparent #2d4d82;}
.gray_box{padding:30px; margin-top:30px; margin-bottom:50px}
.gray_box h3{margin-top:50px; margin-bottom:20px}

#contact .t_arrow{border-spacing: 0px 15px;}
#contact .t_arrow th{width:200px}
#footer_nav{text-align:center; padding-top:50px}
#footer_nav a{display:inline-block; border:2px solid #2B4B83; padding:10px 30px;  margin:20px; font-weight:bold;-webkit-transition: all .2s ease; transition: all .2s ease;}
#footer_nav a:hover{background-color:#2B4B83; color:#fff; opacity:1}

}


@media screen and (max-width:640px){
.pc{display:none}
body{margin-top:70px}

#pageTop{z-index:9999}

.gallery li{float:left; width:49%;}
.gallery li:nth-child(even){margin-left:2%}
.widgets h2{margin:30px 0; padding-bottom:15px; font-size:24px}
#news li a{padding:20px 0; padding-right:20px}
#sub_top h1{font-size:24px; padding:20px 50px; margin:30px 0}
.btn_area a{padding:7px 35px}
.single_title{padding:20px; font-size:20px}
.single_contents{font-size:16px; line-height:2; padding:10px; margin-top:20px}
.t_arrow{width:100%}
.t_arrow th,.t_arrow td{display:block; width:100%}
.t_arrow td{padding-left:10px; margin-bottom:10px}
.t_arrow th:after{ left:50%; margin-left:-10px; bottom:-10px; border-width: 10px 10px 0 10px;border-color: #2d4d82 transparent transparent transparent;}
.company_info div{text-align:center; margin-bottom:20px}
.box h3{padding:10px 20px; line-height:1.2}
.box_contents{padding:20px}
.gray_box{padding:20px; margin-top:20px; margin-bottom:30px}
.gray_box h3{margin-top:30px; margin-bottom:10px}
#footer_nav{text-align:center; padding-top:30px}
#footer_nav a{display:block; border:2px solid #2B4B83; padding:10px 30px;  margin:20px; font-weight:bold;-webkit-transition: all .2s ease; transition: all .2s ease;}
#footer_nav a:hover{background-color:#2B4B83; color:#fff; opacity:1}

}

@media screen and (max-width:450px){
	.gallery li{float:none; width:100%;}

}