@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(https://fonts.googleapis.com/css?family=Anton|Hammersmith+One|Lobster);

/*** PC/SP 共通CSS ***/
@font-face {
    font-family: Noto Sans Japanese;
    src: url(fonts/NotoSansJP-Regular.woff2);
    src: url(fonts/NotoSansJP-Regular.otf);
    src: url(fonts/NotoSansJP-Regular.woff);
    font-display: swap;
}

* {
	background-repeat: no-repeat;
	word-break: break-all;
	box-sizing: border-box;
}

html {
	font-family: verdana, sans-serif;
	line-height: 1.5;
	font-size: 14px;
}

body {
	margin: 0;
	padding: 0;
	font-size: 14px;
	background-color: #ffffff;
	background-repeat: repeat-y;
	background-position: center center;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, Osaka, verdana, Meiryo, "メイリオ", sans-serif, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Arial;
    font-family: "Yu Gothic Medium", YuGothic, "游ゴシック", "游ゴシック体", "Yu Gothic", sans-serif;
    font-weight: 500;
    color: #000;
	color: #3E3A39;
}

img {
	border-width: 0;
}

table {
	border-collapse: collapse;
	border-style: none;
}

th,
td {
	padding: 5px 10px;
	border-style: none;
	line-height: 1.5;
	vertical-align: top;
}

h1 {
	font-size: 16px;
}

h2 {
	color: #000;
	font-weight: normal;
	text-align: center;
	font-size: 1.45rem;
}

h2:after {
	content: "";
	display: block;
}

h3 {
	color: #333333;
	font-size: 16px;
	font-weight: bold;
	margin: 10px 0px;
}

ul {
	list-style-type: none;
	padding: 0;
	margin: 0;
}

li {
	line-height: 1.5;
}

a {
	color: #333333;
	display: inline-block;
	text-decoration: none;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	transition: all .3s ease;
}

a:hover {
	color: #000;
	text-decoration: none;
}

p {
	margin: 0;
}

input,
textarea {
	color: #333;
	font-weight: bold;
	width: 100%;
	background: #efefef;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
	color: #bdbdbd;
	font-weight: normal;
	font-size: 16px;
	/*font-family: Meiryo, "メイリオ", sans-serif, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "游ゴシック体", "Yu Gothic", YuGothic, Osaka, verdana;*/
}

input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
	color: #bdbdbd;
	font-weight: normal;
	font-size: 16px;
	/*font-family: Meiryo, "メイリオ", sans-serif, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "游ゴシック体", "Yu Gothic", YuGothic, Osaka, verdana;*/
}

input::-moz-placeholder,
textarea::-moz-placeholder {
	color: #bdbdbd;
	font-weight: normal;
	font-size: 16px;
	/*font-family: Meiryo, "メイリオ", sans-serif, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "游ゴシック体", "Yu Gothic", YuGothic, Osaka, verdana;*/
}

input::-webkit-input-placeholder::first-letter {
	color: #ff0000;
}


input:focus {
	border: 2px solid rgba(52, 152, 219, 1);
	box-shadow: 0px 0px 0px 0px rgba(52, 152, 219, 1);
	background-color: #bdbdbd;
	-webkit-transition: all 100ms cubic-bezier(0.42, 0, 0.58, 1);
	-moz-transition: all 100ms cubic-bezier(0.42, 0, 0.58, 1);
	-o-transition: all 100ms cubic-bezier(0.42, 0, 0.58, 1);
	transition: all 100ms cubic-bezier(0.42, 0, 0.58, 1);
	opacity: 1;
	transition: opacity 0.3s ease;
}

:focus::-webkit-input-placeholder {
	opacity: 0;
	transition: opacity 0.3s ease;
}

:focus::-moz-placeholder {
	opacity: 0;
	transition: opacity 0.3s ease;
}

:focus:-moz-placeholder {
	opacity: 0;
	transition: opacity 0.3s ease;
}

:focus:-ms-input-placeholder {
	opacity: 0;
	transition: opacity 0.3s ease;
}

textarea,
input {
	border: none;
	padding: 10px;
}

button,
select,
select option {
	color: #333;
	font-weight: normal;
	font-size: 16px;
	/*font-family: Meiryo, "メイリオ", sans-serif, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "游ゴシック体", "Yu Gothic", YuGothic, Osaka, verdana;*/
}


select {
	vertical-align: middle -webkit-box-align: center;
	-moz-box-align: center;
	-o-box-align: center;
	-ms-box-align: center;
	box-align: center;
	-webkit-box-pack: center;
	display: -webkit-box;
	color: #333;
	text-align: center;
	text-align: -webkit-center;
	border: 1px solid #dedede;
    padding: 10px 15px;
}

input:hover,
button:hover {
	cursor: pointer;
}

option:invalid {
	color: #333;
}

option {
	vertical-align: middle -webkit-box-align: center;
	/* safari, Chrome対応 */
	-moz-box-align: center;
	/* Firefox対応 */
	-o-box-align: center;
	/* Opera対応 */
	-ms-box-align: center;
	/* IE対応 */
	box-align: center;
	/* ベンダープレフィックス無し */
	-webkit-box-pack: center;
	display: -webkit-box;
}



/*** Smartphone ***/

header {
	position: fixed;
	width: 100%;
	height: 73px;
	padding: 0 36px;
	background: rgba(255, 255, 255, .8);
	box-shadow: 0px 1px 2px rgba(0, 0, 0, .3);
	z-index: 999;
}

.hdr_inner {
	max-width:1240px;
	margin: 0 auto;
	padding: 0 20px;
	display: flex;
	height: 100%;
	align-items: center;
	justify-content: flex-start;
}

header .hdr_left {
	max-width: 134px;
	align-items: center;
}

header h1 {
	font-size: 0.65rem;
	margin:0;
	width: 134px;
}
header h2 {
	margin: .5rem auto 0;
	text-align: left;
}

.sptel {
	display: block;
	position: absolute;
	right: 55px;
	top: 1rem;
}

.sptel ul {
	font-size: 0;
}

.sptel ul li {
	display: inline-block;
	margin-right: 1px;
}

.sptel a {
	color: #579ed7;
	font-size: 18px;
	line-height: 46px;
	text-align: center;
	display: block;
	height: 46px;
	width: 46px;
	/*background: #007bbb;*/
	border-right: 1px solid #579ed7;
}

.sptel ul li:first-child a {
	border-left: 1px solid #579ed7;
}

nav {
	display: block;
}

.global-nav {
	position: relative;
	top: 0;
	left: 0;
	right: 0;
	width: calc(100% - 134px);
	height: 100%;
	margin: 0;
	padding: 0;
	text-align: left;
}

.global-nav ul {
	width: 100%;
	height: 100%;
	margin: 0;
	z-index: 2;
	font-size: 0;
}

.global-nav ul li ul {
	display: none;
	position: absolute;
	left: 0;
	top: 56px;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.global-nav ul li:hover ul {
	display: block;
}

.global-nav ul li:hover ul:after {
	display: block;
	content: "";
	clear: both;
}

.global-nav .left li ul li {
	width: 100%;
	font-size: .9rem;
	letter-spacing: -.01rem;
	background: rgba(255, 255, 255, .8);
	background: #d2e4f2;
}

.global-nav ul.left li ul li a {
	line-height: 36px;
	height: 36px;
	color: #333;
	font-weight: 300;
}

.global-nav li {
	margin: 0 auto;
	text-align: center;
	display: inline-block;
	position: relative;
}

.global-nav li > a:visited,
.global-nav li > a:link {
	color: #333;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.global-nav .left {
	text-align: left;
	display: flex;
	align-items: center;
	justify-content: center;
}

.global-nav .left li {
	font-size: 1rem;
	margin: 0;
}
.global-nav .left li.btn_contact{
	margin-left: 56px;
}

.global-nav .left li a {
	padding: 0 1em;
	line-height: 56px;
	display: block;
}

.global-nav .left li:last-child a.hdrContact {
	line-height: 1.5;
	padding-top: 9px;
	padding-bottom: 5px;
}

.global-nav .left li:last-child a span {
	margin-right: .5rem;
}

.global-nav .left li:last-child a.hdrContact,
.current,
.global-nav li > a:active,
.global-nav li > a:hover {
	background: #007bbb;
	color: #fff;
	text-decoration: none;
	transition: opacity .5s ease-in;
}

.global-nav .left li:last-child a.hdrContact {
	background: #007bbb;
	padding-top: 16px;
    padding-bottom: 16px;
    padding-left: 28px;
    padding-right: 28px;
	border-radius: 5px;
	background: #0296ba;
    border-color: #ffffff;
	font-family: 'Inter', sans-serif;
    font-weight: 500;
	font-size: 1rem;
}

.global-nav .left li:last-child:hover a.hdrContact {
	opacity: .5;
}

.global-nav .left li ul li:hover a {
	color: #fff;

}

.tel_num {
	display: block;
}

.container {
	width: auto;
	margin: 0 auto;
	padding: 0;
}

.carousel {
	padding-top: 57px;
}

#gotop {
	position: fixed;
	right: 0;
	bottom: 5rem;
}

