@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;600;700&display=swap');

/*--------------------------------------------
font-family: 'Noto Sans JP', sans-serif;
font-family: 'Noto Serif JP', serif;

font-weight: 400; regular
font-weight: 500; medium
font-weight: 600; semibold
font-weight: 700; bold
---------------------------------------------*/

/* Font Awesome
---------------------------------------------
font-family: "Font Awesome 5 Free";
font-family: "Font Awesome 5 Brands";

Solid→ font-weight: 900;
Regular→ font-weight: 400;
Brands→ font-weight: 400;
--------------------------------------------- */
/* 全体構造
---------------------------------------------------- */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
/*	font-size:100%;*/
	vertical-align:baseline;
	background:transparent;
}
iframe{
	vertical-align:bottom;
}
.clearfix:after {
    content: " ";  /* 新しい要素を作る */
    display: block;  /* ブロックレベル要素に */
    clear: both;
    height: 0;
    visibility: hidden!important;
}
.clearfix {
    zoom: 1;
    overflow: hidden;
}
.clearfix2:after {
    content: "";  /* 新しい要素を作る */
    display: block;  /* ブロックレベル要素に */
    clear: both;
    height: 0;
}
.clearfix2 {
    zoom: 1;
}
.clear{clear:both !important;}

img{border:0;vertical-align:bottom;}
* {margin:0px; padding:0px;}
html {
	overflow-y: scroll;
}
body{
	font-size:100%;
	line-height:180%;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif", "メイリオ", "ＭＳ Ｐゴシック";
	color:#333;
}
.img_filter a:hover img{
    opacity:0.7;
    filter: alpha(opacity=70);
}
a {
	color: #0074FF;
	text-decoration: none;
}
a:hover {
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
	color: #0074FF;
	text-decoration: none;
}
body{ margin:0px ; padding:0px;}

/*-------------------------------
	margin
-------------------------------------*/
.mt5{margin-top: 5px;}
.mt10{margin-top: 10px;}
.mt20{margin-top: 20px;}
.mt30{margin-top: 30px;}
.mt40{margin-top: 40px;}
.mt50{margin-top: 50px;}
.mb5{margin-bottom: 5px;}
.mb10{margin-bottom: 10px;}
.mb20{margin-bottom: 20px;}
.mb30{margin-bottom: 30px;}
.mb40{margin-bottom: 40px;}
.mb50{margin-bottom: 50px;}
.mb60{margin-bottom: 60px;}
.mr6{margin-right: 6px;}
.ml6{margin-left: 6px;}
.pt10{padding-top: 10px;}
.pt20{padding-top: 20px;}
.pt30{padding-top: 30px;}
.pt40{padding-top: 40px;}
.pb10{padding-bottom: 10px;}
.pb20{padding-bottom: 20px;}
.pb30{padding-bottom: 30px;}
.pb40{padding-bottom: 40px;}
.pb50{padding-bottom: 50px;}
.tac {text-align: center;}
.tar {text-align: right;}
.shadow { box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.19);}
.red{color:#c70c0c;}
@media only screen and (max-width:991px){
	.mt40{margin-top: 20px;}
	.mt50{margin-top: 20px;}
	.mb40{margin-bottom: 20px;}
	.mb50{margin-bottom: 20px;}
	.mb60{margin-bottom: 30px;}
}
@media only screen and (max-width:767px){
	.mt40{margin-top: 20px;}
	.mt50{margin-top: 20px;}
	.mb40{margin-bottom: 20px;}
	.mb50{margin-bottom: 20px;}
	.mb60{margin-bottom: 30px;}
}
/*---------------------------------------------
    common
----------------------------------------------- */
.contents{
    width: 100%;
    margin: 0px auto;
    padding: 50px 0px 0px;
}
.contents2{
    width: 100%;
    margin: 0px auto;
    padding: 40px 0px 0px;
}
.w1140{
	width: 100%;
	max-width: 1140px;
	margin-left: auto;
	margin-right: auto;
}
.txt14 p{
    font-size: 14px;
    line-height: 180%;
    margin: 0px 0px 10px;
    padding: 0px;
}
.txt15 p{
    font-size: 15px;
    line-height: 200%;
    margin: 0px 0px 10px;
    padding: 0px;
}
.txt16 p{
    font-size: 16px;
    line-height: 200%;
    margin: 0px 0px 10px;
    padding: 0px;
}
.txt18 p{
    font-size: 18px;
    line-height: 200%;
    margin: 0px 0px 10px;
    padding: 0px;
}
.tac14 p{
    font-size: 14px;
    line-height: 180%;
    margin: 0px 0px 10px;
    padding: 0px;
	text-align: center;
}
.tac16 p{
    font-size: 16px;
    line-height: 180%;
    margin: 0px 0px 10px;
    padding: 0px;
	text-align: center;
}
.bread_crumb{
    text-align: right;
    margin: 5px 0px;
	padding: 5px 0px;
	color: #888;
	font-size: 12px;
	letter-spacing: 0.1em;
}
.bread_crumb a{
	color: #888;
	font-weight: bold;
	text-decoration: none;
}
.bread_crumb a:hover{
	text-decoration: underline;
}
.modal-open {
    padding-right: 0px !important;
}
.line_w {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center; /* for no-flexbox browsers */
}
.line_w:before {
    border-top: 4px double #164c96;
    content: "";
    display: inline; /* for IE */
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex: 1;
    flex-grow: 1;
}
.line_w:before {
    margin-right: 1.0em;
}
.line_w:after {
    border-top: 4px double #164c96;
    content: "";
    display: inline; /* for IE */
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex: 1;
    flex-grow: 1;
}
.line_w:after {
    margin-left: 1.0em;
}
.line_r {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center; /* for no-flexbox browsers */
}
.line_r:after {
    border-top: 4px double #0f2d59;
    content: "";
    display: inline; /* for IE */
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex: 1;
    flex-grow: 1;
}
.line_r:after {
    margin-left: 1.0em;
}
@media only screen and (max-width:767px){
    .contents{
        width: 100%;
        margin: 0px auto;
        padding: 20px 0px;
    }
    .bread_crumb{
        font-size: 12px;
        text-align: right;
        margin: 5px 0px;
		letter-spacing: 0.0em;
    }
    .txt15 p{
        font-size: 14px;
        line-height: 180%;
        margin: 0px 0px 10px;
        padding: 0px;
    }
    .txt16 p{
        font-size: 15px;
        line-height: 180%;
        margin: 0px 0px 10px;
        padding: 0px;
    }
    .txt18 p{
        font-size: 16px;
        line-height: 180%;
        margin: 0px 0px 10px;
        padding: 0px;
    }
	.tac14 p{
		font-size: 14px;
		line-height: 180%;
		margin: 0px 0px 10px;
		padding: 0px 5px;
		text-align: left;
	}
	.tac16 p{
		font-size: 15px;
		line-height: 180%;
		margin: 0px 0px 10px;
		padding: 0px;
		text-align: left;
	}
}
/*---------------------------------
	pagetop
--------------------------------*/
#pagetop {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 999;
}
#pagetop img:hover {
	opacity: 0.7;
}
#pagetop img:hover {
    animation: rotates 0.7s linear infinite;
}
@keyframes rotates {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(0.9);
    }
    100% {
        transform: scale(1);
    }
}
@media only screen and (max-width:767px){
	#pagetop img{
		width: 50px;
		height: auto
	}
}
/*---------------------------------------------
    object-fitの縦横比保持
----------------------------------------------- */
.photo-ofi {
    height: 0;
    display: block;
	padding-bottom: 75%; /* 高さを指定 75（ボックスの横幅を基準） */
	background-color: #eee;
	overflow: hidden;
	position: relative;
    margin-bottom: 0px;
}
.photo-ofi img {
    max-width: inherit;
    max-height: inherit;
    width: 100%;
	height: 100%;
    object-fit: contain;
    font-family: 'object-fit: scale-down;';
    position: absolute;
    left: 0;
    top: 0;
}
.photo-ofi a:hover img{
	opacity: 0.75;
}
.photo-ofi2 {
    height: 0;
    display: block;
	padding-bottom: 67%; /* 高さを指定 75（ボックスの横幅を基準） */
	background-color: #333;
	overflow: hidden;
	position: relative;
    margin-bottom: 0px;
}
.photo-ofi2 img {
    max-width: inherit;
    max-height: inherit;
    width: 100%;
	height: 100%;
    object-fit: contain;
    font-family: 'object-fit: scale-down;';
    position: absolute;
    left: 0;
    top: 0;
}
.photo-ofi2 a:hover img{
	opacity: 0.75;
}

