@charset "utf-8";

html, body {
	overflow-x: hidden!important; /* Prevent scroll on narrow devices */
}
body {
	font-size: 16px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #333;
	line-height: 1.5;
	text-align: left;
	padding-top: 0;
	-webkit-text-size-adjust: none;
}
a {
	color: #1064e1;
	text-decoration: none;
}
a:hover{
	color:#0b429a;
}
i {
	color: #1064e1;
	text-decoration: none;
}
.tx_link:hover {
	text-decoration: underline;
}
h1, h2, h3, h4 {
	font-weight:bold;
	line-height: 1.5;
}

.innr {
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
}
.section_innr {
	box-sizing: border-box;
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
}
.unlerlink {
	margin-top: -38px;
    padding-top: 38px;
}
.txt-link{
	text-align: right;
	display: block;
}
.tsuku{
	visibility: hidden;
	font-family: fot-tsukubrdgothic-std,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.wf-active .tsuku{
	visibility: visible;
}
.shingo{
	visibility: hidden;
	font-family: a-otf-ud-shin-go-pr6n, "A-OTF UD新ゴ Pro", A-OTF UD Shin Go Pro, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.wf-active .shingo{
	visibility: visible;
}
.blk{
	color:#333;
}
.red{
	color:#e11035;
}
@media screen and (min-width:951px) {
.only-sptb {
	display: none !important;
}
}
@media screen and (min-width:769px) {
.only-sp {
	display: none !important;
}
}
@media screen and (max-width:950px) {
.only-pc {
	display: none !important;
}
}
@media screen and (max-width:768px) {
.only-tbpc {
	display: none !important;
}
.tx_link {
	text-decoration: underline;
}
.unlerlink {
	margin-top: -20px;
	padding-top: 20px;
}
}
/*header
========================================*/

#header {
	width: 100%;
	background: #fff;
	border-bottom: 1px solid #1064e1;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 99;
	padding-top:10px;
}
#header:before{
	content: "";
	background: url(/en/commons/img/bg_navy.gif);
	height:10px;
	width:100%;
	position: fixed;
	top:0;
	left:0;
}
#header .innr {
	position: relative;
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
	height:90px;
}
.logo {
	float: left;
    position: relative;
    width: 50%;
    font-size: 36px;
    font-weight: bold;
    line-height: 1.3;
    margin: 10px 0 0;
    letter-spacing: -.1em;
}
.logo span.kugiri{
	padding:0 10px;
}
.logo span.shingo{
	font-size: 30px;
    display: block;
    line-height: 1;
    letter-spacing: normal;
    margin-left: 5px;
}
.logo a:hover{
	opacity: 1;
}
.logo a:hover .blk{
	color:#0b429a;
}
.logo a:hover .shingo{
	color:#0b429a;
}
.mailto a{
    display: block;
    float: right;
    background: #1064e1;
    padding: 35px 25px;
    height: 90px;
    box-sizing: border-box;
    position: relative;
    color: #fff;
    line-height: 1;
    font-size: 20px;
	font-weight: bold;
}
.mailto a i{
	color:#fff;
}
.mailto a:hover{
	background: #0b429a;
}
.tel a{
	display: block;
    float: right;
	color:#333;
	padding: 0 25px;
	height: 90px;
	line-height: 90px;
	font-size: 20px;
	font-weight: bold;
}
.tel a i{
	color:#1064e1;
	font-size: 30px;
}
/*.gnav {
	background: #f3f3f3;
}
.gnav ul {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}
.gnav > ul > li > a {
    color: #333;
    font-size: 16px;
    float: left;
    width: 20%;
    text-align: center;
    height: 48px;
    line-height: 48px;
}
.gnav > ul > li > a:hover {
	color:#f6751f;
}
.gnav ul.sub-menu {
	width: 100%;
	display: none;
	position: absolute;
	padding: 0;
	z-index: 99
}
.gnav ul.sub-menu li {
	float: none;
}
.gnav ul.sub-menu li a {
	display: block;
	margin-top: 1px;
	background: rgba(36,87,117,0.5);
	padding: 20px 0;
	color: #fff;
	text-align: center
}
.gnav ul.sub-menu li a:hover {
	opacity: 0.8;
}*/
#topmain {
	position: relative;
    content: "";
    width: 100%;
    height: 600px;
    background-image: url(/en/commons/img/main_pc.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
	margin-top:100px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.maintxt{
	background: rgba(10,66,154,0.8);
	background:#0a429acc;
	color:#fff;
	font-weight:bold;
	font-size:40px;
	padding:10px 25px;
}
@media screen and (max-width:1300px) {
.logo {
	font-size: 30px;
}
.mailto a{
    display: block;
    float: right;
    background: #1064e1;
}
.mailto a i{
	color:#fff;
}
.mailto a:hover{
	background: #0b429a;
}
.tel a{
	height: 80px;
	line-height: 80px;
}
}
@media screen and (max-width:1024px) {
#header .innr {
	height:70px;
}
.logo {
	font-size: 24px;
}
.logo span.shingo {
    font-size: 20px;
}
.mailto a{
    display: block;
    float: right;
    background: #1064e1;
    padding:25px;
    height: 70px;
}
.tel a{
	height: 70px;
	line-height: 70px;
}
}

@media screen and (min-width:951px) and (max-width:1200px) {
.logo{
	width:45%;	
}
	
}
@media screen and (min-width:951px) {
.menubtn,.gnav {
	display: none;
}

}
@media screen and (min-width:769px) {
.telbtn, .mailbtn {
	display: none;
}
}
@media screen and (max-width:950px) {
.contact_fix{
	display: none;	
}
#header {
  width: 100%;
  line-height: 60px;
  background: #fff;
  position: fixed;
  padding-top:8px;
}
#header:before{
	height:8px;
}
.page #header{
	display:block;
}
#header .innr{
  height:66px;
}
#header .logo{
    margin-top: 0;
    padding: 10px 0;
    height: auto;
    line-height: 1.5;
    width: 80%;
}
#header .logo span{
	font-size: 16px;
	line-height: 1;
}
#header .logo span.kugiri{
	display: none;	
}
/*menu*/
#menu {
	list-style-type : none;
	background: #fff;
	position : absolute;
	left : 0px;
	top : 0px;
	z-index : 990;
	display : none;
	box-sizing: border-box;
	width:100%;
}

