@charset "utf-8";

/*common
***************************************/
body {
	font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
}
#main {
  background-color: #bbe8ff;
  background-image: url(../img/wave.png);
  background-repeat: repeat;
}

.kome {
  text-indent: -1em;
  padding-left: 1em;
}

@keyframes fadeIn {
  0%   {opacity: 0;}
  100% {opacity: 1;}
}
@keyframes fadeOut {
  0%   {opacity: 1;}
  100% {opacity: 0;}
}
@keyframes fadeIn_down {
  0% {
    opacity: 0;
    transform: translateY(-100%);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadeIn_up {
  0% {
    opacity: 1;
    transform: translateY(0%);
  }
  100% {
    opacity: 0;
    transform: translateY(-100%);
  }
}

@media screen and (min-width:641px){
  .sp {display: none;}
}
@media screen and (max-width:640px){
  .pc {display: none;}
}

/* header
***************************************/
#header {
	width: 100%;
}
.header-inner {
  max-width: 980px;
	margin: auto;
  height: 80px;
  padding: 30px 10px 0;
}

.header__logo {
	width: 188px;
	height: auto;
}
.header__logo a{
	display: block;
}
.header__logo .logo_FB {
  width: min(100%, 250px);
  height: auto;
}
@media screen and (max-width:640px){
    .header-inner {
			height: 50px;
			padding: 10px 10px 0;
	}
}

/*mv
***************************************/
#mv {
  width: 100%;
}
#mv .ttl_wp {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}
#mv .img {
  width: 100%;
  height: auto;
  display: block;
}
#mv .wrap_lead {
  border: 10px solid #00ABE4;
  background-color: #fff;
}

@media screen and (min-width:641px){
  #mv .img.__catch {
    width: min(37.0833vw, 712px);
    margin-bottom: min(2vw, 15px);
  }
  #mv .img.__ttl {
    width: min(41.0104vw, 770px);
  }
  #mv .wrap_lead {
    padding: min(1.041666vw, 20px) min(1.8229vw, 35px);
  }
  #mv .lead_txt {
    font-size: clamp(0.9rem, 2.345vw, 1.8rem);
    line-height: 1.6;
  }
  #mv .lead_km {
    font-size: clamp(0.6rem, 1.56vw, 1.2rem);
  }
}
@media screen and (min-width:980px){
  #mv {
    background: url(../img/mv_pc.jpg) 0 0 no-repeat;
    background-size: cover;
    width: 100%;
  	height: min((1000 / 1920)* 100vw, 1000px);
    padding: min(3.6vw, 70px) 0 min(2.6041vw, 50px);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
  }
  #mv .wrap_lead {
    border-width: 15px;
    width: min(90vw, 960px);
  }
}
@media screen and (min-width:1920px){
  #mv .lead_txt {line-height: 1.8;}
}
@media screen and (max-width:979px){
  #mv .mv_inner {
    background: url(../img/mv_pc.jpg) 0 0 no-repeat;
    background-size: cover;
    width: 100%;
  	height: min((1000 / 1920)* 100vw, 1000px);
    padding-top: min(3.6vw, 70px);
  }
}
@media screen and (max-width:640px){
  #mv .mv_inner {
    background: url(../img/mv_sp.jpg) 0 0 no-repeat;
    background-size: cover;
  	height: min((520 / 750)* 100vw, 520px);
    padding-top: min(5.1282vw, 20px);
  }
  #mv .img.__catch {
    width: min(78.974vw, 308px);
    margin-bottom: min(2vw, 10px);
  }
  #mv .img.__ttl {
    width: min(78.974vw, 308px);
  }
  #mv .wrap_lead {
    padding: min(3.8461vw, 15px);
  }
  #mv .lead_txt {
    font-size: min(4.168vw, 1.5rem);
    line-height: 1.6;
  }
  #mv .lead_km {
    font-size: min(2.780vw, 1.0rem);
  }
}