/*----------------------------------------
    header
----------------------------------------*/
header{
    width: 100%;
	height: 100px;
	margin: 0px auto;
	text-align: right;
    z-index: 300;
	background: #fff;
	position: fixed;
	top: 0;
	display: flex;
	align-content: flex-end;
	justify-content: space-between;
}
.logo{
	width: 340px;
	height: auto;
	margin: 0px;
	position: relative;
	z-index: 300;
	/*
    position: absolute;
    top:0;
    left: 0;
	z-index: 200;
	*/
}
.header_rh{
	width: auto;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
.top_tel{
	display: block;
	width: 460px;
	font-size: 24px;
	font-weight: bold;
	line-height: 120%;
	text-align: center;
	padding: 0px;
	color: #222;
}
.top_tel::before{
	font-family: "Font Awesome 5 Free";
	content: '\f095';
	margin-right: 10px;
	font-weight: 900;
	color: #23baed;
}
.top_tel a{
	text-decoration: none;
	color: #222;
}
.top_tel a:hover{
	text-decoration: none;
	color: #222;
}
.btn_top_con {
	margin: 0px;
    display: flex;
	align-items: center;
	justify-content: center;
}
.btn_top_con a{
    display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
    width: 146px;
    height: 100px;
	font-weight: normal;
	font-size: 14px;
    line-height: 120%;
	letter-spacing: 0.0em;
    color: #fff;
    text-decoration: none;
	background:#23baed;
	border: solid 1px #23baed;
}
.btn_top_con a:hover{
    color: #23baed;
    text-decoration: none;
	background: #fff;
}
.mail{
	font-size: 36px;
}
.btn_top_con_ov {
	margin: 0px;
    display: flex;
	align-items: center;
	justify-content: center;
}
.btn_top_con_ov a{
    display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
    width: 146px;
    height: 100px;
	font-weight: normal;
	font-size: 14px;
    line-height: 120%;
	letter-spacing: 0.0em;
    color: #23baed;
    text-decoration: none;
	background:#fff;
	border: solid 1px #23baed;
}
.btn_top_con_ov a:hover{
    color: #23baed;
    text-decoration: none;
	background: #fff;
}

@media only screen and (max-width:1460px){
}
@media only screen and (max-width:1170px){
}
@media only screen and (max-width:1105px){
	.top_tel{
		display: block;
		width: 460px;
		font-size: 20px;
		font-weight: bold;
		line-height: 120%;
		text-align: center;
		padding: 0px;
		color: #222;
	}
	.btn_top_con a{
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		width: 126px;
		height: 100px;
		font-weight: normal;
		font-size: 14px;
		line-height: 120%;
		letter-spacing: 0.0em;
		color: #fff;
		text-decoration: none;
		background:#23baed;
		border: solid 1px #23baed;
	}
	.btn_top_con_ov a{
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		width: 126px;
		height: 100px;
		font-weight: normal;
		font-size: 14px;
		line-height: 120%;
		letter-spacing: 0.0em;
		color: #23baed;
		text-decoration: none;
		background:#fff;
		border: solid 1px #23baed;
	}
}
@media only screen and (max-width:991px){
	header{
		width: 100%;
		height: 90px;
		margin: 0px auto;
		text-align: right;
		z-index: 300;
		background: #fff;
		position: fixed;
		display: flex;
		align-content: flex-end;
		justify-content: space-between;
	}
	.logo{
		width: 300px;
	}
	.top_tel{
		display: none;
		width: 460px;
		font-size: 24px;
		font-weight: bold;
		line-height: 120%;
		text-align: center;
		padding: 0px;
		color: #222;
	}
	.btn_top_con a{
		display: none;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		width: 126px;
		height: 100px;
		font-weight: normal;
		font-size: 14px;
		line-height: 120%;
		letter-spacing: 0.0em;
		color: #fff;
		text-decoration: none;
		background:#23baed;
		border: solid 1px #23baed;
	}
	.btn_top_con_ov a{
		display: none;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		width: 126px;
		height: 100px;
		font-weight: normal;
		font-size: 14px;
		line-height: 120%;
		letter-spacing: 0.0em;
		color: #23baed;
		text-decoration: none;
		background:#fff;
		border: solid 1px #23baed;
	}
}
@media only screen and (max-width:767px){
	.logo{
		width: 230px;
	}
}
@media only screen and (max-width:414px){
}
@media only screen and (max-width:375px){
}
/*----------------------------------------
    navi
----------------------------------------*/
.collapse:not(.show) {
    display: block;
}
.navbar {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    padding: 0px;
}
.navbar-collapse {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-align: center;
    align-items: center;
}
.navbar-header,
.navbar-collapse {
    margin-right: 0px;
    margin-left: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    padding: 0px ;
    border-top: 0px solid transparent;
}
.navbar-toggler {
    margin-right: 0px;
    margin-top: 0px;
    background: #333;
}
.icon-bar {
    background: #fff;
}
@media only screen and (max-width:991px){
	.navbar-header,
	.navbar-collapse {
		margin-right: 0px;
		margin-left: 0px;
		margin-top: 0px;
		margin-bottom: 0px;
		padding: 0px ;
		border-top: 0px solid transparent;
	}
	.navbar {
		position: relative;
		display: -ms-flexbox;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: flex-end;
		padding: 25px 20px 32px;
	}
	.collapse:not(.show) {
		display: none;
	}
	.navi_box{
		height: 80vh;
		overflow: auto;
	}
}
@media only screen and (max-width:767px){
	.navbar {
		position: relative;
		display: -ms-flexbox;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: flex-end;
		padding: 25px 20px 32px;
	}
}
/*---------------------------------------
    anime toggle
---------------------------------------*/
.navbar-toggler {
    position: relative;
    float: right;
    padding: 0px 0px 0px 8px;
    width: 40px;
    height: 32px;
    background-image: none;
    border: 1px solid transparent;
    border-radius: 4px;
    box-sizing: border-box;
    z-index: 9100;
}
.navbar-toggler .icon-bar {
    background-image:none;
    background-color: #fff;
    width: 22px;
    height: 2px;
    display: block;
    position: absolute;
    transition: ease .25s;
    border-radius: 1px;
}
.navbar-toggler .icon-bar:nth-of-type(1) {top:7px;}
.navbar-toggler .icon-bar:nth-of-type(2) {top:14px;}
.navbar-toggler .icon-bar:nth-of-type(3) {top:21px;}

.navbar-toggler[aria-expanded="true"] .icon-bar:nth-of-type(1) {
    top:13px;
    transform: rotate(-315deg);
}
.navbar-toggler[aria-expanded="true"] .icon-bar:nth-of-type(2) {
    opacity: 0;
}
.navbar-toggler[aria-expanded="true"] .icon-bar:nth-of-type(3) {
    top:13px;
    transform: rotate(315deg);
}
.icon-bar {
    background: #fff;
}
.navbar-toggler .icon-bar + .icon-bar {
  margin-top: 0px;
}
nav{
	width: 100%;
	margin: 0px;
    padding: 0px;
}
.navi {
	width: auto;
    margin: 0px auto;
    padding: 0px 10px 0px 0px;
    text-align: right;
    list-style: none;
}
.navi li {
	display: inline-block;
    font-weight: normal;
    text-align: center;
    font-size: 18px;
    line-height: 140%;
    letter-spacing: 0.05em;
    margin: 0px 15px;
    padding: 0px;
}
.navi li a {
    color: #222;
    text-decoration: none;
}
.navi li a:hover {
    color: #222;
    text-decoration: none;
}
.navi li .n_link_on{
	color: #222;
}
.en{
	display: block;
	font-size: 14px;
	font-weight: normal;
    line-height: 160%;
	color: #23baed;
}
.n_link {
    position: relative;
    padding: 0px 0px 5px;
    display: inline-table;
    transition: .3s;
    color: #666;
}
.n_link::after {
    position: absolute;
    bottom: 0px;
    left: 50%;
    content: '';
    width: 0;
    height: 2px;
    background-color: #23baed;
    transition: .3s;
    transform: translateX(-50%);
    border-radius: 4px;
}
.n_link:hover::after {
    width: 100%;
}
.n_link_on {
    position: relative;
    padding: 0px 0px 5px;
    display: inline-table;
    transition: .3s;
    color: #222;
}
.n_link_on::after {
    position: absolute;
    bottom: 0px;
    left: 50%;
    content: '';
    width: 100%;

    height: 2px;
    background-color: #23baed;
    transition: .3s;
    transform: translateX(-50%);
    border-radius: 4px;
}
.n_link_on:hover::after {
    width: 100%;
}
.navi_xs{
	display: none!important;
}
@media only screen and (max-width:1650px){
}
@media only screen and (max-width:1105px){
	.navi li {
		display: inline-block;
		text-align: center;
		font-size: 16px;
		line-height: 160%;
		letter-spacing: 0.00em;
		margin: 0px 10px;
		padding: 0px;
	}
}
@media only screen and (max-width:1024px){
	.navi li {
		display: inline-block;
		text-align: center;
		font-size: 16px;
		line-height: 160%;
		letter-spacing: 0.00em;
		margin: 0px 10px;
		padding: 0px;
	}
}
@media only screen and (max-width:991px){
	nav{
		width: 100%;
		height: auto;
		margin: 0px auto 0px;
		padding: 0px;
        position: fixed;
        top: 0;
		right: 0;
	}
	.navi{
		width: 100%;
		height: auto;
		margin: 0px auto 0px;
		padding: 0px 0px 20px;
		list-style: none;
		background:rgba(51,51,51,1.00);
        position: relative;
        z-index: 200;
	}	
    .navi li {
        float: none;
        width: 100%;
        display: block;
        font-size: 14px;
        font-weight: normal;
		text-align: center;
        line-height: 160%;
        margin: 0px;
        padding: 0px;
        border-top: solid 0px #555;
        border-bottom: solid 0px #111;
    }
    .navi li a {
        display: block;
        padding: 20px 0px;
        text-decoration: none;
        color: #fff;
    }
    .navi li a:hover {
        color:#999999;
        text-decoration: none;
    }
    .n_link {
        position: relative;
        padding: 15px 0px;
        display: inline-table;
        transition: .0s;
        color: #fff;
    }
    .n_link::after {
        position: absolute;
        bottom: -2px;
        left: 50%;
        content: '';
        width: 0;
        height: 0px;
        background-color: #fff;
        transition: .0s;
        transform: translateX(-50%);
        border-radius: 0px;
    }
    .n_link:hover::after {
        width: 100%;
    }
    .n_link_on {
        position: relative;
        padding: 15px 0px;
        display: inline-table;
        transition: .0s;
        color: #ccc!important;
        background: #444;
    }
    .n_link_on::after {
        position: absolute;
        bottom: -2px;
        left: 50%;
        content: '';
        width: 100%;
        height: 0px;
        background-color: #fff;
        transition: .0s;
        transform: translateX(-50%);
        border-radius: 0px;
    }
    .n_link_on:hover::after {
        width: 100%;
    }
    .navi .n_tel {
        width: 100%;
        display: block;
        font-size: 14px;
        font-weight: normal;
		text-align: center;
        line-height: 160%;
        margin: 0px;
        padding: 15px 0px;
        text-decoration: none;
        color: #fff;
        border-top: solid 0px #555;
        border-bottom: solid 0px #111;
    }
    .navi .n_tel a{
        color: #fff;
		text-decoration: none;
    }
    .navi .n_tel a:hover{
        color: #fff;
		text-decoration: none;
    }
	.navi_xs{
		display: block!important;
	}
}
/*-------------------------------------------------
    dropdown-menu
-------------------------------------------------- */
.dropdown:hover > .dropdown-menu{
	display: block;
}
.plus::after{
	content: "\f0d7";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin-left:10px;
	color: #6ab82c;
}
.dropdown-menu {
	position: absolute;
	top: 100%;
	left: 0;
    z-index: 1000;
	display: none;
	float: left;
	min-width: 160px;
	padding: 5px 0px 10px;
	margin: 0px;
	font-size: 14px;
	text-align: left;
	list-style: none;
	background-color: #fff;
	-webkit-background-clip: padding-box;
	background-clip: padding-box;
	border: 1px solid #ccc;
	border: 1px solid rgba(0, 0, 0, .15);
	border-radius: 4px;
	-webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
	box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
}
.dropdown-menu > li > a {
	display: block;
	padding: 3px 20px;
	clear: both;
	font-weight: normal;
	line-height: 1.42857143;
	color: #333;
	white-space: nowrap;
}
.dropdown-menu > li > a::before {
	content: "\f0da";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin-right:6px;
	color: #6ab82c;
}
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
	color: #6ab82c;
	text-decoration: none;
	background-color: #fff;
}
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
	color: #6ab82c;
	text-decoration: none;
	background-color: #fff;
	outline: 0;
}
@media only screen and (max-width:767px){
	.dropdown:hover > .dropdown-menu{
		display: block;
	}
	.dropdown-menu {
	  position: relative;
	  top: 100%;
	  left: 0;
	  z-index: 1000;
	  display: none;
	  float: none;
	  min-width: 100%;
	  padding: 5px 0;
	  margin: 2px 0 0;
	  font-size: 14px;
	  list-style: none;
	  background-color: #fff;
	  -webkit-background-clip: padding-box;
			  background-clip: padding-box;
	  border: 0px solid #ccc;
	  border: 0px solid rgba(0, 0, 0, .15);
	  border-radius: 0px;
	  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.0);
			  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.0);
	}
	.dropdown-menu li {
       border-top: solid 0px #555;
       border-bottom: solid 0px #111;
	}
	.dropdown-menu > li > a {
	  display: block;
	  padding: 10px 0px;
	  clear: both;
	  font-weight: normal;
	  line-height: 1.42857143;
	  color: #333;
	  white-space: nowrap;
	}
	.dropdown-menu > li > a::before {
		content: "\f0da";
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		margin-right:6px;
	}
	.dropdown-menu > li > a:hover,
	.dropdown-menu > li > a:focus {
	  color: #6ab82c;
	  text-decoration: none;
	  background-color: #fff;
	}
	.dropdown-menu > .active > a,
	.dropdown-menu > .active > a:hover,
	.dropdown-menu > .active > a:focus {
	  color: #6ab82c;
	  text-decoration: none;
	  background-color: #fff;
	  outline: 0;
	}
}
/*----------------------------------
	mainimages slider
----------------------------------*/
.swiper-container{
	width: 100%;
	margin: 0px auto;
	text-align: center;
	padding-top: 100px;
}
.swiper-wrapper{
	margin:0 auto;
    overflow: hidden;
	object-fit: cover;
	width: 100%;
	max-height: 800px;
}
.main_txt{
    position: absolute;
	bottom: 5%;
    right: 0;
    z-index: 300;
}
.pc{
	display: block!important;
}
.sp{
	display: none!important;
}
@media only screen and (max-width:1024px){
	.swiper-container{
		width: 100%;
		margin: 0px auto;
		text-align: center;
		padding-top: 90px;
	}
	.swiper-wrapper{
		margin:0 auto;
		overflow: hidden;
		object-fit: cover;
		width: 100%;
		max-height: 500px;
	}
	.swiper-slide img{
		width: 100%;
	}
}
@media only screen and (max-width:991px){
	.swiper-slide img{
		width: 140%;
	}
}
@media only screen and (max-width:768px){
}
@media only screen and (max-width:767px){
	.swiper-wrapper{
		margin:0 auto;
		overflow: hidden;
		object-fit: cover;
		width: 100%;
		max-height: 400px;
	}
	.swiper-slide img{
		width: 160%;
	}
	.pc{
		display: none!important;
	}
	.sp{
		display: block!important;
	}
}
@media only screen and (max-width:414px){
}
/*---------------------------------
	scroll
------------------------------------*/
a.scroll {
	position: absolute;
	bottom:0px;
	left: 49%;
	z-index: 200;
	display: inline-block;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	text-decoration: none;
	color: #fff;
	font-size: 12px;
}
a.scroll {
	padding-top: 0px;
}
a.scroll span {
	position: absolute;
	bottom: 60px;
	left: 50%;
	width: 24px;
	height: 24px;
	margin-left: -12px;
	border-left: 1px solid #fff;
	border-bottom: 1px solid #fff;
	-webkit-transform: rotateZ(-45deg);
	transform: rotateZ(-45deg);
	-webkit-animation: sdb 1.5s infinite;
	animation: sdb 1.5s infinite;
	box-sizing: border-box;
}
@-webkit-keyframes sdb {
	0% {
		-webkit-transform: rotateY(0) rotateZ(-45deg) translate(0, 0);
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		-webkit-transform: rotateY(720deg) rotateZ(-45deg) translate(-20px, 20px);
		opacity: 0;
	}
}
@keyframes sdb {
	0% {
		transform: rotateY(0) rotateZ(-45deg) translate(0, 0);
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		transform: rotateY(720deg) rotateZ(-45deg) translate(-20px, 20px);
		opacity: 0;
	}
}
@media only screen and (max-width:767px){
	a.scroll {
		display: none!important;
	}
	a.scroll span {
		display: none!important;
	}
}

