@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600&display=swap');
html {
}
body {
	font-family: 'Helvetica Neue', Helvetica, 'Noto Sans JP', sans-serif;
	font-size:16px;
	font-weight:400;
	text-align:center;
	line-height:1.6;
	/*letter-spacing: 0.1em;*/
	color:#232323;
}
body.send {
	background-color: #fff;
}
a {
	transition : all 0.4s;
	-webkit-transition : all 0.4s;
	opacity:1;
	outline:none;
    color:#232323;
    text-decoration:underline;
}
a:hover {
	opacity: 0.5;
    color:#555;
}


.only_smart,
.only_smart_i{
	display:none !important;
}



#wrapper{
	min-width:950px;
}


/* header */


header{
	width:100%;
	min-width:974px;
	z-index:999;
	/*position:fixed;*/
	/*background: url("../images/bg_hd_top.png") top center no-repeat;*/
}
body.send header{
	/*background: url("../images/bg_hd.png") top center no-repeat;*/

}
header > div{
	max-width:974px;
	/*height:252px;*/
	position: relative;
	margin:auto;
	/*padding:0 10px;*/
	/*display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;*/
}
header > div h1 a{
	display:block;
	/*width:217px;
	line-height:1;*/
}
header > div nav{
	background-color: #003e67;
	width: 100vw;
    margin: 0 calc(50% - 50vw);
}
header > div nav > ul{
	/*width:640px;*/
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
}
header > div nav > ul > li{
	position:relative;
}
header > div nav > ul > li > a{
	font-size:13px;
	font-weight:400;
	color:#fff;
}
header > div nav ul > li > a:after{
	content:'｜';
	display:inline-block;
	margin-left:25px;
	padding-right: 25px;
	color: #fff;
	/*transform:rotate(90deg) translateX(0.3em);*/
}
header > div nav > ul > li:last-child a:after{
	content:'';
	padding-right: 0px;
}


@media print,screen and (min-width: 751px){
	
header > div h1 img{
    display: block;
    margin:  50px auto 40px auto;
}
body header p img{
	position: absolute;
	top: 0px;
	right: 0;
	width: 358px;
	height: auto;
}	
header > div > strong{
	font-size: 30px;
	color: #fff;
	letter-spacing: 0.2em;
	font-weight: 500;
}
header > div nav{
	margin-top: 10px;
}
header > div nav > ul > li{
	position:relative;
	padding-top: 0px;
	padding-bottom: 5px;
}
	
	
body.send header{
	position: relative;
}
body.send header > div{
	max-width:974px;
	/*height:252px;*/
	margin:auto;
	/*padding:0 10px;*/
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
	flex-direction: column;
}
body.send header h1{
	color: #1fa088;
	font-size: 29px;
	/*letter-spacing: 0.1em;*/
    font-weight: 700;
	width: 100%;
    line-height: 1.3;
	margin-top: 20px;
	margin-bottom: 10px;
}
    
body.send header p{
	font-size: 16px;
	/*letter-spacing: 0.1em;*/
	width: 100%;
    line-height: 1.5;
    color: #555;
}

}


/* mv */
#mv{
	width:950px;
	margin: 0 auto;
	padding:20px 0px 20px 0;
}
#mv p{
    font-size: 18px;
    color: #555;
}
#mv p.mukou{
    color: #E60012;
    font-weight: 600;
}

/* article */
article{
	width:950px;
	margin: 0 auto;
	/*background-color:#fff;*/
	padding:190px 0px 0px 0;
}
body.send article{
	width:1000px;
	padding:0px 0px 0px 0;
}


/* section */
section{}


/* .cont */
.cont{
	width:auto;
	margin:0 auto;
	padding:40px 0 0px;
	/*background-color:#fff;*/
}
.cont h2{
	/*font-size:42px;
	color:#0080c7;
	letter-spacing: 0.18em;
	font-weight: 600;*/
    color: #555;
    ont-weight: 400;
    text-align: left;
    font-size: 16px;
    margin: 20px 0 10px 0;
}



/* #contact */
#contact{
	padding:20px 0 60px 0;
	margin-top: 0px;
	background-color: #fff;
}

#contact form{
	width:934px;
	margin:auto;
}
#contact form dl.g-dl{
	text-align:left;
	color:#555555;
}
#contact form dl.g-dl dt{
	font-size:18px;
	margin-bottom: 5px;
    color: #1fa088;
    font-weight: 800;
}


