@charset "UTF-8";

:root {
  --contact-navy: #071c38;
  --contact-blue: #0867aa;
  --contact-blue-bright: #0d7bc0;
  --contact-blue-soft: #edf7fd;
  --contact-orange: #f15a35;
  --contact-ink: #17263a;
  --contact-muted: #617185;
  --contact-line: #dce5ee;
  --contact-surface: #ffffff;
  --contact-bg: #f4f7fb;
}

@charset "UTF-8";


@font-face {
	font-family: 'MyYuGothicM';
	font-weight: normal;
	src: local('YuGothic-Medium'), /* PostScript Name = localの正式な指定方法 */
	local('Yu Gothic Medium'),     /* PostScript Nameを認識できないChrome用にFull Nameを指定 */
	local('YuGothic-Regular');     /* 游ゴシックMediumが存在しないWindows8.1用 */
}
@font-face {
	font-family: 'MyYuGothicM';
	font-weight: bold;
	src: local('YuGothic-Bold'), /* PostScript Name = localの正式な指定方法 */
	local('Yu Gothic');          /* PostScript Nameを認識できないChrome用にFull Nameを指定 */
}


* {
	margin: 0;
	padding: 0;
    outline: 0;
	vertical-align: baseline;
	list-style: none;
}
.content table {
	border-collapse:separate;
	border-spacing:0;
	border:#e4e4e4 0px;
	font-size:8pt;
}

.content td, tr {
	vertical-align:middle;
}

.content h3 {
	border-left: #ddd 5px solid;
	padding-left: 10px;
	margin-bottom: 20px;
	line-height: 2em;
}

.content time {
    color: #888;
    margin-bottom: 20px;
    font-size: .9rem;
    display: block;
}

/* body */

body {
	margin:0 auto;
	font-family: "SF Pro JP", "SF Pro Text", "SF Pro Icons", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 100%;
	color: #333;
}

.content th, td {
	padding:10px;
}
tr.even td {
	background:#E5ECF9;
}

hr {
	margin-top: 40px;
margin-bottom: 40px;
border: 0;
border-top: 1px solid #eeeeee;
}
img {
vertical-align: middle;
}
h1, h2, h3 {
	margin: 0px;
	padding: 0px;
	font-weight: normal;
}

p { 
	margin-bottom: 20px; 
	line-height: 150%;
	font-size: 14px;

}
a img:hover { opacity: 0.7; }

a {
    color: #0070c9;
    text-decoration: none;
}

a:hover {
	-webkit-transition: color 0.25s ease-out;
transition: color 0.25s ease-out;
}

.link-arrow {
	display: block;
text-align: center;
}

.sp-none {
	display: none;
}



/* アニメーション アンダーライン */
a.move-link,
.tel a  { text-decoration: none !important; } /* reset default css */

a.move-link,
.tel a {
  display: inline-block;
  line-height: 120%;
}

a.move-link::after,
.tel a::after {
  content: "";
  display: block;
  width: 0;
  transition: width 0.3s;
  border-bottom: 1px solid #0070c9;
}

a.move-link:hover::after,
.tel a:hover::after {
  width: 100%;
}



.waku {
	padding: 30px;
	border: solid 1px #eee;
}

/* color */
.white { #fff; }
.red { 
color: red; 
}
.red2 { color: #F60; }
.grey { color: #666 !important; }
.grey-bg { 
background-color: #f2f2f2; 
color: #333 !important;
}
.pink { 
	color: #ff0096 !important; 
}
.orange {
    color: #f77b00;
}
.gold {
color: #808000;
}

a.w {
	color: #fff !important;
}

.green {
	color: green;
}

.normal-txt {
	font-weight: normal !important;
}
.normal {
	font-weight: normal !important;
padding: 5px;
font-size: 13px;
color: white;
background: red;
vertical-align: middle;
float: right;
position: absolute;
right: 13%;
}


.big {
	font-size: 15px;
}
.suji-big {
	font-size: 16px;
}
.op-big {
	font-size: 13px;
}


.none { display: none; }
/* 方向 */


.right { float: right;
 overflow: hidden; 
 }
 
 .left { float: left;
 overflow: hidden; 
 }
 
.center { 
    text-align: center; 
}

.space { 
width: 100%; 
height: 40px; 
overflow: hidden; 
}

.space-mini {
    height: 10px;
    width: 100%;
    overflow: hidden;
}

/* size */
.small { 
font-size: 12px !important; 
line-height: 180%; 
}
.bold { font-weight: bold; }
.txt-wide {
	letter-spacing: 0.5;
}
.txt-right {
	text-align: right;
}

.italic {
	font-style: italic;
}

.middle {
	vertical-align: middle;
}

.border {
	border: solid 1px #ddd;
}

/* header */

header {
	padding: 10px 10px;
	width: 100%;
	overflow: hidden; 
}

.logo {
	float: left;
}
.tel {
    float: right;
	text-align: center;
	width: 239px;
	font-family :
	MyYuGothicM, /* Windows調整用 */
	YuGothic,    /* Mac用 */
	sans-serif;
}

.sp-header,
.overlay {
	display: none;
}

.fixbar {
  width: 100%;
}
.fixed .fixbar {
  position: fixed;
  margin: 0 auto !important;

  }
.header.fixed  {
	  top: 0px;
	  position: fixed;
	  z-index: 99999999;
	  width: 100%;
	  background-color: #fff;
  }

#title {
height:100%;
width:100%;
margin: 0 auto;
}

/* toc 目次 */

ul.toc, ol.toc {
  color: #1e366a;
  border: solid #1e366a 1px;
  padding: 1em 1.5em;
  margin-bottom: 40px;
}

.toc li {
  line-height: 1.5;
  padding: 0.5em 0;
  border-bottom: dotted 1px #ddd;
}

.toc li:last-child {
	border-bottom: none;
}



/* パンくず */
.panlists {
width: 100%;
background-image: linear-gradient(to top, #EEE, #FFF, #eee);
	overflow: hidden;
	}
	
.panlist {
width: 1000px;
	margin: 0 auto;
}
.panlist li { 
	float: left;
display: block;
font-size: 11px;
margin-left: 20px;
padding: 6px 0;
color: #999;
}

.panlist li:first-child:before {
  font-family: "Font Awesome 5 Free";
  content: '\f015 '; /* アイコンのunicode */
  font-size: 14px;
  padding-right: 3px;
  font-weight : 900;
  
}

 

/* main top image */
.pic {
	background: url(/images/pixta_13844214_M.jpg) no-repeat center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	background-attachment: fixed;
	}	
	

.pic-height {
height: 300px;
}



/* container */


#container {
    float: none;
    width: 1100px !important;
    margin: 40px auto 0;
    position: relative;
    overflow: hidden;
    }

#container h1 {
	margin-bottom: 30px;
	letter-spacing:0.8pt;
}

.two-stage {
	margin-left: 20px;
}

main p {
 font-size: 15px;
 line-height: 200%;
		   color: #4d5156;
	letter-spacing: .10rem;
}


#container a:link,
#container a:visited {
color: #0070c9;
}

#container a:hover,
#container a:active {
color: #0070c9;
text-decoration: underline;
}

.list-under li {
    display: table;
    border-bottom: solid 1px #333;
    margin: 20px 0;
    font-weight: bold;
    line-height: 150%;
}
/* main content */

.main {
    padding: 0 20px;
    font-size: ;
    border: solid #E1E1E1 1px;
    margin: 0 auto 50px;
    border-radius: 4px 4px 0 0;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 0px;
    border-bottom-left-radius: 0px;
    width: 760px;
    float: left;
}