/*-----------------------------------
	ancher
-------------------------------------*/
#off01,#off02,#off03,#off04,#off05{
    padding-top: 110px;
    margin-top: -110px;
}
@media only screen and (max-width:991px){
	#off01,#off02,#off03,#off04,#off05{
        padding-top: 100px;
        margin-top: -100px;
    }
}
/*--------------------------------
	contents_bg
----------------------------------*/
.contents_bg{
	width: 100%;
	margin: 0px auto;
	padding: 80px 0px 100px;
	background: url("../images/bg01.png") no-repeat top left,url("../images/bg02.png") no-repeat bottom right;
}
.contents_bg2{
	width: 100%;
	margin: 0px auto;
	padding: 80px 0px 100px;
	background: url("../images/bg02.png") no-repeat bottom right;
}
@media only screen and (max-width:991px){
	.contents_bg{
		width: 100%;
		margin: 0px auto;
		padding: 50px 0px 70px;
		background: url("../images/bg01.png") no-repeat top left/contain,url("../images/bg02.png") no-repeat bottom right/contain;
	}
	.contents_bg2{
		width: 100%;
		margin: 0px auto;
		padding: 50px 0px 70px;
		background:url("../images/bg02.png") no-repeat bottom right/contain;
	}
}
@media only screen and (max-width:767px){
	.contents_bg{
		width: 100%;
		margin: 0px auto;
		padding: 30px 0px 50px;
		background: url("../images/bg01.png") no-repeat top left/contain,url("../images/bg02.png") no-repeat bottom right/contain;
	}
	.contents_bg2{
		width: 100%;
		margin: 0px auto;
		padding: 30px 0px 50px;
		background:url("../images/bg02.png") no-repeat bottom right/contain;
	}
}

