@charset "utf-8";
/* CSS Document */
html{width:100%; overflow-x: hidden;}
body{font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Noto Sans", Meiryo, sans-serif; font-weight:400; font-style:normal; font-size:18px; line-height: 170%; background: #fff; margin: 0;}
h1{display: none;}
p{font-size: 18px; line-height: 170%; color: #4f4f4f;}
/*----------
link
-----------*/
a{display:inline; text-decoration:none; color:#333;}
a:hover{opacity: 0.5;}

/*switch */
.forpc{display:block !important;}
.forsp{display:none !important;}

/*----------
position
-----------*/
.pt1{padding-top:18px;}
.pt2{padding-top:36px;}
.pt3{padding-top:54px;}
.pb1{padding-bottom:18px;}
.pb2{padding-bottom:36px;}
.pb3{padding-bottom:54px;}
.pl1{padding-left:20px;}
.pl2{padding-left:40px;}
.pl3{padding-left:60px;}


.mt1{margin-top:18px;}
.mt2{margin-top:36px;}
.mt3{margin-top:54px;}
.mb1{margin-bottom:18px;}
.mb2{margin-bottom:36px;}
.mb3{margin-bottom:54px;}

.img_right{float: right; padding: 0 0 40px 40px;}
.clear{clear: both;}
/*----------
bg-color
-----------*/
.b-black{background:#333;}
.b-gray{background:#E3E3E3;}
.b-white{background:#fff;}
.b-blue{background:#0B7CAE;}
.b-red{background:#FE0000;}
.b-orange{background:#FE6600;}
.b-dblue{background:#2157B4;}

/*----------
txt
-----------*/
.red{color:#c9102e;}
.blue{color:#184497;}
.white{color:#fff;}
.green{color:#00ae29;}
.bold{font-weight:bold;}
.f-red{color:#FE0000;}
.fontS{font-size: 15px; line-height: 120%;}
.fontL{font-size: 22px; line-height: 200%;}
.fontLL{font-size: 30px; line-height: 200%;}
.fontLLL{font-size: 48px; line-height: 200%;}
strong{font-weight: 800;}
.ita{font-style: italic;}
.link_blue{color:#0B7CAE; font-weight: bold;}
.small{font-size:14px;}
.under{text-decoration: underline;}
.dot-text{position: relative;}
.dot-text::before{position: absolute; top: -10px; left: 0; right: 0; margin: auto; content: ""; padding-top: 10px; background: -webkit-radial-gradient(circle 5px,black 50%,transparent 50%); background: radial-gradient(circle 5px,black 50%,transparent 50%); background: -moz-radial-gradient(circle 5px,black 50%,transparent 50%);}
.flex-box{display: flex; justify-content: space-between;}
.d-s{box-shadow: 6px 6px 6px 0px rgba(0,0,0,0.6); border-radius: 10px;}
.d-s:hover{box-shadow:none;}
.marker{background: linear-gradient(transparent 50%, #FFFD00 50%);}
.hiragino-italic { font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif; font-style: italic; font-size: 20px; font-weight: 800;}
.al_jus{text-align: justify !important;}
h2 {font-family: shippori-antique, sans-serif; font-weight: 400 !important; font-style: normal; font-size: 30px; color: #000; margin: 0; text-align: center; line-height: 1.7  !important; }


/*----------
txt-position
-----------*/
.t_center{text-align: center;}
.btn_submit{margin: 50px auto; display: block;}
.btn_submit img{margin: 0 auto;}
.line_sidebtn{position: fixed; right: 0; top:30%; z-index: 300;}
.bottom_line{display: none;}
.title_pic2{margin-bottom: 30px;}
.img_center{margin: 0 auto;}
.pic_margin{margin: 30px 0;}
.pic_margin2{margin: 30px auto; text-align: center;}
header { background-image: url('images/header_bg.png'); background-size: cover; background-position: center; padding: 50px 0; }
.hero-bg { max-width: 700px; margin: 0 auto; text-align: center; }
.hero-bg img { display: block; margin: 0 auto 20px; max-width: 100%; }
.section01 { padding: 80px 0; background-color: #fff; }
.title { background: url('images/title_bg.png') center center no-repeat; background-size: cover; display: flex; align-items: center; justify-content: center; width: 100%; padding: 80px 0; }
.cta-button{margin: 40px 0 !important;}
.cta2{margin: 50px auto; text-align: center;}
.cta2 p{margin-top: 10px;}

.voice-block { display: flex; align-items: center; justify-content: space-between; margin:0 0 80px 0; }
.voice-block.left { flex-direction: row; }
.voice-block.right { flex-direction: row-reverse; }
.voice-block img { width: 150px; height: auto; margin: 0 20px; }
.bubble { background-color: #feeab8; padding: 40px ; border-radius: 10px; flex: 1; }
.bubble p{font-size: 20px;}
.wrap { width: 700px; margin: 0 auto; }

.section02 { background: url('images/sec02_bg.jpg') top right no-repeat fixed; background-size: cover;  padding: 80px 0; }
.section02 .cta { text-align: right; margin-top: 40px; }
.sec03 {padding: 80px 0; }
.sec04 {padding: 80px 0;  background: url('images/sec04_bg.png') top center no-repeat fixed; background-size: cover}
.sec04 .cta { text-align: right; margin-top: 40px; }
.sec05 {padding: 80px 0; }
.sec05 .cta { text-align: right; margin-top: 40px; }
.sec06 {padding: 80px 0; }
.sec06 .cta { text-align: right; margin-top: 40px; }
.card{margin: 50px auto; display: flex; justify-content: space-between;}
.sec07 {padding: 80px 0; }
.sec07 .cta { text-align: right; margin-top: 40px; }
.sec08 {padding: 80px 0; }
.sec08 h3{width:calc(100% - 45px); padding: 15px 0 15px 45px; text-align: left; background: #e6deaa; color: #000; font-weight: 400 !important; font-style: normal; font-size: 24px; margin: 0; }
.sec08 .orangebox{border-bottom:#e6deaa solid 5px ;border-left:#e6deaa solid 5px ;border-right:#e6deaa solid 5px ; padding: 40px; margin-bottom: 50px;}
.sec08 .orangebox p{text-align: justify;}
.sec08 .cta { text-align: right; margin-top: 40px; }
.sec08 .cta p{font-size: 14px;}
.sec09 {padding: 80px 0;  background: url('images/sec09_bg.png') top center no-repeat; background-size: cover;}
.sec10 {padding: 80px 0;  background: url('images/sec10_bg.png') top center no-repeat; background-size: cover;}
.sec10 .cta { text-align: right; margin-top: 40px; }
.sec10 .cta p{font-size: 14px;}
.sec11 {padding: 80px 0; }
.sec11 .cta { text-align: right; margin: 40px 0; }
.sec11 .cta p{font-size: 14px;}
.table1 {font-size: 16px; border-spacing:3px; border-collapse: separate; line-height: 1.2; margin: 30px 0;}
.table1 th{background-color: #184497; padding: 15px 10px; text-align: center; vertical-align: middle; color: #fff;}
.table1 td{background-color: #e6edfb; padding: 15px; text-align: justify; vertical-align: top;}

.table2 {font-size: 16px; border-spacing:1px; border-collapse: separate; line-height: 1.2; margin: 30px 0;}
.table2 th{background-color: #abad01; padding: 15px; text-align: center; vertical-align: middle; color: #fff; width:20%;}
.table2 td{background-color: #fdfecd; padding: 15px; text-align: justify; vertical-align: middle;}
.sec12 {padding: 80px 0; }
.sec12 p{text-align: justify;}
.q_box{display: flex; justify-content: space-between; margin-top: 50px; gap: 0; align-items: flex-start;}
.a_box{display: flex; justify-content: space-between; margin-bottom: 50px; gap: 0; align-items: flex-start;}
.que{width:calc(100% - 61px); background-color: #facfcf; padding: 15px 32px;}
.ans{width:calc(100% - 61px); background-color: #d1e0fc; padding: 15px 32px;}
.sec13 {padding: 80px 0; }

.th_gray{background-color: #333 !important;}
.th_red{background-color: #c9102e !important;}
.td_red{background-color: #e6bec4 !important;}
.th_yellow{background-color: #abad01 !important;}
.td_yellow{background-color: #dedfb1 !important;}

.close{position:relative;display:inline-block;}
.close .close-message{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,0.8);color:red;font-size:24px;font-weight:bold;display:flex;justify-content:center;align-items:center;z-index:10;pointer-events:none;}

.table-wrapper{position:relative;}
.table-overlay-col{position:absolute;top:0;height:100%;background-color:rgba(0,0,0,0.8);z-index:5;display:flex;justify-content:center;align-items:center;pointer-events:none;}
.second-col{left:56px;width:226px;}
.overlay-message{color:red;font-size:20px;font-weight:bold;text-align:center;}


/*footer*/
footer {background-color: #333;margin: 0 auto;padding:0 0 2rem 0;}
footer p {padding:2rem 10px 0 10px;text-align: center; line-height: 150%;font-size: 14px; line-height: 150%; color: #fff;}
footer a, footer a:active, footer a:visited {color: #fff;text-decoration: underline;}
footer a:hover {color: #bbb;}

@media screen and (max-width: 720px) {
.fontL{font-size: 20px; line-height: 150%;}
.fontLL{font-size: 26px; line-height: 150%;}
.fontLLL{font-size: 46px; line-height: 150%;}
.bottom_line{position: fixed; bottom: 0; left: 0; right: 0; z-index: 1000; padding: 15px; background: rgba(255,255,255,0.50); text-align: center; display: none;}
.line_sidebtn{display: none;}
.img_right{float: none; padding: 0 0 15px 0; margin: 0 auto;}
img{max-width: 100%;}
p{text-align: justify; line-height: 150%;}
.top{display: none;}
header{background:#010408; margin: 0; padding:0 0 30px 0;}
header .wrap{width: 90%; margin:0 auto 20px auto;}
.cta-button{margin:0 0 20px 0 !important;}
h2 { font-size: 20px; line-height: 1.5  !important; }
h3{margin-bottom: 20px;}
.wrap{width: 90%; margin: 20px auto;}
.kiyaku{width: calc(100% - 20px); height: 150px; overflow: auto; background: rgba(255,255,255,0.80); border: 1px solid #333; margin: 20px auto; padding: 10px;}
.hero-bg { max-width: 700px; margin: 0 auto; text-align: center; }
.hero-bg img { display: block; margin: 0 auto; max-width: 100%; }
.title { background: linear-gradient(0deg,rgba(179, 172, 145, 1) 0%, rgba(250, 245, 219, 1) 100%); display: flex; align-items: center; justify-content: center; width: 100%; padding: 20px 0; }
.section01 { padding: 30px 0; background-color: #fff; }
.voice-block_left { display: block; margin:0 0 20px 0; text-align: left;}
.voice-block_right { display: block; margin:0 0 20px 0; text-align: right;}
.voice-block_left img { width: 100px; height: auto; margin: 0; }
.voice-block_right img { width: 100px; height: auto; margin: 0; }
.bubble { background-color: #feeab8; padding: 20px ; border-radius: 10px; flex: 1; margin-bottom: 10px; }
.bubble p{font-size: 20px;}

.section02 { background:#eefeff; background-size: cover;  padding: 30px 0; }
.section02 .cta { text-align: right; margin-top: 40px; }
.sec03 {padding: 30px 0; }
.sec04 {padding: 30px 0;  background: url('images/sec04_bg.png') top center no-repeat fixed; background-size: cover}
.sec04 .cta { text-align: right; margin-top: 40px; }
.sec05 {padding: 30px 0; }
.sec05 .cta { text-align: right; margin-top: 40px; }
.sec06 {padding: 30px 0; }
.sec06 .cta { text-align: right; margin-top: 40px; }
.card{margin: 50px auto; display: block;}
.sec07 {padding: 30px 0; }
.sec07 .cta { text-align: right; margin-top: 40px; }
.sec08 {padding: 30px 0; }
.sec08 h3{width:calc(100% - 15px); padding: 15px 0 15px 15px; text-align: left; background: #e6deaa; color: #000; font-weight: 400 !important; font-style: normal; font-size: 22px; margin: 0; }
.sec08 .orangebox{border-bottom:#e6deaa solid 5px ;border-left:#e6deaa solid 5px ;border-right:#e6deaa solid 5px ; padding: 20px; margin-bottom: 50px;}
.sec08 .orangebox p{text-align: justify;}
.sec08 .cta { text-align: right; margin-top: 40px; }
.sec08 .cta p{font-size: 14px;}
.sec09 {padding: 0;  background:none;}
.sec10 {padding: 0;  background:none;}
.sec10 .cta { text-align: right; margin-top: 40px; }
.sec10 .cta p{font-size: 14px;}
.sec11 {padding: 30px 0; }
.sec11 .cta { text-align: right; margin: 40px 0; }
.sec11 .cta p{font-size: 14px;}
.table1 {font-size: 18px; border-spacing:0; border-collapse: separate; line-height: 1.2; margin: 30px 0; background: #FFF; width: 100%;}
.table1 tr{margin-bottom: 10px; display: block;}
.table1 th{background-color: #184497; padding: 15px; text-align: center; vertical-align: middle; color: #fff; display: block; border-bottom: 1px solid #333;}
.table1 td{background-color: #e6edfb; padding: 15px; text-align: center; vertical-align: middle; display: block; border-bottom: 1px solid #333;}

.table2 {font-size: 16px; border-spacing:1px; border-collapse: separate; line-height: 1.2; margin: 30px 0; width: 100%;}
.table2 th{background-color: #abad01; padding: 15px; text-align: center; vertical-align: middle; color: #fff; width:calc(100% - 30px); display: block; font-weight: bold;}
.table2 td{background-color: #fdfecd; padding: 15px; text-align: left; vertical-align: middle; display: block;}
.table2 td img{margin: 20px auto;}
.th_red{ border-bottom: 1px solid #333;}
.td_red{ border-bottom: 1px solid #333;}
.th_yellow{border-bottom: 1px solid #333;}
.td_yellow{border-bottom: 1px solid #333;}

.sec12 {padding: 30px 0; }
.sec12 p{text-align: justify;}
.q_box{display: flex; justify-content: space-between; margin-top: 30px; gap: 0; align-items: flex-start;}
.a_box{display: flex; justify-content: space-between; margin-bottom: 30px; gap: 0; align-items: flex-start;}
.que{width:calc(100% - 30px); background-color: #facfcf; padding: 15px;}
.ans{width:calc(100% - 30px); background-color: #d1e0fc; padding: 15px;}
.sec13 {padding: 30px 0; }

.table-wrapper-sp{position:relative;}
.table-row-overlay-sp{position:absolute;top:0;left:0;width:100%;height:calc(115% / 3);background-color:rgba(0,0,0,0.8);z-index:5;display:flex;justify-content:center;align-items:center;pointer-events:none;}
.overlay-message{color:red;font-size:18px;font-weight:bold;text-align:center;}

/*switch */
.forpc{display:none !important;}
.forsp{display:block !important;}

}