.main-1column {
width: 960px;
	background-color: #FFF;
    padding: 0 20px;
    border: solid #E1E1E1 1px;
    margin: 0 auto 50px;
    border-radius: 4px 4px 0 0;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 0px;
    border-bottom-left-radius: 0px;
}

.main-1column h1 {
    color: #fff;
    padding: 15px;
    font-size: 22px;
    margin: 0 -20px 30px;
    text-align: center;
    border-radius: 4px 4px 0 0;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 0px;
    border-bottom-left-radius: 0px;
    letter-spacing:0.8pt;
}

.main h1 {
    color: #333;
    padding: 12px;
    font-size: 20px;
    margin: 0 -20px 20px;
    text-align: center;
    border-radius: 4px 4px 0 0;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 0px;
    border-bottom-left-radius: 0px;
    border-bottom: solid #ddd 1px;
    background-color: #eee;
    letter-spacing:0.8pt;
    }

.main h2 {
	color: #333;
	font-size: 22px;
	margin-bottom: 10px;
	font-weight: bold;
	border-left: 4px solid #3498DB;
	padding: 8px 10px ;
	letter-spacing:0.8pt;
}

.main h3 {
font-size: 17px;
font-weight: bold;
line-height: 150%;
margin-bottom: 20px;
letter-spacing:0.8pt;
}

.main h4 {
font-size: 20px;
font-weight: normal;
text-align: center;
line-height: 150%;
margin-bottom: 20px;
letter-spacing:0.8pt;
}

.main p {
	color: #333;
 font-size: 15px;
line-height:200%;
letter-spacing:0.6pt;
}

.bottom-content {
	background: lavenderblush;
	padding: 20px 40px;
	margin-bottom: 20px;
}

.bottom-content li {
	line-height: 180%;
}

.bottom-key {
	border: solid 1px #ddd;
	padding: 20px;
	margin-bottom: 20px;
	overflow: hidden;
	box-shadow: 0 2px 0 #d1d1d1;
}

.bottom-key h2 {
 font-size: 16px;
 font-weight: bold;
 border: none;
 padding: 0;
 margin-bottom: 10px;
}

.bottom-key li {
	line-height: 180%;
	float: left;
	padding-right: 20px;
}

/* 1カラム content */
.box-one {
	padding: 0 60px;
	margin: 0 0 60px;
}

.box-one h2 {
    color: #333;
    font-size: 20px;
    margin-bottom: 10px;
    font-weight: bold;
    border-left: 4px solid #3498DB;
    padding: 8px 10px;
}


/* re new */

.under {
  font-weight: bold;
  color: #333;
  text-decoration : underline;
}

.other-service {
	background: #eff3f5;
	padding: 20px 60px 40px;
	border-radius: 10px;
	margin: 0 20px;
}

.other-service dt {
	font-weight: 600;
    color: #436472;
    text-align: center;
    font-size: 1.3rem;
    float: inherit;
}

.other-service dd {
	margin: 0 auto;
}


.other-price {
	border-bottom: 2px solid #436472;
	display: inline-block;
	padding-bottom: 10px;
	color: #436472;
}

.other-service p {
	line-height: 200% !important;
}


.kome {
  padding: 0.5em 0em 0.5em 1.5em;
  position: relative;
  margin-bottom: 20px;
}
.kome li {
  line-height: 1.5;
  padding: 0.5em 0;
  list-style-type: none!important;/*ポチ消す*/
}
.kome li:before {
  content: "※";
  position: absolute;
  left : 0em; /*左端からのアイコンまで*/
}

/* twitter */

.twitter-tweet {
	margin: 0 auto;
	text-align: center;
}

/* blockquote */

blockquote {
    position: relative;
    padding: 35px 15px 10px 15px;
    box-sizing: border-box;
    font-style: italic;
    background: #f5f5f5;
    color: #333;
    border-left: 4px solid #9dd4ff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.14);
    margin: 40px 0 40px;
    line-height: 200%;
}

blockquote:before{
    display: inline-block;
    position: absolute;
    top: 10px;
    left: 15px;
    content: "\f10d";
    font-family: FontAwesome;
    color: #9dd4ff;
    font-size: 28px;
    line-height: 1;
    font-weight: 900;
}

blockquote p {
    padding: 0;
    margin: 7px 0;
    line-height: 1.7;
}

blockquote cite {
    display: block;
    text-align: right;
    color: #888888;
    font-size: 0.9em;
}

/* talk */

.balloon5 {
    width: 650px;
    margin: 1.5em 0;
    overflow: hidden;
}

.balloon5 .faceicon {
    float: left;
    margin-right: -90px;
    width: 80px;
}

.balloon5 .faceicon img,
.balloon5 .faceicon-right img{
    width: 100%;
    height: auto;
    border: solid 3px #d7ebfe;
    border-radius: 50%;
}

.faceicon span,
.faceicon-right span,
.faceicon-r span {
	text-align: center;
	font-size: 11px;
	padding-top: 5px;
	display: block;
	color: #666;
}


.balloon5 .chatting {
    width: 100%;
}

.says-one {
    max-width: 100% !important;
}


.says {
    display: inline-block;
    position: relative; 
    margin: 5px 0 0 105px;
    padding: 20px;
    border-radius: 12px;
    background: #d7ebfe;
}

.says:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 18px; 
    left: -24px;
    border: 12px solid transparent;
    border-right: 12px solid #d7ebfe;
}

.says p {
    margin: 0;
    padding: 0;
}


.balloon5 .faceicon-right {
    float: right;
    width: 80px;
}

.says-right {
    display: inline-block;
    position: relative; 
    margin: 5px 0 0 0px;
    padding: 20px;
    border-radius: 12px;
    background: #d7ebfe;
    float: left;
}
.says-right:after {
    content: "";
    position: absolute;
    top: 30px;
    right: -12px;
    margin-top: -10px;
    display: block;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 13px 0 11px 12px;
    border-color: transparent transparent transparent #e8e8e8;
    z-index: -1;
}

/* article list */

.list-article {
	display: flex;
	flex-direction: column;
	width: 100%;
	margin-bottom: 10px;
	padding: 20px 0;
	box-sizing: border-box;
	border-bottom: dotted #ddd 1px;
}

.list-article figure {
		margin-right: 20px;
		width: 200px;
		height: 100px;
		float: left;
	}

.list-article figure img {
			min-width: 200px;
			max-width: 100%;
			vertical-align: top;
		}
.border-none {
	border-bottom: none;
}

.text_content h3 {
	border: none;
}


/* side */

.side {
	float: right;
	width: 310px;
	overflow: hidden;
    border-radius: 4px 4px 0 0;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 0px;
    border-bottom-left-radius: 0px;
    margin-bottom: 20px;

}

.side h2 {
background-color: #eee;
color: #000;
padding: 15px;
font-size: 16px;
text-align: center;
margin: 0;
border-radius: 4px 4px 0 0 ;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 0px;
    border-bottom-left-radius: 0px;
}

.side p {
	font-size: 70%;
	padding: 0;
	margin: 0 0 20px;
}

.side ul {
	margin-bottom: 20px;
}

.side ul li {
	border-bottom: dashed 1px #ddd;
}
.side ul li:last-child {
	border:none;
}

.side ul li a {
	    display: block;
	        padding: 15px 20px;
}