/*--------------------------------
	top01
----------------------------------*/
.top01{
	width: 100%;
	margin: 0px auto 30px;
	padding: 0px;
}
.top01 h3{
	font-weight: bold;
	font-size: 40px;
	letter-spacing: 0.05em;
	line-height: 140%;
	color: #222;
	margin: 0px 0px 40px;
	padding: 0px;
	text-align: center;
}
.top01 h3::after{
	content: "";
	display: block;
	width: 120px;
	height: 5px;
	margin: 10px auto 0px;
	background: #096ab4;
}
.top01 p{
	font-weight: normal;
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 180%;
	margin: 0px 0px 20px;
	padding: 0px;
	text-align: center;
}

@media only screen and (max-width: 1600px) {
}
@media only screen and (max-width: 1024px) {
	.top01 h3{
		font-weight: bold;
		font-size: 30px;
		letter-spacing: 0.05em;
		line-height: 140%;
		margin: 0px 0px 40px;
		padding: 0px;
		text-align: center;
	}
}
@media only screen and (max-width:991px){
	.top01 p{
		font-weight: normal;
		font-size: 16px;
		letter-spacing: 0.05em;
		line-height: 180%;
		margin: 0px 0px 20px;
		padding: 0px;
		text-align: left;
	}
}
@media only screen and (max-width: 768px) {
}
@media only screen and (max-width: 767px) {
	.top01{
		width: 100%;
		margin: 0px auto;
		padding: 0px;
	}
	.top01 h3{
		font-weight: bold;
		font-size: 24px;
		letter-spacing: 0.05em;
		line-height: 140%;
		margin: 0px 0px 20px;
		padding: 0px;
		text-align: center;
	}
	.top01 p{
		font-weight: normal;
		font-size: 16px;
		letter-spacing: 0.05em;
		line-height: 180%;
		margin: 0px 0px 10px;
		padding: 0px;
		text-align: left;
	}
}
/*---------------------------------------------
    top02
-----------------------------------------------*/
.top02{
	width: 100%;
	margin: 0px auto;
	padding: 40px 0px 80px;
}
.h3top{
	font-weight: bold;
	font-size: 30px;
	letter-spacing: 0.05em;
	line-height: 140%;
	color: #222;
	margin: 0px;
	padding: 0px;
	text-align: center;
	z-index: 200;
	position: relative;
}
.h4shadow{
	font-weight: bold;
	font-size: 60px;
	letter-spacing: 0.05em;
	line-height: 140%;
	color: #f4f4f4;
	margin: -40px 0px 0px;
	padding: 0px;
	text-align: center;
	position: relative;
	z-index: 100;
}
.box_st01{
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: 100%;
	height: 100px;
	margin: 0px auto;
	padding: 0px;
	background: url("../images/strong_bg01.png");
}
.st01{
	position: absolute;
	top: -25px;
	left: 0;
	width: 53px;
	height: 53px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: url("../images/maru01.png");
	color: #fff;
	font-size: 30px;
	font-weight: bold;
}
.box_st02{
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: 100%;
	height: 100px;
	margin: 0px auto;
	padding: 0px;
	background: url("../images/strong_bg02.png");
}
.st02{
	position: absolute;
	top: -25px;
	left: 0;
	width: 53px;
	height: 53px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: url("../images/maru02.png");
	color: #fff;
	font-size: 30px;
	font-weight: bold;
}
.box_st03{
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: 100%;
	height: 100px;
	margin: 0px auto;
	padding: 0px;
	background: url("../images/strong_bg03.png");
}
.st03{
	position: absolute;
	top: -25px;
	left: 0;
	width: 53px;
	height: 53px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: url("../images/maru03.png");
	color: #fff;
	font-size: 30px;
	font-weight: bold;
}
.h4st{
	font-size: 22px;
	font-weight: bold;
	line-height: 140%;
	color: #fff;
	text-align: center;
}

@media only screen and (max-width:1024px){
}
@media only screen and (max-width:991px){
	.top02{
		width: 100%;
		margin: 0px auto;
		padding: 20px 0px 40px;
	}
	.h3top{
		font-weight: bold;
		font-size: 28px;
		letter-spacing: 0.05em;
		line-height: 140%;
		color: #222;
		margin: 0px;
		padding: 0px;
		text-align: center;
		z-index: 200;
		position: relative;
	}
	.h4shadow{
		font-weight: bold;
		font-size: 60px;
		letter-spacing: 0.05em;
		line-height: 140%;
		color: #f4f4f4;
		margin: -40px 0px 0px;
		padding: 0px;
		text-align: center;
		position: relative;
		z-index: 100;
	}
	.h4st{
		font-size: 18px;
		font-weight: bold;
		line-height: 140%;
		color: #fff;
		text-align: center;
	}
}
@media only screen and (max-width:768px){
}
@media only screen and (max-width:767px){
	.h3top{
		font-weight: bold;
		font-size: 24px;
		letter-spacing: 0.05em;
		line-height: 140%;
		color: #222;
		margin: 0px;
		padding: 0px;
		text-align: center;
		z-index: 200;
		position: relative;
	}
	.h4shadow{
		font-weight: bold;
		font-size: 50px;
		letter-spacing: 0.05em;
		line-height: 140%;
		color: #f4f4f4;
		margin: -40px 0px 0px;
		padding: 0px;
		text-align: center;
		position: relative;
		z-index: 100;
	}
	.h4st{
		font-size: 22px;
		font-weight: bold;
		line-height: 140%;
		color: #fff;
		text-align: center;
	}
}
/*---------------------------------------------
	top03 
-----------------------------------------------*/
.top03{
	width: 100%;
	margin: 0px auto;
	padding: 0px;
}
.white_box{
	width: 100%;
	margin: 0px auto;
	padding: 60px 50px;
}
.h3_30px{
	font-size: 30px;
	font-weight: bold;
	letter-spacing: 0.05em;
	color: #222;
	margin: 0px 0px 30px;
}
.sub_en{
	font-size: 18px;
	color: #c4c4c4;
	margin-left: 15px;
}
.top03 p{
	font-size: 16px;
	line-height: 180%;
	margin: 0px 0px 10px;
	padding: 0px;
}
.btn_more {
    width: 270px;
	margin: 40px auto 0px 0px;
}
.btn_more a{
    display: block;
    width: 270px;
    height: auto;
    text-align: center;
	font-weight: normal;
	font-size: 18px;
    line-height: 120%;
	letter-spacing: 0.05em;
    color: #fff;
    padding: 15px 0px;
    text-decoration: none;
	background:#096ab4;
	border: solid 1px #096ab4;
}
.btn_more a:hover{
    color: #096ab4;
    text-decoration: none;
	background: #fff;
}