#contact form dl.g-dl dt.fr{
	margin-bottom:8px;
	padding-bottom: 8px;
	border-bottom:1px solid #555555;
}
#contact form dl.g-dl dt.hissu::after,
#contact #pr p.hissu::after{
	content:'必須';
	font-size:15px;
	color:#fff;
	margin-left: 10px;
    margin-top: 5px;
    background-color: #000;
	padding: 3px 6px 3px 6px;
	vertical-align: text-bottom;
	border-radius: 3px 3px 3px 3px;
}
#contact form dl.g-dl dt.nini:after{
	content:'任意';
	font-size:15px;
	color:#888;
	margin-left: 10px;
	border: #CCC solid 2px;
	padding: 2px;
	vertical-align: text-bottom;
	border-radius: 5px 5px 5px 5px;
}
#contact form dl.g-dl dd{
	padding:0 0 15px;
	margin-bottom: 10px;
	font-size:16px;
}
#contact form dl.g-dl dd.ad{
	padding:0 0 15px;
	margin-bottom: 0px;
	font-size:16px;
}
#contact form dl.g-dl dd span.txt_small{
	font-size:16px;
    color: #888;
    line-height: 1.5;
    display: block;
    margin-top: 5px;
}
#contact form dl.g-dl dd.line{
	border-bottom: #333 solid 1px;
	margin-bottom: 40px;
	padding-bottom: 50px;
}
#contact form dl.g-dl span.g-txt{
	font-weight:normal;
    color: #555;
    font-size: 14px;
    margin-left: 10px;
}
#contact form dl.g-dl dd ul{
	display: flex;
    width: 100%;
}
#contact form dl.g-dl dd ul.keihin{
	display: flex;
    flex-wrap: wrap;
    /*flex-direction:column;*/
}
#contact form dl.g-dl dd ul.keihin ul li{
	width: 100%;
}
#contact form dl.g-dl dd ul.keihin ul li p{
    padding-top: 10px;
}
#contact form dl.g-dl dd ul.keihin label{
	width: 100%;
}
#contact form dl.g-dl dd #radio_error{
	width: 100%;
    display: block;
}
#contact form dl.g-dl dd ul.keihin input[type="text"]{
	width: 100%;
}

#contact form dl.g-dl dd ul li{
	line-height:20px;
	margin-top:10px;
	margin-right: 50px;
}

/*#contact form dl.g-dl dd ul li input[type="text"]{
	width:calc(100% - 100px);
	margin-left:15px;
}*/

#contact form > p{
	margin:20px 0;
	font-weight:400;
	font-size: 21px;
	display:inline-block;
}
#contact form > p span{
	font-weight:normal;
}

#contact form > p a{
	font-weight:bold;
	color:#e73828;
}
#contact form p.mukou{
    color: #E60012;
    font-weight: 600;
    margin-bottom: 20px;
    margin-top: 20px;
}


#pr{
    padding-bottom: 20px;
    
}
#pr p span{
    color: #555;
}
#pr .kiyaku p{
    color: #555;
    text-align: left;
    font-size: 14px;
    margin-bottom: 20px;
}
#pr .kiyaku{
    overflow-y: scroll;
    height: 200px;
    border: solid 1px #ccc;
    color: #555;
    text-align: left;
    padding: 20px;
}
#pr form .kiyaku dl.d-kiyaku{
    color: #555;
    text-align: left;
}
#pr form .kiyaku dl.d-kiyaku dt{
    color: #555;
    text-align: left;
    font-size: 16px;
    font-weight: 800;
    margin-bottom: 10px;
}
#pr form .kiyaku dl.d-kiyaku dd{
    color: #555;
    text-align: left;
    font-size: 14px;
}
#pr dl.d-kiyaku ul li{
    color: #555;
    text-align: left;
    font-size: 14px;
    list-style: decimal;
    list-style-position: inside;
}
#pr dl.d-kiyaku h3{
    margin-top: 20px;
}



/* サンクスページ */

#contact.thanks{
	padding:55px 0 80px;
	min-height:calc(100vh - 345px);
}
#contact.thanks p{
	width: 880px;
	color: #555;
	font-size: 18px;
	font-weight: 400;
	text-align: left;
	margin: 0 auto 40px auto;
}
#contact.thanks a{
	display:inline-block;
	/*width:600px;
	line-height:60px;*/
	margin:45px 0 0 0;
	/*background-color:#f38977;
	border-radius:6px;
	font-size:20px;
	font-weight:bold;
	color:#fff;*/
}
#contact.thanks a:hover{
	opacity:0.5;
	/*background-color:#fff;
	color:#eb3b1c;*/
}



/* 確認画面 */