.dli-caret-right {
  display: inline-block;
  vertical-align: middle;
  color: #0070c9;
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 0.375em 0.64952em;
  border-left-color: currentColor;
  border-right: 0;
  margin-right: 10px;
}

.start-plan {
	padding: 15px;
	text-align: center;
	color: white;
	display: block;
	font-size: 100%;
	font-weight: bold;
}
.start-plan:hover {
	opacity: 0.6;
}

a.start-plan {
	text-decoration: none !important;
	color: #fff !important;
	margin-bottom: 20px;
}

.side-plan {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f9f8f1), color-stop(100%,#f4f2e2));
}


.side-plan p {
padding: 0 10px 20px;
	font-size: 14px !important;
font-weight: bold;
line-height: 140%;
color: #b6b07c !important;
text-align: center;
}

.side .yen {
    color: #b6b07c;
    font-size: 23px;
}
.side .price {
    margin: 0 0 10px 0;
    font-weight: bold;
    color: #b6b07c;
}

.side-ribon {
display: block;
margin:10px auto 0;
width: 251px;
height: 41px;
background: url(/images/side-ribon.png);
}
a.side-ribon {
	padding-top: 8px;
	color: #fff !important;
}

.more {
	border-radius: 15px;
	background: #ffb700;
	padding: 5px 10px;
	text-align: center;
	color: white;
	margin: 0 auto;
	display: table;
	width: 120px;
	}


body.contact-page {
  overflow-x: hidden;
  background: var(--contact-bg);
  color: var(--contact-ink);
}

.contact-page > header {
  background: #fff;
}

/* Keep the shared navigation available after the page header scrolls away. */
.contact-page .header.fixed {
  position: fixed;
  z-index: 99999999;
  top: 0;
  left: 0;
  width: 100%;
  background: #fff;
}

.contact-page .panlists {
  background: #fff;
  background-image: none;
  border-top: 1px solid #eef2f6;
  border-bottom: 1px solid #e7edf3;
}

.contact-page .panlist {
  max-width: 1100px;
}

.contact-page #container {
  width: min(980px, calc(100% - 40px)) !important;
  margin: 46px auto 90px;
  padding: 0;
  overflow: visible;
}

.contact-page .main {
  width: 100% !important;
  margin: 0;
  padding: 0;
  float: none;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.contact-page .side {
  display: none;
}

.contact-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  margin-bottom: 26px;
  padding: 52px 56px 46px;
  color: #fff;
  background:
    radial-gradient(circle at 88% 15%, rgba(63, 168, 226, .30), transparent 30%),
    linear-gradient(135deg, #061a35 0%, #0a3b69 62%, #096ea9 100%);
  border-radius: 22px;
  box-shadow: 0 20px 50px rgba(8, 39, 70, .16);
}

.contact-hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: -105px;
  right: -88px;
  width: 280px;
  height: 280px;
  border: 1px solid rgba(255, 255, 255, .20);
  border-radius: 50%;
  box-shadow: 0 0 0 38px rgba(255, 255, 255, .035), 0 0 0 76px rgba(255, 255, 255, .025);
}

.contact-hero::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 7px;
  height: 100%;
  background: linear-gradient(180deg, #ff8b43, var(--contact-orange));
}

.contact-page #container .contact-kicker {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 16px;
  color: #8fd1fa;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .20em;
}

.contact-page #container .contact-hero h1 {
  margin: 0 0 16px;
  padding: 0;
  color: #fff;
  background: transparent;
  border: 0;
  border-radius: 0;
  font-size: clamp(25px, 2vw, 25px);
  font-weight: 700;
  line-height: 1.35;
  text-align: left;
  letter-spacing: .03em;
}

.contact-page #container .contact-lead {
  max-width: 700px;
  margin: 0;
  color: rgba(255, 255, 255, .86);
  font-size: 16px;
  line-height: 1.9;
  letter-spacing: .03em;
}

.contact-assurance {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 27px;
}

.contact-assurance span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 9px 13px;
  background: rgba(255, 255, 255, .11);
  border: 1px solid rgba(255, 255, 255, .20);
  border-radius: 999px;
  color: #fff;
  font-size: 13px;
  line-height: 1.4;
}

.contact-assurance i {
  color: #8fd1fa;
}

.document-download {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 20px;
  margin: 0 0 26px;
  padding: 24px 26px;
  background: #fff;
  border: 1px solid #dce7f0;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(18, 51, 82, .08);
}

.document-download__icon {
  display: grid;
  width: 56px;
  height: 56px;
  place-items: center;
  color: var(--contact-orange);
  background: #fff1ec;
  border-radius: 14px;
  font-size: 26px;
}

.contact-page #container .document-download__label {
  margin: 0 0 2px;
  color: var(--contact-orange);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
}

.contact-page #container .document-download h2 {
  margin: 0 0 3px;
  padding: 0;
  color: var(--contact-navy);
  border: 0;
  font-size: 18px;
  line-height: 1.5;
}

.contact-page #container .document-download__body p:last-child {
  margin: 0;
  color: var(--contact-muted);
  font-size: 12px;
  line-height: 1.6;
}

.contact-page #container .document-download__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 12px 18px;
  color: #fff;
  background: var(--contact-blue);
  border-radius: 10px;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
  transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.contact-page #container .document-download__button:hover {
  color: #fff;
  background: #064f84;
  box-shadow: 0 8px 18px rgba(8, 103, 170, .20);
  text-decoration: none;
  transform: translateY(-1px);
}

.contact-page .content {
  width: 100%;
  padding: 40px 44px 34px;
  background: var(--contact-surface);
  border: 1px solid #e1e8ef;
  border-radius: 20px;
  box-shadow: 0 18px 48px rgba(19, 52, 82, .10);
}

.form-heading {
  text-align: center;
}

.contact-page #container .form-heading__eyebrow {
  margin: 0 0 8px;
  color: var(--contact-blue);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .12em;
}

.contact-page #container .form-heading h2 {
  margin: 0 0 10px;
  padding: 0;
  color: var(--contact-navy);
  border: 0;
  font-size: 25px;
  line-height: 1.45;
}

.contact-page #container .form-heading p:last-child {
  margin: 0;
  color: var(--contact-muted);
  font-size: 13px;
  line-height: 1.7;
}

.form-steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  max-width: 520px;
  margin: 28px auto 34px;
  padding: 0;
  counter-reset: none;
}

.form-steps li {
  position: relative;
  display: grid;
  gap: 7px;
  justify-items: center;
  color: #8491a1;
  font-size: 12px;
  font-weight: 600;
}

.form-steps li::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 15px;
  right: 50%;
  width: 100%;
  height: 2px;
  background: #dbe4ec;
}

.form-steps li:first-child::before {
  display: none;
}

.form-steps li span {
  position: relative;
  z-index: 1;
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  background: #eef2f6;
  border: 1px solid #dce4eb;
  border-radius: 50%;
  color: #718094;
  font-size: 12px;
}

.form-steps li.is-current {
  color: var(--contact-blue);
}

.form-steps li.is-current span {
  color: #fff;
  background: var(--contact-blue);
  border-color: var(--contact-blue);
  box-shadow: 0 0 0 5px var(--contact-blue-soft);
}

.contact-page .contact-form {
  margin: 0;
}

.contact-page .contact-form .table-contact {
  width: 100%;
  margin: 0;
  border: 1px solid var(--contact-line);
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 14px;
  overflow: hidden;
  font-size: 14px;
}

.contact-page .contact-form .table-contact > tbody {
  display: block;
}