@media only screen and (max-width:1024px){
	.white_box{
		width: 100%;
		margin: 0px auto;
		padding: 10px 10px 30px;
	}
}
@media only screen and (max-width:991px){
	.white_box{
		width: 100%;
		margin: 0px auto;
		padding: 30px 10px;
	}
	.h3_30px{
		font-size: 28px;
		font-weight: bold;
		letter-spacing: 0.05em;
		color: #222;
		margin: 0px 0px 30px;
	}
	.sub_en{
		font-size: 18px;
		color: #c4c4c4;
		margin-left: 15px;
	}
}
@media only screen and (max-width:767px){
	.white_box{
		width: 100%;
		margin: 0px auto;
		padding: 20px 10px;
	}
	.h3_30px{
		font-size: 24px;
		font-weight: bold;
		letter-spacing: 0.00em;
		color: #222;
		margin: 0px 0px 20px;
	}
	.sub_en{
		font-size: 16px;
		color: #c4c4c4;
		margin-left: 15px;
	}
	.btn_more {
		width: 270px;
		margin: 20px auto;
	}
	.btn_more a{
		display: block;
		width: 270px;
		height: auto;
		text-align: center;
		font-weight: normal;
		font-size: 16px;
		line-height: 120%;
		letter-spacing: 0.05em;
		color: #fff;
		padding: 10px 0px;
		text-decoration: none;
		background:#096ab4;
		border: solid 1px #096ab4;
	}
}
/*---------------------------------------------
	top04 
-----------------------------------------------*/
.top04{
	width: 100%;
	margin: 0px auto;
	padding: 0px;
}
.top04 p{
	font-size: 16px;
	line-height: 180%;
	margin: 0px 0px 10px;
	padding: 0px;
}
@media only screen and (max-width:1600px){
}
@media only screen and (max-width:1024px){
}
@media only screen and (max-width:991px){
}
@media only screen and (max-width:767px){
}
@media only screen and (max-width:540px){
}
/*---------------------------------------------
	top05
-----------------------------------------------*/
.top05{
	width: 100%;
	margin: 0px auto;
	padding: 80px 0px;
	background: url("../images/area_map.png") no-repeat 92% center;
	background-color: #dff2f9;
}
.top05 h3{
	font-size: 60px;
	font-weight: bold;
	line-height: 120%;
	text-align: center;
	color: #23baed;
	margin: 0px 0px 20px;
}
.top05 h4{
	font-size: 24px;
	font-weight: bold;
	line-height: 160%;
	text-align: center;
	color: #222;
	margin: 0px 0px 30px;
}
.top05 h5{
	font-size: 22px;
	font-weight: bold;
	line-height: 160%;
	text-align: left;
	color: #e3744d;
	margin: 0px 0px 20px;
}
.top05 h6{
	font-size: 20px;
	font-weight: bold;
	line-height: 160%;
	text-align: left;
	color: #222;
	margin: 0px 0px 10px;
}
.p18{
	font-size: 18px;
	font-weight: bold;
}
@media only screen and (max-width:1200px){
}
@media only screen and (max-width:1024px){
	.top05{
		width: 100%;
		margin: 0px auto;
		padding: 30px 0px;
		background: url("../images/area_map.png") no-repeat center center;
		background-color: #dff2f9;
	}
	.top05 h3{
		font-size: 50px;
		font-weight: bold;
		line-height: 120%;
		text-align: center;
		color: #23baed;
		margin: 0px 0px 20px;
	}
	.top05 h4{
		font-size: 20px;
		font-weight: bold;
		line-height: 160%;
		text-align: center;
		color: #222;
		margin: 0px 0px 30px;
	}
	.top05 h5{
		font-size: 18px;
		font-weight: bold;
		line-height: 160%;
		text-align: left;
		color: #e3744d;
		margin: 0px 0px 20px;
	}
	.top05 h6{
		font-size: 20px;
		font-weight: bold;
		line-height: 160%;
		text-align: left;
		color: #222;
		margin: 0px 0px 10px;
	}
}
@media only screen and (max-width:991px){
	.top05{
		width: 100%;
		margin: 0px auto;
		padding: 30px 0px;
		background: url("../images/area_map.png") no-repeat center center /contain;
		background-color: #dff2f9;
	}
	.top05 h3{
		font-size: 50px;
		font-weight: bold;
		line-height: 120%;
		text-align: center;
		color: #23baed;
		margin: 0px 0px 20px;
	}
	.top05 h4{
		font-size: 20px;
		font-weight: bold;
		line-height: 160%;
		text-align: left;
		color: #222;
		margin: 0px 0px 30px;
	}
}
@media only screen and (max-width:767px){
	.top05 h3{
		font-size: 40px;
		font-weight: bold;
		line-height: 120%;
		text-align: center;
		color: #23baed;
		margin: 0px 0px 20px;
	}
	.top05 h4{
		font-size: 18px;
		font-weight: bold;
		line-height: 160%;
		text-align: left;
		color: #222;
		margin: 0px 0px 30px;
	}
}
@media only screen and (max-width:540px){
}
/*---------------------------------------------
	top06
-----------------------------------------------*/
.top06{
	width: 100%;
	margin: 0px auto;
	padding: 80px 0px;
	background: url("../images/top06_bg.jpg") no-repeat center top;
/*	background-attachment: fixed; */
}
.top06 h3{
	font-weight: bold;
	font-size: 60px;
	letter-spacing: 0.00em;
	line-height: 140%;
	color: #222;
	margin: 0px 0px 40px;
	padding: 0px;
	text-align: center;
}
.top06 h3::after{
	content: "";
	display: block;
	width: 120px;
	height: 5px;
	margin: 10px auto 0px;
	background: #096ab4;
}
.box_con01{
	width: 100%;
	height: 110px;
	margin: 0px auto;
	padding: 20px 0px 10px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background: rgba(255,255,255,1.00);
}
.box_con01 h4{
	font-size: 30px;
	font-weight: bold;
	line-height: 140%;
	color: #222;
}
.box_con01 h4 a{
	color: #222;
	text-decoration: none;
}
.box_con01 h4 a:hover{
	color: #222;
	text-decoration: none;
}
.box_con01 p{
	font-size: 16px;
	line-height: 140%;
	color: #222;
}
a>.box_con02{
	width: 100%;
	height: 110px;
	margin: 0px auto;
	padding: 20px 0px 10px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background: rgba(255,255,255,1.00);
}
a:hover>.box_con02{
	background: rgba(255,255,255,0.80);
}
.box_con02 h4{
	font-size: 24px;
	font-weight: bold;
	line-height: 140%;
	color: #222;
}
a:hover>.box_con02 h4{
	color: #23baed;
}
.box_con02 p{
	font-size: 16px;
	line-height: 140%;
	color: #a3a3a3;
}
@media only screen and (max-width:1024px){
	.top06{
		width: 100%;
		margin: 0px auto;
		padding: 40px 0px;
		background: url("../images/top06_bg.jpg") no-repeat center top;
/*		background-attachment: fixed; */
	}
	.top06 h3{
		font-weight: bold;
		font-size: 50px;
		letter-spacing: 0.00em;
		line-height: 140%;
		color: #222;
		margin: 0px 0px 30px;
		padding: 0px;
		text-align: center;
	}
}
@media only screen and (max-width:991px){
	.top06{
		width: 100%;
		margin: 0px auto;
		padding: 40px 0px;
		background: url("../images/top06_bg.jpg") no-repeat center top;
/*		background-attachment: fixed; */
	}
	.top06 h3{
		font-weight: bold;
		font-size: 40px;
		letter-spacing: 0.00em;
		line-height: 140%;
		color: #222;
		margin: 0px 0px 30px;
		padding: 0px;
		text-align: center;
	}
}
@media only screen and (max-width:767px){
	.top06 h3{
		font-weight: bold;
		font-size: 36px;
		letter-spacing: 0.00em;
		line-height: 140%;
		color: #222;
		margin: 0px 0px 20px;
		padding: 0px;
		text-align: center;
	}
}
/*---------------------------------------------
    footer
-----------------------------------------------*/
footer{
    width: 100%;
    margin: 0px auto;
    padding: 40px 0px;
	background: #fff;
}
footer p{
	font-size: 16px;
    line-height: 180%;
	color: #222;
}
footer p a,footer p a:hover{
	color: #222;
	text-decoration: none;
}
.flogo{
	margin: 0px auto;
	padding: 0px;
}
.fmap{
	margin-left: 7px;
	font-size: 18px;
}
.fmap a{
	color: #222;
	text-decoration: none;
}
.fmap a:hover{
	color: #23baed;
	text-decoration: underline;
}
.fnavi{
    width: 100%;
	margin: 0px auto 0px;
	padding: 50px 0px 0px;
	text-align: center;
	list-style: none;
}
.fnavi li{
	display: inline-block;
	font-size: 16px;
	line-height: 180%;
	letter-spacing: 0.00em;
	margin: 0px;
	padding: 0px 7px;
}
.fnavi li a{
	color: #222;
	text-decoration: none;
}
.fnavi li a:hover{
	color: #23baed;
	text-decoration: none;
}
/*
.fnavi li::before{
	content: "\f0da";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin-right:7px;
	color: #222;
}
*/
.copy{
	width: 100%;
    margin: 0px auto 0px;
    padding: 10px 0px;
	font-size: 14px;
	color: #fff;
	line-height: 120%;
	letter-spacing: 0.05em;
	text-align: center;
	background: #23baed;
}
.copy::before{
	content: "\f1f9";
	font-family: "Font Awesome 5 Free";
	font-weight: 400;
	margin-right:5px;
}
.footer_line{
	width: 100%;
	height: 30px;
	background:#23baed;
}
@media only screen and (max-width:1024px){
	.flogo{
		margin: 0px auto;
		padding: 0px;
		text-align: center;
	}
}
@media only screen and (max-width:991px){
	footer{
		width: 100%;
		margin: 0px auto;
		padding: 20px 0px;
	}
	footer p{
		text-align: center;
	}
	.flogo{
		margin: 0px auto 10px;
		padding: 0px;
		text-align: center;
	}
	.fnavi{
		width: 100%;
		margin: 10px auto 0px;
		padding: 0px;
		text-align: center;
		list-style: none;
	}
	.fnavi li{
		display: inline-block;
		font-weight: normal;
		font-size: 14px;
		line-height: 120%;
		letter-spacing: 0.00em;
		margin: 0px;
		padding: 0px 5px;
	}
}
@media only screen and (max-width:767px){
	footer{
		width: 100%;
		margin: 0px auto;
		padding: 10px 0px;
	}
	.flogo{
		margin: 0px auto 10px;
		padding: 0px;
		text-align: center;
	}
	.fnavi{
		width: 98%;
		margin: 20px auto 10px;
		padding: 0px;
		text-align: left;
		list-style: none;
	}
	.fnavi li{
		display: block;
		width: 100%;
		font-size: 12px;
		line-height: 140%;
		margin: 0px auto;
		padding: 0px;
	}
	.fnavi li::before{
        display: none;
        content: "\f105";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        margin-right:7px;
	}
	.fnavi li a{
		display: block;
		color: #222;
		text-decoration: none;
		margin: 2px 0px 0px;
		padding: 10px 0px 10px 20px;
        background: rgba(255,255,255,0.00);
		border: solid 1px #23baeb;
		border-radius: 4px;
	    -webkit-border-radius: 4px;  
	    -moz-border-radius: 4px;
    }
	.fnavi li a:hover{
		color: #222;
		text-decoration: none;
	}	
	.fnavi li a:after {
		float: right;
        font-family: "Font Awesome 5 Free";
		content: "\f0da";
        font-weight: 900;
		color: #222;
		margin-right: 20px;
	}
	.btn_con {
		width: 280px;
		margin: 20px auto 0px;
	}
}