footer {
	padding: 3rem;
	padding: 0rem;
	text-align: center;
}

footer ul {
	padding: 0 0 2rem;
	display: block;
}

footer ul li ul {
	display: none;
}

footer ul li {
	display: inline-block;
	padding: 0 0 1rem;
	width: 100%;
}
footer ul li .outline{
	/*color: #4c8dcb;*/
	line-height: 1.3;
    font-size: .85rem;
}
footer ul li .outline .tel_num span{
	padding-right: .5rem
}

.page_top a {
	font-size: 2rem;
	color: #579ed7;
	border-radius: 5px 0 0 5px;
	border-top: 1px solid #579ed7;
	border-left: 1px solid #579ed7;
	border-bottom: 1px solid #579ed7;
	width: 42px;
	height: 42px;
	text-align: center;
	background: rgba(255, 255, 255, .9)
}

.page_top a span {
	text-shadow: #fff 0 0px 3px;
	display: block;
	line-height: 42px;
	right: -3px;
	top: 0;
}

.keyimage {
	margin: 0 auto;
	text-align: center;
	position: relative;
}

.keyCopy {
	position: absolute;
	left: 0;
	top: 40%;
	z-index: 2;
	width: 100%;
	text-align: center;
	color: #000;
	font-size: 8rem;
	font-family: 'Hammersmith One', sans-serif;
}

.keyimage img {
	z-index: 1;
	width: 100%;
}

.box_01 {
	display: flex;
	display: -webkit-flex;
	max-width: 1060px;
	margin: 0 auto;
	/*background: rgba(64, 123, 187, .05);
border-left: 1px solid rgba(64, 123, 187, .5);
border-right: 1px solid rgba(64, 123, 187, .5);*/
}

.message {
	padding: 2rem;
	width: 50%;
	/*border-right: 1px solid #ccc;*/
	background: #fff;
	margin: 1rem;
	border: 1px solid rgba(64, 123, 187, .1);
}

.box_01 .message > h2 {
	font-size: 1rem;
	color: #007bbb;
	margin-bottom: 1rem;
	line-height: 1;
	border-bottom: none;
	font-family: 'Noto Sans Japanese', sans-serif;
	border-bottom: 1px solid rgba(64, 123, 187, 1);
}

.box_01 .message > h2 span {
	display: block;
	font-size: 1.6rem;
	letter-spacing: -.09rem;
	padding-top: .5rem;
}

.message p {
	width: 100%;
	padding: 0;
	text-align: left;
	font-size: 1.05rem;
	line-height: 2;
	letter-spacing: .1rem;
}

.textSplitLoad {
	display: none;
}

.split {
	visibility: hidden;
}

.row {
	background: #007bbb;
	color: #fff;
	padding: 5rem 0 0;
	text-align: center;
	margin: 0 auto;
	border-bottom: 1px solid rgba(255, 255, 255, .1);
}

.row:after {
	display: block;
	content: "";
	clear: both;
}

.row > h2 {
	font-size: 1.35rem;
	color: #fff;
	margin-bottom: 5rem;
}

.row > h2 span {
	display: block;
	font-size: 3rem;
	padding-top: .7rem;
}

.row > h2:after {
	display: inline-block;
	content: "";
	clear: both;
	background: #fff;
	width: 5rem;
	height: 4px;
	margin-top: 1rem;
	border-radius: 2px;
}

.row > .col-sm-4 {
	width: 33.3%;
	float: left;
	text-align: center;
	padding: 3rem 1rem;
}

.row > .col-sm-4 > h3 {
	font-size: 1rem;
	color: #fff;
}

.row > .col-sm-4 > h3 span {
	font-size: 1.5rem;
	display: block;
}

.row > .col-sm-4 span.glyphicon {
	font-size: 8rem;
	margin-bottom: 3rem;
}

.row > .col-sm-4 p {
	text-align: left;
	min-height: 150px;
	line-height: 1.9;
	max-width: 280px;
	margin: 0 auto;
}

.row > .btn {
	background: rgba(64, 123, 187, .5);
	color: #fff;
	border: 2px solid rgba(255, 255, 255, .5);
	border-radius: 20px;
	margin: 3rem auto;
}

.row > .btn span.glyphicon {
	font-size: 1rem;
	margin-bottom: 0;
	padding-right: .8rem;
}

.row > .btn:hover {
	background: rgba(255, 255, 255, 1);
	border: 2px solid rgba(255, 255, 255, .5);
	color: rgba(64, 123, 187, 1);
}

.threeBox {
	width: 100%;
	border-bottom: 1px solid rgba(64, 123, 187, .1);
}

.threeBox:after {
	display: block;
	content: "";
	clear: both;
}

.threeBox h2 {
	font-size: 1rem;
	text-align: left;
	border-bottom: 1px solid rgba(64, 123, 187, 1);
	color: #007bbb;
	margin: 2rem 0 1rem;
	font-family: 'Noto Sans Japanese', sans-serif;
}

.threeBox h2:after {
	display: block;
	content: "";
	clear: both;
}

.threeBox h2 span {
	display: block;
	font-size: 1.6rem;
	padding-top: .5rem;
	padding-bottom: .5rem;
}

.topicsBox {
	width: 50%;
	float: left;
	/*border-right: 2rem solid rgba(64, 123, 187, .1);*/
	border: 1px solid rgba(64, 123, 187, .1);
	background: rgba(64, 123, 187, .0);
	background: #fff;
	margin: 1rem 1rem 1rem 0;
}

.box_01 .topicsBox h2 {
	position: relative;
	margin: 2rem 2rem 0;
	padding: 0;
	line-height: 1;
	font-family: 'Noto Sans Japanese', sans-serif;
}

.box_01 .topicsBox h2 span {
	padding-top: .5rem;
}

.topicsArea {
	padding: .1rem 0;
	overflow-y: scroll;
	height: 260px;
	margin-bottom: 2rem;
	margin-right: 2rem;
}

.topicsArea a {
	display: block;
}

.topicsArea dl {
	opacity: 1;
	margin: 0 auto;
	padding: 1rem 0 1rem 2rem;
}

.topicsArea dl:hover {
	background: rgba(64, 123, 187, .1);
	opacity: 1;
	animation-duration: 1s;
	animation-name: fade-in;
	-moz-animation-duration: 1s;
	-moz-animation-name: fade-in;
	-webkit-animation-duration: 1s;
	-webkit-animation-name: fade-in;
}

.topicsArea dt {
	font-weight: normal;
	font-size: 1rem;
	color: #666;
	padding-bottom: .5rem;
}

.topicsArea dd.title {
	font-size: 1rem;
	padding-top: 0;
}

.topicsArea dd {
	font-size: 1rem;
	padding-top: .5rem;
}

.box_01 h2 {
	font-size: 1rem;
	margin: 0;
	text-align: left;
	border-bottom: 1px solid rgba(64, 123, 187, 1);
	color: #007bbb;
}

.box_01 h2 span {
	display: block;
	font-size: 1.6rem;
}

.box_01 h2:after {
	display: inline-block;
	content: "";
	clear: both;
}

.linkRight {
	position: absolute;
	right: 0rem;
	top: 1rem;
}