/*navi*/
#nav {
  text-align: center;
  position: relative;
  padding-top: min(12.8205vw, 50px);
  z-index: 2;
}
#nav .h2_nvimg {
  width: min(43.589vw, 340px);
  height: auto;
}
#nav::before {
  content: '';
  display: block;
  position: absolute;
  right: 0;
  top: 0;
}
#nav .nav_inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: min(66vw, 540px);
  margin: auto;
}
#nav .nav_ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
#nav .img_nav {
  width: 100%;
  height: auto;
  position: relative;
  z-index: 2;
}
#nav .img_wrp {
  display: block;
  position: relative;
  z-index: 2;
}
#nav .nav_inner .img_wrp {
  margin: 0 auto min(7.6vw, 30px);
}
#nav .senior_nav {
  width: min(40vw, 280px);
  position: relative;
  margin-top: min(7.6vw, 60px);
}
#nav .li_nav {
  position: relative;
  margin-top: min(5.2vw, 20px);
}
#nav .times {
  margin-top: min(5.2vw, 20px);
}
#nav .scl_link,
#nav .senior_nm,
#nav .nav_no {
  color: #fff;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  display: block;
}
#nav .senior_nm,
#nav  .nav_no {
  font-size: clamp(1.3rem, 3.386vw, 2.6rem);
  padding: .4em 0 .3em;
  border-radius: 2em;
  position: absolute;
  z-index: 3;
  top: calc(min(36vw, 280px) - 2.8em);
}
#nav .senior_nm {
  background-color: #004F8E;
  width: 7em;
  left: calc(50% - 3.5em);
}
#nav .nav_no {
  width: 100%;
  padding-right: .8em;
  left: 0;
}
#nav .scl_link.__01 .nav_name,
#nav .__01 .nav_no {background-color: #E95464;}
#nav .scl_link.__02 .nav_name,
#nav .__02 .nav_no {background-color: #009F82;}
#nav .scl_link.__03 .nav_name,
#nav .__03 .nav_no {background-color: #7F35BC;}
#nav .scl_link.__04 .nav_name,
#nav .__04 .nav_no {background-color: #FF783C;}

#nav .float .nav_name::after,
#nav .nav_no::after {
  content: '';
  display: block;
  width: min(1.6vw, 12px);
  height: min(1.6vw, 12px);
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  z-index: 4;
}
#nav .nav_no::after {
  top: calc(50% - (min(1.6vw, 12px) / 2));
  right: 1.3em;
}
#nav .float .nav_name::after {
  left: calc(50% - (min(1.6vw, 12px) / 2));
  bottom: 0.7em;
}

#nav .link_anchor {
  text-decoration: none;
}
#nav .nav_name {
  font-size: clamp(1.2rem, 3.126vw, 2.4rem);
  font-weight: 600;
}
#nav .senior_nav .nav_name {color: #004f8e;}
#nav .li_nav.__01 .nav_name {color: #E95464;}
#nav .li_nav.__02 .nav_name {color: #009F82;}
#nav .li_nav.__03 .nav_name {color: #7F35BC;}
#nav .li_nav.__04 .nav_name {color: #FF783C;}

#nav .nav_name .initial {
  font-size: clamp(1.5rem, 3.908vw, 3.0rem);
  font-style: normal;
}

#nav .float {
  background-color: rgba(255,255,255,0.9);
  padding: min(3.5vw, 28px) 0;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 5;
  opacity: 0;
  animation: fadeIn_up .5s 0s forwards;
  display: flex;
  align-items: center;
  justify-content: center;
}
#nav.show .float {animation: fadeIn_down .5s .3s forwards;}

#nav .float_inner {
  margin: auto;
}
#nav .float .h2_nvimg {
  /*width: min(21.89189189189189vw, 240px);*/
  width: min(12.5vw, 240px);
  height: auto;
}
#nav .float .scl_link,
#nav .float .scl_nav {
  display: flex;
  align-items: center;
}
#nav .float .scl_link {
  margin: 0 min(1.25vw, 10px);
}
#nav .float .nav_name {
  font-weight: normal;
  border-radius: min(1.5vw, 6px);
  padding: min(2vw, 15px) min(2.5vw, 20px) min(3.8vw, 25px);
  position: relative;
}
#nav .float .case {
  display: block;
  line-height: 1;
}
#nav .float .h2_nav,
#nav .float .img_wrp {display: none;}

/*hover*/
#nav .img_wrp::before{
  content: '';
  display: block;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