/*---------------------------------
	subimages
---------------------------------*/
.subimages{
	width: 100%;
	margin: 0px auto;
	padding-top: 100px;
}
.subimages01{
	width: 100%;
	margin: 0px auto;
	padding: 80px 0px;
	background: url("../images/subimages01.jpg") no-repeat center center / cover;
}
.subimages02{
	width: 100%;
	margin: 0px auto;
	padding: 80px 0px;
	background: url("../images/subimages02.jpg") no-repeat center center / cover;
}
.subimages03{
	width: 100%;
	margin: 0px auto;
	padding: 80px 0px;
	background: url("../images/subimages03.jpg") no-repeat center center / cover;
}
.subimages04{
	width: 100%;
	margin: 0px auto;
	padding: 80px 0px;
	background: url("../images/subimages04.jpg") no-repeat center center / cover;
}
.subimages_in{
    width: 100%;
	max-width: 1140px;
	margin: 0px auto;
	padding: 0px;
}
.h2subtitle{
	font-family: 'Noto Serif JP', serif;
	font-weight: 600;
    font-size: 50px;
	line-height: 140%;
	text-align: center;
	letter-spacing: 0.05em;
	margin: 0px;
	padding: 0px;
	color: #fff;
    position: relative;
/*	text-shadow: 0 0 5px #222; */
/*	background: linear-gradient(90deg, rgba(255,255,255,0) 10%, rgba(35,186,235,0.75) 50%, rgba(255,255,255,0) 90%); */
}
.eng{
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif", "メイリオ", "ＭＳ Ｐゴシック";
	display: block;
	font-size: 65%;
	font-weight: normal;
	line-height: 120%;
	color: #fff;
}
@media only screen and (max-width:1024px){
    .h2subtitle{
        font-size: 40px;
    }
}
@media only screen and (max-width:991px){
	.subimages{
		width: 100%;
		margin: 0px auto;
		padding-top: 90px;
	}
    .subimages01{
        width: 100%;
        margin: 0px auto;
		padding: 60px 0px;
        background: url("../images/subimages01.jpg") no-repeat center center / cover;
    }
    .subimages02{
        width: 100%;
        margin: 0px auto;
		padding: 60px 0px;
        background: url("../images/subimages02.jpg") no-repeat center center / cover;
    }
    .subimages03{
        width: 100%;
        margin: 0px auto;
		padding: 60px 0px;
        background: url("../images/subimages03.jpg") no-repeat center center / cover;
    }
    .subimages04{
        width: 100%;
        margin: 0px auto;
		padding: 60px 0px;
        background: url("../images/subimages04.jpg") no-repeat center center / cover;
    }
    .subimages05{
        width: 100%;
        margin: 0px auto;
		padding: 60px 0px;
        background: url("../images/subimages05.jpg") no-repeat center center / cover;
    }
	.subimages_in{
		width: 100%;
		max-width: 1140px;
		margin: 0px auto;
		padding: 0px;
	}
    .h2subtitle{
        font-size: 36px;
    }
}
@media only screen and (max-width:767px){
    .subimages01{
        width: 100%;
        margin: 0px auto;
		padding: 40px 0px;
        background: url("../images/subimages01.jpg") no-repeat center center / cover;
    }
    .subimages02{
        width: 100%;
        margin: 0px auto;
		padding: 40px 0px;
        background: url("../images/subimages02.jpg") no-repeat center center / cover;
    }
    .subimages03{
        width: 100%;
        margin: 0px auto;
		padding: 40px 0px;
        background: url("../images/subimages03.jpg") no-repeat center center / cover;
    }
    .subimages04{
        width: 100%;
        margin: 0px auto;
		padding: 40px 0px;
        background: url("../images/subimages04.jpg") no-repeat center center / cover;
    }
    .subimages05{
        width: 100%;
        margin: 0px auto;
		padding: 40px 0px;
        background: url("../images/subimages05.jpg") no-repeat center center / cover;
    }
    .subimages_in{
        width: 100%;
        max-width: 1140px;
        margin: 0px auto;
        padding: 0px;
    }
    .h2subtitle{
        font-size: 30px;
    }
}

/*---------------------------------
	paging
--------------------------------*/
div.paging{
    margin: 50px auto 20px; text-align: center;
}
div.paging span.current,
div.paging span.paging-text{
    margin:0px 2px;
    color:#fff;
    border:1px solid #cfb748;
    zoom:1;
    display:inline-block;
    overflow:hidden;
    text-decoration:none;
}
div.paging span.paging-text a{
    padding:3px 8px;
    color: #fff;
    display:block;
}
div.paging span.current{
    background: #cfb748;
    border:1px solid #cfb748;
    color:#fff;
    zoom:1;
    padding:3px 8px;
    text-decoration:none;
    display:inline-block; 
    cursor:pointer;
}
div.paging span.paging-text a:hover{
    background: #cfb748;
    color: #fff;
    text-decoration:none;
    cursor:pointer;
}
/*-------------------------------
	Accordion menu
---------------------------------- */
.accordion dt  {background-image:none; cursor:default;}
.accordion dt.active  { background-image:none;}
.accordion dd{ display: block}
.accordion2 dt  {background-image:none; cursor:default;}
.accordion2 dt.active  { background-image:none;}
.accordion2 dd{ display: block}
.hamburgerMenu { display: none;}

.sc{
    display: none;
}
.accordion dd ul{
    list-style: none;
    margin: 0px auto;
    padding: 0px;
    text-align: center;
}
@media only screen and (max-width:991px){
    .sc{
        display: inline-block;
    }
    .accordion dt  {
        display: inline-block;
        padding: 5px 20px;
        width: 100%;
        font-size: 14px;
        font-weight: bold;
        color: #fff;
        background:#f97a1d;
        cursor:pointer;
		border-radius: 0px;
    }
    .accordion dd{ display:none}
    .hamburgerMenu,
    .hamburgerMenu span{
        display: inline-block;
        transition: all .4s;
        box-sizing: border-box;
    }
    .hamburgerMenu {
      position: relative;
      width: 24px;
      height: 24px;
      float: right;
      display: block;
      background: none;
      border: none;
    }
    .hamburgerMenu:focus{ outline: none;}
    .hamburgerMenu span {
      position: absolute;
      left: 0;
      width: 100%;
      height: 2px;
      background-color: #fff;
      border-radius: 4px;
    }
    .hamburgerMenu span:nth-of-type(1) {
      top: 2px;
    }
    .hamburgerMenu span:nth-of-type(2) {
      top: 11px;
    }
    .hamburgerMenu span:nth-of-type(3) {
      bottom: 2px;
    }
    .active .hamburgerMenu span:nth-of-type(1) {
      -webkit-transform: translateY(9px) rotate(-315deg);
      transform: translateY(9px) rotate(-315deg);
    }
    .active .hamburgerMenu span:nth-of-type(2) {
      opacity: 0;
    }
    .active .hamburgerMenu span:nth-of-type(3) {
      -webkit-transform: translateY(-9px) rotate(315deg);
      transform: translateY(-9px) rotate(315deg);
    }
}
/*-----------------------------------
	business
-------------------------------------*/
.h3txt30{
	font-size: 30px;
	font-weight: bold;
	text-align: center;
	line-height: 160%;
	color: #222;
	margin: 0px 0px 20px;
}
.icon_service{
	width: 100%;
	margin: 0px auto;
	padding: 10px 0px 10px;
	background: #096ab4;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
}
.icon_service p{
	font-size: 18px;
	font-weight: bold;
	color: #fff;
}
.service_box{
	width: 100%;
	background: #f4f4f4;
}
.service_box p{
	font-size: 16px;
	line-height: 180%;
	margin: 0px 0px 10px;
	padding: 20px;
}
.h3midashi{
	font-size: 20px;
	font-weight: bold;
	line-height: 140%;
	color:#fff;
	margin: 0px 0px 20px;
	padding: 5px 10px;
	background: #096ab4;
}
.h4txt20{
	font-size: 20px;
	font-weight: bold;
	line-height: 160%;
	text-align: center;
	margin: 40px 0px;
}
.red_txt{
	display: block;
	color: #E34649;
	font-size: 75%;
}
.h3midashi2{
	font-size: 20px;
	font-weight: bold;
	line-height: 140%;
	color:#fff;
	margin: 0px;
	padding: 5px 10px;
	background: #096ab4;
}
.grey_box{
	width: 100%;
	margin: 0px auto;
	padding: 10px 15px;
	background: #f4f4f4;
}
.h3midashi3{
	font-size: 30px;
	font-weight: bold;
	line-height: 140%;
	text-align: center;
	color:#222;
	margin: 0px 0px 30px;
	padding: 5px 10px;
	border-bottom: double 4px #23baed;
}
.s_flow{
	width: 100%;
	margin: 40px auto;
	padding: 0px;
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: space-around;
}
.s_flow li{
	width: 18%;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	color: #fff;
	padding: 20px 10px;
	background: #096ab4;
	border-radius: 6px;
	position: relative;
}
.s_flow li:nth-child(2){
	background: #0982b4;
}
.s_flow li:nth-child(3){
	background: #0996b4;
}
.s_flow li:nth-child(4){
	background: #09a6b4;
}
.s_flow li::after{
	position: absolute;
	right: -16px;
	content: "\f0da";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
	font-size: 140%;
	color: #23baed;
}
.s_flow li:last-child::after{
	display: none;
	position: absolute;
	right: -16px;
	content: "\f0da";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
	font-size: 140%;
	color: #23baed;
}
.s_maker{
	width: 100%;
	margin: 0px;
	padding: 0px;
	list-style: none;
}
.s_maker li{
	display: inline-block;
	font-size: 16px;
	line-height: 160%;
	margin: 0px 10px;
	padding: 0px;
}
.s_maker li::before{
	content: "●";
	margin-right: 5px;
}