.linkRight .btn {
	font-size: .8rem;
	background: rgba(64, 123, 187, .05);
}

.linkRight .btn a {
	color: #007bbb;
}

.portContact {
	max-width: 1060px;
	margin: 0 auto;
	display: flex;
	/*border-left: 1px solid rgba(64, 123, 187, .1);
background: rgba(64, 123, 187, .1);*/
}

.portfolio {
	/*width: 50%;
padding: 1rem 2rem;
text-align: center;
border-right: 1px solid rgba(64, 123, 187, .1);*/
	width: 100%;
	margin: 0 auto;
	background: #e5f2f8;
	padding: 1rem;
}

.portfolio h2 {
	font-size: 1.75rem;
	border-bottom: 1px solid #fff;
	color: #407bbb;
	margin: 0 0 1rem;
	font-family: 'Noto Sans Japanese', sans-serif;
}

.portfolio h2 span {
	display: inline-block;
	font-size: 1.6rem;
	padding-top: .5rem;
	padding-bottom: .5rem;
	letter-spacing: .5rem;
	padding-bottom: 1rem;
	padding-left: 2rem;
}

.portfolio .btn {
	background: rgba(127, 189, 221, 1);
	width: 100%;
	font-size: 1.15rem;
	font-weight: 700;
	letter-spacing: .04rem;
	padding: 1rem 2rem;
	margin: 1.5rem auto 1rem;
	color: #fff;
}

.portfolio p {
	text-align: left;
	margin: 2rem auto 0;
	line-height: 1.5;
}

.designer {
	position: relative;
	padding-bottom: 3rem;
}

.designer .flex_box {
	display: flex;
}

.designer figure {
	max-width: 50%;
}

.designer figure img {
	max-width: 100%;
}

.designer figure + div {
	max-width: 50%;
	padding-left: 1.5rem;
	line-height: 2;
}

.designer .flex_box + .btn {
	position: absolute;
	bottom: 3rem;
	right: 0;
	padding: 1rem 1.5rem;
	background: rgb(127, 189, 221);
	color: #fff;
	font-weight: 800;
}

.contact {
	/*border: 2px solid #fff;
background: rgba(64, 123, 187, .1);*/
	width: 50%;
	padding: 1rem;
	text-align: center;
}

.contact h2 + div {
	text-align: left;
	width: 80%;
	line-height: 2;
	margin: 2rem auto 0;
}

.contact p {
	font-size: 1.25rem;
	display: inline-block;
	width: 49%;
	text-align: center;
	padding: 3rem 0;
	line-height: 1.2;
}

.contact p span.glyphicon {
	font-size: 4rem;
	padding-right: 1rem;
	display: inline-block;
	color: rgba(64, 123, 187, 1);
}

.bread {
	max-width: 1060px;
	margin: 0 auto;
	padding: 1rem 0 0;
}

.bread ul {
	display: inline-block;
	font-size: 0;
}

.bread ul li {
	display: inline-block;
	font-size: .9rem;
}

.bread ul li a:after {
	content: ">";
	display: inline-block;
	width: 1.5rem;
	height: 1rem;
	padding-left: .5rem;
}

.cate_cover {
	overflow: hidden;
    background-image: url(/wp/wp-content/themes/astra-child/img/hdr_bg.webp);
    background-size: cover;
    background-position: center center;
    padding-top: 100px;
    height: 200px;
}
.cate_cover h1 {
    font-size: 20px;
	font-weight: 600;
    color: #093474;
    text-align: center;
    margin-bottom: 5px;
}
.cate_cover h1:after {
    content: "";
    display: block;
    width: 50px;
    height: 5px;
    background-color: #093474;
    margin: 10px auto 0;
}

.cate_cover h1 span {
	display: block;
	font-size: 1rem;
	font-weight: 600;
	padding-top: .7rem;
	letter-spacing: .5rem;
}

.cover_lead {
	max-width: 1060px;
	margin: 0 auto;
	padding: 3rem 0;
	font-size: 1.2rem;
}

.cover_lead h3:after {
	background: none;
}

.cover_lead .lead_list {
	position: relative;
	width: 500px;
}
.cover_lead .lead_heading{
	position: relative;
	font-size: 2rem;
    color: #3498db;
}
.cover_lead.index .lead_heading.heading:before {
	content: "[";
	display: inline-block;
    width: 20px;
    height: 20px;
    position: absolute;
    left: 0;
    top: 0;
}

.cover_lead.index .lead_heading.heading:after {
	background: none;
    content: "]";
    display: inline-block;
    width: 20px;
    height: 20px;
    position: absolute;
    right: 0;
}

.cover_lead .text {
	line-height: 2;
	font-size: 1rem;
	padding-top: 2rem;
}

.cover_lead.index .lead_heading {
	width: 500px;
}

.lead_heading {
	text-align: center;
	font-size: 1.35rem;
	/*background: linear-gradient(transparent 80%, #3498db 80%);
	width: 360px;*/
	margin: 0 auto 1rem;
	color: #606060;
}

/*.lead_heading.heading {
	background: rgba(52, 152, 219, 0.5);
	width: 100%;
	padding: 1rem 0;
	color: #fff;
	text-shadow: #666 1px 1px;
}

/*.cover_lead .lead_heading.heading {
	background: none;
	color: #606060;
	text-shadow: #dfdfdf 1px 1px;
	padding: 0;
	margin-bottom: 1rem;
}

.cover_lead .lead_heading.heading:after {
	background: linear-gradient(transparent 35%, #3498db 20%);
	width: 250px;
	height: 5px;
	display: block;
	content: "";
	margin: 0 auto;
}*/

.lead_heading:after {
	/*background: linear-gradient(transparent 35%, #3498db 20%);
width: 250px;
height:5px;
display:block;
content:"";
margin: 0 auto;*/
}

.lead_list {
	max-width: 560px;
	margin: 0 auto;
}

.lead_list_item {
	position: relative;
	margin-left: 6px;
	padding-bottom: 1rem;
	font-size: 1.2rem;
}
.lead_list_item i{
	margin-right: .5rem;
	color: #3498db;
}
/*.lead_list_item:before {
	display: block;
	content: '';
	position: absolute;
	top: .3em;
	left: -1.5em;
	width: 16px;
	height: 10px;
	border-left: 5px solid #3498db;
	border-bottom: 5px solid #3498db;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}*/

.cate_outer {
	border-top: 1px solid rgba(219, 219, 219, 0.3);
}

.cate_outer .col:after {
	content: "";
	display: block;
	clear: both;
}

.cate_outer .col {
	max-width: 1060px;
	margin: 3rem auto;
	padding: 3rem 0;
	letter-spacing: .1rem;
}
.cate_outer h3 {
	color: #4c8dcb;
	font-size: 1.4rem;
	font-weight: 900;
	margin: 0;
	text-align: left;
	background: #e7f7ff;
	padding: 1rem;
	letter-spacing: .1rem;
}
.cate_outer h3 span{
	display: block;
	font-size: 1rem;
	font-weight: 100;
	padding-bottom: .3rem;
}
.cate_outer .col h3 {
	color: #007bbb;
	font-size: 1.4rem;
	font-weight: 300;
	text-align: left;
	margin: 0;
	padding: 1rem .5rem;
}
.cate_outer .col h3 span{
	display: block;
	font-size: 1rem;
	font-weight: 800;
	padding-bottom: .3rem;
}

.cate_outer .col p {
	line-height: 2;
}

.cate_outer .col figure {
	max-width: 50%;
	float: left;
	padding-right: 3rem;
}

.cate_outer .col img {
	max-width: 100%;
}

.cate_outer .col .btn {
	margin-top: 1rem;
	background: #007bbb;
	background: #579ed7;
	color: #fff;
}

.cate_outer .col .btn span {
	padding-right: 1rem;
}

.contact.wide {
	width: 100%;
}

.page .container {
	width: 1060px;
}

.outline_001 {
	width: 100%;
	margin: 3rem auto;
}

.outline table {
	width: 100%;
}

.outline h3 {
	font-size: 1.4rem;
	font-family: 'Noto Sans Japanese', sans-serif;
	color: #007bbb;
	font-weight: 300;
}