#nav .__01 .img_wrp::before{
  background-color: #E95464;
}
#nav .__02 .img_wrp::before{
  background-color: #009F82;
}
#nav .__03 .img_wrp::before{
  background-color: #7F35BC;
}
#nav .__04 .img_wrp::before{
  background-color: #FF783C;
}
#nav .nav_inner .img_nav,
#nav .nav_inner .img_wrp,
#nav .nav_inner .img_wrp::before {
  width: min(30.76923vw, 240px);
  height: min(30.76923vw, 240px);
  transition: all .4s;
}
#nav .float .img_nav,
#nav .float .img_wrp,
#nav .float .img_wrp::before {
  width: min(7.03125vw, 90px);
  height: min(7.03125vw, 90px);
  transition: all .4s;
}

@media (hover:hover) {
  #nav .scl_link:hover .img_nav,
  #nav .link_anchor:hover .img_nav {
    opacity: .5;
  }
}

/*pc*/
@media screen and (min-width:641px) {
  #nav::before {
    border-bottom: min(2.6vw, 50px) solid #00ABE4;
    border-left: min(2.6vw, 50px) solid #00ABE4;
    width: calc((50vw + (min(90vw, 1030px) / 2)) - (min(14vw, 170px) * .5) + (min(2.6vw, 50px) * .25));
    height: 146.1538461538462vw;
    height: 26vw;
  }
  #nav .nav_inner {
    flex-direction: row;
    align-items: flex-start;
    width: min(90vw, 1030px);
  }
  #nav .li_nav,
  #nav .senior_nav {
    width: min(14vw, 170px);
    margin-top: 30px;
    margin-right: min(2.34375vw, 45px);
  }
  #nav .li_nav.__04 {margin-right: 0;}

  #nav .times {
    margin-top: calc((min(14vw, 170px) / 1.5) +  min(1.770833vw, 34px));
    margin-right: min(2.34375vw, 45px);
  }
  #nav .img_times {
    width: min(1.770833vw, 34px);
    height: auto;
    position: relative;
    z-index: 3;
  }
  #nav .float .nav_name::after,
  #nav .nav_no::after {
    width: calc(min(.44vw, 8.5px) * 2.4);
    height: calc(min(.44vw, 8.5px) * 2.4);
  }

  #nav .nav_inner .img_wrp {
    margin-bottom: min(2.34375vw, 30px);
  }
  #nav .nav_inner .img_nav,
  #nav .nav_inner .img_wrp,
  #nav .nav_inner .img_wrp::before {
    width: min(14vw, 170px);
    height: min(14vw, 170px);
  }

  #nav .senior_nm,
  #nav  .nav_no {
    font-size: min(1.667vw, 2.0rem);
    top: calc(min(14vw, 170px) - 1.2em);
  }
  #nav .nav_name {
    font-size: min(1.667vw, 2.0rem);
  }
  #nav .nav_name .initial {
    font-size: min(2.336vw, 2.8rem);
  }

  #nav .float {
    padding: min(1.5vw, 14px) 0;
  }
  #nav .float .h2_nav,
  #nav .float .img_wrp {display: block;}
  #nav .float .nav_name {
    font-size: clamp(0.6rem, 1.56vw, 1.2rem);
    padding: min(1vw, 10px) min(1.5vw, 15px) 12px;
    margin-right: min(1vw, 10px);
  }
  #nav .float .nav_name .case {
    font-size: clamp(0.7rem, 1.824vw, 1.4rem);
  }
  #nav .float .nav_name .initial {
    font-size: clamp(0.85rem, 2.214vw, 1.7rem);
  }
}
@media screen and (min-width:768px) {
  #nav::before {
    height: 25vw;
  }
}
@media screen and (min-width:980px) {
  #nav::before {
    height: 20rem;
  }
  #nav .li_nav,
  #nav .senior_nav {
    width: min(16vw, 170px);
    margin-right: min(1.40625vw, 25px);
  }
  #nav .li_nav.__03 {
    width: min(16vw, 182px);
  }
  #nav .li_nav .nav_name br {display: none;}
  #nav .float .nav_name::after,
  #nav .nav_no::after {
    width: calc(min(.44vw, 8.5px) * 2.4);
    height: calc(min(.44vw, 8.5px) * 2.4);
  }
  #nav .times {
    margin-top: calc((min(14vw, 170px) / 1.8) +  min(1.770833vw, 34px));
    margin-right: min(1.40625vw, 27px);
  }
  #nav .nav_inner .img_wrp {
    margin-bottom: min(1.5625vw, 30px);
  }
  #nav .senior_nm,
  #nav .nav_no {
    font-size: min(1.168vw, 1.4rem);
    top: calc(min(14vw, 170px) - 1.6em);
  }
  #nav .nav_name {
    font-size: min(1.168vw, 1.4rem);
  }
  #nav .nav_name .initial {
    font-size: min(1.334vw, 1.6rem);
  }

  #nav .float .h2_nvimg {
    width: min(18.75vw, 240px);
    margin-right: min(1.5625vw, 30px);
  }
  #nav .float .nav_name::after,
  #nav .nav_no::after {
    width: 8.5px;
    height: 8.5px;
  }
}
@media screen and (min-width:1100px) {
  #nav::before {
    height: 23.2rem;
  }
}
/*sp*/
@media screen and (max-width:640px){
  #nav::before {
    border-bottom: 20px solid #00ABE4;
    border-left: 20px solid #00ABE4;
    width: min(84.615384vw, 660px);
    height: 146.1538461538462vw;
  }
}
@media screen and (max-width:480px){
  #nav::before {
  }
  #nav .nav_inner .img_wrp{
    margin-bottom: min(5.2vw, 15px);
  }
  #nav .senior_nm,
  #nav  .nav_no {
    top: calc(min(36vw, 280px) - 3em);
  }
}
@media screen and (max-width:420px){
  #nav::before {
    height: 153.8461538461538vw;
  }
}
@media screen and (max-width:360px){
  #nav::before {
    height: 158.974358974359vw;
  }
  #nav .nav_inner .img_wrp {
    /*margin-bottom: min(2.5vw, 10px);*/
  }
}