#menu li {
	display: block;
}

#menu li a {
	text-decoration: none;
    float: left;
    width: 50%;
    display: block;
	padding: 15px 3%;
    box-sizing: border-box;
    height: auto;
    text-align: left;
    border-bottom: 1px solid #1064e1;
	border-right: 1px solid #1064e1;
    line-height: 1.5;
	color:#333;
}
#menu li:nth-child(2n) a{
	border-right: 1px solid #fff;
}
#menu li:nth-last-child(-n+2) a{
	width: 100%;
	border-right: 0px;
	border-top: 1px solid #0f64e1;
    margin-top: -1px;
}
#menu li a:before{
	content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
    margin-right: 0.5em;
	color:#1064e1;
}
#menu li.formto a {
	background: #1064e1;
	color:#fff;
}
#menu li.formto :before{
	color:#fff;
}
div#sp-icon {
	z-index : 999;
    height: 66px;
	line-height: 66px;
	position : absolute;
    right: 5%;
    top: 8px;
    padding: 0 8px;
	color:#1064e1;
	font-weight:bold;
}

div#sp-icon span,
div#sp-icon span:before,
div#sp-icon span:after {
	display : inline-block;
	width : 30px;
	height : 3px;
	background : #fff;
	transition-property : transform;
	transition-duration : 0.3s;
	z-index: -1;
}

div#sp-icon span {
	position : absolute;
	left : 50%;
	top : 50%;
	transform : translate( -50%, -50% );
}

div#sp-icon span:before {
	content : "";
	position : absolute;
	transform : translateY( -10px ) rotate( 0deg );
}

div#sp-icon span:after {
	content : "";
	position : absolute;
	transform : translateY( 10px ) rotate( 0deg );
}

div#sp-icon.sp-close{
	color:transparent !important;
}
div#sp-icon.sp-close span {
	background : transparent !important;
}

div#sp-icon.sp-close span:before {
	transform : rotate( 45deg ) !important;
	background : #1064e1;
}

div#sp-icon.sp-close span:after {
	transform : rotate( -45deg ) !important;
	background : #1064e1;
}
}
@media screen and (max-width:768px) {
#header .innr{
  width:100%;
}
#topmain{
    background-image: url(/en/commons/img/main_sp.jpg);
	margin-top:74px;
	height:500px;
}
.maintxt{
  padding:10px 15px;
  box-sizing: border-box;
  font-size:20px;
  text-align: center;
}
.gnav {
	padding-top: 0;
	float:none;
}
.gnav:before {
	display: none;
}
.gnav:after {
	position: absolute;
	top: -5px;
	width: 100%;
	height: 5px;
	background: #c0dbea;
	background: linear-gradient(to bottom, #c0dbea 0%, #b8ceda 100%);
	background: -webkit-linear-gradient(top, #c0dbea 0%, #b8ceda 100%);
	background: -moz-linear-gradient(top, #c0dbea 0%, #b8ceda 100%);
	background: -o-linear-gradient(top, #c0dbea 0%, #b8ceda 100%);
	background: -ms-linear-gradient(top, #c0dbea 0%, #b8ceda 100%);
	background-size: auto;
	content: "";
}
#header .logo{
  margin-left:5%;
  font-size:20px;
}
div#sp-icon{
  right:5%;	
}
}
@media screen and (max-width:374px) {
#header .logo{
  font-size:16px;
}
div#sp-icon {
	font-size: 14px;
}
}
/*contents
========================================*/