.contact-page .contact-form .table-contact tr {
  display: grid;
  grid-template-columns: 230px minmax(0, 1fr);
  width: 100%;
  border-bottom: 1px solid var(--contact-line);
}

.contact-page .contact-form .table-contact tr:last-child {
  border-bottom: 0;
}

.contact-page .contact-form .table-contact td {
  display: block;
  width: auto !important;
  min-width: 0;
  padding: 20px 22px;
  border: 0;
  color: var(--contact-ink);
  font-size: 14px;
  line-height: 1.75;
  text-align: left;
  vertical-align: middle !important;
}

.contact-page .contact-form .table-contact td:first-child {
  display: flex;
  align-items: center;
  gap: 9px;
  background: #f5f9fc;
  border-right: 1px solid var(--contact-line);
  font-weight: 700;
}

.contact-page .contact-form .table-contact td:first-child a {
  color: var(--contact-blue);
}

.contact-page .required {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  padding: 3px 6px;
  color: #fff;
  background: var(--contact-orange);
  border-radius: 5px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: .05em;
}

.contact-page .contact-form .form-control {
  width: 100%;
  height: 52px;
  padding: 12px 15px;
  color: var(--contact-ink);
  background: #fff;
  border: 1px solid #cbd7e2;
  border-radius: 9px;
  box-shadow: none;
  font-size: 16px;
  line-height: 1.5;
  transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.contact-page .contact-form .form-control::placeholder {
  color: #9aa7b5;
}

.contact-page .contact-form .form-control:hover {
  border-color: #9bb3c7;
}

.contact-page .contact-form .form-control:focus {
  outline: 0;
  border-color: var(--contact-blue-bright);
  box-shadow: 0 0 0 4px rgba(13, 123, 192, .13);
}

.contact-page .contact-form textarea.form-control {
  min-height: 180px;
  resize: vertical;
}

.contact-page .contact-form input[type="checkbox"],
.contact-page .contact-form input[type="radio"] {
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  margin: 5px 7px 5px 2px;
  accent-color: var(--contact-blue);
  vertical-align: -5px;
  cursor: pointer;
}

.choice-list {
  display: grid;
  gap: 8px;
}

.choice-list--inline {
  display: flex;
  flex-wrap: wrap;
}

.choice-option {
  display: flex;
  align-items: flex-start;
  gap: 3px;
  width: fit-content;
  min-height: 38px;
  padding: 6px 10px;
  color: #31465c;
  background: #f8fafc;
  border: 1px solid #e0e7ee;
  border-radius: 8px;
  font-weight: 500;
  line-height: 1.75;
  cursor: pointer;
  transition: color .18s ease, background-color .18s ease, border-color .18s ease;
}

.choice-option:hover,
.choice-option:focus-within {
  color: var(--contact-blue);
  background: var(--contact-blue-soft);
  border-color: #b9d8e9;
}

.contact-page .send {
  max-width: 600px;
  margin: 32px auto 4px;
}

.contact-page .send input[type="submit"] {
  min-height: 62px;
  padding: 15px 24px;
  color: #fff;
  background: linear-gradient(135deg, #0c73b7, #07558c);
  border: 0;
  border-radius: 12px;
  box-shadow: 0 12px 25px rgba(8, 103, 170, .22);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .04em;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.contact-page .send input[type="submit"]:hover,
.contact-page .send input[type="submit"]:focus-visible {
  color: #fff;
  box-shadow: 0 16px 30px rgba(8, 103, 170, .28);
  filter: brightness(1.06);
  transform: translateY(-2px);
}

.contact-keywords {
  margin-top: 34px;
  padding-top: 28px;
  border-top: 1px solid var(--contact-line);
}

.contact-page #container .contact-keywords h3 {
  margin: 0 0 14px;
  padding: 0;
  border: 0;
  color: var(--contact-navy);
  font-size: 15px;
  line-height: 1.5;
}

.contact-keywords__list {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.contact-page #container .contact-keywords__list a {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 8px 13px;
  color: #35526e;
  background: #f5f8fb;
  border: 1px solid #dce5ed;
  border-radius: 999px;
  font-size: 12px;
  line-height: 1.4;
  text-decoration: none;
}

.contact-page #container .contact-keywords__list a:hover {
  color: var(--contact-blue);
  background: var(--contact-blue-soft);
  border-color: #bcdced;
  text-decoration: none;
}

.contact-page .attention {
  color: #9d2b20 !important;
  background: #fff4f1;
  border: 1px solid #f2c7be;
  border-radius: 10px;
}

@media (max-width: 768px) {
  .contact-page #container {
    width: 100% !important;
    margin: 0 auto 58px !important;
    padding: 20px 15px 0;
  }

  .contact-page .main {
    padding: 0;
  }

  .contact-page .panlist {
    padding: 0 12px;
  }

  .contact-hero {
    margin-bottom: 18px;
    padding: 34px 24px 30px;
    border-radius: 16px;
  }

  .contact-page #container .contact-hero h1 {
    margin: 0 0 13px;
    font-size: 26px;
    text-align: left;
  }

  .contact-page #container .contact-lead {
    font-size: 14px;
    line-height: 1.8;
  }

  .contact-assurance {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    margin-top: 22px;
  }

  .contact-assurance span {
    width: fit-content;
    padding: 7px 11px;
    font-size: 12px;
  }

  .document-download {
    grid-template-columns: auto 1fr;
    gap: 15px;
    padding: 20px;
    border-radius: 14px;
  }

  .document-download__icon {
    width: 48px;
    height: 48px;
    font-size: 22px;
  }

  .contact-page #container .document-download h2 {
    margin: 0 0 4px;
    font-size: 16px;
  }

  .document-download__button {
    grid-column: 1 / -1;
    width: 100%;
  }

  .contact-page .content {
    padding: 30px 16px 24px;
    border-radius: 16px;
  }

  .contact-page #container .form-heading h2 {
    margin: 0 0 8px;
    font-size: 21px;
  }

  .form-steps {
    margin: 24px auto 28px;
  }

  .contact-page .contact-form .table-contact tr {
    display: block;
  }

  .contact-page .contact-form .table-contact td {
    width: 100% !important;
    padding: 16px;
    font-size: 13px;
  }

  .contact-page .contact-form .table-contact td:first-child {
    min-height: 0;
    padding: 13px 16px;
    border-right: 0;
    border-bottom: 1px solid #e8eef3;
  }

  .contact-page .contact-form .form-control {
    height: 50px;
    font-size: 16px;
  }

  .contact-page .contact-form textarea.form-control {
    min-height: 160px;
  }

  .contact-page .send {
    margin-top: 25px;
  }

  .contact-page .send input[type="submit"] {
    min-height: 58px;
    font-size: 15px;
  }

  .contact-keywords {
    margin-top: 28px;
    padding-top: 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .contact-page *,
  .contact-page *::before,
  .contact-page *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}


/* 2026 form-page refresh: scoped to #container only. */
#container.contact-layout {
  --form-navy: #071c38;
  --form-blue: #0b6fc2;
  --form-blue-dark: #075899;
  --form-blue-soft: #edf7ff;
  --form-ink: #172a43;
  --form-muted: #65758a;
  --form-line: #dbe4ec;
  --form-required: #ff6678;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 24px;
  align-items: start;
  width: min(1420px, calc(1200px - 32px)) !important;
  margin: 28px auto 80px;
  padding: 0;
  overflow: visible;
}