#contact div.box_send{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	width: 620px;
	margin: 0 auto;
}
#contact table{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	width: 620px;
	margin: 0 auto;
    font-size: 18px;
    color: #232323;
    margin-top: 20px;
}
#contact table th{
	text-align: left;
	color: #555;
    font-weight: 400;
    width: 430px;
    font-size: 18px;
    padding-bottom: 15px;
}
#contact table td{
	text-align: left;
	color: #555;
    font-weight: 400;
    width: 500px;
    font-size: 18px;
    padding-bottom: 15px;
}
/*#contact dl dt{
	color: #0080c7;
	font-weight: 500;
}
#contact dl dt:before{
	content:'■';
	margin-right: 3px;
}
#contact dl dt:first-of-type{
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}
#contact dl{
	width: 930px;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	text-align: left;
	color: #333;
}
#contact dl dt{
	width: 400px;
}
#contact dl dd{
	width: 530px;
}*/





/* footer */
footer{
	padding:0;
	background-color: #1fa088;
}
footer p{
	margin: 25px 0 30px 0;
	color:#fff;
	font-weight:400;
	font-size: 16px;
}

footer small{
	color:#fff;
    margin-bottom: 40px;
}



/* to_top */
#topbtn{
	position:fixed;
	z-index:100;
	right:100px;
	bottom:-200px;
	-webkit-transition: bottom 0.8s;
	-moz-transition: bottom 0.8s;
	-ms-transition: bottom 0.8s;
	transition: bottom 0.8s;
}
#topbtn_contact{
	position:fixed;
	z-index:100;
	right:100px;
	bottom:-200px;
	-webkit-transition: bottom 0.8s;
	-moz-transition: bottom 0.8s;
	-ms-transition: bottom 0.8s;
	transition: bottom 0.8s;
}

/* #side_nav */
#side_nav{
	position:fixed;
	bottom:200px;
	left:-400px;
	z-index:100;
	-webkit-transition: left 0.8s;
	-moz-transition: left 0.8s;
	-ms-transition: left 0.8s;
	transition: left 0.8s;
}
#side_nav ul li{
	margin-bottom:10px;
}





/* fadein */
.fadein {
	opacity : 0;
	-webkit-transform : translate(0, 70px);
	transform : translate(0, 70px);
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
}
.delay1 {
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
	-webkit-transition-delay: 0.4s;
	transition-delay : 0.4s;
}

.fadein.scrollin{
	opacity : 1;
	-webkit-transform : translate(0, 0);
	transform : translate(0, 0);
}


/*--------------------------------------------
ANIMATION
---------------------------------------------*/
.is-animation{
	opacity : 0;
	transform : translateY( 100px );
	backface-visibility : hidden;
	will-change : opacity , transform;
	transition : opacity 1s ease , transform 1s ease;
}
.is-animation.animation{
	opacity : 1;
	transform : translateY(0);
}






/*--------------------------------------------
　　2024.02.08　追加分
---------------------------------------------*/
.notes {
	color: #e73828;
	max-width: 850px;
	width: 90%;
	font-weight: 500;
	text-align: center;
	padding: 10px 0 10px 0;
	margin: 40px auto;
	border: solid 2px #e73828;
	border-radius: 15px 15px 15px 15px;
}

#cont8 p.fuki02{
    position: relative;
	background-color: #0080c7;
	color: #fff;
	max-width: 540px;
	width: 90%;
	margin: 0 auto 70px;
	padding: 10px 0;
	font-size: 18px;
	font-weight: 500;
	
}
#cont8 p.fuki02:before{
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border-top: 35px solid #0080c7; 
    border-right: 25px solid transparent;
    border-left: 25px solid transparent;
}

#cont8 .backlist{
	font-size: 24px;
	font-weight: 500;
	border: 1px solid #333;
	background-color: #fff;
	max-width: 540px;
	width: 90%;
	margin: 0 auto 60px;
}
#cont8 .backlist a{
	color: #333;
	display: block;
	position: relative;
	padding: 13px 0 13px 0;
}


.yajirushi02::after {
	content: " ";
	position: relative;
	display: inline-block;
	width: 33px;
	height: 33px;
	background-image:url("../images/cont8_icon_02.png");
	background-size: contain;
	top: 5px;
	margin-left: 15px;
}

#cont9 {
	padding: 80px 0;
}
.view-button {
	text-align: center;
	display: inline-block;
    cursor: pointer;
}
.display-area {
	display: none;
}
#cont9 h3 {
	margin: 80px auto 60px;
}