.contents {
	padding: 100px 0;
}
.contents.topcontents {
	padding: 80px 0;
	margin-top: 0;
}
.contents{
	background:url(/en/commons/img/bg_skyblue.gif);
}
main{
	float:left;
	width:70%;
}
main section{
	padding: 40px 20px;
	border-top:10px solid #1064e1;
	background: #fff;
	border-radius:0 0 8px 8px;
	margin-bottom:60px;
}
main section:last-child{
	margin-bottom:0px;
}
.w50{
	width:50%;
	margin:0 auto 90px;
}
.w80{
	width:80%;
	margin:0 auto 90px;
}
.block_w80{
	margin:0 80px;
}
.h1_wrap {
    text-align: center;
    background: #c8dee2;
	margin-bottom: 60px;
    background-image: url(/en/commons/img/main_pc.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}
.h1_wrap h1{
    font-size: 30px;
    font-weight: normal;
    color: #fff;
    line-height: 1;
    background: rgba(4, 45, 106, 0.5);
    padding: 30px 0;
}
.h1_wrap h1 span{
	font-size: 13px;
}
main h2 {
	margin-bottom: 40px;
	font-size: 24px;
	font-weight: bold;
}
main h2 span{
	color: #d5161a;
}
.page main h2.hav_border{
	text-align: center;
	padding: 15px;
    border: 1px solid #ccc;
}
main h3{
    font-weight: bold;
	margin-bottom: 30px;
	font-size: 20px;
	color:#1064e1;
}
main h3 span{
	color:#000;
}
main h3.flow_ttl{
	margin-bottom: 40px;
	background: #d8e8ff;
	padding:15px;
}

main h4{
    font-weight: bold;
	color:#1064e1;
	line-height: 2;
	margin-bottom:15px;
}
main p {
	line-height: 2;
	margin-bottom: 40px;
	font-weight: normal;
}
.ph1 img {
	max-width: 100%;
	height: auto;
	display: block;
	margin: 0 auto 90px;
}
.ph1.add_camption img {
	margin: 0 auto 10px;
}
.ph1.add_camption {
	margin: 0 0 30px;
	text-align: center;
}
.ph2 li {
	width: 48%;
	float: left;
	margin-right: 4%;
    margin-bottom: 40px;
	text-align: center;
	line-height: 2;
}
.ph2 li:nth-child(2n) {
	margin-right: 0;
}
.ph2 li img {
	max-width: 100%;
	height: auto;
	display: block;
	margin: 0 auto;
	border-radius:16px;
}
.ph-left_img, .ph-right_img {
	width: 40%;
	margin-bottom:20px;
}
.ph-left_img.mb0, .ph-right_img.mb0 {
	margin-bottom:0px;
}
.ph-left_img{
	margin-right: 3%;
	float: left;
}
.ph-right_img{
	margin-left: 3%;
	float: right;
}
.ph-left_img img,.ph-right_img img {
	width:100%;
	height:auto;
	border-radius:8px;
}
.ph-left p,.ph-right p,.ph-left h3,.ph-right h3{
	width:56%;
}
.ph-left p,.ph-left .dl_wrap2,.ph-left h3,.ph-left h4,.ph-left .morebtn2{
	float:right;
}
.ph-right p,.ph-right .dl_wrap2,.ph-right h3,.ph-right h4,.ph-right .morebtn2{
	float:left;
}
.ph-left .dl_wrap2 ,.ph-right .dl_wrap2,.ph-left h3,.ph-right h3,.ph-left h4,.ph-right h4,.ph-left .morebtn2,.ph-right .morebtn2,.ph-left .calender_wrap ,.ph-right .calender_wrap{
	width:56%;
}
.ph-left .calender_wrap ,.ph-right .calender_wrap{
	margin: 0 0 40px;
    padding-left: 44%;
}
.ph-left .calender_wrap .googlecal,.ph-right .calender_wrap .googlecal {
    padding-bottom: 80%;
}
.ph-right .dl_wrap2{
	margin:0 auto 20px;
}
.point_list{
}
.point_list.top_list{
	margin-bottom:0px;
}
.point_list > li{
	/*counter-increment: number;*/
    border-bottom: 1px solid #ccc;
	margin-bottom:40px;
}
.point_list > li:last-child{
	margin-bottom:0px;	
}
.point_list.top_list > li:last-child{
	margin-bottom:0px;
}
.point_list.single li{
    border-bottom: 0px;
    margin-bottom: 0px;
	padding-bottom:0;
}
.point_list h2,.top_main .point_list h2,.single h2,.page h2{
    font-weight: bold;
    margin-bottom: 40px;
    font-size: 24px;
    color: #1064e1;
    padding: 0 10px 0 15px;
    border-left: 10px solid #1064e1;
	text-align: left;
}

.dl_wrap {
	margin: 0 auto 40px;
    border-top: 1px solid #ccc;
}
.dl_wrap dl {
    padding: 20px 0;
    border-bottom: 1px solid #ccc;
}
.dl_wrap dl dt {
    width: 33%;
    float: left;
	color: #0f64e1;
}
.dl_wrap dl dd {
    padding-left: 35%;
}
.dl_wrap dl dd a{
	color:#333;
}
.dl_wrap dl dd a:hover{
	color:#0f64e1;
}
.ctg{
    background: #0f64e1;
    border-radius: 4px;
    padding: 2px 0;
    font-size: 14px;
    width: 100px;
    display: inline-block;
    text-align: center;
    color: #fff;
    float: right;
}
.dl_wrap2 {
	margin: 0 auto 40px;
    /*border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;*/
}
.dl_wrap2 dl {
	/*border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;*/
	border: 1px solid #ccc;
	box-sizing: border-box;
	margin: -1px 0 0 -1px;
}
.dl_wrap2 dl + .dl_wrap2 dl{
	border:0px;
}
.dl_wrap2 dl dt {
	padding: 10px;
	background: #f7f7f7;
	font-weight:bold;
	border-bottom: 1px solid #eaeaea;
}
.dl_wrap2 dl dd {
	padding: 10px;
}
.morebtn a{
	background: #1064e1;
    border-radius: 4px;
    font-size: 20px;
    padding: 15px 0;
    width: 400px;
    text-align: center;
    display: block;
    margin: 0 auto;
    color: #fff;
    font-weight: bold;
	box-shadow: 0 6px 0px #0a429a;
	margin-bottom:6px;
}
.morebtn a:hover{
	box-shadow:none;
    transform: translate3d(0, 6px, 0);
}
.morebtn2{
	margin-bottom:40px;
}
.morebtn2 a{
	background: #1064e1;
    border-radius: 4px;
    font-size: 16px;
    padding: 10px 30px;
    display: inline-block;
    color: #fff;
    font-weight: bold;
	box-shadow: 0 4px 0px #0a429a;
	margin-bottom:4px;
}
.morebtn2 i{
	color:#fff;
}
.morebtn2 a:hover{
	box-shadow:none;
    transform: translate3d(0, 4px, 0);
}
.dlwrap {
	margin-bottom: 60px;
	border-top: 1px solid #ccc;
}
.dlwrap dl {
	border-bottom: 1px solid #ccc;
	display: table;
	table-layout: fixed;
	width: 100%;
}
.dlwrap dt {
	display: table-cell;
	width: 30%;
	border-right: 1px dotted #ccc;
	padding: 20px 15px;
	box-sizing: border-box;
}
.dlwrap dt.dl_ttl {
	border-right: 0px;
}
.dlwrap dd {
	display: table-cell;
	width: 70%;
	padding: 20px 15px;
	box-sizing: border-box;
	font-weight: lighter;
}
table.table01 {
	margin-bottom: 40px;
	border-left: 1px solid #ccc;
	border-top: 1px solid #ccc;
}
table.table01 th, table.table01 td {
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	font-weight: normal;
	padding: 10px;
	vertical-align: middle;
}
table.table01 th {
	background: #f7f7f7;
}
table.table01 td {
	font-weight: normal;
}
.ul_style, .ol_style {
	margin-bottom: 40px;
}
.ul_style li {
	list-style: disc;
	margin-left: 1.5em;
	line-height: 2;
	font-weight: lighter;
	margin-bottom: 15px;
}
.ol_style li {
	margin-left: 1.5em;
	line-height: 2;
	margin-bottom: 15px;
	list-style-type: decimal
}
.map_wrap {
	margin-bottom: 40px;
}
.circle_cnt {
	background: #e5f3fa;
	padding: 30px;
	margin-bottom: 30px;
}
.circle_cnt li {
	float: left;
	width: 30%;
	text-align: center;
	margin-right: 5%;
}
.circle_cnt li:last-child {
	margin-right: 0;
}
.circle_cnt li img {
	border-radius: 50%;
	margin-bottom: 10px;
	width: 100%;
}
.att_block {
	padding: 20px;
	border: 1px solid #ecd3d7;
	background: #fbedef;
	color: #b5293d;
	font-size: 20px;
	font-weight: bold;
}
.block {
	padding: 20px;
	border: 1px solid #b6d4e2;
	background: #e5f3fa;
	margin-bottom: 30px;
}
.contact_btn{
	font-size:24px;
}
.contact_btn,.contact_btn i{
	color:#000;
}
.faq_list{
	border-top: 2px solid #ccc;
}
.faq_list > li{
	border-bottom:1px solid #ccc;
}
.faq_list li p{
	margin-bottom:10px ;
}
.faq_list li p:last-child{
	margin-bottom:0px ;
}
.faq_list .ul_style li,.faq_list .ul_style{
	margin-bottom:0;
}
.question{
	padding: 20px 40px 20px 50px;
	position: relative;
	font-weight:bold;
	line-height: 2;
}
.question:before{
	content: "Q.";
    font-size: 30px;
    width: 40px;
    text-align: center;
    display: inline-block;
    position: absolute;
    top: 5px;
    left: 0;
	color:#1064e1;
	font-weight:bold;
	font-family: fot-tsukubrdgothic-std,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.question:after{
	content: "+";
    font-size: 30px;
    width: 40px;
    text-align: center;
    display: inline-block;
    position: absolute;
    top: 5px;
    right: 0;
	color:#1064e1;
	font-weight:bold;
	font-family: fot-tsukubrdgothic-std,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.question.active:after{
	content: "-";
	color:#1064e1;
}
.question:hover{
	cursor: pointer;
	background: #d8e8ff;
}
.answer{
	padding: 5px 20px 20px 50px;
	position: relative;
	display: none;
	line-height: 2;
	min-height: 50px;
}
.answer.active{
	display: block;
}
.answer:before{
	content: "A.";
    font-size: 30px;
    width: 40px;
    text-align: center;
    display: inline-block;
    position: absolute;
    top: 5px;
    left: 0;
	color: #042d6a;
	font-weight:bold;
	font-family: fot-tsukubrdgothic-std,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.inquiry i {
    font-size: 20px;
    color: #fff;
}
.inquiry a {
    display: inline-block;
    padding: 8px 15px;
    background: #000;
	color:#fff;
}
.inquiry a:hover{
	background: #0068b6;
}
.tilelist{
	width:100%;
	max-width:1100px;
	margin:0 auto 40px;
}
.tilelist li{
	width: 30%;
    margin-right: 5%;
    margin-bottom: 50px;
    float: left;
    border: 1px solid #646D95;
    color: #646D95;
    letter-spacing: .3em;
    box-sizing: border-box;
    padding: 20px;
    font-size: 20px;
    text-align: center;
}
.tilelist li:nth-child(3n){
	margin-right:0;
}
main .bx-wrapper{
	margin:0 0 20px;
	box-shadow: none;
	border:0px;
}
.slider li{
	position:relative;
}
.slider li span{
	position: absolute;
    bottom: 0;
    left: 0;
    color: #fff;
    background: rgba(4, 45, 106, 0.5);
    display: block;
    width: 100%;
    border-radius: 0 0 8px 8px;
    padding: 15px;
    box-sizing: border-box;
}
.slider li,.slider li img{
	border-radius:8px;
}
.bx-wrapper .bx-controls-direction a{
	background: none;
	text-indent: 0;
    font-size: 0;
	z-index: 90;
}
.bx-wrapper .bx-prev:after{
	color: #1064e1;
	font-family: "Font Awesome 5 Free";
	content: '\f053';
	font-size:32px;
	opacity: 0.8;
	font-weight:bold;
	position: absolute;
    left: 0;
    top: -8px;
}
.bx-wrapper .bx-next:after{
	color: #1064e1;
	font-family: "Font Awesome 5 Free";
	content: '\f054';
	font-size:32px;
	opacity: 0.8;
	font-weight:bold;
	position: absolute;
    right: 0;
    top: -8px;
}
.slider02{
	margin:0 0 25px;
}
.slider02 li {
    height: 0;
    overflow: hidden;
    box-sizing: border-box;
    padding-left: 0 !important;
    list-style: none !important;
    float: left;
	border-radius:4px;
}
.slider02 li img{
	width:100%;
	height:auto;
}
.calender_wrap{
max-width: 960px;
min-width: 258px;
margin: 0 auto 40px;
}

.googlecal {
position: relative;
padding-bottom: 45%;
height: 0;
}

.googlecal iframe {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}
main p.arrow{
	text-align: center;
	font-size:36px;
	line-height: 1;
}
.link a{
	color:#333;
}
.link a:hover{
	color:#1064e1;
	text-decoration: underline;
}
/* JavaScriptが有効な場合、対象を隠す */
html.enable-javascript .slider{
  visibility: hidden;
}
/* 画像すべてを読み終えたら、対象を表示する */
html.enable-javascript.window-load .slider{
  visibility: visible;
}
@media screen and (min-width:769px) {
.slider02 li {
    padding-bottom: 10%;
    width: 15%;
    margin-right: 2%;
    margin-bottom: 15px;
}
.slider02 li:nth-child(6n){
	margin-right: 0px;
}
}
@media screen and (max-width:1024px) {
.contents {
	padding: 90px 0;
}
}
@media screen and (max-width:1024px) {
.contents {
	padding: 80px 0;
}
main{
	float:none;
	width:100%;
}
}
@media screen and (max-width:950px) {
	.contents {
	padding: 75px 0 30px;
}
}
@media screen and (max-width:768px) {

.contents.topcontents {
	padding: 40px 0;
	margin-top: 0;
}
main section {
	padding: 20px 15px;
	margin-bottom:30px;
}
.w80,.w50 {
	width:100%;
    margin: 0 auto 60px;
}
main p {
	margin-bottom: 20px;
}
.h1_wrap{
	margin-bottom:0px;
}
.h1_wrap h1{
	font-size:20px;
	line-height: 1.2;
}
.page main h2 {
    text-align: left;
}
main h2{
	margin-bottom: 20px;
	font-size: 24px;
}
.h3_wrap {
    width: 100%;
    margin-bottom: 30px;
	height:auto;
}
main h3 {
	font-size: 16px;
	margin-bottom:20px;
}
.arrow-down {
	font-size: 30px;
}
	table.table01{
		margin-bottom:20px;
	}
table.table01 th, table.table01 td {
	padding: 7px;
	font-size: 14px;
}
.ul_style, .ol_style {
	margin-bottom: 20px;
}
	
.ph1 img {
	max-width: 100%;
	height: auto;
	display: block;
	margin: 0 auto 60px;
}
.ph1.add_camption img {
	margin: 0 auto 5px;
}
.ph1.add_camption {
	margin: 0 0 15px;
}
.ph2{
	margin-bottom:30px;	
}
.ph2 li {
	text-align: center;
	margin-bottom: 20px !important;
	line-height: 2;
	width: 100%;
	margin-right: 0;
}
.ph2 li:last-child {
	margin-bottom: 0 !important;
}

.point_list > li{
	/*counter-increment: number;*/
	position: relative;
	margin-bottom:30px;
}
.dl_wrap{
	margin: 0 auto 20px;
}
.top_main .dl_wrap{
	margin: 0 auto 20px;
}
.dl_wrap dl dt{
	float: none;
    width: 100%;
    padding-bottom: 5px;
}
.dl_wrap dl dd{
	padding-left: 0;
}
.dl_wrap2{
	margin-bottom:20px;	
}
.ctg{
	margin-left:0.5em;
	float:none;
}
.morebtn a{
	width:auto;
	font-size:16px;
}
.point_list h2,.top_main .point_list h2,.single h2,.page h2{
    margin-bottom: 20px;
    font-size: 18px;
}
.customer_list .customer_innr {
	padding: 10px;
	border-radius: 14px;
	border: 7px solid #e7f0bf;
	margin: 15px 0;
}
.customer_list .customer_innr p {
	margin-bottom: 10px;
}
.staff_message {
	padding: 5px;
}
.map_wrap {
	margin-bottom: 20px;
}
.map_wrap iframe{
	height:250px;
}
.att_block {
	padding: 10px;
	font-size: 16px;
}
.block {
	padding: 10px;
	margin-bottom: 15px;
}
.contact_btn{
	font-size:20px;
}
.faq_list{
	margin-bottom:30px;
}
.tilelist{
	width:100%;
	max-width:1100px;
	margin:0 auto 30px;
}
.tilelist li{
    margin-bottom: 30px;
    font-size: 18px;
}
main .bx-wrapper{
	margin-bottom:15px;	
}
.slider li span{
    padding: 5px 10px;
    font-size:12px;
}
.slider02{
	margin-bottom:13px;	
}
.slider02 li {
    padding-bottom: 16%;
    width: 24%;
    margin-right: 1.3%;
    margin-bottom:7px;
}
.slider02 li:nth-child(4n){
	margin-right: 0px;
}
.ph-left .calender_wrap ,.ph-right .calender_wrap{
	margin: 0 0 20px;
}
.ph-left .calender_wrap .googlecal,.ph-right .calender_wrap .googlecal {
    padding-bottom: 100%;
}
.calender_wrap{
	margin: 0 auto 20px;
}

.googlecal {
padding-bottom: 100%;
}
}	

@media screen and (max-width:460px) {
.menu_innr {
	padding-top: 15px;
	display: none;
}
.ph-left_img, .ph-right_img {
	width: 100%;
	margin:0;
	float:none;
}
.ph-left_img.mb0, .ph-right_img.mb0 {
	margin-bottom:0;
}
.ph-left_img img, .ph-right_img img {
	display: block;
	margin: 0 auto 20px;
}
.ph-left p ,.ph-right p,.ph-left .dl_wrap2 ,.ph-right .dl_wrap2,.ph-left .morebtn2,.ph-right .morebtn2,.ph-left h3,.ph-right h3,.ph-left h4,.ph-right h4,.ph-left .calender_wrap ,.ph-right .calender_wrap{
	width: 100%;
}
.ph-left .calender_wrap ,.ph-right .calender_wrap{
    padding-left: 0;
}
.ph-left .calender_wrap .googlecal,.ph-right .calender_wrap .googlecal {
    padding-bottom: 100%;
}
.calender_wrap iframe{
	width:calc(100vw - 36px - 10%) !important;	
}
.morebtn2{
	margin-bottom:20px;
}
.dlwrap {
	margin-bottom: 30px;
}
.dlwrap dl {
	border-bottom: 0px;
	display: block;
}
.dlwrap dt {
	display: block;
	width: 100%;
	border-bottom: 1px dotted #ccc;
	border-right: 0px;
	padding: 15px 10px;
	text-align: center;
	background: #fff;
}
.dlwrap dt.dl_ttl{
	border-bottom: 1px solid #ccc;
}
.dlwrap dd {
	display: block;
	width: 100%;
	border-bottom: 1px solid #ccc;
	padding: 15px 10px;
}
.dlwrap dd.sp-tac{
	text-align: center;	
}
.tilelist{
	width:100%;
	max-width:1100px;
	margin:0 auto 45px;
}
.tilelist li{
	width: 48%;
    margin-right: 4%;
    margin-bottom: 15px;
    font-size: 16px;
    letter-spacing: normal;
    padding: 15px;
}
.tilelist li:nth-child(3n){
	margin-right:4%;	
}
.tilelist li:nth-child(2n){
	margin-right:0;	
}
}

/*top
------------------------------*/
.top_main h2{
	margin-bottom:40px;
	font-size:36px;
	text-align: center;
}
.top_main h2 span{
    color:#1064e1;
}
.top_main section.section01{
	background: #fffddd;
}
.topcnt_list{
	background: #fff;
	padding:0 40px;
	border-radius:8px;
}
.topcnt_list li{
	padding: 40px 0;
    border-bottom:1px solid #ccc;
}
.topcnt_list li:last-child{
	border-bottom:0;
}
.topcnt_list li p{
	margin-bottom:0;
}
.topcnt_list li h3{
	font-size:24px;
}
.shop_list{
	text-align: center;
	letter-spacing: -.4em;
	margin-bottom:-35px;
}
.shop_list li{
	display: inline-block;
	letter-spacing: normal;
	margin:0 3.5% 35px 0;
	width:31%;
	vertical-align: top;
}
.shop_list li:nth-child(3n),.shop_list li:last-child{
	margin:0 0 35px 0;
}
.shop_list li a{
	color:#333;
	display: block;
}
.shop_list li img{
	width:100%;
}
.shop_list li h3{
	margin-bottom:0;
	line-height: 2;
}

@media screen and (max-width:768px) {	
	
.top_main h2{
	margin-bottom:20px !important;
	font-size: 24px !important;
}
.topcnt_list{
	padding:0 15px;	
}
.topcnt_list li{
	padding: 15px 0;
}
.topcnt_list li h3{
	font-size:18px;
}
}
@media screen and (max-width:480px) {

}

/*パンくず --------------------*/

#kuzu {
	font-size: 14px;
	padding:15px 0;
	max-width:1200px;
	margin:0 auto;
}

#kuzu ol li {
	display: inline-block;
}
#kuzu ol li a:after {
	color: #1064e1;
	font-family: "Font Awesome 5 Free";
	content: '\f054';
	font-weight: bold;
	margin: 0 0.5em;
}
#kuzu ol li a{
	color: #1064e1;
}
#kuzu ol li:last-child a {
	color: #333;
}
#kuzu ol li:last-child a:after {
	content: '';
	margin: 0;
}