#container.contact-layout .main {
  width: 100% !important;
  margin: 0;
  padding: 28px 30px 30px;
  float: none;
  background: #fff;
  border: 1px solid #e1e8ef;
  border-radius: 12px;
  box-shadow: 0 14px 38px rgba(17, 49, 78, .09);
}

#container.contact-layout .content {
  width: 100%;
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

#container.contact-layout .contact-intro {
  display: flex;
  align-items: center;
  gap: 22px;
  margin: 0 0 24px;
}

#container.contact-layout .contact-intro__icon {
  display: grid;
  flex: 0 0 74px;
  width: 74px;
  height: 74px;
  place-items: center;
  color: var(--form-blue);
  background: var(--form-blue-soft);
  border-radius: 50%;
  font-size: 32px;
}

#container.contact-layout .contact-intro__body {
  min-width: 0;
}

#container.contact-layout .contact-intro__label {
  margin: 0 0 4px;
  color: var(--form-blue);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: .16em;
}

#container.contact-layout .contact-intro h1 {
  margin: 0;
  padding: 0;
  color: var(--form-navy);
  background: transparent;
  border: 0;
  font-size: clamp(25px, 2.3vw, 34px);
  font-weight: 700;
  line-height: 1.35;
  text-align: left;
  letter-spacing: .02em;
}

#container.contact-layout .contact-intro__lead {
  margin: 8px 0 0;
  color: var(--form-muted);
  font-size: 14px;
  line-height: 1.75;
}

#container.contact-layout .document-guide {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 15px;
  align-items: start;
  margin: 0 0 22px;
  padding: 17px 20px;
  background: #f5faff;
  border: 1px solid #d5e8f6;
  border-radius: 10px;
}

#container.contact-layout .document-guide__icon {
  display: grid;
  width: 46px;
  height: 46px;
  place-items: center;
  color: var(--form-blue);
  background: #fff;
  border: 1px solid #d7e7f2;
  border-radius: 10px;
  font-size: 20px;
}

#container.contact-layout .document-guide p {
  margin: 0;
  color: #4e6278;
  font-size: 13px;
  line-height: 1.85;
}

#container.contact-layout .document-guide a {
  color: var(--form-blue);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
}

#container.contact-layout .contact-form {
  margin: 0;
}

#container.contact-layout .contact-form .table-contact {
  display: block;
  width: 100%;
  margin: 0;
  background: transparent;
  border: 0;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 14px;
}

#container.contact-layout .contact-form .table-contact > tbody {
  display: block;
  width: 100%;
}

#container.contact-layout .contact-form .table-contact tr {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  width: 100%;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--form-line);
  border-radius: 9px;
}

#container.contact-layout .contact-form .table-contact tr:last-child {
  margin-bottom: 0;
}

#container.contact-layout .contact-form .table-contact td {
  display: block;
  width: auto !important;
  min-width: 0;
  padding: 14px 18px;
  color: var(--form-ink);
  background: #fff;
  border: 0;
  font-size: 14px;
  line-height: 1.65;
  text-align: left;
  vertical-align: middle !important;
}

#container.contact-layout .contact-form .table-contact td:first-child {
  display: flex;
  align-items: center;
  gap: 10px;
  background: #f8fafc;
  border-right: 1px solid var(--form-line);
  font-weight: 700;
}

#container.contact-layout .contact-form .table-contact td:first-child a {
  color: var(--form-blue);
  text-decoration: underline;
  text-underline-offset: 3px;
}

#container.contact-layout .contact-form .required {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  padding: 3px 7px;
  color: #fff;
  background: var(--form-required);
  border-radius: 4px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: .05em;
}

#container.contact-layout .contact-form .form-control {
  width: 100%;
  height: 46px;
  padding: 10px 14px;
  color: var(--form-ink);
  background: #fff;
  border: 1px solid #c7d2dc;
  border-radius: 6px;
  box-shadow: inset 0 1px 2px rgba(8, 30, 52, .04);
  font-size: 16px;
  line-height: 1.5;
  transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

#container.contact-layout .contact-form .form-control::placeholder {
  color: #96a2af;
}

#container.contact-layout .contact-form .form-control:hover {
  border-color: #9eb2c4;
}

#container.contact-layout .contact-form .form-control:focus {
  outline: 0;
  background: #fcfeff;
  border-color: var(--form-blue);
  box-shadow: 0 0 0 4px rgba(11, 111, 194, .12);
}

#container.contact-layout .contact-form textarea.form-control {
  min-height: 132px;
  resize: vertical;
}

#container.contact-layout .contact-form input[type="checkbox"],
#container.contact-layout .contact-form input[type="radio"] {
  flex: 0 0 auto;
  width: 19px;
  height: 19px;
  margin: 2px 0 0;
  accent-color: var(--form-blue);
  cursor: pointer;
}

#container.contact-layout .contact-form .choice-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4px 14px;
  align-content: center;
}

#container.contact-layout .contact-form .choice-list--inline {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
}

#container.contact-layout .contact-form .choice-option {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  min-width: 0;
  min-height: 36px;
  margin: 0;
  padding: 7px 9px;
  color: #31465c;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 6px;
  font-weight: 500;
  line-height: 1.55;
  cursor: pointer;
  transition: color .18s ease, background-color .18s ease, border-color .18s ease;
}

#container.contact-layout .contact-form .choice-option:hover,
#container.contact-layout .contact-form .choice-option:focus-within {
  color: var(--form-blue-dark);
  background: var(--form-blue-soft);
  border-color: #c6e1f3;
}

#container.contact-layout .contact-form .send {
  position: relative;
  max-width: 500px;
  margin: 24px auto 2px;
}


#container.contact-layout .contact-form .send::after {
  position: absolute;
  top: 50%;
  right: 24px;
  color: #fff;
  font-family: "Font Awesome 5 Free";
  font-size: 13px;
  font-weight: 900;
  content: "\f105";
  pointer-events: none;
  transform: translateY(-50%);
}

#container.contact-layout .contact-form .send input[type="submit"] {
  width: 100%;
  min-height: 56px;
  padding: 14px 54px 14px 28px;
  color: #fff;
  background: linear-gradient(135deg, #287fe7 0%, #0866b0 100%);
  border: 0;
  border-radius: 999px;
  box-shadow: 0 10px 22px rgba(8, 103, 176, .23);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .04em;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

#container.contact-layout .contact-form .send input[type="submit"]:hover,
#container.contact-layout .contact-form .send input[type="submit"]:focus-visible {
  color: #fff;
  box-shadow: 0 14px 28px rgba(8, 103, 176, .30);
  filter: brightness(1.05);
  transform: translateY(-2px);
}

#container.contact-layout .side {
  position: sticky;
  top: 82px;
  display: block;
  width: 100% !important;
  margin: 0;
  padding: 18px;
  float: none;
  background: #fff;
  border: 1px solid #e1e8ef;
  border-radius: 12px;
  box-shadow: 0 14px 38px rgba(17, 49, 78, .08);
}

#container.contact-layout .side h2 {
  margin: 0 0 14px;
  padding: 0 0 11px;
  color: var(--form-navy);
  background: transparent;
  border: 0;
  border-bottom: 2px solid #dce8f2;
  font-size: 15px;
  line-height: 1.5;
  text-align: left;
}

#container.contact-layout #side-content {
  margin: 0;
}

#container.contact-layout #side-content a {
  display: block;
  overflow: hidden;
  background: #eef5f9;
  border-radius: 7px;
  box-shadow: 0 5px 14px rgba(9, 40, 68, .11);
  transition: transform .18s ease, box-shadow .18s ease;
}

