@charset "utf-8";

*,
*::before,
*::after {
  margin: 0px;
  padding: 0px;
  box-sizing: border-box;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-size: 16px;
  line-height: 1.2em;
  color: #555;
}

ul {
  list-style: none;
}

a,
a:hover,
a:visited {
  text-decoration: none;
  color: inherit;
  outline: none;
}

a:hover {
  opacity: 0.5;
}

img {
  vertical-align: bottom;
}

input,
select,
textarea {
  margin: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -o-border-radius: 5px;
  -ms-border-radius: 5px;
  border-radius: 5px;
}

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
 
.clearfix:before {
　　　　content: "";
	display: block;
	clear: both;
}
 
.clearfix {
	display: block;
}

.view__sp { display: none; }
.view__flex { display: none; }
.view__ssp { display: none; }

.dropdown { display: none; }

#bsim { margin: 0px auto; width: min(1920px, calc(1920 / 1920 * 100vw)); min-width: 1200px; position: relative; }
#bsim .nav_page { display: inline-flex; align-items: center; justify-content: flex-start; flex-wrap: nowrap; column-gap: 15px; position: absolute; top: 30px; right: 40px; z-index: 99; }
#bsim .nav_page .bsim_series img { width: min(234px, calc(234 / 1920 * 100vw)); min-width: 146px; }
#bsim .nav_page a img { width: min(278px, calc(278.5 / 1920 * 100vw)); min-width: 174px; filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.3)); }
#bsim .nav_page_ssp { display: none; }
#bsim .vw1_1 { background-image: url("../images/dot.png"); background-repeat: repeat; position: relative; }
#bsim .vw1_1 img { width: 100%; }
#bsim .vw1_1 .nav_contact { display: flex; align-items: center; justify-content: space-between; flex-wrap: nowrap; column-gap: min(55px, calc(55 / 1920 * 100vw)); padding: 0px min(75px, calc(75 / 1920 * 100vw)); width: 100%; position: absolute; bottom: min(55px, calc(55 / 1920 * 100vw)); left: 0px; }
#bsim .vw1_1 .nav_contact .nav_tel { flex: 1; }
#bsim .vw1_1 .nav_contact img { width: min(433px, calc(433 / 1920 * 100vw)); min-width: 270.5px; filter: drop-shadow(10px 10px 5px rgba(0, 0, 0, 0.3)); }
#bsim .vw1_2 img { width: 100%; }
#bsim .vw1_4 img { width: 100%; }
#bsim .vw1_4_sp img { width: 100%; }
#bsim .mvno { padding: 30px 60px; background-image: url("../images/dot.png"); background-repeat: repeat; }
#bsim .mvno img { width: 100%; }
#bsim .vw2 { padding: 105px 0px 0px; text-align: center; position: relative; }
#bsim .vw2 img { width: min(1718px, calc(1718 / 1920 * 100vw)); min-width: 1073px; }
#bsim .vw2 p { font-size: 17px; font-weight: bold; text-align: left; position: absolute; bottom: min(100px, calc(100 / 1920 * 100vw)); right: min(120px, calc(120 / 1920 * 100vw)); }
#bsim .confirm { padding: 148px 169px 102px 129px; background-image: url("../images/dot.png"); background-repeat: repeat; position: relative; }
#bsim .confirm div { padding: 85px 70px; border-radius: 50px; background-color: #fff; }
#bsim .confirm div h1 { font-size: 46px; font-weight: bold; color: #009d40; }
#bsim .confirm div .use_mvno { margin-top: 20px; font-size: 38px; color: #009d40; line-height: 1.5em; }
#bsim .confirm div .caution { padding: 1.5em 300px 0px 0px ; min-height: 525px; font-size: 32px; line-height: 1.5em; position: relative; }
#bsim .confirm div div { padding: 1.5em 300px 0px 0px ; min-height: 525px; font-size: 32px; line-height: 1.5em; position: relative; }
#bsim .confirm_check { position: absolute; top: 25px; left: 74px; }
#bsim .confirm_man { position: absolute; bottom: 0px; right: -200px; }
#bsim .nav_order_form { display: inline-block; position: absolute; bottom: 30px; right: 150px; }
#bsim .nav_order_form img { width: min(433px, calc(443 / 1920 * 100vw)); filter: drop-shadow(10px 10px 5px rgba(0, 0, 0, 0.3)); }
#bsim .vw3 { padding: 160px 0 123px; }
#bsim .vw3 img { width: 100%; }
#bsim .vw3 ul { display: flex; align-items: center; justify-content: space-between; flex-wrap: nowrap; column-gap: 40px; margin-top: 80px; }
#bsim .vw7 img { width: 100%; }
#bsim .vw8 { display: flex; align-items: center; justify-content: center; flex-wrap: nowrap; margin-top: min(137px, calc(137 / 1920 * 100vw)); padding: 0px 50px; }
#bsim .vw8 img { margin-right: 30px; width: min(564px, calc(564 / 1920 * 100vw)); min-height: 352.5px; }
#bsim .vw8 h1 { font-size: min(138px, calc(138 / 1920 * 100VW)); font-weight: bold; line-height: 1em; color: #009d40; }
#bsim .vw8 h1 span { font-size: min(101px, calc(101 / 1920 * 100VW)); font-weight: bold; color: #009d40; line-height: 1em; }
#bsim .vw8 li { margin-top: min(53px, calc(53 / 1920 * 100vw)); font-size: min(45px, calc(45 / 1920 * 100vw)); color: #009d40; }
#bsim .vw8 p { margin-top: min(60px, calc(60 / 1920 * 100vw)); font-size: min(32px, calc(32 / 1920 * 100vw)); }
#bsim .vw9 { margin: 175px 0px 0px; }
#bsim .vw9 h1 { height: 184px; background-color: #ffef00; }
#bsim .vw9 h1 img { width: 827px; position: relative; top: 50%; left: 50%; transform: translate(-50%, -50%); }
#bsim .step figure { display: flex; align-items: flex-start; justify-content: flex-start; flex-wrap: nowrap; column-gap: min(56px, calc(56 / 1920 * 100vw)); margin-top: min(100px, calc(100 / 1920 * 100vw)); padding-right: min(280px, calc(280 / 1920 * 100vw)); }
#bsim .step figure img { width: min(365px, calc(365 / 1920 * 100vw)); }
#bsim .step figcaption { font-size: min(60px, calc( 60/ 1920 * 100vw)); line-height: 1.2em; }
#bsim .step figcaption span { font-size: min(43px, calc(43 / 1920 * 100vw)); }
#bsim .step figcaption p { margin-top: min(45px, calc(45 / 1920 * 100vw)); font-size: min(40px, calc(40 / 1920 * 100vw)); }
#bsim .step ul { display: flex; align-items: center; justify-content: center; flex-wrap: nowrap; column-gap: min(40px, calc(40 / 1920 * 100vw)); }
#bsim .step ul li img { padding: min(56px, calc(56 / 1920 * 100vw)) 0px; width: min(400px, calc(400 / 1920 * 100vw)); filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.3)); }
#bsim .step .caution { margin-top: 50px; padding: 0px 20px; text-align: center; }
#bsim .step .caution p { display: inline-block; padding: 25px 35px; font-size: min(40px, calc(40 / 1920 * 100vw)); text-align: left; border: 1px #f00 solid; }
#bsim .vw10 { margin-top: 560px; height: 65px; background-image: url('../images/dot.png'); background-repeat: repeat; }
#bsim .vw11 { margin: 50px 0px; text-align: center; }
#bsim .vw11 figcaption { margin-top: 25px; font-size: 23px; line-height: 2em; }
#bsim .vw11 figcaption p { margin-top: 30px; }