@media screen and (min-width:769px) {
#kuzu {
	white-space: nowrap;
	overflow: hidden;
	margin:-51px auto 0;
}
}

@media screen and (max-width:768px) {
#kuzu {
	position: initial;
	padding: 10px 0;
}
#kuzu ol li {
	display: inline;
}
}

/*contact
========================================*/
.contact,.contact p{
	text-align: center;
}
.page section.contact{
	padding:60px 0 0;
	border-top:1px solid #ccc;
}
.contact h2{
	font-size:30px;
	margin-bottom:40px;
}
.contact_to{
	display: flex;
    justify-content: space-between;
}
.contact_to.only-one{
	display: block;
    text-align: center;
}
.contact_to.hav_margin{
	margin-bottom:40px;
}
.contact_to li{
	text-align: center;
    width: 48.5%;
    padding: 40px 20px;
    font-size: 36px;
    box-sizing: border-box;
    background: #fff;
    border-radius: 8px;
    border: 1px solid #0f64e1;
    font-weight: bold;
}
.contact_to.only-one li{
	display: inline-block;
	width:auto;
} 
.contact_to li h3{
	font-size:20px;
	margin-bottom:20px;
	color:#333;
}
.contact_to li span{
	color: #0f64e1;
    font-weight: bold;
    display: block;
    line-height: 50px;
    height: 50px;
}
.contact_to li a{
	color: #0f64e1;
}
.contact_to li a:hover{
	cursor: pointer;
	color: #0b429a;
}
.contact_to li.contact_to_mail{
	font-size:30px;
}
.contact p a,.contact p a i{
	color:#333;	
}
.contact p a:hover,.contact p a:hover i{
	color:#f6751f;
}
@media screen and (max-width:1200px) {
.contact_to li{
	font-size:30px;
}
.contact_to li.contact_to_mail{
	font-size:26px;
}
}
@media screen and (max-width:768px) {
.contact{
	text-align: left;
}
.contact_to {
    display: block;
}
.contact_to.hav_margin{
	margin-bottom:20px;
}
.contact_to li:first-child{
	margin-bottom: 20px;	
}
.contact_to.only-one li:first-child{
	margin-bottom: 0;	
}
.contact_to li{
	width: 100%;
    padding: 20px 10px;
	font-size:22px;
}
.contact_to.only-one li{
	width: 100%;
} 
.contact_to li h3 {
    font-size: 18px;
    margin-bottom: 10px;
}
.contact_to li:last-child {
    font-size: 20px;
}
}