.outline th {
	background: #f5f5f5;
	border-bottom: 1px solid #fff;
	font-weight: 300;
	padding: 1rem;
}

.outline td {
	border-bottom: 1px solid #dfdfdf;
	border-right: 1px solid #dfdfdf;
	vertical-align: middle;
}

.outline td:nth-child(2) {
	border-top: 1px solid #dfdfdf;
}

.outline_002 {
	margin-bottom: 3rem;
}

.outline_002 p {
	line-height: 2;
	letter-spacing: .05rem;
	margin-bottom: 1rem;
}

/*//////////////
Form
//////////////*/

.form_top {
	max-width: 100%;
	margin: 3rem auto 7rem;
}

.form_top .subBox {
	padding-bottom: 3rem;
}

.form_top .subBox h3 {
	color: #007bbb;
	font-size: 1.6rem;
	padding-bottom: 1rem;
}

.form_top .subBox button {
	background: #007bbb;
	padding: 1rem 2.5rem 1rem 1.5rem;
	position: relative;
	min-width: 30%;
	margin-bottom: 3rem;
	font-size: 1.35rem;
	color: #fff;
}

.form_top .subBox button:hover {
	opacity: .7;
}

.form_top .subBox button a {
	color: #fff;
}

.form_top .subBox button span {
	right: 1rem;
	position: absolute;
	top: 35%;
}

.form_cover {
	max-width: 100%;
	margin: 3rem auto;
}

.form_cover dl {
	border-top: 1px solid #dfdfdf;
	padding: 1rem;
}

.form_cover dl dt {
	font-weight: 100;
	padding-bottom: .5rem;
}

.form_cover dl dd {
	margin-bottom: 1rem;
	border-bottom: 1px solid #dfdfdf;
	padding-bottom: .5rem;
}

.form_cover dl dd textarea {
	max-width: 710px;
}

.form_font_001 {
	font-size: 1.1rem;
	font-weight: 600;
	width: 150px;
	display: inline-block;
}

.form_font_002 {}

.form_font_003:after {
	display: block;
}

.form_font_003 {
	background: #ff4c4c;
	color: #fff;
	font-size: .8rem;
	padding: 0 2px;
}

dt .form_font_003 {
	float: right;
	line-height: 20px;
}

.formError .formErrorContent {
	background: #ff5555;
}

.formError .formErrorArrow div {
	background: #ff5555;
}


/*//////////////
.contact .page_footer
//////////////*/

.contact.page_footer {
	width: 100%;
	border: 1px solid rgba(64, 123, 187, 1);
	margin: 0 auto 5rem;
	color: #fff;
	border-radius: 5px;
	padding: 0;
}

.contact.page_footer a:link {
	padding: 1rem;
	width: 100%;
	position: relative;
	background: #007bbb;
	background-image: -webkit-radial-gradient(#fff 10%, transparent 0), -webkit-radial-gradient(#fff 10%, transparent 0);
	background-image: radial-gradient(#fff 10%, transparent 0), radial-gradient(#fff 10%, transparent 0);
	background-position: 0 0, 3px 3px;
	-webkit-background-size: 3px 3px;
	background-size: 3px 3px;
}

.contact.page_footer h2 {
	font-size: 1.6rem;
	text-align: center;
	/*border-bottom: 1px solid rgba(64, 123, 187, 1);*/
	color: #fff;
	margin: 0;
	font-family: 'Noto Sans Japanese', sans-serif;
	float: left;
	width: 20%;
	border-right: 1px solid #fff;
}

.contact.page_footer h2 span {
	display: inline-block;
	font-size: 1rem;
	padding-top: .5rem;
	padding-bottom: .5rem;
}

.contact.page_footer p {
	padding: 0;
}

.contact.page_footer p.phone {}

.contact.page_footer p.form a {
	color: #fff;
	font-size: 1rem;
}

.contact.page_footer a h2 + div {
	text-align: center;
	width: 80%;
	line-height: 54.65px;
	margin: 0 0 0 20%;
	font-size: 1.3rem;
	color: #fff;
}

.contact.page_footer a .glyphicon {
	position: absolute;
	right: 1rem;
	top: 45%;
	color: #fff;
}

.contact.page_footer a:hover {
	background: rgba(64, 123, 187, .8);
}

.form_cover .contact_002 {
	margin: 3rem auto;
	text-align: center;
	padding: 1rem;
}

.btnSubmit {
	background: #ff6e35;
	color: #fff;
	font-size: 1.05rem;
	letter-spacing: .05rem;
	padding: 1rem 0;
	font-weight: 700;
	width: 80%;
}

.form_cover p {
	text-align: center;
	padding: 0 1rem;
	font-size: .85rem;
}

/*/////////////////////
buisness.html
/////////////////////*/

.business {
	margin-top: 3rem;
}

.business h3 {
	color: #007bbb;
	font-size: 1.45rem;
}

.business .lead {
	font-size: 1rem;
}

.business_box {
	margin: 0 0 3rem;
}

.business_box:after {
	display: block;
	clear: both;
	content: "";
}

.business_box h4 {
	color: #007bbb;
	font-size: 1.3rem;
}

.business_box figure {
	width: 40%;
	float: left;
}

.business_box figure img {
	max-width: 100%;
}

.business_desc {
	float: left;
	width: 60%;
	padding-left: 3rem;
	line-height: 2;
}

.more_link {
	padding: 1rem;
	background: #007bbb;
	color: #fff;
	width: 200px;
	margin-top: 3rem;
	float: right;
}

.confirm.form_cover dl dd {
	padding-top: 12px;
}

.confirm.form_cover dl dd:after {
	display: block;
	content: "";
	clear: both;
}

.cover_lead {
	margin: 3rem auto 0;
}

.row .conts {
	margin-bottom: 2rem;
	display: flex;
	max-width: 1060px;
	margin: 5rem auto;
}

.row h2.second {
	border-bottom: none;
	font-weight: 900;
	font-size: 1.6rem;
	text-align: center;
	background: rgba(0, 123, 187, 0.5);
	padding: 3rem 0;
	color: #fff;
	margin-bottom: 2rem;
}

.row h2.second span {
	font-weight: 100;
}

.row > h2.second:after {
	display: none;
}

.row .conts figure {
	width: 50%;
}

.row .conts figure img {
	max-width: 100%;
}

.row .conts.system_efforts {
	margin-bottom: 5rem;
}

.row .conts.system_efforts p {
	width: 50%;
	text-align: left;
	line-height: 2;
	padding-right: 5rem;
}

.row .conts.system_support .sub_ttl {
	color: #407bbb;
	font-size: 1.65rem;
	font-weight: 800;
	line-height: 1.5;
	padding-bottom: 1rem;
}

.row .conts.system_support .sub_ttl span {
	font-size: 1rem;
	padding-left: 1rem;
}

.row .conts.system_support p {
	text-align: left;
	line-height: 2;
	padding-right: 5rem;
}

.inner_box {
	padding: 1rem 0;
	margin-left: 0;
}

.inner_box ul {
	margin-bottom: 1rem;
}
.inner_box dl{
	margin: 1rem;
	border: 1px solid #4c8dcb;
	color: #07549e;
}
.inner_box dt{
	float: left;
	font-weight: 100;
	padding: 1rem;
	border-right: 1px solid #4c8dcb;
	background: #ddebf5;
	color: #07549e;
}
.inner_box dd{
	border-bottom: 1px solid #4c8dcb;
	padding: 1rem 0 1rem 0;
}
.inner_box dd:last-child{
	border-bottom: none;
}
.cover_lead.business {
	margin-top: 0;
}

.cover_lead.business .text {
	padding-top: 0;
}

.privacy_area {
	height: 120px;
	width: 80%;
	overflow-y: scroll;
	margin: 2rem auto;
	border: 1px solid #ccc;
	padding: 1rem;
	font-size: .85rem;
}

.privacy_area h3 {
	text-align: center;
	font-weight: normal;
}

.privacy_area p {
	text-align: left;
	padding: 0 0 2rem;
}

.form_cover .privacy_area dl {
	border: none;
	padding: 0;
}

.form_cover .privacy_area dl dt {
	width: auto;
	float: none;
	line-height: 1;
}

.form_cover .privacy_area dl dd {
	padding-left: 0;
	border-bottom: none;
}

#pcode {
	width: 20%;
	font-size: 1.2rem;
}

.confirm input[type="text"],
.confirm textarea {
	background: none;
	pointer-events: none;
	padding: 0;
	font-weight: 100;
}

.confirm #pcode {
	font-size: 1rem;
}