/*content*/
#content {
  position: relative;
  z-index: 1;
  /*padding-top: min(12.8vw, 100px);*/
  padding-top: 1px;
}

#content .section {
  width: min(100vw, 840px);
  position: relative;
  z-index: 4;
  /*margin: 0 auto min(12.8vw, 100px);*/
  margin: auto;
}
#content .section .wrap_txt {
  background-color: rgba(255, 255, 255, 0.7);
  padding: min(7.6923vw, 60px) min(5.1282vw, 40px) ;
}
#content .section .img_int,
#content .section .img_ttl {
  width: 100%;
  height: auto;
  display: block;
}
#content .section .fig_int {
  margin: min(7.6923vw, 60px) 0;
}

#content .h3_sec {
  display: flex;
}
#content .h3_sec .no {
  color: #fff;
  font-size: clamp(1.6rem, 4.168vw, 3.2rem);
  font-weight: 600;
  line-height: 1;
  padding: min(2vw, 8px) min(2.5vw, 10px) min(1.8vw, 6px);
  margin-right: min(2.5vw, 10px);
  height: 100%;
  display: flex;
  align-items: center;
}
#content .h3_sec .sub_ttl {
  font-size: clamp(2.0rem, 5.21vw, 4.0rem);
  font-weight: 600;
  font-style: normal;
  display: flex;
  align-items: center;
  height: 100%;
}
#case01 .h3_sec .no {background-color: #e95464;}
#case01 .int_dt.__name01, 
#case01 .h3_sec .sub_ttl {color: #e95464;}
#case02 .h3_sec .no {background-color: #009f82;}
#case02 .int_dt.__name02, 
#case02 .h3_sec .sub_ttl {color: #009f82;}
#case03 .h3_sec .no {background-color: #7f35bc;}
#case03 .int_dt.__name03, 
#case03 .h3_sec .sub_ttl {color: #7f35bc;}
#case04 .h3_sec .no {background-color: #ff783c;}
#case04 .int_dt.__name04, 
#case04 .h3_sec .sub_ttl {color: #ff783c;}
#content .int_dt.__senior {color: #004f8e;}