/*sidebar
========================================*/

aside{
	float:right;
	width:25%;
}

aside ul{
	padding-top:10px;
	position: relative;
	background: #fff;
	border:1px solid #1064e1;
	border-top:0px;
	border-radius:0 0 8px 8px;
	overflow: hidden;
}
aside ul:before{
	content: "";
	background: url(/en/commons/img/bg_navy.gif);
	width:100%;
	height:10px;
	position: absolute;
	left:0;
	top:0;
}
aside ul li a {
	text-decoration: none;
    float: none;
    width: 100%;
    display: block;
	padding: 15px 20px 15px 40px;
    box-sizing: border-box;
    height: auto;
    text-align: left;
    border-bottom: 1px solid #1064e1;
    line-height: 1.5;
	position: relative;
	color:#333;
}
aside ul li a:hover{
	background: #d8e8ff;
}
aside ul li a:before{
	content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
    margin-right: 0.5em;
	color:#1064e1;
	position: absolute;
	left:20px;
	top:15px;
}
aside ul li:last-child a {
	border-bottom:0;
}
.banner{
	text-align: center;
}
.banner img{
	margin-top:20px;
	margin-bottom: -8px;
}
@media screen and (max-width:1024px) {
aside{
	display: none;
}
}

/*footer
========================================*/
#footer {
	padding: 70px 0 60px;
	position: relative;
}
#footer .innr{
	position: relative;
}
#footer:before{
	content: "";
	background: url(/en/commons/img/bg_navy.gif);
	width:100%;
	height:10px;
	position: absolute;
	left:0;
	top:0;
}
#footer p{
	margin-bottom:40px;
	line-height: 2;
}
svg.f_logo {
  display: inline-block;
  width: 325px;
  height: 45px;
  overflow: visible;
  font-size: 40px;
  font-weight: bold;
  margin: 0 0 20px;
}
.f_logo text.foreground {
  fill: #fff;
}
.f_logo text.background {
  stroke: #1064e1;
  stroke-width: 6;
  stroke-linejoin: round;
}
.f_list{
	margin-bottom:40px;
}
.f_list li{
	line-height: 2;
    display: inline-block;
    padding: 0 0.5em;
}
.f_list li a {
	color: #333;
	display: block;
}
.f_list li a :hover{
	color:#1064e1;
}
.f_list li a:before{
	content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
    margin-right: 0.5em;
    color: #1064e1;
}
.f_contact_list{
	position: absolute;
	top:0;
	right:0;
	width:100%;
}
.f_contact_list li a{
	height:60px;
	line-height: 60px;
	border-radius:4px;
	padding:0 ;
	width:260px;
	text-align: center;
}
.f_contact_list li.tel a{
	border:1px solid #1064e1;
	color:#1064e1;
}
.f_contact_list li.tel a:hover{
	border:1px solid #0b429a;
	color:#0b429a;
}
.f_contact_list li.tel a:hover i{
	color:#0b429a;
}
.f_contact_list li.mailto a{
	margin-left:10px;
}
.copyright {
	text-align: right;
}