.form_cover dd p {
	font-size: 1rem;
}

.btn_back {
	padding: .5rem 1.85rem;
	margin: 0 auto;
	text-align: center;
	display: block;
}



.form_cover p.alert_confirm{
	padding: 0 0 1rem;
	color: #ff4c4c;
	font-size: 1.3rem;
}
footer .ftr_inner {
	display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: flex-start;
}
footer .outline {
    line-height: 1.3;
    font-size: .85rem;
	display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: stretch;
	margin-bottom: 20px;
	width: 100%;
}
footer .outline .tel_num span {
    padding-right: .5rem
}
footer .outline .copy{
    font-size: 13px;
	font-weight: 400;
    color: #4c8ecb;
}
footer .outline .zip{
	display: none;
}
footer .outline img{
	width: 180px;
    height: auto;
    margin: 10px auto;
}
footer nav{
	display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: flex-start;
}
footer nav section {
	margin-bottom: 20px;
}
footer nav section .widget-title{
	text-align: center;
	color: #0170B9;
	font-size: 16px;
	font-weight: 600;
	margin: 0;
}
footer ul.footer_menu{
	padding: 0;
}
footer ul li{
	text-align: center;
}

@media screen and (min-width:768px) {
	header.navbar {
		position: fixed;
	}
	.global-nav .left li ul li {
		background: rgba(210, 228, 242, .8);
		border-bottom: rgba(255,255,255,.5) 1px solid;
		font-size: .85rem;
	}
	.global-nav .left li .sub-menu li{
		width: auto;
	}
	.global-nav .left li ul li:last-child {
		border-bottom: none;
	}
	.sptel {
		display: none;
	}
	.cate_cover {
		padding-top: 120px;
        padding-bottom: 2rem;
		height: 326px;
        text-align: center;
	}
	.cate_cover h1 {
		font-size: 2.5rem;
        padding-top: 2rem;
        margin-bottom: 25px;
	}

	.row h2.second{
		font-size: 1rem;
		padding: 2rem 0;
	}
	.row h2.second span{
		font-size: 2rem;
	}
	.bread{
		padding-top: .5rem
	}
	footer {
		padding: 2rem 0 1rem;
		display: flex;
		justify-content: center;
		align-items: flex-start;
		flex-flow: wrap;
		width: 100%;
		border-top: 1px solid #dedede;
	}
	.ftr_inner{
		max-width: 1200px;
	}
	footer ul {
		padding: 5rem 3rem;
		display: block;
	}
	footer ul.footer_menu {
		margin: 0 auto;
		display: flex;
		flex-flow: column;
		padding: 1rem 0;
		text-align: left;
	}
	footer ul.footer_menu > li {
		padding: 0;
		font-size: 13px;
		font-weight: 400;
	}
	footer ul.footer_menu > li a {
		color: #333;
	}
	footer ul.footer_menu > li a:hover {
		text-decoration: underline;
		/*background: rgba(64, 123, 187, .1);*/
		opacity: 1;
		animation-duration: 1s;
		animation-name: fade-in;
		-moz-animation-duration: 1s;
		-moz-animation-name: fade-in;
		-webkit-animation-duration: 1s;
		-webkit-animation-name: fade-in;
	}
	footer ul.footer_menu > li ul {
		padding: .5rem 0;
	}
	footer ul.footer_menu > li ul li {
		width: 100%;
		padding: 0;
		line-height: 1;
		font-size: 12px;
		padding-left: 30px;
	}
	footer ul.footer_menu > li ul li a {
		color: #5a5a5a;
	}
	footer ul.footer_menu > li ul li a:active,
	footer ul.footer_menu > li ul li a:hover {
		text-decoration: underline;
		background: rgba(64, 123, 187, .1);
		opacity: 1;
		animation-duration: 1s;
		animation-name: fade-in;
		-moz-animation-duration: 1s;
		-moz-animation-name: fade-in;
		-webkit-animation-duration: 1s;
		-webkit-animation-name: fade-in;
	}
	footer ul li ul {
		display: block;
		width: 100%
	}
	footer ul.footer_menu > li .outline img{
		display: block;
		margin-bottom: .5rem;
	}
	footer ul.footer_menu > li .outline {
		font-size: 1rem;
		font-weight: 300;
		background: rgba(255,255,255,.75);
		padding: 15px;
	}
	footer ul.footer_menu > li .outline .cname{
		display: block;
		font-size: 1rem;
		padding-top: .5rem;
	}
	footer ul.footer_menu > li .outline .zip{
		display: inline-block;
		font-size: .8rem;
	}
	footer ul.footer_menu > li .outline .addr{
		display: inline-block;
		font-size: .8rem;
	}
	footer ul.footer_menu > li .outline .tel_num{
		font-size: .8rem;
	}
	.message {
		margin: 0 0 0 .5rem;
		border-width: 30px;
		text-align: center;
	}
	.message .logo_ph {
		width: 50%;
		margin-bottom: 1rem;
		margin-top: .5rem;
	}
	.message p {
		font-size: 1rem;
		padding: 1rem 0 0;
		line-height: 1.6;
	}
	.box_01 .message > h2 {
		text-align: center;
	}
	.box_01 .message > h2 span {
		font-size: 1.4rem;
	}

	.linkRight {
		position: static;
	}
	.linkRight .btn {
		width: 98%;
		font-size: 1rem;
		border-radius: 0;
		margin: 1%;
	}

	.linkRight .btn a {
		padding: .5rem 0;
	}
	.row {
		padding: 0;
		margin-top: 2rem;
		background: rgba(255, 255, 255, 1);
		color: #444;
	}
	.box_01 + .row {
		margin-top: 0;
	}
	.container .row .row_inner {
		display: -webkit-flex;
		display: flex;
		background: rgba(255, 255, 255, 1);
		margin: 0 auto;
		max-width: 1060px;
	}

	.container .row .col-xs-12 {
		margin: 0 auto;
		float: none;
		padding: 1rem 1.5rem;
		background: rgba(64, 123, 187, 1);
	}
	.container .row .col-xs-12 h2 {
		font-weight: 300;
		font-size: 2.6rem;
		margin-bottom: 2rem;
		color: #fff;
		/*color:#007bbb;*/
	}
	.container .row .col-xs-12 h2 span {
		padding-right: 1rem;
		display: block;
		font-size: 1rem;
		font-weight: 900;
	}
	.container .row .col-xs-12 h2 span.glyphicon {
		font-size: 2.6rem;
		display: inline;
	}
	.container .row .row_inner .col-xs-12 h2 .glyphicon-tasks {
		font-size: 2rem;
		display: inline-block;
	}
	.col-xs-12 p {
		max-width: 760px;
		margin: 0 auto 2rem;
		text-align: left;
		line-height: 2;
		color: #fff;
	}
	.container .row .row_inner a {
		color: #444;
	}
	.row .row_inner .col-sm-4 {
		width: auto;
		margin: 0 .1rem 0;
		background: rgba(255, 255, 255, .1);
		padding: 3rem 1.5rem 0;
		-webkit-flex-grow: 5;
		flex-grow: 5;
	}
	.row .row_inner .col-sm-4 h3 {
		margin-bottom: .5rem;
		font-weight: 900;
		font-size: 1.35rem;
		color: #007bbb;
	}
	.row .row_inner .col-sm-4 p {
		max-width: 480px;
		min-height: none;
		padding-bottom: 2rem;
		margin-bottom: 2rem;
		text-align: left;
		line-height: 2;
		border-bottom: 1px solid rgba(255, 255, 255, .1);
	}
	.row .row_inner .col-sm-4 p:last-child {
		margin-bottom: 0;
		border-bottom: none;
	}
	.row > .btn {
		border-radius: 0;
		margin: 1rem auto 3rem;
		width: 40%;
		padding: 1.5rem 0;
		font-size: 1.5rem;
		border: none;
		background: rgba(127, 189, 221, 1)
		;
	}
	.row > .btn:hover {
		background: rgba(127, 189, 221, .3)
		;
		border: none;
		color: rgba(64, 123, 187, 1);
	}
	.row > .btn a {
		color: #fff;
	}
	.box_01 {
		margin-top: 0rem;
	}
	.box_01_inner {
		max-width: 1060px;
	}


/*//////////////
Form
//////////////*/
	.form_top {
		max-width: 1060px;
		margin: 3rem auto 7rem;
	}
	.form_top .subBox {
		padding-bottom: 3rem;
	}
	.form_top .subBox h3 {
		color: #007bbb;
		font-size: 1.6rem;
		padding-bottom: 1rem;
	}
	.form_top .subBox button {
		background: #007bbb;
		padding: 1rem 2.5rem 1rem 1.5rem;
		position: relative;
		min-width: 30%;
		margin-bottom: 3rem;
		font-size: 1.35rem;
		color: #fff;
	}
	.form_top .subBox button:hover {
		opacity: .7;
	}
	.form_top .subBox button a {
		color: #fff;
	}
	.form_top .subBox button span {
		right: 1rem;
		position: absolute;
		top: 35%;
	}
	.form_cover {
		max-width: 1060px;
		margin: 3rem auto;
	}
	.form_cover dl {
		border-top: 1px solid #dfdfdf;
		padding-top: .5rem;
	}
	.form_cover dl dt {
		float: left;
		width: 350px;
		font-weight: 100;
		line-height: 40px;
	}
	.form_cover dl dd {
		padding-left: 360px;
		margin-bottom: 1rem;
		border-bottom: 1px solid #dfdfdf;
		padding-bottom: .5rem;
	}
	.form_cover dl dd textarea {
		max-width: 710px;
	}
	.form_font_001 {
		font-size: 1.1rem;
		font-weight: 600;
		width: 150px;
		display: inline-block;
	}

	/*//////////////
	.contact .page_footer
	//////////////*/
	.contact.page_footer {
		max-width: 860px;
		margin-top: 5rem;
	}
	.btnSubmit {
		font-size: 1.5rem;
		font-weight: 100;
		width: 100%;
	}


	.inner_box {
		padding: 1rem 0;
		margin-left: 40%;
	}

	.inner_box dl{
		margin: 0 0 2rem 0;
		max-width: 330px;
	}
	.inner_box dt{
		width: 60%;
		padding: .5rem 1rem;
	}
	.inner_box dd{
		text-align: center;
		padding: .5rem 1rem;
	}
	.cate_outer .col{
		margin: 0 auto;
		padding-top: 3rem;
		letter-spacing: .1rem;
	}
	.cate_outer .col h3 {
		color: #007bbb;
		font-size: 1.8rem;
		font-weight: 300;
		margin: 0;
		padding: 0 0 1rem;
		background: none;
	}
	.cate_outer h3 {
		color: #007bbb;
		font-size: 1.8rem;
		font-weight: 300;
		margin: 0;
		text-align: center;
	}
	.cate_outer .col figure{
		max-width: 40%;
	}
	footer .ftr_inner{
		flex-flow: wrap;
	}
	footer .outline {
		justify-content: flex-start;
        align-items: flex-start;
        margin-top:0;
		width: 25%;
        font-size: 1rem;
        font-weight: 600;
        padding: 0;
        color: #666;
    }

	footer .outline img{
		margin: 10px 0;
	}
	footer .outline span{
		font-weight: 400;
	}
    footer .outline .cname {
        font-size: 1rem;
    }

    footer .outline .addr {
        display: inline-block;
        font-size: .8rem;
    }

    footer .outline .tel_num {
        font-size: .8rem;
        display: inline-block;
    }
	footer nav{
		width: 75%;
		display: flex;
		flex-flow: wrap;
	}
	footer nav section{
		width: 33.333%;
	}
	footer nav section .widget-title{
		text-align: left;
	}
	footer nav section ul li{
		text-align: left;
		padding: 0;
		font-size: 13px;
	}
	footer nav section:nth-child(2){
		display: flex;
		flex-flow: wrap;
		width: 66.666%;
	}
	footer nav section:nth-child(2) .widget-title{
		width: 100%;
		margin-bottom: 15px;
	}
	footer nav section:nth-child(2) ul{
		width: 50%;
		padding: 0;
	}
	footer copy {
		font-size: .85rem;
		text-align: right;
        width: 100%;
		padding: 35px 0;
	}
	
}





