a{
  cursor: pointer;
  color: #3B3838;
}
.navi, .top-page{
  color: #3B3838;
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
.navi{
  font-weight: bold;
}
.top-display{
  width: 100%;
  height: 800px;
  background: linear-gradient(to right, #44A5CB, #EAF4F8);
  position: relative;
}
.pc-top{
  position: relative;
  width: 1500px;
  max-width: 1920px;
  height: 800px;
  left: 50%;
  transform: translate(-50%, 0);
  overflow: hidden;
}
.pc-top .muryou{
    display: inline-block;
    text-align: center;
    position: absolute;
    top: 30px;
    left: 385px;
    color: white;
    font-size: 38px;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: bold;
    z-index: 1;
}
.pc-top .muryou .big{
    font-size: 80px;
}
.pc-top .muryou .under{
    text-decoration: underline;
}
.pc-top img{
  position: absolute;
}
.pc-top .karte{
    width: 420px;
    bottom: 20px;
    left: max(38%, 370px);
}
.pc-top .cloud{
    width: 300px;
    top: 40px;
    left: 50px;
}
.pc-top .white-bird{
    top: 160px;
    left: 230px;
    width: 50px;
}
.pc-top .female{
  left: max(min(calc(330px + 30vw), 780px), 690px);
  width: 700px;
}
.pc-top .top-cv{
    display: flex;
    position: absolute;
    left: max(min(calc(20vw - 180px), 100px), 0px);
    bottom: 100px;
    flex-direction: column;
}

.pc-top .top-cv a{
    display: block;
    width: 350px;
    text-align: center;
    font-size: 20px;
    padding: 15px;
    border-radius: 30px;
    font-weight: bold;
    margin: 10px;
    color: #3B3838;
    cursor: pointer;
    box-shadow: 3px 3px 15px -4px #3B3838;
}
.pc-top .document-button a{
    background-color: #da5019;
    color: white;
}
.pc-top .trial-button a{
    background-color: #dfecef;
}
.top-display .title{
    background-color: white;
    font-size: 54px;
    font-weight: bold;
    position: absolute;
    top: 355px;
    height: 90px;
    width: 2000px;
    padding: 9px 30px;
    text-align: right;
    left: -1300px;
    color: #3d93b6;
}
.point, .tables{
    display: flex;
    margin: 50px auto;
    width: 600px;
    justify-content: space-evenly;
    font-weight: bold;
    flex-wrap: wrap;
}
.tables{
    width: 1000px;
}
.point a{
    width: 230px;
    display: block;
    text-align: center;
    margin: 10px;
    padding: 13px;
    font-size: 25px;
    cursor: pointer;
}
.point .hosp a{
  background-color: #8AB7CE;
}
.point .clin a{
 background-color: #DECA98;
}
.point .cons a{
  background-color: #D399A2;
}
.tables > a{
    background-color: #3D93B6;
    width: max(min(calc(20px + 20vw), 160px), 80px);
    height: max(min(calc(20px + 20vw), 160px), 80px);
    margin: min(2vw, 15px);
    border-radius: 15px;
    box-shadow: 5px 5px 15px -5px;
}
.tables .table-body{
    color: white;
    width: 100%;
    height: 40px;
    text-align: center;
    font-size: min(5vw, 30px);
    transform: translate(0, -5px);
    font-weight: bold;
}
.tables img{
    width: 75%;
    padding: 5px;
    left: 50%;
    position: relative;
    transform: translate(-50%);
}
.info{
    background-color: #F2F7F9;
    width: 100%;
    text-align: center;
    padding: 50px 5px;
}
.info .info-body{
    width: 1200px;
    margin: 0 auto;
    font-size: 42px;
    font-weight: bold;
}
.info .info-body span{
    font-size: 62px;
    color: #3D93B6;
}
.info .info-bar{
    width: min(80%, 500px);
    margin: 10px auto 0;
    border: 5px solid #DA5019;
    transform: translate(0, -10px);
}
.info .info-littlebody{
    font-size: 17px;
    font-weight: bold;
}
.info .asterisk{
    font-size: 5px;
    transform: translate(0, -5px);
    position: absolute;
}
.worry{
    background: linear-gradient(65deg, #A5C9D6 0%,#A5C9D6 85%, #F2F7F9 50%, #F2F7F9 100%);
}
.worry-contents{
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    width: 1200px;
    margin: 0 auto;
    padding: 15px;
    justify-content: space-evenly;
}
.worry .worry-content{
    width: 500px;
    background-color: white;
    border-radius: 20px;
    margin: 35px 10px;
    text-align: center;
}
.worry .worry-content .worry-title{
    color: #3D93B6;
    font-size: 30px;
    font-weight: bold;
    margin: 20px;
}
.worry .worry-icon{
    width: 220px;
    height: 220px;
    margin: 0 auto;
}
.worry .worry-icon img{
    width: auto;
    height: 200px;
    top: 50%;
    left: 50%;
    position: relative;
    transform: translate(-50%, -50%);
}
.worry .worry-content .worry-body{
    text-align: left;
    width: min(80%, 400px);
    margin: 26px auto;
    font-size: 20px;
}
.worry .worry-content .worry-body li{
  list-style: none;
}

.reason{
    background-color: #F2F7F9;
    width: 100%;
    padding: 0 0 50px 0;
}
.reason .reason-contents{
    width: 90%;
    padding: 15px 0;
}
.reason .right-contents{
    margin-left: auto;
}
.reason .reason-field{
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 450px;
    justify-content: space-around;
    background-color: #a5c9d6;
    padding: 10px;
}
.reason .right-contents .reason-field{
    flex-direction: row-reverse;
}
.reason .reason-num{
    font-family: Bahnschrift Condensed;
    font-size: 216px;
    color: #eaf4f8;
    text-shadow: 14px 0px #7eb1c4;
}
.reason .right-contents .reason-img{
    transform: translate(-65px);
}
.reason .reason-content{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-around;
    z-index: 1;
    min-width: 270px;
}
.reason .reason-title{
    margin: 15px 0 0 0;
    text-decoration: underline;
    font-size: min(max(7vw, 24px), 48px);
    font-weight: bold;
    text-decolation: under-line;
}
.reason .reason-body{
    background-color: #c1dbe3;
    width: min(90%, 480px);
    margin: 20px;
    padding: 20px;
    font-size: 18px;
}
.reason .reason-body div{
  display: flex;
}
.reason .reason-body i{
  font-size: 20px;
}
.reason .reason-button{
    display: block;
    color: white;
    background-color: #3d93b6;
    padding: 5px 50px;
    margin: 12px;
    border-radius: 18px;
    font-size: 20px;
    font-weight: bold;
    box-shadow: 3px 3px 7px -3px #3B3838;
}
.reason .reason-img{
    position: relative;
    width: 497px;
    transform: translate(65px);
}
.reason .reason-img img{
    position: absolute;
    width: auto;
    height: min(23vw,394px);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.function-list{
    width: 1500px;
    margin: 0 auto 50px;
    font-family: system-ui;
}
.function-list .function-list-head{
    width: 100%;
    background-color: #3D93B6;
    text-align: center;
    color: white;
    padding: 8px;
    font-size: 25px;
    font-weight: bold;
}
.function-list .function-list-body{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.function-list .function-list-field{
    width: 490px;
}
.function-list .field1{
  width: 994px;
}
.function-list .function-head{
    background-color: #A5C9D6;
    text-align: center;
    padding: 8px;
    margin: 5px;
    margin-bottom: 0;
    font-size: 25px;
    font-weight: bold;
}
.function-list .function-body{
    background-color: #F2F7F9;
    height: calc(100% - 64px);
    margin: 5px;
    margin-top: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-content: flex-start;
    padding: 5px;
}
.function-list .function-button{
    background-color: #3D93B6;
    width: max(min(44%, 200px), 120px);
    height: 53px;
    margin: 8px 2px;
    line-height: 53px;
    text-align: center;
    color: white;
    font-size: max(min(2vw,20px), 16px);
    font-weight: bold;
    border-radius: 5px;
}
.function-list .double-line{
    padding: 3px 15px;
    line-height: 23px;
}
.function-list .empty, .function-list .empty1{
    width: max(min(44%, 200px), 120px);
    margin: 5px;
}
.price{
    background: #F2F7F9;
    padding: 0 0 50px;
    font-size: 20px;
}
.price .price-contents{
    display: flex;
    width: 950px;
    margin: 0 auto;
    padding: 0 5px;
    flex-direction: row;
    justify-content: space-evenly;
    flex-wrap: wrap;
}
.price .price-content{
    border: #3d93b6 1px solid;
    background-color: white;
    margin: 10px auto;
    text-align: center;
    min-width: 400px;
}
.price .price-head{
    padding: 20px;
    font-size: 25px;
    font-weight: bold;
    color: #3d93b6;
    text-decoration: underline;
}
.price .price-icon{
    margin: 10px;
}
.price .price-icon img{
    width: 300px;
}
.price .price-body{
    display: flex;
    justify-content: space-around;
}
.price .price-body-left, .price .price-body-right{
    height: 150px;
    display: flex;
    font-weight: bold;
    flex-direction: column;
    justify-content: space-evenly;
}
.price .price-body-left{
    color: #3d93b6;
    align-items: flex-start;
}
.price .price-body-right{
    align-items: flex-end;
}
.price .price-button{
    display: block;
    width: min(70%, 240px);
    padding: 15px;
    margin: 0 auto 20px;
    background-color: #3D93B6;
    border-radius: 30px;
    color: white;
    font-weight: bold;
    position: relative;
}
.cv-row{
    background: linear-gradient(#7ab4ca 0%, #3d93b6 100%);
}
.cv-row .cv-contents{
    width: 1300px;
    margin: 0 auto;
    display: flex;
    justify-content: space-around;
    padding: 15px;
    flex-wrap: wrap;
}
.cv-row .cv-body{
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 800px;
    justify-content: space-evenly;
}
.cv-row .cv-content{
    color: white;
    font-size: 25px;
    font-weight: bold;
    text-align: center;
}
.cv-row .button-list{
    display: flex;
    width: 100%;
}
.orca .orca-contents{
    width: 800px;
    display: flex;
    margin: 40px auto;
}
.orca .orca-content{
    padding: 20px;
    text-align: center;
    width: 70%;
    background-color: #f2f7f9;
    border-radius: 30px 0 0 30px;
}
.orca .orca-head{
    font-size: 30px;
    font-weight: bold;
    text-decoration: underline;
}
.orca .orca-body{
    font-size: 20px;
    margin: 25px;
    text-align: left;
}
.orca .button1 a{
  margin: 0 auto;
}
.orca .orca-img{
    width: 30%;
    background-color: #a5c9d6;
    border-radius: 0 30px 30px 0;
}
.orca img{
    width: 80%;
    height: auto;
    display: block;
    position: relative;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.flow{
  background-color: #F2F7F9;
}
.flow .flow-contents{
    margin: 0 auto;
    width: 100%;
    padding: 20px 0 50px;
    text-align: center;
    font-size: 20px;
}
.flow .flow-content{
    margin: 30px 0;
}
.flow img{
  max-width: 100%;
}
.consult{
    background-color: #f2f7f9;
    padding: 30px 0;
}
.consult .consult-contents{
    display: flex;
    margin: 0 auto;
    width: 1200px;
    justify-content: space-around;
}
.consult .consult-content{
    background-color: #a5c9d6;
    margin: 20px;
    width: 350px;
    text-align: center;
}
.consult .consult-head{
    font-size: 28px;
    font-weight: bold;
    margin: 20px;
}
.consult img{
    width: 200px;
}
.consult .consult-body{
    padding: 28px 12px;
    font-size: 20px;
}
.consult .consult-body span{
    font-size: 28px;
    font-weight: bold;
    text-decoration: underline;
}
.consult .button1 a, .consult .button2 a{
    margin: 10px auto;
}
.question .question-contents{
    width: 800px;
    margin: 20px auto;
    display: flex;
    flex-direction: column;
    font-size: 20px;
}
.question .question-content{
    border: #a5c9d6 4px solid;
    margin: 10px;
    border-radius: 10px;
    overflow: hidden;
    height: 55px;
}
.question .question-q, .question .question-a{
    display: flex;
    padding: 5px;
    align-items: center;
    justify-content: space-around;
}
.question .question-q-head{
    font-family: Calibri 本文;
    color: #3d93b6;
    font-size: 28px;
    float: left;
    font-weight: bold;
}
.question .question-a-head{
    font-family: Calibri 本文;
    color: #da5019;
    font-size: 28px;
    float: left;
    font-weight: bold;
}
.question .question-bar{
    width: 90%;
    border-bottom: 3px dotted #a5c9d6;
    margin: 5px auto;
}
.question .question-body{
    width: 90%;
}
.question .question-empty{
    width: 20px;
    height: 20px;
}


  


.button1 a{
    padding: 15px;
    background-color: #da5019;
    border: 3px solid #da5019;
    color: white;
}
.button1 a:hover{
    background-color: white;
    border: 3px solid #da5019;
    color: #da5019;
}
.button2 a{
    padding: 15px;
    background-color: #a0c6d4;
    border: 3px solid #a0c6d4;
    color: #3B3838;
}
.button2 a:hover{
    background-color: white;
    border: 3px solid #a0c6d4;
    color: #a0c6d4;
}
.button3 a{
    padding: 15px;
    background-color: #3d93b6;
    border: 3px solid #3d93b6;
    color: white;
}
.button3 a:hover{
    background-color: white;
    border: 3px solid #3d93b6;
    color: #3d93b6;
}
.button1, .button2, .button3{
  width: 100%;
}
.button1 a, .button2 a, .button3 a{
    display: block;
    position: relative;
    width: min(90%, 280px);
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    border-radius: 50px;
    margin: 10px auto;
    box-shadow: 3px 3px 7px -3px #3B3838;
    cursor: pointer;
}   
.button1 i, .button2 i, .button3 i, .price .price-button i{
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translate(0, -50%);
}


@media only screen and (max-width: 1500px) {
  .pc-top, .info .info-body, .worry .worry-contents{
    width: 100%;
  }
  .function-list{
    width: 99%;
  }
  .function-list .field1{
    width: min(calc(97vw - 490px), 994px);
  }
  .function-list .field2{
    width: 25%;
  }
  .function-list .field3{
    width: 50%;
  }
  .function-list .field2 .function-button{
    width: max(min(80%, 200px), 120px);
  }
}
@media only screen and (max-width: 1200px) {
  .pc-top .female{
    display: none;
  }
  .tables{
    width: 100%;
  }
  .reason .reason-contents{
    margin: 0 auto;
  }
  .reason .right-contents{
    float: initial;
  }
  .reason .reason-num{
    font-size: 245px;
    position: absolute;
    transform: translate(-8px);
  }
  .reason .reason-field{
    justify-content: space-evenly;
  }
  .reason .reason-body{
    background-color: rgba(193, 219, 227, 0.5);
    margin: 20px auto;
  }
  .reason .reason-img{
    display: none;
  }
  .consult .consult-contents{
    width: 100%;
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 1220px) {
  .tables > div{
    margin: 15px;
  }
  .nav-online::after{
    content: "\30aa\30f3\30e9\30a4\30f3\8a3a\7642";
  }
  .nav-note::after{
    content: "\8a3a\7642\30ce\30fc\30c8";
  }
  .price .price-contents{
    width: 100%;
  }
  .cv-row .cv-contents{
    width: 100%;
  }
}

@media only screen and (max-width: 1000px) {
  .point{
    width: 100%;
  }
  .function-list .function-list-field{
    width: min(50%, 490px);
  }
  .function-list .field2 .function-button{
    width: max(min(40%, 200px), 120px);
  }
  .function-list .field3{
    width: 100%;
  }
  .function-list .field3 .function-button{
    width: max(min(40%, 200px), 120px);
  }
  .orca .orca-contents{
    width: 90%;
    align-items: center;
    flex-direction: column;
  }
  .orca .orca-content{
    width: 100%;
    border-radius: 30px 30px 0 0;
  }
  .orca .orca-img{
    width: 100%;
    border-radius: 0 0 30px 30px;
  }
  .orca img{
    width: 200px;
    position: initial;
    top: initial;
    left: initial;
    transform: initial;
    margin: 15px auto;
  }
  .question .question-contents{
    width: 100%;
  }
}


@media only screen and (max-width: 900px) {
  .top-display{
    background: linear-gradient(to bottom, #44A5CB, #EAF4F8);
    height: calc(360px + 80vw);
    min-height: 600px;
  }
  .pc-top{
    height: calc(360px + 80vw);
    min-height: 600px;
  }
  .pc-top .muryou{
    top: 30px;
    left: calc(11px + 1vw);
    font-size: max(min(calc(8px + 4vw), 32px), 24px);
  }
  .pc-top .muryou .big{
    font-size: calc(24px + 6vw);
  }
  .pc-top .muryou .under{
    font-size: min(max(calc(20px + 8vw), 48px), calc(14px + 4vw));
  }
  .pc-top .karte{
    width: 69vw;
    bottom: min(max(calc(145px + 2vw), 140px), 160px);
    left: 50%;
    transform: translate(-54%);
  }
  .pc-top .female{
    display: none;
  }
  .pc-top .cloud{
    width: 30vw;
    top: 20px;
    left: initial;
    right: 10px;
  }
  .pc-top .white-bird{
    top: 130px;
    left: initial;
    right: 20px;
    width: 50px;
  }
  .top-display .title{
    font-size: 7vw;
    top: calc(135px + 25vw);
    left: calc(-2000px + 80vw);
    height: calc(10px + 10vw);
    padding: calc(1px + 1vw) calc(3px + 3vw);
  }
  .pc-top .top-cv{
    position: absolute;
    flex-direction: initial;
    bottom: calc(8px + 3vw);
    left: 50%;
    transform: translate(-50%);
  }
  .pc-top .top-cv a{
    max-width: 80vw;
    padding: min(max(calc(2px + 2vw), 10px), 15px);
  }
}
@media only screen and (max-width: 750px) {
  .pc-top .top-cv{
    flex-direction: column;
  }
  .pc-top .karte{
    transform: translate(-52%, -36px);
  }
}
@media only screen and (max-width: 600px) {
  .function-list .function-list-field{
    width: 98%;
  }
  .price .price-content{
    min-width: initial;
  }
  .cv-row .button-list{
    flex-direction: column;
  }
}
@media only screen and (max-width: 420px) {
  .pc-top .karte{
    bottom: 42%;
    transform: translate(-50%, 50%);
    width: max(min(calc(400px - 25vw), 80vw), 70vw);
  }
  .pc-top .white-bird, .pc-top .cloud{
    display: none;
  }
}
@media only screen and (max-width: 1389px) {
  .function-list .empty1{
    display: block;
  }
}
@media only screen and (max-width: 1171px) {
  .function-list .empty1{
    display: none;
  }
}
.to-top{
    position: fixed;
    bottom: 140px;
    right: 10px;
    font-size: 40px;
    background-color: #7F7F7F;
    width: 55px;
    height: 55px;
    text-align: center;
    border-radius: 30px;
    color: white;
	cursor: pointer;
}
.to-top:hover{
	background-color: #007AB7;
	color: white;
}
.to-top i:hover{
	outline: none;
}
.cv-contact{
    display: flex;
    flex-direction: column;
    width: 310px;
    bottom: 10px;
    position: fixed;
    right: 1px;
	z-index: 20;
}
.cv-contact div{
    border: #3D93B6 3px solid;
    background-color: #3D93B6;
    font-size: 25px;
    border-radius: 10px 0 0 10px;
    margin: 5px;
    margin-right: 0;
}
.cv-contact div a{
	color: white;
	display: block;
}
.cv-contact div:hover{
	background-color: white;
}
.cv-contact div:hover a{
	color: #3D93B6;
}


.cv-contact .contact-button a{
	padding: 8px 10px;
	font-size: 21px;
	transform: translate(3px, 0);
}
.cv-contact .contact-button a i{
	font-size: 22px;
	transform: translate(-3px, 0);
}
.cv-contact .contact-button a i::before{
    display: inline-block;
}
.cv-contact .contact-button a i::after{
    display: inline-block;
    transform: translate(9px, 1px);
	content: "\304a\554f\3044\5408\308f\305b\30fb\8cc7\6599\8acb\6c42";
}

.cv-contact .trial-button a{
	padding: 4px;
}
.cv-contact .trial-button a i{
    font-size: 22px;
    transform: translate(7px);
}
.cv-contact .trial-button a i::before{
	display: inline-block;
	transform: translate(0px);
}
.cv-contact .trial-button a i::after{
	display: inline-block;
	transform: translate(32px);
	content: "\7121\6599\30c8\30e9\30a4\30a2\30eb";
}

.cv-contact .tell-button a{
	padding: 0 10px;
	font-size: 32px;
	transform: translate(18px);
}
.cv-contact .tell-button a i{
	font-size: 25px;
	transform: translate(-15px);
}
.cv-contact .tell-button a i::before{
	display: inline-block;
	transform: translate(1px);
}
.cv-contact .tell-button a i::after{
	display: inline-block;
	transform: translate(27px);
	content: "\0030\0033\002d\0035\0035\0037\0037\002d\0035\0031\0039\0031";
}

@media only screen and (max-width: 480px){
	.to-top{
		bottom: 180px;
	}
	.cv-contact {
		width: 95%;
	}
	.cv-contact div{
		text-align: center;
		font-size: 22px;
		max-width: 95%;
		border-radius: 10px;
	}
	.cv-contact .contact-button a{
		padding: 4px;
	}
	.cv-contact .contact-button a i::before{
		padding: 4px;
		transform: translate(-30px);
	}
	
	.cv-contact .trial-button a i{
		transform: translate(0px);
	}
	.cv-contact .trial-button a i::before{
		transform: translate(-20px);
	}
	.cv-contact .trial-button a i::after{
		transform: translate(0px);
	}
	
	.cv-contact .tell-button a{
		transform: translate(0, 0);
	}
	.cv-contact .tell-button a i{
		transform: translate(0px);
	}
	.cv-contact .tell-button a i::before{
		transform: translate(-6px);
	}
	.cv-contact .tell-button a i::after{
		transform: translate(0px);
	}
	
	.cv-contact .contact-button a i::after{
		content: "\304a\554f\3044\5408\308f\305b";
	}
	.cv-contact .tell-button a{
		font-size: 22px;
		transform: translate(0, 0);
		padding: 4px 0;
	}
	.cv-contact .tell-button a i{
		transform: translate(-2px, 0);
	}
}