@media only screen and (max-width:1024px){
}
@media only screen and (max-width:991px){
	.s_flow li::after{
		position: absolute;
		right: -12px;
		content: "\f0da";
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		font-size: 140%;
		color: #23baed;
	}
}
@media only screen and (max-width:767px){
	.h3txt30{
		font-size: 22px;
		font-weight: bold;
		text-align: left;
		line-height: 160%;
		color: #222;
		margin: 0px 0px 20px;
	}
	.h4txt20{
		font-size: 18px;
		font-weight: bold;
		line-height: 160%;
		text-align: left;
		margin: 20px 0px;
	}
	.h3midashi2{
		font-size: 18px;
		font-weight: bold;
		line-height: 140%;
		color:#fff;
		margin: 0px;
		padding: 5px 10px;
		background: #096ab4;
	}
	.h3midashi3{
		font-size: 22px;
		font-weight: bold;
		line-height: 140%;
		text-align: center;
		color:#222;
		margin: 0px 0px 30px;
		padding: 5px 10px;
		border-bottom: double 4px #23baed;
	}
	.s_flow{
		width: 100%;
		margin: 40px auto;
		padding: 0px;
		list-style: none;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: space-around;
	}
	.s_flow li{
		width: 90%;
		font-size: 18px;
		font-weight: bold;
		text-align: center;
		color: #fff;
		margin-bottom: 20px;
		padding: 10px;
		background: #096ab4;
		position: relative;
	}
	.s_flow li::after{
		position: absolute;
		bottom: -22px;
		left: 0;
		right: 0;
		content: "\f0d7";
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		font-size: 140%;
		color: #23baed;
	}
}
/*-----------------------------------
	works
-------------------------------------*/
.h3case{
	font-size: 24px;
	font-weight: bold;
	line-height: 140%;
	margin: 0px 0px 30px;
	padding: 0px 0px 0px 10px;
	border-left: solid 7px #096ab4;
}
.case{
	font-size: 75%;
	color: #fff;
	margin-right: 20px;
	padding: 5px 20px;
	background: #23baed;
}
.h4case{
	font-size: 18px;
	font-weight: bold;
	line-height: 160%;
	margin: 0px 0px 10px;
}
.p_txt p{
	font-size: 16px;
	text-align: center;
	line-height: 160%;
	margin: 10px 0px;
}
.w_pht a:hover img{
	opacity: 0.7;
}
@media only screen and (max-width:1024px){
}
@media only screen and (max-width:991px){
}
@media only screen and (max-width:767px){
	.h3case{
		font-size: 16px;
		font-weight: bold;
		line-height: 140%;
		margin: 0px 0px 20px;
		padding: 0px 0px 0px 10px;
		border-left: solid 7px #096ab4;
	}
	.case{
		display: block;
		font-size: 75%;
		color: #fff;
		margin-right: 0px;
		margin-bottom: 5px;
		padding: 2px 10px;
		background: #23baed;
	}
}

/*-----------------------------------
	company
-------------------------------------*/
.h3com{
	font-weight: bold;
	font-size: 30px;
	letter-spacing: 0.05em;
	line-height: 140%;
	color: #222;
	margin: 0px 0px 40px;
	padding: 0px;
	text-align: center;
}
.h3com::after{
	content: "";
	display: block;
	width: 120px;
	height: 5px;
	margin: 10px auto 0px;
	background: #096ab4;
}
.sign{
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	font-size: 120%;
}
.tbl-com{
	width: 100%;
	margin: 30px auto;
    padding: 0px;
}
.tbl-com tr{
	border-bottom: solid 1px #ddd;
}
.tbl-com th{
	font-size: 16px;
	text-align: left;
	padding: 10px;
	vertical-align: middle;
	white-space: nowrap;
	width: 20%;
}
.tbl-com td{
	font-size: 16px;
	text-align: left;
	line-height: 180%;
	padding: 10px;
}
.td_ol{
	margin: 0px 0px 0px 20px;
	padding: 0px;
	list-style: decimal;
	font-size: 15px;
}
.td_ul{
	margin: 0px 0px 0px 20px;
	padding: 0px;
	list-style:disc; 
	font-size: 15px;
}
.td_ul li{
	color: #222;
}
.td_ul li span{
	color: #222;
}
.td_lf{
	float: left;
	margin: 0px;
	width: 48%;
}
.tbl-com a{
	color: #222;
	text-decoration: none;
}
.tbl-com a:hover{
	color: #222;
	text-decoration: none;
}
.t_lf{
    float: left;
    width: 40%;
}

@media only screen and (max-width:991px){
}
@media only screen and (max-width:767px){
	.tbl-com tr, .tbl-com th, .tbl-com td {
		display: block;
	}
    .tbl-com th{
        font-size: 15px;
        text-align: left;
        padding: 10px 10px 0px;
        vertical-align: middle;
        white-space: nowrap;
        width: 100%;
    }
    .tbl-com td{
        font-size: 15px;
        text-align: left;
        line-height: 160%;
        padding: 10px;
    }
	.h3com{
		font-weight: bold;
		font-size: 22px;
		letter-spacing: 0.05em;
		line-height: 140%;
		color: #222;
		margin: 0px 0px 20px;
		padding: 0px;
		text-align: center;
	}
}
.gmap_bg{
	width: 100%;
	margin: 0px auto;
	padding: 50px 0px;
	background-color: rgba(229,227,219,1.00);
}
.gmap_bg p a,.gmap_bg p a:hover{
	color: #333;
	text-decoration: none;
}
.gmap {
	position: relative;
	padding-bottom: 55%; /* これが縦横比 */
	height: 0;
	overflow: hidden;
	margin-top: 10px;
	border-radius: 0px;
}
.gmap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
.btn_gm {
	width: 280px;
	height: auto;
	margin-top: 20px;
	margin-left: auto;
	margin-right: auto;
}
.btn_gm a{
	width: 280px;
	height: auto;
	font-size: 15px;
	color: #fff;
	padding: 5px 10px;
	display: block;
	text-decoration: none;
	text-align: center;
    background:#0f2d59;
	border: solid 1px #0f2d59;
}
.btn_gm a:hover{
	text-decoration: none;
	color: #0f2d59;
	background: #fff;
}
.btn_gm a::after{
	float: right;
	content: "\f0da";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right:10px;
	margin-left: -10px;
}
/*-----------------------------------
	recruit
-------------------------------------*/
.tbl-rec{
	width: 100%;
	margin: 10px auto 30px;
    padding: 0px;
	border-top: solid 1px #ddd;
	border-left: solid 1px #ddd;
}
.tbl-rec th{
	font-size: 16px;
	text-align: left;
	padding: 10px;
	vertical-align: middle;
	white-space: nowrap;
	width: 20%;
	background: #f9f9f9;
	border-bottom: solid 1px #ddd;
	border-right: solid 1px #ddd;
}
.tbl-rec td{
	font-size: 16px;
	text-align: left;
	line-height: 180%;
	padding: 10px;
	background: rgba(255,255,255,0.80);
	border-bottom: solid 1px #ddd;
	border-right: solid 1px #ddd;
}
.tbl-rec a{
	color: #222;
	text-decoration: none;
}
.tbl-rec a:hover{
	color: #222;
	text-decoration: none;
}
@media only screen and (max-width:1024px){
}
@media only screen and (max-width:991px){
}
@media only screen and (max-width:767px){
	.tbl-rec tr, .tbl-rec th, .tbl-rec td {
		display: block;
	}
    .tbl-rec th{
        font-size: 15px;
        text-align: left;
        padding: 10px 10px 0px;
        vertical-align: middle;
        white-space: nowrap;
        width: 100%;
    }
    .tbl-rec td{
        font-size: 15px;
        text-align: left;
        line-height: 160%;
        padding: 10px;
    }
}

/*-----------------------------------
	contact
-------------------------------------*/
.h3con{
	font-weight: bold;
	font-size: 26px;
	letter-spacing: 0.00em;
	line-height: 140%;
	color: #222;
	margin: 0px 0px 40px;
	padding: 0px;
	text-align: center;
}
.h3con::after{
	content: "";
	display: block;
	width: 120px;
	height: 5px;
	margin: 10px auto 0px;
	background: #096ab4;
}