#content .int_dl {
  font-size: clamp(1.4rem, 3.646vw, 2.8rem);
  display: flex;
  flex-wrap: wrap;
}
#content .int_dt {
  width: 3em;
  font-weight: 600;
  margin-top: min(5.1282vw, 20px);
}
#content .int_dd {
  width: calc(100% - 3em);
  margin-top: min(5.1282vw, 20px);
}
/*pc*/
@media screen and (min-width:641px) {
  #content {
    /*padding-top: min(6.25vw, 120px);*/
  }
  #content::before,
  #content::after {
    content: '';
    display: block;
    width: 100%;
    height: calc(100% + 20px);
    background-position: 0 0;
    background-repeat: repeat-y;
    background-size: 100% auto;
    position: absolute;
    z-index: 1;
    left: 0;
    top: -20px;
    bottom: 0;
  }
  #content::before {
    background-image: url(../img/bg_lineL.svg) ;
  }
  #content::after {
    background-image: url(../img/bg_lineR.svg) ;
  }
  #content .section .wrap_txt {
    padding: min(2.08333vw, 40px);
  }
  #content .h3_sec .no {
    font-size: clamp(1.1rem, 2.865vw, 2.2rem);
  }
  #content .h3_sec .sub_ttl {
    font-size: clamp(1.4rem, 3.646vw, 2.8rem);
  }
  #content .section .fig_int {
    margin: min(1.5625vw, 30px) 0 min(2.08333vw, 40px);
  }
  #content .int_dl {
    font-size: clamp(0.8rem, 2.086vw, 1.6rem);
  }
  #content .int_dt,
  #content .int_dd {
    margin-top: 1.5em;
  }
}
@media screen and (min-width:768px) {
}
@media screen and (min-width:980px) {
}

/*sp*/
@media screen and (max-width:640px){
}

/*btm catch*/
.sec_btm {
  padding: min(12.8205vw, 100px) min(5.1282vw, 20px) 0;
}
.sec_btm .wrap {
  display: flex;
  justify-content: center;
  align-items: stretch;
  margin-bottom: 20px;
}
.sec_btm .txt_catch {
  color: #00abe4;
  font-size: clamp(1.5rem, 3.908vw, 3.0rem);
  font-weight: 600;
  text-align: center;
  position: relative;
  z-index: 3;
}
.sec_btm .txt_catch::before,
.sec_btm .txt_catch::after {
  content: '';
  display: block;
  width: min(4.615384vw, 18px);
  border-left: 2px solid #00abe4;
  position: absolute;
  top: 0;
  bottom: 0;
}
.sec_btm .txt_catch::before {
  transform: rotate(-15deg);
  left: min(-2.5vw, -20px);
}
.sec_btm .txt_catch::after {
  transform: rotate(-165deg);
  right: min(-2.5vw, -20px);
}

.sec_btm .btm_fig {
  width: calc(min(100%, 700px) - 40px);
  margin: 0 auto 20px;
  position: relative;
}
.sec_btm .btm_fig::before {
  content: '';
  display: block;
  width: calc(100% + 40px);
  border: 20px solid #00abe4;
  position: absolute;
  height: calc(100% * .55);
  left: -20px;
  right: -20px;
  bottom: -20px;
  z-index: 2;
}
.sec_btm .img {
  width: min(100%, 960px);
  display: block;
  margin: auto;
  max-width: auto;
  height: auto;
  position: relative;
  z-index: 3;
}


/*pc*/
@media screen and (min-width:641px) {
  .sec_btm {margin-bottom: max(50px, 3vw);}
  .sec_btm .txt_catch {
    font-size: clamp(1.4rem, 3.646vw, 2.8rem);
    margin-bottom: min(2.0833vw, 40px);
  }
  .sec_btm .btm_fig {
    width: calc(min(82vw, 1220px) - max(-50px, -3vw));
  }
  .sec_btm .btm_fig::before {
    border-width: min(3vw, 50px);
    bottom: max(-50px, -3vw);
    height: 60%;
  }
  .sec_btm .img {
    width: min(80vw, 960px);
  }
}
@media screen and (min-width:980px) {
  .sec_btm .txt_catch br.sp2 {display: none;}
  .sec_btm {margin-bottom: max(50px, 3.5vw);}
  .sec_btm .btm_fig {
    width: calc(min(82vw, 1220px) - max(-50px, -3.5vw));
  }
  .sec_btm .btm_fig::before {
    border-width: min(3.5vw, 50px);
    bottom: max(-50px, -3.5vw);
    height: 65%;
  }
  .sec_btm .img {
    width: min(75vw, 960px);
  }
}
@media screen and (min-width:1920px) {
  .sec_btm {margin-bottom: 50px;}
  .sec_btm .btm_fig {
    width: calc(min(90vw, 1220px) - 50px);
  }
  .sec_btm .btm_fig::before {
    border-width: 50px;
    bottom: -50px;
    height: 263px;
  }
}