@media screen and (min-width:745px) and (max-width:768px) {
	header {
		padding-left: 10px
	}
	header h1 {
		width: 350px;
	}
	header h1 span {
		margin-left: 1rem;
	}
	.global-nav .left li {
		min-width: 70px;
	}
	
}

@media screen and (max-width:767px) {
	a:hover,a:active, a:focus{ cursor: pointer}
	img {
		max-width: 100%;
	}
	.hdr_inner {
		max-width: none;
		display: inline-block;
		width: 100%;
		padding: 0 10px;
	}
	header {
		padding: 0 10px;
		height: 60px;
		border-radius: 0;
	}
	header.navbar-default {
		position: fixed;
		padding: 0;
		height: 62px;
		border-radius: 0;
		box-shadow: 0px 1px 2px rgba(0, 0, 0, .3);
	}
	header .hdr_left {
		max-width: none;
		position: relative;
	}
	header h1 {
		width: 80%;
		float: left;
	}
	header h1 a {
	}
	header h1 span {
		margin-left: 0;
		position: absolute;
		top: 1px;
		left: 0;
		width: 100%;
		letter-spacing: -.05rem;
		float: none;
		text-align: center;
		border-bottom: #ddd 1px solid;
	}
	.navbar-header{
		height: 100%;
		display: flex;
        align-items: center;
        justify-content: flex-start;
	}
	.navbar-default .navbar-toggle,
	.navbar-default .navbar-toggle:hover {
		margin: 0 0 0 auto;
		background-color: #0170B9;
		width: 41px;
        height: 41px;
		display: flex;
		flex-flow: column;
        align-items: center;
        justify-content: center;
	}
	.navbar-default .navbar-toggle .icon-bar {
		background-color: rgba(255,255,255,.9);
		width: 16px;
		height: 2px;
	}
	header nav {
		background: #d2e4f2;
		/*max-height: 300px;*/
	}
	header nav ul.nav {
		background: #fff;
		margin: 5px;
	}
	.global-nav.in{
		height: calc(100vh - 62px);
		background-color: #ffff;
	}
	.global-nav .left li {
		width: 100%;
		text-align: left;
	}
	.global-nav .left li:last-child {
		padding-left: 0;
		text-align: center;
		border-bottom: none;
	}
	.global-nav ul li ul {
		display: block;
		position: relative;
		left: unset;
		top: unset;
	}
	.global-nav.in .left{
		text-align: center;
	}
	.global-nav .left ul li:last-child {
		text-align: left;
		padding-left: 30px;
	}
	.global-nav .left li.btn_contact{
		max-width: 80%;
		margin: 20px auto;
	}
	.nav > li {
		border-bottom: 1px solid #d2e4f2;
	}
	.nav > li ul {
		border-top: 1px solid #d2e4f2;
	}
	.nav > li ul li {
		border-bottom: 1px solid #d2e4f2;
		padding-left: 30px;
	}
	.navbar-default .navbar-nav > li > a {
		
	}
	.navbar-default .navbar-nav > li > a,
	.navbar-nav li a {
		padding-top: 10px;
		padding-bottom: 10px;
		padding-left: 15px;
		line-height: 20px;
	}
	.global-nav ul.left li ul li a {
		
	}
	.global-nav {
		width: 100%;
	}
	.global-nav .left {
		display: inherit;
		width: 97%;
	}
	.bread {
		max-width: 100%;
		padding: .3rem 0 0 .3rem;
	}
	.bread ul li {
		font-size: .8rem;
	}
	.row .conts,
	.portContact {
		max-width: 100%;
	}
	.carousel {
		padding-top: 61px;
	}
	.panel .carousel-caption h3 {
		color: #fff;
		font-size: 12px;
		position: absolute;
		top: 15%;
		left: 0;
		background: rgba(255, 255, 255, .5);
		padding: 10px 0 13px 15px;
		width: 52%;
		line-height: 1;
		padding-left: 3rem;
		height: 52px;
	}
	.panel .item:first-child .carousel-caption h3 {
		background: rgba(87, 158, 215, .9);
	}
	.panel .item:nth-child(2) .carousel-caption h3 {
		background: rgba(255, 120, 56, .9);
	}
	.panel .item:nth-child(3) .carousel-caption h3 {
		background: rgba(58, 218, 181, .9);
	}
	.panel .item:nth-child(4) .carousel-caption h3 {
		background: rgba(239, 72, 141, 0.9);
	}
	.panel .carousel-caption h3 span {
		font-size: 24px;
		padding: 0;
		letter-spacing: .08rem;
		display: block;
	}

	.panel .carousel-caption h3 span.glyphicon {
		font-size: 30px;
		padding: 0;
		letter-spacing: .08rem;
		left: .5rem;
		position: absolute;
		top: 22%;
	}
	.panel .carousel-caption h3 span:nth-child(2) {
		font-size: 18px;
		letter-spacing: unset;
		padding-top: 0.1rem;
	}
	.carousel-caption {
		left: 5%;
		right: 5%;
		text-align: left;
		position: static;
		color: #333;
		text-shadow: none;
	}
	.carousel-caption h3 span:last-child {
    	font-size: .85rem;
		
	}
	.carousel-caption h3 span:last-child:after {
		display: block;
		content: "";
		clear: both;
		padding-bottom: 5px;
	}
	.carousel-caption p {
		font-size: 12px;
		padding: 0 15px;
		text-shadow: none;
		min-height: 88px;
		letter-spacing: .05rem;
	}
	.carousel-indicators {
		top: 60%;
	}
	.carousel-indicators li {
		background: none;
		border-color: rgba(255, 255, 255, .5)
	}
	.carousel-indicators li.active {
		background: rgba(255, 255, 255, .5)
	}
	.message {
		padding: 1rem;
		width: initial;
		text-align: center;
		margin: 0;
		border: none;
		border-top: 1px solid rgba(64, 123, 187, .1);
	}
	.message img {
		max-width: 200px;
		margin: 0 auto 1rem;
	}
	.message p {
		font-size: .95rem;
		line-height: 1.6;
		letter-spacing: unset;
	}
	.message p br {
		display: none;
	}
	.box_01 {
		display: unset;
		max-width: unset;
		width: 100%;
	}
	.box_01 .message > h2 {
		font-size: .85rem;
	}
	.box_01 .message > h2 span {
		font-size: 1.2rem;
	}
	.topicsBox {
		width: 100%;
		float: none;
		border: none;
		border-top: 1px solid rgba(64, 123, 187, .1);
	}
	.box_01 .topicsBox h2 {
		margin: 1rem 1rem 0;
		font-size: 1.2rem;
		padding-bottom: .5rem;
	}
	.box_01 .topicsBox h2 span {
		padding-top: .5rem;
		display: inline-block;
		font-size: .85rem;
		padding-left: 1rem;
	}
	.topicsArea {
		height: 200px;
		margin-right: 0;
	}
	.topicsArea dl {
		padding-bottom: 0;
		padding-left: 1rem;
		padding-right: 1rem;
	}
	.topicsArea dt {
		float: left;
		width: 28%;
		font-size: .95rem;
	}
	.topicsArea dd {
		padding-left: 29%;
		font-size: .95rem;
	}
	.topicsArea dd.title {
		font-size: .95rem;
	}
	.row {
		padding-top: 1rem;

	}
	.row .col-xs-12 {
		margin-bottom: 1rem;
		float: none;
	}
	.row h2 {
		margin-top: 0;
		color: #fff;
		font-size: 1.25rem;
		font-weight: 900;
		letter-spacing: .1rem;
	}
	.row h2 span.glyphicon {
		padding-right: .5rem;
	}
	.row h2 span:nth-child(2) {
		display: block;
		font-size: .85rem;
		font-weight: 400;
	}
	.row .col-xs-12 p {
		font-size: .95rem;
		text-align: left;
		opacity: .8;
	}
	.row_inner a {
		color: #fff;
		width: 45%;
		vertical-align: top;

	}
	.row_inner .col-sm-4,
	.row_inner a .col-sm-4 {
		padding-top: 15px;
		padding-bottom: 1rem;
		padding-left: 10px;
		padding-right: 10px;
		font-size: .85rem;
	}
	.row_inner:nth-child(2) {
		border-top: 1px dotted rgba(255, 255, 255, .3);
	}
	.col-sm-4 h3 {
		color: #fff;
		font-size: 14px;
	}
	.row_inner a .col-sm-4 p {
		text-align: left;
		opacity: .9;
	}
	.col-sm-4 p {
		text-align: left;
	}
	.row > .btn {
		margin: .5rem auto 1.95rem auto;
	}
	.row h2.second {
		font-size: .9rem;
		font-size: .9rem;
		padding: 1rem 0 1rem 0;
		margin-bottom: 0;
	}
	.row h2.second span {
		font-weight: 900;
		font-size: 1.5rem;
	}
	.row .conts.system_efforts {
		display: block;
		flex-flow: column-reverse;
		margin: 0;
		padding: 1.5rem;
	}
	.row .conts.system_efforts p {
		padding-right: 0;
		width: 100%;
		line-height: 1.5;
	}
	.row .conts.system_efforts figure {
		width: 100%;
		border: 3px solid #fff;
		margin-bottom: 1rem;
	}
	.row .conts.system_support {
		flex-flow: column-reverse;
		margin: 0;
	}
	.row .conts.system_support figure {
		width: 100%;
		margin-bottom: 1rem;
	}
	.su_innder {
		padding: 1.5rem;

	}
	.row .conts.system_support p {
		padding-right: 0;
		line-height: 1.5;
	}
	.row .conts.system_support .sub_ttl {
		color: #fff;
		text-align: center;
		font-size: 1rem;
	}
	.toppage .portfolio {
		width: 100%;
	}
	.threeBox .portContact {
		display: block;
		flex-flow: column;
		/*border-top: 1px solid #ccc;*/
	}
	.portContact .contact {
		width: 100%;
		padding: 0;
	}
	.portContact .contact h2 {
		margin: 0;
		padding: .5rem;
		/*background: rgba(64, 123, 187, 1);
		color: #fff;*/
		font-size: .85rem;
	}
	.portContact .contact h2 span {
		padding: 0;
		font-size: 1.15rem;
	}
	.portContact .contact h2 + div {
		width: 100%;
		margin-top: 1rem;
		line-height: 1.5;
		padding: 0 .5rem 1rem;
	}
	.portContact .contact p {
		padding: 0 0 0 0;
	}
	.portContact .contact p a:visited,
	.portContact .contact p a:link {
		color: #337ab7;
		font-size: 1rem;
		font-weight: 700;
	}
	.portContact .contact p span.glyphicon {
		display: inline-block;
		font-size: 2.5rem;
		width: 56px;
		margin: 0 0 .5rem;
		padding: 0;
		height: 56px;
		line-height: 56px;
		background: rgba(64, 123, 187, 1);
		color: #fff;
		border-radius: 50%;
	}
	.portContact .partner {
		margin-top: 1.5rem;
		text-align: center;
	}
	.portContact .partner h2,
	.portContact .designer h2 {
		border-top: 1px solid rgba(64, 123, 187, 1);
		margin: 0;
		padding: .5rem;
		font-size: .85rem;
	}
	.portContact .partner h2 span,
	.portContact .designer h2 span {
		padding: 0;
		font-size: 1.15rem;
	}
	.portContact .partner h2 span small {
		color: #fff;
	}
	.portContact .partner figure {
		max-width: 30%;
	}
	.portContact .partner figure + p,
	.portContact .designer figure + div {
		max-width: 70%;
		padding-left: 1rem;
		line-height: 1.5;
		font-size: .9rem;
		text-align: left;
	}
	.flex_box {
		display: flex;
		padding: 1rem;
	}
	.portContact .designer {
		text-align: center;
	}
	.portContact .designer .flex_box {
		display: block;
		padding: 0;
	}
	.portContact .designer figure {
		max-width: 100%;
		max-height: 150px;
		overflow: hidden;
		margin-bottom: 0;
	}
	.portContact .designer figure + div {
		max-width: 100%;
		padding: 1rem;
		line-height: 2;
	}
	.portContact .partner .btn,
	.portContact .designer .btn {
		margin: 0 auto 1rem;
		background: rgba(64, 123, 187, 1);
		color: #fff;
		white-space: normal;
		position: static;
	}
	.portContact .partner h2 {
		background: #579ed7;
		color: #fff;
		border-color: #579ed7;
	}
	.portContact .partner .btn {
		margin: 0 1rem 1rem;
		position: relative;
		text-align: left;
		padding-left: 3rem;
		-webkit-border-radius: 20px;
		-moz-border-radius: 20px;
		border-radius: 20px;
		background: #579ed7;
		color: #fffad7;
		font-weight: 800;
	}
	.portContact .partner .btn span {
		position: absolute;
		top: 20%;
		left: .9rem;
		font-size: 1.45rem;
		color: #fffad7;
	}
	/* Sub Pages*/
	.cate_cover {
		height: 200px;
		padding-top: 90px;
	}
	.cate_cover h1 {
		font-weight: 600;
	}
	.cate_cover h1 span {
		display: block;
		font-size: 1.0rem;
		padding-top: .7rem;
		letter-spacing: .5rem;
	}


	/* System page*/
	.cover_lead {
		max-width: 100%;
		margin: 0 auto;
		padding: 2rem 0;
	}
	.cover_lead .lead_list {
		width: 80%;
		max-width: 90%;
	}
	.lead_list_item {
		font-size: 1rem;
		padding-bottom: 1rem;
	}
	.cover_lead .text {
		padding: 1rem 1rem 0 1rem;
		line-height: 1.7;
	}
	.cate_outer .col {
		max-width: 100%;
		padding: 1rem 0;
		margin: 0 auto;
		text-align: center;
	}
	.cover_lead .lead_list:before,
	.cover_lead .lead_list:after {
		content: "";
	}
	.cover_lead .lead_heading.heading {
		font-size: 1.4rem;
	}
	.cover_lead .lead_heading.heading:after {
		width: 170px;
	}

	.cate_outer .col figure {
		max-width: 100%;
		float: none;
		padding-right: 0;
		margin: 0 1rem 1rem 1rem; 
		/*padding-bottom: 1rem;
		border: 1px solid #fdecd2;*/
	}
	.cate_outer .col p {
		text-align: left;
		padding: 0 1.5rem;
		line-height: 1.7;

	}
	.cate_outer .col .btn {
		min-height: 42px;
		max-width: 280px;
		width: auto;
		white-space: initial;
	}
	.contact.page_footer {
		margin: 1rem;
		width: 93%;
	}
	.contact.page_footer a:link {
		padding: 1rem .5rem;
	}
	.contact.page_footer h2 {
		font-size: 1rem;
		width: 25%;
	}
	.contact.page_footer h2 span {
		font-size: .8rem;
	}
	.contact.page_footer a h2 + div {
		width: 70%;
		line-height: 1.3;
		font-size: 1rem;
		text-align: left;
		margin-left: 28%;
	}
	/* Footer*/
	footer {
		margin-top: 3rem;
	}
	footer ul {
		padding-bottom: 0;
	}
	footer ul:first-of-type{
		margin-bottom: 20px;
	}
	footer ul li {
		padding: .5rem 1rem;
	}
	footer ul li a:visited,
	footer ul li a:link {
		
	}
	footer copy {
		text-align: center;
        font-size: .8rem;
        display: block;
        padding: 35px 0;
        width: 100%;
	}
	.page_top a {
		width: 42px;
		height: 42px;
		text-align: center;
	}

	.page .container {
		width: 100%;
		padding: 0 1em;
	}

}