.cont9_box01 {
	text-align: left;
}
/* アコーディオン */
*,
*::before,
*::after {
	box-sizing: border-box;
}
.title-btn {
	font-size: 16px;
	padding: 10px 90px 10px 20px;
	color: #009ba4;
	font-weight: bold;
	transition: 0.3s;
	cursor: pointer;
	position: relative;
	overflow: hidden;
	border-top: 1px solid #555;
	border-bottom: 1px solid #555;
	margin-bottom: -1px;
}
.title-btn::before,.title-btn::after  {
    content: '';
    display: inline-block;
    width: 20px;
    height: 2px;
    background-color: #000;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    transition: opacity 1s;
}
.title-btn::after {
    transform: translateY(-50%) rotate(90deg);
    transition: transform 1s;
}
.title-btn.show::before {
    opacity: 1;
}
.title-btn.show::after {
    transform: translateY(-50%) rotate(180deg);
}
.title-btn table {}
.title-btn table th{
	width: 8%;
}
.title-btn table td{
	width: 92%;
	border: 0;
	padding: 0 0 0 10px;
}
.content {
	font-size: 16px;
	color: #555;
	padding: 20px 90px 20px 70px;
	display: none;
}
/* アコーディオン */

.cont9_box02,
.cont9_box03 {
	background-color: #ecf8f8;
	padding: 20px 50px;
}
.cont9_box02-title01 {
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	color: #009ba4;
	padding-bottom: 10px;
}
.cont9_box02-border01 {
	border: 1px solid #555;
}
.cont9_box02-txt01 {
	font-size: 16px;
	color: #555;
	padding: 20px 100px;
	text-align: left;
}
.cont9_box02-ul01 {
	padding: 20px 0;
	display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
/* .cont9_box02-ul01 li {
	display: flex;
} */
.cont9_box02-txt02 {
	text-align: right;
	font-size: 14px;
	color: #555;
}

.cont9_box03-imgbox {
	position: relative;
	padding: 40px 0 20px;
}
.cont9_box03-fuki {
	position: absolute;
	top: 20px;
	right: -45px;
}

.cont9_box04 {
	background-color: #e8e8e8;
	padding: 50px;
}
.w-box01 {
	background-color: #fff;
	padding: 40px;
	border-radius: 20px;
	margin-bottom: 40px;
}
.w-box01:last-child {
	margin-bottom: 0;
}
.cont9_box04-title01 {
	font-size: 20px;
	font-weight: bold;
	text-align: left;
	color: #009ba4;
	padding-bottom: 10px;
}
.cont9_box04-title01 span { color: #555;}
.cont9_box04-txt01 {
	text-align: left;
	font-size: 16px;
	color: #555;
	padding: 20px 0;
}
.cont9_box04-img01 {
	text-align: center;
	padding-bottom: 20px;
}

/*--------------------------------------------
　　2024.02.08　追加分
---------------------------------------------*/


/*--------------------------------------------
　　slick_slider
---------------------------------------------*/


.sl{
  display: flex;
  align-items: center;
  justify-content: center;
}
.sl p{
    text-align: center;
    margin: 0 auto;
    width: 100%;
}
.inner{
  width: calc(100% - 100px);
  max-width: 600px;
}
.inner li img{
    text-align: center;
    margin: 0 auto;
}
.inner span.txt_small{
	font-size:16px;
    color: #888;
    line-height: 1.5;
    display: block;
    margin-top: 15px;
    text-align: center;
    margin-bottom: 30px;
}

/*slide>span{
  display: flex;
  align-items: center;
  justify-content: center;
  height: 150px;
  background: #fff;
  color: #3498db;
  font-size: 36px;
  font-weight: bold;
}*/

/* arrow */
.slick-arrow{
  z-index: 2;
  top: 50%;
  margin-top: -10px;
  width: 20px;
  height: 20px;
  border-top: 3px solid #ccc;
  border-right: 3px solid #ccc;
  opacity: .8;
}
.slick-arrow::before{
  content: '';
}
.slick-prev{
  left: 30px;
  transform: rotate(-135deg);
}
.slick-next{
  right: 30px;
  transform: rotate(45deg);
}
/* dots */
.slick-dots{
  bottom: 0px;
}
.slick-dots li,
.slick-dots li button,
.slick-dots li button::before{
  width: 12px;
  height: 12px;
}
.slick-dots li{
  margin: 0 7px;
    text-align: center;
}
.slick-dots li button{
  background-color: #ccc;
  opacity: .8;
  border-radius: 100%;
}
.slick-dots li.slick-active button{
  opacity: .4;
}
.slick-dots li button::before{
  content: '';
}

/*--------------------------------------------
　　slick_slider
---------------------------------------------*/