.pagetop {
	display: none;
    position: fixed;
    bottom: 60px;
    right: 10px;
    color: #fff;
    width: 60px;
    height: 60px;
    line-height: 70px;
    border-radius: 50%;
    text-align: center;
    cursor: pointer;
    z-index: 100;
    background: #1064e1;
}
.pagetop:hover {
	background:#0b429a;
}
.pagetop i {
	color: #fff;
	font-size: 30px;
	line-height: 35px;
}
.pagetop:hover i{
	color: #fff;
}
.cfGMLl{
	bottom:60px !important;
}
@media screen and (max-width:950px) {
.f_contact_list{
	display: none;
}
svg.f_logo {
  display: inline-block;
  width: 230px;
  height: 37px;
  overflow: visible;
  font-size: 28px;
  font-weight: bold;
  margin: 0 0 10px;
}
.f_logo text.foreground {
  fill: #fff;
}
.f_logo text.background {
  stroke: #1064e1;
  stroke-width: 4;
  stroke-linejoin: round;
}
}
@media screen and (max-width:768px) {
#footer {
	padding: 38px 0 90px;
}
#footer p,.f_list{
	margin-bottom:20px;
}

/*.f_logo{
	color:#fff;
	font-size:28px;
	font-weight:bold;
	text-shadow: #1064e1 2px 0px 0px, #1064e1 -2px 0px 0px,
    #1064e1 0px -2px 0px, #1064e1 0px 2px 0px,
    #1064e1 2px 2px 0px, #1064e1 -2px 2px 0px,
    #1064e1 2px -2px 0px, #1064e1 -2px -2px 0px,
    #1064e1 1px 2px 0px, #1064e1 -1px 2px 0px,
    #1064e1 1px -2px 0px, #1064e1 -1px -2px 0px,
    #1064e1 2px 1px 0px, #1064e1 -2px 1px 0px,
    #1064e1 2px -1px 0px, #1064e1 -2px -1px 0px,
    #1064e1 1px 1px 0px, #1064e1 -1px 1px 0px,
    #1064e1 1px -1px 0px, #1064e1 -1px -1px 0px;
}*/
.copyright {
	text-align: center;
}
.pagetop {
	right: 10px;
	bottom: 70px;
	width: 40px;
    height: 40px;
    line-height: 40px;
	font-size: 20px;
}
.cfGMLl{
	bottom:70px !important;
}
.contact_fix{
	display: none;
	width:100%;
	position: fixed;
	left:0;
	bottom:0;
	height:60px;
	line-height: 60px;
	text-align: center;
	border-top: 1px solid #0f64e1;
}
.contact_fix .tel a{
	color:#0f64e1;
	font-weight:bold;
	font-size:18px;
	float:left;
	width:50%;
	box-sizing: border-box;
	background: #fff;
	height: 60px;
    line-height: 60px;
	padding:0;
}
	