#container.contact-layout #side-content a:hover {
  box-shadow: 0 9px 20px rgba(9, 40, 68, .17);
  transform: translateY(-2px);
}

#container.contact-layout #side-content img {
  display: block;
  width: 100%;
  height: auto;
}

#container.contact-layout #side-content .space {
  height: 14px;
}

@media (max-width: 1100px) {
  #container.contact-layout {
    grid-template-columns: minmax(0, 1fr) 260px;
  }

  #container.contact-layout .main {
    padding: 24px;
  }

  #container.contact-layout .contact-form .table-contact tr {
    grid-template-columns: 210px minmax(0, 1fr);
  }

  #container.contact-layout .contact-form .choice-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 820px) {
  #container.contact-layout {
    display: block;
    width: 100% !important;
    margin: 0 auto 58px !important;
    padding: 18px 14px 0;
  }

  #container.contact-layout .main {
    padding: 22px 18px 24px;
    border-radius: 11px;
  }

  #container.contact-layout .side {
    display: none;
  }

  #container.contact-layout .contact-intro {
    gap: 15px;
    margin-bottom: 20px;
  }

  #container.contact-layout .contact-intro__icon {
    flex-basis: 58px;
    width: 58px;
    height: 58px;
    font-size: 25px;
  }

  #container.contact-layout .contact-intro__label {
    font-size: 10px;
  }

  #container.contact-layout .contact-intro h1 {
    font-size: 23px;
  }

  #container.contact-layout .contact-intro__lead {
    margin-top: 5px;
    font-size: 13px;
  }

  #container.contact-layout .document-guide {
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 11px;
    padding: 14px;
  }

  #container.contact-layout .document-guide__icon {
    width: 38px;
    height: 38px;
    font-size: 17px;
  }

  #container.contact-layout .contact-form .table-contact tr {
    display: block;
    margin-bottom: 10px;
  }

  #container.contact-layout .contact-form .table-contact td {
    width: 100% !important;
    padding: 14px;
    font-size: 13px;
  }

  #container.contact-layout .contact-form .table-contact td:first-child {
    min-height: 0;
    padding: 11px 14px;
    border-right: 0;
    border-bottom: 1px solid #e6edf3;
  }

  #container.contact-layout .contact-form .form-control {
    height: 50px;
    font-size: 16px;
  }

  #container.contact-layout .contact-form textarea.form-control {
    min-height: 150px;
  }

  #container.contact-layout .contact-form .choice-grid {
    grid-template-columns: 1fr;
    gap: 3px;
  }

  #container.contact-layout .contact-form .choice-option {
    width: 100%;
    min-height: 42px;
    padding: 9px 8px;
  }

  #container.contact-layout .contact-form .choice-list--inline .choice-option {
    width: auto;
    min-width: 112px;
  }
}

@media (max-width: 480px) {
  #container.contact-layout {
    padding-right: 10px;
    padding-left: 10px;
  }

  #container.contact-layout .main {
    padding: 19px 12px 22px;
  }

  #container.contact-layout .contact-intro {
    align-items: flex-start;
  }

  #container.contact-layout .contact-intro__icon {
    flex-basis: 52px;
    width: 52px;
    height: 52px;
    font-size: 22px;
  }

  #container.contact-layout .contact-intro h1 {
    font-size: 20px;
  }

  #container.contact-layout .document-guide {
    grid-template-columns: 1fr;
  }

  #container.contact-layout .document-guide__icon {
    display: none;
  }
}

/* ////////////// footer */



.content-wrap {
width: 1000px;
margin: 0px auto;
padding: 0px;
}


#footer {
width: 100%;
position:relative;
background: -webkit-linear-gradient(#030512 0%, #112b4c 100%);
background: -moz-linear-gradient(#030512 0%, #112b4c 100%);
background: -ms-linear-gradient(#030512 0%, #112b4c 100%);
padding: 20px 0 0px;
overflow: hidden;
line-height: 20px
}

#footer a:link,
#footer a:visited {
color: #fff;
}

#footer a:hover,
#footer a:active {
color: #fff;
text-decoration: underline;
}

.span2,
.span3 {
	width: 18% !important;
	float: left;
	margin: 0 0 0 1%;

}

.span3 ul {
	padding-top: 5px;
}

.span4 {
padding-top: 0px;
}

.span2 h5 {
font-size: 15px;
border-bottom: 1px solid #fff;
padding-bottom: 10px;
box-shadow: 0px -1px 0px rgb(31, 31, 31) inset;
color: #FFF ;
margin: 0 0 10px;
}

.span2 li {
font-size: 13px;
text-align: left;
line-height: 180%;
}

.span3 li {
font-size: 13px;
text-align: left;
line-height: 180%;
}


.span2 li a,
.span3 li a {
color: #fff;
}


.span2 li a:before {
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  font-weight : 900;
  padding-right: 5px;
}


.span3 li a:before {
  content: "\f0a9";
  font-family: "Font Awesome 5 Free";
  padding-right: 5px;
  font-weight : 900;
}



.span2 {
margin-top: 10px !important;
}

/* footer */

.foot-content {
	width: 90%;
	margin: 0 auto;
	display: flex;
	flex-flow: space-around;
}

.footcon {
	width: 22%;
    margin: 1.5%;
}

.footcon h5 {
	color: #f2f2f2;
	font-size: 15px;
	margin-bottom: 10px;
	padding-bottom: 10px;
	letter-spacing: .1rem;
	font-weight: bold;
	border-bottom: 1px solid #ddd;
}

.footcon ul {
	margin-bottom: 30px;
}


.footcon li a {
	color: #DDD !important;
	font-size: 13px;
	line-height: 190%;
}


/* youtube */

.yt-bg {
	text-align: center;
	margin: 0 auto;
	width: 100%;
	background-color: #f2f2f2;
	padding: 20px 10px;
}

/* company */

.company dl {
		   border-bottom: solid 1px #ddd;
		   font-size: 14px;
		   margin-bottom: 10px;
		   padding-bottom: 10px;
	   }
	   
.company dd {
		   margin: 0 0px 0 150px;
		   
	   }
	   

/* ////////////// copyright */

#copyright {
overflow: hidden;
width: 100%;
background-color: #000;
margin: 0 auto;
padding: 15px 0;
}


.copy-body,
.copy-link {
	display: initial;
}

.copyright {
color: #fff;
margin: 0 auto;
text-align: center;
width: 1000px;
font-size: 16px;
line-height: 250%;
}

.copyright a {
	padding: 20px;
	color: #fff;
}



 .copy {
font-size: 11px;
margin: 0;
padding: 0;
text-align: center;
color: #fff;
}

.warning-bottom {
font-size: 9px;
display:inline-block;
text-align: center;
width: 100%;
color: #fff;
padding-bottom: 20px;
}

#copyright .by {
color: #fff;
text-align: center;
font-size: 8px;
}

.row-fluid {
width: 100%;
}
.row-fluid [class*="span"]:first-child {
margin-left: 0px;
}

.row-fluid [class*="span"] {
display: block;
float: left;
width: 100%;
min-height: 30px;
margin-left: 2.12766%;
box-sizing: border-box;
}
.row-fluid .span4 {
width: 31.9149%;
}
.row-fluid .span2 {
width: 14.8936%;
}


#topcontrol {
	right: 20px !important;
	bottom: 20px !important;
}