@media only screen and (max-width: 1599px) {
  #bsim .nav_order_form { margin-top: 30px; position: static; float: right; }
}

@media only screen and (max-width: 1200px) {
  #bsim .vw1_1 .nav_contact { column-gap: 35px; }
  #bsim .mvno { font-size: 61px; }
  #bsim .mvno span { font-size: 61px; }
  #bsim .nav_order_form img { width: 267px; }
  #bsim .vw8 img { width: 352.5px; }
  #bsim .vw8 h1 { font-size: 86px; }
  #bsim .vw8 h1 span { font-size: 63px; }
  #bsim .vw8 li { font-size: 28px; }
  #bsim .vw8 p { font-size: 28px; }
  #bsim .step figure { margin-top: 60px; padding-right: 175px; }
  #bsim .step figure img { width: 228px; }
  #bsim .step figcaption { font-size: 37.5px }
  #bsim .step ul li img { width: 250px; }
  #bsim .step figcaption span { font-size: 27px }
  #bsim .step figcaption p { font-size: 25px }
  #bsim .step .caution p { font-size: 25px; }
}

@media only screen and (max-width: 800px) {
  a:hover {
    opacity: 1;
  }
  .view__pc { display: none !important; }
  .view__sp { display: block !important; }
  .view__flex { display: flex !important; }
  
  #bsim { padding-top: 115px; width: 100%; min-width: auto; }
  #bsim .vw1_1_sp { width: 100%; background-image: url("../images/dot.png"); background-repeat: repeat; }
  #bsim .nav_page { padding: 0px 30px; width: 100%; height: 115px; position: fixed; top: 0px; left: 0px; border-bottom: 1px #7fd516 solid; background-color: #fff; }
  #bsim .nav_page .nav_menu { flex: 1; text-align: right; }
  #bsim .nav_page a { display: inline-block; }
  #bsim .nav_page a img { width: calc(213 / 800 * 100vw); }
  #bsim .nav_page .nav_menu a img { width: 35px; min-width: auto; }
  #bsim .vw1_1_sp img,
  #bsim .vw1_2_sp img,
  #bsim .vw1_3_sp img { width: 100%; }
  #bsim .vw1_4_sp img { margin-top: calc(65 / 800 * 100vw); }
  #bsim .nav_contact { padding: calc(140 / 800 * 100vw) 0px; display: flex; align-items: center; justify-content: center; flex-flow: column; row-gap: calc(70 / 800 * 100vw); width: 100%; border-bottom: 1px #7fd516 solid; }
  #bsim .nav_contact li { text-align: center; }
  #bsim .nav_contact img { width: min(535px, calc(535 / 800 * 100vw)); filter: drop-shadow(10px 10px 5px rgba(0, 0, 0, 0.3)); }
  #bsim .vw2 { padding-top: calc(63 / 800 * 100vw); width: 100%; }
  #bsim .vw2 img { width: calc(675 / 800 * 100vw); min-width: auto; }
  #bsim .vw2 p { display: inline-block; margin-top: 50px; padding: 0px calc(60 / 800 * 100vw); position: static; }
  #bsim .vw2 p span { display: inline-block; padding-let: 1em; text-indent: -1em; }
  #bsim .mvno { margin-top: calc(126 / 800 * 100vw); }
  #bsim .confirm { margin: calc(60 / 800 * 100vw) 0px calc(550 / 800 * 100vw); padding: calc(30 / 800 * 100vw) calc(70 / 800 * 100vw) 100px; width: 100%; }
  #bsim .confirm img { width: 100%; position: static; }
  #bsim .confirm div { margin-top: calc(20 / 800 * 100vw); padding: calc(40 / 800 * 100vw) calc(70 / 800 * 100vw); }
  #bsim .confirm div h1 { font-size: max(calc(32 / 800 * 100vw), 16px); }
  #bsim .confirm div .use_mvno { font-size: max(calc(25 / 800 * 100vw), 16px); }
  #bsim .confirm div .caution { margin-top: calc(50 / 800 * 100vw); padding: 0px; min-height: auto; font-size: max(calc(25 / 800 * 100vw), 16px); }
  #bsim .confirm .confirm_sp { padding: 0px; background-color: transparent; }
  #bsim .confirm .confirm_sp div { position: absolute; bottom: calc(-1 * (300 / 800 * 100vw)); right: 30px; padding: 0px; min-height: 0px; text-align: right; background-color: transparent; }
  #bsim .confirm .confirm_sp div img { width: calc(440 / 800 * 100vw); }
  #bsim .confirm .confirm_sp a { display: inline-block; position: absolute; bottom: calc(-1 * (430 / 800 * 100vw)); left: 50%; transform: translateX(-50%); }
  #bsim .confirm .confirm_sp a img { width: calc(535 / 800 * 100vw); }
  #bsim .vw3 { padding: 0px; }
  #bsim .vw3 img { width: 100%; }
  #bsim .vw3 ul { margin-top: calc(58 / 800 * 100vw); padding: 0px calc(100 / 800 * 100vw); flex-flow: column; row-gap: calc(40 / 800 * 100vw); }
  #bsim .vw3 ul li { width: 100%; }
  #bsim .vw3 p { padding: calc(20 / 800 * 100vw) calc(100 / 800 * 100vw) 0px; font-size: 16px; font-weight: bold;  text-align: right; }
  #bsim .vw4 { display: none; }
  #bsim .vw5 h1 { height: calc(175 / 800 * 100vw); }
  #bsim .vw5 h1 img { width: calc(660 / 800 * 100vw); }
  #bsim .vw5 p { margin-top: 20px; }
  #bsim .vw5 p img { width: calc(634 / 800 * 100vw); }
  #bsim .vw6 { margin-top: calc(100 / 800 * 100vw); }
  #bsim .vw7 { margin-top: calc(70 / 800 * 100vw); }
  #bsim .vw8 { display: block; padding: calc(47 / 800 * 100vw); }
  #bsim .vw8 h1 { font-size: max(calc(89 / 800 * 100vw), 16px); }
  #bsim .vw8 h1 span { font-size: max(calc(65 / 800 * 100vw), 16px); }
  #bsim .vw8 li { font-size: max(calc(28 / 800 * 100vw), 16px); }
  #bsim .vw8 p { font-size: max(calc(20 / 800 * 100vw), 16px); }
  #bsim .vw8 span { font-size: max(calc(20 / 800 * 100vw), 16px); }
  #bsim .vw8 img { margin: 0px; width: calc(400 / 800 *100vw); min-height: auto; }
  #bsim .vw8 .option_man { text-align: center; }
  #bsim .vw8 .option_man img { margin: 0px; min-height: auto; }
  #bsim .vw9 { margin-top: calc(128 / 800 * 100vw); }
  #bsim .vw9 h1 { height: calc(175 / 800 * 100vw); }
  #bsim .vw9 h1 img { width: calc(638.5 / 800 * 100vw); }
  #bsim .step figure { margin-top: calc(84 / 800 * 100vw); padding-right: max(calc(40 / 800 * 100vw), 10px); }
  #bsim .step figure img { width: calc(243 / 800 * 100vw); }
  #bsim .step figcaption { font-size: max(calc(40/ 800 * 100vw), 16px); }
  #bsim .step figcaption span { font-size: max(calc(28.5 / 800 * 100vw), 16px); }
  #bsim .step figcaption p { font-size: max(calc(24 / 800 * 100vw), 16px); }
  #bsim .step .caution p { font-size: calc(33 / 800 * 100vw); }
  #bsim .step ul { flex-flow: column; row-gap: calc(70 / 800 * 100vw); margin: calc(65 / 800 * 100vw) 0px; }
  #bsim .step ul li img { width: calc(535 / 800 *100vw); }
  #bsim .step .caution { margin-top: calc(55 / 800 * 100vw); padding: 0px calc(50 / 800 * 100vw); }
  #bsim .step .caution p { padding: max(calc(30 / 800 * 100vw), 10px); }
  #bsim .vw10 { margin-top: calc(170 / 800 * 100vw); }
  #bsim .vw11 { margin: calc(70 / 800 * 100vw) 0px; text-align: center; }
  #bsim .vw11 figure img { width: 232px; }
  #bsim .vw11 figcaption { margin-top: calc(30 / 800 * 100vw); font-size: max(calc(18 / 800 * 100vw), 16px); line-height: 2em; }
  #bsim .vw11 figcaption p img { width: calc(442 / 800 * 100vw); }
  #bsim .dropdown { width: 100%; background-color: #fff; position: fixed; top: 110px; left: 0px; }
  #bsim .dropdown ul { padding: calc(140 / 800 * 100vw) 0px; display: flex; align-items: center; justify-content: center; flex-flow: column; row-gap: calc(70 / 800 * 100vw); width: 100%; border-bottom: 2px #7fd516 solid; }
  #bsim .dropdown li { text-align: center; }
  #bsim .dropdown img { width: min(535px, calc(535 / 800 * 100vw)); filter: drop-shadow(10px 10px 5px rgba(0, 0, 0, 0.3)); }
}

@media only screen and (max-width: 650px) {
  #bsim .nav_page { display: none; }
  #bsim .nav_page_ssp { display: block; padding: 0px 20px; width: 100%; height: 115px; position: fixed; top: 0px; left: 0px; border-bottom: 1px #7fd516 solid; background-color: #fff; z-index: 99; }
  #bsim .nav_page_ssp div { position: relative; top: 50%; transform: translateY(-50%); }
  #bsim .nav_page_ssp ul { display: flex; align-items: center; justify-content: flex-start; flex-wrap: nowrap; column-gap: 20px; margin-top: 10px; }
  #bsim .nav_page_ssp ul .nav_menu { flex: 1; text-align: right; }
  #bsim .nav_page_ssp a img { width: calc(250 / 800 * 100vw); }
  #bsim .nav_page_ssp .nav_menu a img { width: 35px; min-width: auto; }
}

@media only screen and (max-width: 550px) {
  #bsim .vw11 .view__sp { display: none !important; }
  #bsim .vw11 .view__ssp { display: block; }
  #bsim .vw11 figcaption p { margin-top: 5px; }
  #bsim .vw11 figcaption p:nth-of-type(2) { margin: 40px 0px 10px; }
  #bsim .vw11 figcaption p img { width: auto; }
}