.contact_fix .tel i{
    font-size:18px;
}
.mailto a{
    display: block;
    float: right;
    width: 100%;
    background: #0f64e1;
    border-radius: 0px;
    padding: 0 5px;
    box-sizing: border-box;
    color: #fff;
    line-height: 1;
    font-size: 14px;
    height: 60px;
    line-height: 60px;
    margin-top: 0;
    box-shadow: none;
}
.mailto img{
	height: 15px;
    margin-bottom: -3px;
    margin-right: 5px;
    position: inherit;
    top: auto;
    left: auto;
}
}
/*メールフォーム
================================================*/
.mailform {
	margin-bottom: 15px;
}
form#mailformpro {
	padding: 0;
}
div.mfp_ok {
	display: none !important;
}
div.mfp_err {
	padding: 0;
	background-image: none;
}
.problem {
	background-color: #fff3f3;
}
.must {
	background-color: #1064e1;
	border-radius: 4px;
	font-size: 12px;
	padding: 3px 7px;
	border: 0px;
	text-shadow: none;
	box-shadow: none;
	background-image: none;
	float: right;
	margin:0;
}
form#mailformpro dl {
	width: 100%;
	display: table;
	table-layout: fixed;
	border-top: 2px solid #ccc;
	margin-bottom:40px;
}
form#mailformpro dl dt, form#mailformpro dl dd {
	border-top: 0px;
	font-size: 16px;
	text-align: left;
}
form#mailformpro dl dt {
	width: 30%;
    box-sizing: border-box;
    padding: 16px 0;
	float:left;
}
form#mailformpro dl dd {
	padding: 15px 10px 20px 31%;
    font-weight: lighter;
    border-bottom: 1px solid #ccc;
}
form#mailformpro label.mfp_not_checked {
	border: 0px;
}
form#mailformpro label.mfp_checked, form#mailformpro label.mfp_not_checked {
	border: 0px;
	background-color: transparent;
	box-shadow: none;
}
.mfp_element_text, .mfp_element_number, .mfp_element_select-one, .mfp_element_email, .mfp_element_tel, .mfp_element_textarea, .mfp_element_date, .mfp_element_password {
	box-shadow: none;
	padding: 8px;
	text-shadow: none;
	border-radius: 0px;
	font-size:16px;
}
.mfp_element_submit, .mfp_element_reset, .mfp_element_button, button.mfp_next, button.mfp_prev {
	background: #1064e1;
    border-radius: 4px;
    font-size: 20px;
    padding: 15px 0;
    text-align: center;
    color: #fff;
    font-weight: bold;
    box-shadow: 0 6px 0px #0a429a;
    margin-bottom: 6px;
	border:0px;
	text-shadow: none;
	width:250px;
}
.mfp_element_submit,#mfp_button_send{
	margin-right:1em;
}
.mfp_element_reset, button.mfp_next, button.mfp_prev ,#mfp_button_cancel{
	background: #f3f3f3;
    color: #333;
	box-shadow: 0 6px 0px #afafaf;
}
.mfp_element_submit:hover, .mfp_element_reset:hover, .mfp_element_button:hover, button.mfp_next:hover, button.mfp_prev:hover {
	text-shadow:none;
	background: #1064e1;
	box-shadow:none;
    transform: translate3d(0, 6px, 0);
}
.mfp_element_reset:hover, button.mfp_next:hover, button.mfp_prev:hover ,#mfp_button_cancel:hover{
	text-shadow:none;
	background: #f3f3f3;
	box-shadow:none;
    transform: translate3d(0, 6px, 0);
}
div#mfp_phase_confirm h4 {
	padding: 0;
	text-align: left;
	margin-bottom: 20px;
	font-size: 18px;
	font-weight: bold;
	color:#1064e1;
}
.mfp_colored {
	background-color: #fff;
}
table#mfp_confirm_table tr.mfp_colored {
	background-color: #fff;
}
table#mfp_confirm_table tr th, table#mfp_confirm_table tr td {
	font-size: 16px;
	padding: 20px 15px;
	border-top: 0px;
}
table#mfp_confirm_table tr th{
	width:30%;
	padding: 20px 0;
}
table#mfp_confirm_table tr td {
	font-weight: lighter;
	width:70%;
}
table#mfp_confirm_table {
	border-top: 2px solid #ccc;
	margin-bottom:60px;
}
form#mailformpro label {
	white-space: normal;
}
#mfp_confirm_table tr {
	border-bottom: 1px solid #ccc;
}
form#mailformpro input:focus,form#mailformpro textarea:focus,form#mailformpro select:focus{
	outline:0;
	border: solid 1px #0a429a;
}
input:-internal-autofill-selected{
	backgrund:#f3f3f3;
}
div.mfp_buttons{
	margin-bottom:40px;
}
@media screen and (max-width :767px) {
	form#mailformpro dl{
		margin-bottom:20px;
	}