.link-arrow::after {
  content: "\f105";
  font-family: "Font Awesome 5 Free";
  font-weight : 900;
  padding-left: 5px;
}

.sp-footer {
	display: none;
}

.error-big {
	text-align: center;
	margin: 40px auto 20px;
	font-size: 120px;
	font-style: italic;
	font-weight: bold;
}

/* bottom */

.bottom-contact {
	width: 100%;
	height: 300px;
	background-size:cover;
	background-image: url(/images/bottom-bg.jpg);
}

.bottom-cover {
background-color: rgba(0,0,0,0.4);
overflow: hidden;
}

.bottom-contact h3 {
	text-align: center;
	padding-top: 80px;
	font-size: 18px;
	color: #fff;
}

.bottom-contact p {
	text-align: center;
	padding-bottom: 80px;
}

/* 関連記事 phone000 */
	.related-article {
		border: solid 1px #ddd;
		padding: 20px;
		overflow: hidden;
		margin-bottom: 40px;
		position: relative;
	}
	
	.related-article h3 {
		text-align: center;
		background: #f2f2f2;
		padding: 10px 0px;
		border-bottom: solid #eee 1px;
	}
	
	.related-article ul {
       width: 100%;
	}
	
	.related-article li {
		width: 50%;
		float: left;
		display: block;
		padding: 10px 0;
	}

	/* form option */

.copy-block {
  /* Wrapper class for entire block. */
  max-height: 25px;
  position: relative;
  overflow: hidden;
  margin-top: -20px;
}
.copy-block .fade-away {
  /* Class to provide a gradient fade to the call-to-action. */
  background: #fff;
  background: -webkit-linear-gradient(transparent, #fff);
  background: -moz-linear-gradient(transparent, #fff);
  background: -o-linear-gradient(transparent, #fff);
  background: linear-gradient(transparent, #fff);
  text-align: center;
  font-size: 1rem;
  font-weight: bold;
  margin-top: 10px;
}
.fade-away:hover {
	text-decoration: underline;
}
.copy-block .read-more {
  /* Class to provide positioning for the call-to-action. */
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: center;
  margin: 0;
  padding:0px;
}

/* other plans */


.other-plan {
	width: 70%;
	margin: 40px auto 60px;
}
.other-plan h3 {
	padding: 10px;
	border: solid 1px #333;
	width: 260px;
	margin: 0 auto 30px;
}

.start-plan {
	width: 100%;
	text-align: center;
	display: inline-block;
	margin: 0px;
}

.start-plan-page {
	width: 23%;
	text-align: center;
	display: inline-block;
	margin: 0 5px;
	padding: 10px;
	color: #fff;
}


/* faq 項目 */

.inner {
	padding: 10px 20px;
	background: #f7f7f7;
	border-radius: 5px;
}


/* btn link */


.btn-hover {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	border: 1px solid #0070c9;
	padding: 1.3rem 3rem;
	position: relative;
	overflow: hidden;
	text-decoration: none;
	border-radius: 2px;
}
.btn-hover .txt {
    font-family: 'Archivo Black', sans-serif;
	transition: color .1s ease-in-out;
	transition-delay: .1s;
	position: relative;
	z-index: 1;
	font-size: 1rem;
 letter-spacing: .5rem;
	font-weight: bold;
	text-align: center;
	margin: 0 auto;
	line-height: 150%;
	color: #0070c9;
}

.btn-hover .wipe, .btn-hover::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.btn-hover::after, .btn-hover .wipe::before, .btn-hover .wipe::after {
	transition: -webkit-transform 0.5s cubic-bezier(0.27, 0.16, 0.01, 0.99);
	transition: transform 0.5s cubic-bezier(0.27, 0.16, 0.01, 0.99);
	transition: transform 0.5s cubic-bezier(0.27, 0.16, 0.01, 0.99), -webkit-transform 0.5s cubic-bezier(0.27, 0.16, 0.01, 0.99);
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 0;
}

.btn-hover:hover {
	text-decoration: none;
	}

.btn-hover:hover .txt {
	color: #fff;
	text-decoration: none;
}

.btn-hover::after {
	content: "";
	position: absolute;
	background: #0070c9;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.btn--hori::after {
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: right;
	transform-origin: right;
}
.btn--hori:hover::after {
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
	-webkit-transform-origin: left;
	transform-origin: left;
	transition-delay: 0s;
}


@media (max-width: 768px) { 

  /* スマホ用のスタイル */
  
  body {
	  overflow-x: hidden;
  }
  
  .tel,
  .pc-none,
  .menu-logo {
	  display: none !important;
  }


  
  .sp-none {
	  display: inherit;
  }
  
  .logo {
	  text-align: center;
	  margin: 0 auto;
	  width: 100%;
  }
  .tel {
	  float: none;
	  margin: 0 auto;
	  text-align: center;
  }
  
  .panlist {
	  width: 100%;
  }
  
  .list-under li {
	  font-size: .8rem;
  }
  
  
  /* menu */
  
  .menu > ul {
	  width: 100%;
  }
  
  a.menu-mobile {
	  color: #fff;
  }
  
  a.menu-mobile:hover {
	  opacity: 0.6;
  }
  

  .menu-dropdown-icon:before {
	  background: transparent;
	  color: #fff;
	  content: "\f067" !important;
	  font-family: "Font Awesome 5 Free";
      font-weight : 900;
  }
  
  .menu > ul > li > ul > li {
	  margin: 0;
	  border-top: solid 1px #000;
  }
  .menu > ul > li > ul > li a {
	  color: #333;
	  background-color: #fff !important;
  }
  
  .menu > ul > li > ul > li a:hover {
  background : rgba(255,255,255,0.95) !important;
  }
  
  #container {
	  padding: 10px 0;
  }
  #container p {
	  font-size: 13px;
  }
  #container h1,
  #container h2 {
	  font-size: 15px;
	  margin: 20px auto;
  }
  
  
  .panel-body {
	  padding: 0 10px 40px;
  }
  

/* btn */

.read-more {
	padding: 10px !important;
	height: inherit !important;
	line-height: 200% !important;
}
  
  
  /* table */
  
  
  .table-top {
    font-size: 1.2rem;
    }
	
	
.table-top:before {
    width: 50px;
    height: 2px;
}

.table-top:after {
    width: 50px;
    height: 2px;
}
  
  .btn-lg {
	  width: 100%;
	  display: block;
	  padding: 10px;
	  border-radius: 6px;
	  text-align: center;
  }
  
  .btn-primary {
    background-color: #428bca;
    border-color: #357ebd;
    }
    
    .btn-info {
   background-color: #5bc0de;
    border-color: #46b8da;
    }
    
  .table-contact td {
	  width: 40px;
  }
  .w {
	  color: white;
  }
  
  .required {
    display: inline-block;
    text-align: right;
    }
    
    .title-bg {
	font-size: 15px;
    padding: 10px 20px;
    border: solid 5px #eee;
    margin-bottom: 10px;
}
  
  /* btn */
  
  .btn-success {
    color: #fff;
    background-color: #5cb85c;
    border-color: #4cae4c;
    }
  
  .customer-voice .btn {
	  padding: 10px;
  }
  
  
  /* article list */
  
  .list-article {
		padding: 0;
		display: inherit;
		margin-bottom: 20px;
	}
	
	.list-article figure {
		margin-right: auto;
		width: 100%;
		height: auto;
		padding-bottom: 10px;
	}
	
	.text_content h3 {
		margin-bottom: 10px;
	}
	
	
  /* footer */
  
.copyright,
.content-wrap,
.bottom-link {
	width: 100%;
}

.span2 {
	width: 48% !important;
padding: 0 20px;
margin: 0 0 10px !important;
}

.span3 {
	width: 48% !important;
padding: 0 20px;
margin: -30px 0 10px !important;
}


#copyright {
	 padding: 20px 0 0px;
 }

.copy {
	padding: 0 20px;
}

.bg-grey-content,
.bg-grey-content2,
.content,
.content-top,
.content-one {
	width: 100%;
}

.bg-grey-content,
.bg-grey-content2 {
	padding: 20px;
}

/* one clam */
.bg-grey h4 {
	font-size: 15px;
	line-height: 160%;
}

.bottom-link p {
	padding: 0 10px !important;
	margin: 0 auto !important;
}


  /* table sp */
  
  
  table.tbl-r03 {
  border: solid 1px #ddd;
  }
  
  .tbl-r03 {
    width: 100%;
  }
  .tbl-r03 tr {
    display: block;
    float: left;
  }
  .tbl-r03 tr td, 
  .tbl-r03 tr th {
    border-left: none;
    display: block;
    height: 50px;
    padding-top: 15px;
    text-align: center;
  }
  .tbl-r03 thead {
    display: block;
    float: left;
    width: 31%;
  }
  .tbl-r03 th {
	  width: 100%;
	  font-size: 12px;
  }
  .tbl-r03 td {
	  font-size: 15px;
  }
  .tbl-r03 thead tr {
    width: 100%;
  }
  .tbl-r03 tbody {
    display: block;
    float: left;
    width: 69%;
  }
  .tbl-r03 tbody tr {
    width: 100%;
  }
  .tbl-r03 tr td + td {
    border-left: none;
  }
  
  .tbl-r03 tr th:nth-child(4) {
	  padding-top: 9px;
  }




/* one カラム */

.sp-img img,
.print img {
	width: 100%;
}

.customer-img img {
	width: 100%;
	height: auto;
}

.main-1column {
	border: none;
	padding: 0 15px;
}

.box-one {
	padding: 0;
}

#container h1 {
	margin: 20px 0 10px;
}