/* Humbergur Menu */

.slideout-menu {
	position: fixed;
	top: 0;
	bottom: 0;
	width: 256px;
	min-height: 100vh;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	z-index: 0;
	display: none;
}

.slideout-menu-left {
	left: 0;
}

.slideout-menu-right {
	right: 0;
}

.slideout-panel {
	position: relative;
	z-index: 1;
	will-change: transform;
	background-color: #FFF;
	min-height: 100vh;
}

.slideout-open,
.slideout-open body,
.slideout-open .slideout-panel {
	overflow: hidden;
}

.slideout-open .slideout-menu {
	display: block;
}

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

    .global-nav .sub-menu,
    .global-nav .sub-menu figure {
        display: none;
    }

    .global-nav ul.left li ul li a {
        padding: 5px;
        height: auto;
        line-height: 1.5;
    }
    .nav>li ul.sub-menu li{
        border-bottom: none;
    }
	.global-nav .left li ul li{
		background-color: transparent;
		font-size: 1rem;
	}
}

@media screen and (min-width:769px) {
    .global-nav {
        position: static;
    }

    .global-nav li {
        position: static;
    }

    .global-nav ul li ul {
        display: none;
        grid-column: 3/8;
        background: rgba(255, 255, 255, 1);
        padding: 13px 14px;
        height: auto;
        top: 48px;
        left: 0;
        right: 0;
        margin: auto;
        max-width:fit-content;

    }

    .global-nav ul li:hover ul {
        display: flex;
        justify-content: flex-start;
        align-items: stretch;
        opacity: 1;
        z-index: 90;
    }

    .global-nav ul li .hover_bg {
        background-color: #000;
        opacity: 0;
        width: 100%;
        height: 100%;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 70;
        pointer-events: none;
    }

    .global-nav ul li .hover_bg.addclass {
        opacity: .5;
    }

    .global-nav .left li ul li {
        border-bottom: none;
        background-color: transparent;
        width: calc(25% - (90px/4));
    }

    .global-nav .left li ul li:not(:last-child) {
        margin-right: 30px;
    }
	.gmenu_outline.accordion-item{
		position: relative;
	}
    .global-nav ul.left li ul li a {
        line-height: 1.5;
        height: auto;
        display: flex;
        align-items: flex-start;
        justify-content: center;
        flex-flow: column;
		font-size: 14px;
    }

    .global-nav .left li ul li:hover a {
        color: #000;
    }

    .global-nav ul.left li:hover>a {
        z-index: 80;
        background-color: #fff;
    }

    .global-nav .left li ul li:hover img {
        transform: translateZ(0) scale(.98);
        transition: transform .5s cubic-bezier(.4, .1, .3, 1);
    }
	.global-nav ul li ul.sub-menu{
		max-width: none;
	}
    .global-nav .sub-menu {
        transition: .25s ease-out;
		width: 636px;
		box-shadow: 0 4px 10px -2px rgba(0, 0, 0, .1);
		border-top: 2px solid #0170B9;; 
    }

    .global-nav .sub-menu li>a:hover {
        background-color: transparent;
        color: #333;

    }

    .global-nav .sub-menu figure {
        width: 100%;
    }

    .global-nav .sub-menu img {
        max-width: 100%;
        box-shadow: 0px 3px 15px rgb(190 190 190);
        border-radius: 10px;
    }

    .global-nav .sub-menu span {
        font-size: 15px;
        display: block;
        margin-top: 10px;
        width: 100%;
        text-align: left;
    }

    .global-nav .gmenu_outline .sub-menu li div a span {
        line-height: 2;
    }

    .global-nav .gmenu_outline .sub-menu li div a:hover span {
        transform: translateY(0.5rem);
        transition: .25s ease-out;
        transform: translateZ(0) scale(.98);
        transition: transform .5s cubic-bezier(.4, .1, .3, 1);
    }

}

.ast-icon.icon-arrow svg {
    height: .6em;
    width: .6em;
    position: relative;
    margin-left: 10px;
}
.navbar-default .navbar-nav>li>a:hover{
    color: rgba(191, 191, 191, 0.8);
}