form#mailformpro dl dt, form#mailformpro dl dd {
	border-top: 0px;
	font-size: 14px;
}
.must {
	margin: 0 0 0 5px;
	float: none;
	display: inline-block;
	padding: 1px 5px;
}
form#mailformpro dl dt {
	padding: 10px 5px 5px 5px;
}
form#mailformpro dl dd {
	padding: 0 5px 10px 5px;
}
div#mfp_phase_confirm h4 {
	font-size: 18px;
	margin-bottom: 15px;
}
div#mfp_phase_confirm h4:after {
	padding: 0 0 5px;
	margin-bottom: 15px;
	font-size: 16px;
}
table#mfp_confirm_table{
	margin-bottom:30px;	
}
table#mfp_confirm_table tr th, table#mfp_confirm_table tr td {
	font-size: 14px;
	padding: 10px 0 0;
	width: 100%;
	display: block;
}
table#mfp_confirm_table tr td {
	padding: 10px 0;
}
form#mailformpro dl dt {
	float:none;
	width: 100%;
	box-sizing: border-box;
}
.mfp_element_select-one {
	width: auto;
}
.mfp_element_text, .mfp_element_number, .mfp_element_select-one, .mfp_element_email, .mfp_element_tel, .mfp_element_textarea, .mfp_element_date, .mfp_element_password {
	font-size:14px;
}
.mfp_element_submit, .mfp_element_reset, .mfp_element_button, button.mfp_next, button.mfp_prev {
	font-size: 16px !important;
	padding:12px 25px;
	width:auto;
}
div.mfp_buttons{
	margin-bottom:20px;
}
}
@media print{
	.only-sp{
		display: none;
	}
	.contact_fix .tel{
	display: none;	
}
}