dt,
dd {
	font-size: 14px;
}

.flow-content {
	border: none;
	padding: 0;
}

.flow-content h3 {
	margin: 0;
	font-size: 15px;
}

.flow li {
	width: 100%;
}

.flow li:nth-child(2) {
	padding: 0;
	margin: 0;
	border: none;
}

/* table */

.sp-td {
width: 23% !important;
}

.table-bordered > tbody > tr > td, .table-bordered > tbody > tr > th, .table-bordered > tfoot > tr > td {
	border: 0.5px solid #ddd;
}

td.table-left {
	width: 30%;
}
/* btn */
.application .btn-lg {
	 font-size: 14px !important;
 }

 /* 2カラム */
  
  #container {
	  width: 100% !important;
	  margin: 0 !important;
	  padding: 0;
  }
  
  .main {
	  width: 100% !important;
	  margin: 0 !important;
	  border: none;
  }
  
  .phone a.right {
  float: none;
  display: block;
  padding-top: 10px;
	  margin: 0 auto;
	  text-align: center;
  }
  
  a.right {
  float: none;
  padding: 10px;
  display: block;
  text-align: center;
  }
  
  /* plan */
  
  .main-1column,
  iframe,
  .audiojs {
	  width: 100%;
  }
  
  .table-left img {
	  width: ３0px;
    display: block;
    text-align: center;
    margin: 0 auto;
  }
  
  .title-form,
  .btn-success {
    font-size: 16px ;
    }
   
   h1.executive {
	   letter-spacing: 0px !important;
   }
  /* map */
  
  table.map td {
	  width: 33.33333%;
  }
  
   table.map td img {
	   width: 100%;
   }
   
   /* site map */
   .sitemap-list li {
	   font-size: 13px;
   }
  
/* side */

.side {
	border: none;
	width: 100%;
	padding: 0 20px;
}

.side-ribon {
    margin: 15px auto 0;
    }
    
    /* map */
    
    #map {
	    display: none;
    }
    
    .suji-big {
    font-size: 14.5px;
}

/* other plans */

.other-plan {
	display: none;
}

/* footer */


.span2 h5 {
	font-size: 13px;
}

.span2 li {
	font-size: 11px;
}

.copyright {
	font-size: 14px;
}

.copy-body,
.copy-link {
	display: block;
	margin: 0 auto;
}

.copy {
    font-size: 10px;
    }
    
    .sp-footer {
	display: inherit;
}

.copy-link,
.copy-body,
.bottom-contact {
	display: none;
}

.sp-footer ul {
	width: 100%;
	position: relative;
	margin: 0px;
	overflow: hidden;
		border-bottom: solid 1px #eee;
	border-top: solid 1px #eee;
}

.sp-footer li {
	float: left;
	width: 33.33333%;
	margin: 0 auto;
	border-left: solid 1px #eee;
	overflow: hidden;
}

.sp-footer li:first-child {
border-left: none;
}

.sp-footer li a {
	text-align: center;
	padding: 0;
	display: block;
	text-decoration: none !important;
	padding: 10px !important;
	font-size: 12px;
	line-height: 180%;
}

.sp-footer li a:hover {
 background-color: #20ec00;
	}

.sp-footer li .fa,
.sp-footer li .far {
	font-size: 22px;
	color: #20ec00;
}

.sp-footer li:hover .fa{
	color: #fff;
}

.sp-footer p {
	margin-bottom: 15px;
}




/* thanks header */

.steps  {
	width: 100%;
}

.content img {
	width: 100%;
}

.sent-body {
	padding: 0 20px;
	}

/* footer sp */

.foot-content {
	display: inherit;
}

.footcon {
	width: 100%;
	width: 44%;
    float: left;
}

.footcon h5 {
	font-size: 13px;
}

.footcon li a {
	font-size: 11px;
}

.footcon-sp {
	margin-left: 6%;
}


/* arrow */
#topcontrol img {
	width: 40px !important;
	height: 40px !important;
}

#topcontrol {
right: 5px !important;
	bottom: 65px !important;
	}


/* youtube */

.yt-bg {
padding: 10px;
}

/* plan custam */


.title-form {
    line-height: 150%;
}

.two-stage {
	display: block;
	margin: 0 auto;
}

/* re new */

.other-service {
	padding: 20px 20px 40px !important;
	margin: 0;
}

/* plan 1st view */

.box-txt {
    width: 100%;
    margin: 20px auto 0;
    padding: 20px 20px 20px;
    border: solid 3px #f2f2f2;
    }

}

@media screen and (max-height: 30.5em) {
	.overlay nav {
		height: 70%;
		font-size: 34px;
	}
	.overlay ul li {
		min-height: 34px;
	}
}

/* iPhone 5 - 568px*/
@media only screen
and (min-device-width:320px)
and (max-device-width:568px) {

.copyright a {
    padding: 10px;
    }

.overlay ul li {
	font-size: 11px;
}


.btn-success {
    font-size: 13px;
    }

td.table-left,
.table-right {
padding: 15px !important;
} 

.table-left {
	padding: 20px 0 20px 20px !important;
	vertical-align: middle !important;
	font-size: 13px !important;
}

.btn-info,
.btn-primary {
   font-size: 12px;
}

a.w {
	word-wrap: break-word;
  white-space: normal;
}


.span3 {
    margin: -30px 0 10px !important;
}