/*sp*/
@media screen and (max-width:520px){
  .sec_btm .btm_fig::before {
   height: calc(100% * .6);
 }
}
@media screen and (max-width:360px){
  .sec_btm .btm_fig::before {
   height: calc(100% * .65);
 }
}

/*close*/
.wrp__close {
  display: flex;
  justify-content: center;
  padding: min(12.8205vw, 100px) 0 min(7.6923vw, 60px);
  position: relative;
  z-index: 3;
}
.btn__close {
  color: #000;
  font-size: min(4.446vw, 1.6rem);
  text-decoration: none;
  background-color: #fff;
  border-radius: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: min(3.84615vw, 15px) min(7.6923vw, 30px) min(3.333vw, 13px);
}
.btn__close .close_txt {
  margin-right: min(5.1282vw, 20px);
}
.btn__close .close_icn {
  width : min(4.446vw, 1.6rem);
  height: min(4.446vw, 1.6rem);
  position: relative;
}
.btn__close .close_icn::before,
.btn__close .close_icn::after {
  content: '';
  display: block;
  width: 2px;
  height: 100%;
  background-color: #000;
  position: absolute;
  top: 0%;
  left: 0;
}
.btn__close .close_icn::before{transform: rotate(45deg)}
.btn__close .close_icn::after {transform: rotate(-45deg)}

/*pc*/
@media screen and (min-width:641px) {
  .wrp__close {
    padding: 0 0 min(4vw, 50px);
  }
  .btn__close {
    font-size: clamp(0.8rem, 2.086vw, 1.6rem);
    padding: .8em 1.5em .7em;
  }
  .btn__close .close_txt {
    margin-right: 1em;
  }
  .btn__close .close_icn {
    width: clamp(0.75rem, 1.956vw, 1.5rem);
    height: clamp(0.75rem, 1.956vw, 1.5rem);
  }
}
@media screen and (min-width:768px) {
  .wrp__close {
    padding: 30px 0 50px;
  }
}
@media screen and (min-width:1120px) {
  .wrp__close {
    padding: 50px 0 50px;
  }
}
/*sp*/
@media screen and (max-width:360px){
  .btn__close {
    font-size: clamp(1.6rem, 4.168vw, 3.2rem);
    padding: min(5.1282vw, 20px) min(10.2564vw, 40px) min(4.61538vw, 18px);
  }
  .btn__close .close_icn {
    width : clamp(1.4rem, 3.646vw, 2.8rem);
    height: clamp(1.4rem, 3.646vw, 2.8rem);
  }
}

/*gotop*/
.pagetop {
  width: min(15.3846vw, 60px);
  height: min(15.3846vw, 60px);
  position: fixed;
  bottom: min(10vw, 40px);
  right: min(5vw, 20px);
  z-index: 4;
  transition: all .3s;
}
.pagetop:hover {opacity: .7;}
.pagetop__link {
  color: #fff100;
  font-size: min(3.890vw, 1.4rem);
  text-decoration: none;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #00abe4;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.pagetop__link::before {
  content: '';
  display: block;
  background-color: #fff100;
  width: min(2.780vw, 1.0rem);
  height: min(2.780vw, 1.0rem);
  margin-bottom: calc(min(2.780vw, 1.0rem) * .5);
  clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}
/*pc*/
@media screen and (min-width:641px) {
  .pagetop {
    right: min(4.6875vw, 90px);
    bottom: min(4.6875vw, 90px);
  }
  .pagetop__link {
    font-size: clamp(0.8rem, 2.086vw, 1.6rem);
  }
  .pagetop__link::before {
    width: clamp(0.6rem, 1.56vw, 1.2rem);
    height: clamp(0.6rem, 1.56vw, 1.2rem);
  }
}
@media screen and (min-width:980px) {
  .pagetop {
    width: min(15.3846vw, 80px);
    height: min(15.3846vw, 80px);
  }
  .pagetop__link::before {
    margin-bottom: .5em;
  }
}
/*sp*/
@media screen and (max-width:360px){
  .pagetop__link {
    font-size: clamp(1.4rem, 3.646vw, 2.8rem);
  }
}

/*footer */
#footer {
  color: #fff;
  font-size: clamp(0.5rem, 1.3vw, 1.0rem);
  background-color: #00abe4;
  padding: 1.5em 0 1.3em;
  text-align: center;
}