.contact_top{
	width: 100%;
	margin: 0px auto;
	padding: 40px 0px;
	background: #0e1e37;
}
.row_c{
	align-items: center;
}
.c_tel{
	width: 100%;
	margin: 30px auto 10px;
	padding: 10px 0px;
	background: #f5f5f5;
	border-radius: 10px;
	border: solid 2px #23baed;
}
.c_tel p{
	font-size: 16px;
	text-align: center;
	color: #222;
	margin: 0px;
	padding: 0px;
}
.h_tel{
	font-size: 30px;
	font-weight: bold;
	line-height: 160%;
	color: #222;
	margin: 0px 0px 0px;
	text-align: center;
}
/*
.h_tel::before{
	content: url("../images/icon_free_dial.png");
	margin-right: 10px;
}
*/
.h_tel::before{
	font-family: "Font Awesome 5 Free";
	content: '\f095';
	margin-right: 10px;
	font-weight: 900;
	color: #23baed;
}
.h_tel a{
	text-decoration: none;
	color: #222;
}
.h_tel a:hover{
	text-decoration: none;
	color: #222;
}
.h_fax{
	font-size: 30px;
	font-weight: bold;
	line-height: 160%;
	color: #222;
	margin: 0px 0px 0px;
	text-align: center;
}

.h_fax::before{
	content: url("../images/icon_fax.png");
	margin-right: 10px;
}
/*
.h_fax::before{
	font-family: "Font Awesome 5 Free";
	content: '\f1ac';
	margin-right: 10px;
	font-weight: 900;
	color: #ebbc00;
}
*/

.tbl-con {
	width: 100%;
	margin: 20px auto 20px;
	border-top: solid 2px #ffffff;
	border-left: solid 2px #ffffff;
}
.tbl-con th {
	font-size: 15px;
	font-weight: bold;
	line-height: 150%;
	color: #333;
	text-align: left;
	vertical-align: middle;
	width: 23%;
	margin: 0px;
	padding: 10px 5px 10px 20px;
	background-color:#ddd; 
	white-space: nowrap;
	border-bottom: solid 2px #ffffff;
	border-right: solid 2px #ffffff;
}
.tbl-con td {
	font-size: 15px;
	font-weight: normal;
	line-height: 150%;
	color: #333;
	text-align: left;
	margin: 0px;
	padding: 10px 20px 10px 20px;
	background-color: #f9f9f9;
	border-bottom: solid 2px #ffffff;
	border-right: solid 2px #ffffff;
}
@media only screen and (max-width:1024px){
	
}
@media only screen and (max-width:991px){
}

@media only screen and (max-width: 991px) {
	.tbl-con tr, .tbl-con th, .tbl-con td {
		display: block;
	}
	.tbl-con th {
		font-size: 15px;
		font-weight: bold;
		line-height: 150%;
		text-align: left;
		width: 100%;
		margin: 0px;
		padding: 10px 5px 10px 20px;
		white-space: nowrap;
		border-bottom: solid 2px #ffffff;
		border-right: solid 2px #ffffff;
	}
}
@media only screen and (max-width:767px){
	.h3con{
		font-weight: bold;
		font-size: 20px;
		letter-spacing: 0.00em;
		line-height: 140%;
		color: #222;
		margin: 0px 0px 20px;
		padding: 0px;
		text-align: center;
	}
	.c_tel{
		width: 100%;
		margin: 10px auto 0px;
		padding: 10px 0px;
		background: #f5f5f5;
		border-radius: 10px;
		border: solid 2px #23baed;
	}
	.h_tel{
		font-size: 26px;
		font-weight: bold;
		line-height: 160%;
		margin: 0px 0px 0px;
		text-align: center;
	}
	.h_fax{
		font-size: 26px;
		font-weight: bold;
		line-height: 160%;
		margin: 0px 0px 0px;
		text-align: center;
	}
}
.kome {
	background-image: url(../images/kome.png) ;
	background-repeat: no-repeat;
	background-position: center right;
}
.kome2 {
	background-image: url(../images/kome2.png) ;
	background-repeat: no-repeat;
	background-position: center right;
}
/*-------------------------------------
	 privacy
----------------------------------------*/
.pp_midashi{
    font-size: 18px;
    font-weight: bold;
    line-height: 140%;
    text-align: center;
    margin: 10px 0px;
    padding: 0px 0px 7px;
    color: #222;
}
.h4pp {
	font-size: 16px;
	line-height: 140%;
	color: #666;
	font-weight: bold;
	text-align: left;
	padding: 0px 5px 0px 10px;
	margin: 10px 5px;
	border-left: solid 7px #23baed;
}
.p_box {
	margin: 10px auto 20px;
	overflow: auto;
	height: 300px;
	width: 100%;
	border: 1px solid #ccc;
	background:#f4f4f4; 
}
.std  {
	width: 96%;
	margin: 10px auto 50px;
}
.std p {
	line-height: 180%;
	font-size: 14px;
	margin: 0px;
	padding: 0px;
	color: #252525;
	text-align: left;
}
.std p a{
	color: #252525;
	text-decoration: none;
}
.std p a:hover{
	color: #252525;
	text-decoration: none;
}
.std_ol {
	padding: 0px;
	margin: 20px 0px 10px 25px;
}
.std_ul {
	padding: 0px;
	margin: 20px 0px 10px 25px;
}
.std_ol li {
	font-size: 14px;
	line-height: 180%;
	color: #252525;
	text-align: left;
	margin: 0px;
	padding: 0px;
	list-style: decimal;
}
.std_ul li {
	font-size: 14px;
	line-height: 180%;
	color: #252525;
	text-align: left;
	margin: 0px;
	padding: 0px;
	list-style: disc;
}
@media only screen and (max-width:767px){
	.pp_midashi{
		font-size: 18px;
		font-weight: bold;
		line-height: 140%;
		text-align: left;
		margin: 10px 0px;
		padding: 0px 0px 7px;
		color: #222;
	}
}
/*------------------------------------
	form
--------------------------------------*/
input[type="submit"]{
    font-size: 15px;
    font-weight: normal;
    padding: 12px 30px;
    color: #fff;
    background:#23baed;
	border: solid 1px #23baed;
	border-radius: 6px;
    -webkit-border-radius: 6px;  
    -moz-border-radius: 6px;
}
input[type="button"] {
    font-size: 15px;
    font-weight: normal;
    padding: 12px 30px;
    color: #fff;
    background:#f97a1d;
	border: solid 1px #f97a1d;
	border-radius: 6px;
    -webkit-border-radius: 6px;  
    -moz-border-radius: 6px;
}
input:hover[type="submit"]{
    color: #23baed;
    background:#fff;
	border: solid 1px #23baed;
	border-radius: 6px;
    -webkit-border-radius: 6px;  
    -moz-border-radius: 6px;
}
input:hover[type="button"] {
    color: #f97a1d;
    background:#fff;
	border: solid 1px #f97a1d;
	border-radius: 6px;
    -webkit-border-radius: 6px;  
    -moz-border-radius: 6px;
}
input, select {
	vertical-align:middle;
	font-family:"ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", "ＭＳ Ｐゴシック", Meiryo, sans-serif;
	margin: 5px 0px;
}
.form-s{width:70px;}
.form-m{width:150px;}
.form-l{width:300px;}
.form100{width:99%;}
.form-h{height:80px;}
input[type="checkbox"],input[type="radio"]{
	/*transform: scale(1.2);*/
}
input[type="text"],select{border:1px solid #ccc;}
input[type="date"],select{border:1px solid #ccc;}
input[type="time"],select{border:1px solid #ccc;}
input:focus[type="text"]{border:1px solid #06c;}
input, select {
	padding: 10px 5px;
}
input[type="text"]{
	padding: 10px 5px;
} 
input::-webkit-input-placeholder{
	line-height: 140%;
	padding-left: 5px;
}
textarea {
	width: 99%;
	padding: 10px;
	border:1px solid #ccc;
}
label{
	color: #333;
	font-weight: normal;
}
.txt_label{
	color: #333;
	text-align: center;
	margin: 20px 0px 0px;
	font-size: 15px;
}
.needinput{background:#fee;border:1px solid #ccc}
.form70 {
	width: 70%;
}
.form80 {
	width: 80%;
}
.form60 {
	width: 60%;
}
.form40 {
	width: 40%;
}
.form20 {
	width: 20%;
}
.form10 {
	width: 10%;
}

.form_btn{
	text-align: center;
	margin-top: 30px;
}
.form_btn p{
	font-size: 15px;
	text-align: center;
	line-height: 140%;
}
.print{
	display: none;
	width: 100%;
	margin: 0px auto;
	overflow: hidden;
}
@media only screen and (max-width:767px){
}
/* ----------------------------------
 	print
------------------------------------ */
@media print {
	.scroll a{
		display: none!important;
	}
	#navibar{
		display: none!important;
	}
	#pagetop{
		display: none!important;
	}
	header{
		position: absolute;
		width: 1140px;
	}
	.navi li {
		display: inline-block;
		font-weight: 500;
		text-align: center;
		font-size: 12px;
		line-height: 160%;
		letter-spacing: 0.00em;
		margin: 0px 10px;
		padding: 0px;
	}
	.swiper-container{
		width: 1140px;
		position: relative;
		margin: 0px auto 0px;
		z-index: 100;
	}
	.swiper-slide {
		width: 100%;
		position: relative;
		z-index: 300;
		overflow:hidden;
		object-fit:cover;
		height: 100%;
		max-height: 700px;
	}
	.slide-img img{
		width: 100%;
		overflow: hidden;
		object-fit:cover;
		height: auto;
		display: block;
	}
}
@page {
    size: A4 portrait;
    margin: 5mm;
    padding: 0mm;
}
