/* reset_CSS */
html, body, h1, h2, h3, h4, ul, ol, dl, li, dt, dd, p, div, span, img, a, table, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: normal;
  font-size: 100%;
  vertical-align:baseline;
  box-sizing: border-box;
}
article, header, footer, aside, figure, figcaption, nav, section {
  display:block;
}
* {
  float: none;
  position: static;
}
a {
  text-decoration: none;
}
ul, ol {
  list-style: none;
  list-style-type: none;
}
img {
  max-width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
button {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  vertical-align: middle;
  border: 0;
  background: transparent;
  border-radius: 0;
  text-align: inherit;
}
input, textarea {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}



html {
  font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
  font-size: 100%;
  color: #333;
  line-height: 1.5;
}
#wrapper {
  background-color: #f0f7fc;
}
#contents {
  display: flex;
  justify-content: center;
  padding-top: 60px;
}
#main {
  max-width: 1000px;
  padding: 0 0 40px 0;
}

.bold {
  font-weight: bold;
}

.mgn-t30 {
  margin-top: 30px;
}
.mgn-t50 {
  margin-top: 50px;
}
.mgn-b10 {
  margin-bottom: 10px;
}
.mgn-b40 {
  margin-bottom: 40px;
}
.mgn-r30 {
  margin-right: 30px;
}

.center {
  text-align: center;
}
.all_center {
  display: flex;
  align-items: center;
  justify-content: center;
}
.column_center {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: column;
  align-items: center;
}
.clear {
  clear: both;
}


/* ### ヘッダー ################################################## */
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 10px 20px;
  background-color: #EFF7FB;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-shadow: none; /* 初期状態では影なし */
  transition: all 0.3s ease;
}
.header.scrolled {
  background-color: #ffffff;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  padding: 5px 30px;
}
img.header-img {
  width: 100%;
}
img.logo_img {
  width: 200px;
}
.header_menu_between {
  display: flex;
  align-items: center;
  gap: 40px;
}
@media screen and (max-width: 870px) {
.header_menu_between {
  display: flex;
  align-items: center;
  gap: 20px;
}}
a.header_menu_title {
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 18px;
  font-weight: 500;
  text-decoration: none;
}
@media screen and (max-width: 870px) {
a.header_menu_title {
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 16px;
  font-weight: 500;
  text-decoration: none;
}}
a.header_menu_title_contact {
  padding: 5px 10px;
  color: #bd1e21;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
  text-decoration: none;
  border: #bd1e21 1px solid;
  border-radius: 25px;
}
@media screen and (max-width: 870px) {
a.header_menu_title_contact {
  padding: 5px 10px;
  color: #bd1e21;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 14px;
  font-weight: 500;
  text-align: center;
  text-decoration: none;
  border: #bd1e21 1px solid;
  border-radius: 25px;
}}
a.header_menu_title_register {
  padding: 5px 10px;
  color: #fff;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
  text-decoration: none;
  border: #bd1e21 1px solid;
  border-radius: 25px;
  background-color: #bd1e21;
}
a.header_menu_title_register:hover {
  color: #bd1e21;
  background-color: #fff;
}
@media screen and (max-width: 870px) {
a.header_menu_title_register {
  padding: 5px 10px;
  color: #fff;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
  text-decoration: none;
  border: #bd1e21 1px solid;
  border-radius: 25px;
  background-color: #bd1e21;
}}


/* ハンバーガーメニューアイコン */
.hamburger {
  display: none;
  flex-direction: column;
  cursor: pointer;
}

.hamburger span {
  background-color: #333;
  height: 3px;
  width: 25px;
  margin: 3px 0;
  border-radius: 2px;
}
/* モバイル用メニュー */
.mobile_menu {
  display: none;
  flex-direction: column;
  gap: 10px;
  position: absolute;
  top: 60px;
  right: 20px;
  background-color: #fff;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
  padding: 10px 20px;
  border-radius: 5px;
}
/* 720px以下の場合のスタイル */
@media (max-width: 720px) {
  .header_menu_between {
    display: none; /* PCメニューを非表示 */
  }
  .hamburger {
    display: flex; /* ハンバーガーメニューを表示 */
  }
  .mobile_menu {
    display: none; /* メニューは非表示 (クリックで表示されるようにJSで制御) */
  }
  .mobile_menu.open {
    display: flex; /* 開いたときのメニュー */
  }
}



/* ### 装飾 ####################################################### */
.red_waku {
  margin: 15px 0;
  padding: 5px;
  border: solid 2px tomato;
  border-radius: 5px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

section {
  padding: 20px;
  box-sizing: border-box;
}

a.buttom {
  padding: 20px;
  color: #fff;
  font-weight: bold;
  text-align: center;
  border: 1px solid #3cb371;
  border-radius: 5px;
  background-color: #3cb371;
  text-decoration: none;
}

.topBack_link {
  margin-top: 50px;
  padding: 10px 20px;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  border: #479CD7 1px solid;
  border-radius: 25px;
  background-color: #479CD7;
  transition: transform 0.4s ease;
}

/* ### フッター ################################################ */
.footer {
  background: #fff;
  text-align: center;
}
.footer_contents {
  width: 100%;
  max-width: 700px;
  margin: 5%;
}
a.footer_contents_link {
  margin-bottom: 10px;
  color: #bd1e21;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 16px;
  font-weight: 500;
  text-decoration: none;
  display: inline-block;
}
@media screen and (max-width: 520px) {
a.footer_contents_link {
  margin-bottom: 10px;
  color: #bd1e21;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  display: inline-block;
}}
.copyright {
  padding: 20px 0 0 0;
  color: #fff;
  font-family: "Barrio", system-ui;
  font-size: 14px;
  font-weight: 400;
  box-sizing: border-box;
}
.footer_copy_contents {
  background-color: #bd1e21;
}
.footer_copy_width {
  width: 100%;
  max-width: 1000px;
  padding: 30px 0;
  box-sizing: border-box;
}
.footer_copy_text {
  color: #fff;
  font-family: "Barrio", system-ui;
  font-size: clamp(16px, 9vw, 95px);
  font-weight: 400;
}
.footer_between {
  display: flex;
  justify-content: space-between
}
.footer_logo_copy {
  padding-bottom: 10px;
  color: #bd1e21;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 18px;
  font-weight: 500;
  text-align: left;
}
img.footer_logo_img {
  width: 150px;
  text-align: left;
}
.footer_box_left {
  width: 50%;
  margin-right: 20px;
  text-align: left;
}
.footer_box_right {
  width: 50%;
  text-align: left;
}



/*///////////////////////////
// 登録リンク
///////////////////////////*/
a.register_link {
  padding: 5px 20px;
  color: #fff;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 25px;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  border: #bd1e21 1px solid;
  border-radius: 50px;
  background-color: #bd1e21;
  text-decoration: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  transition: transform 0.4s ease;
}
@media screen and (max-width: 720px) {
a.register_link {
  padding: 5px 20px;
  color: #fff;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 24px;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  border: #bd1e21 1px solid;
  border-radius: 50px;
  background-color: #bd1e21;
  text-decoration: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  transition: transform 0.4s ease;
}}
a.register_link:hover {
  transform: scale(1.05);
}

a.register_link i {
  margin-left: 8px;
  font-size: 0.9em;
  transition: transform 0.3s ease;
}

a.register_link:hover i {
  transform: translateX(3px);
}



/*///////////////////////////
// top
///////////////////////////*/
#top_container {
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 1020px) {
.catch_main {
  margin: 10px 0 70px 0;
}}
@media screen and (max-width: 1019px) {
.catch_main {
  margin: 10px 0 50px 0;
}}
@media screen and (max-width: 870px) {
.catch_main {
  margin: 10px 0 40px 0;
}}

.br_734 {
  display: none;
}

.br_390 {
  display: none;
}

.img_p_center {
  text-align: center;
}

@media screen and (min-width: 1020px) {
img.top_img {
  margin: 30px 0 0 0;
  width: 200px;
}}
@media screen and (max-width: 1019px) {
img.top_img {
  margin: 30px 0 0 0;
  width: 180px;
}}
@media screen and (max-width: 870px) {
img.top_img {
  margin: 30px 0 0 0;
  width: 160px;
}}
@media screen and (max-width: 720px) {
img.top_img {
  margin: 30px 0 0 0;
  width: 140px;
}}

@media screen and (min-width: 1020px) {
h1.h1_title {
  margin: 30px 0 20px 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 50px;
  font-weight: 600;
  text-align: center;
}}
@media screen and (max-width: 1019px) {
h1.h1_title {
  margin: 30px 0 20px 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 45px;
  font-weight: 600;
  text-align: center;
}}
@media screen and (max-width: 870px) {
h1.h1_title {
  margin: 30px 0 20px 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 35px;
  font-weight: 600;
  text-align: center;
}}
@media screen and (max-width: 720px) {
h1.h1_title {
  margin: 30px 0 20px 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 30px;
  font-weight: 600;
  text-align: center;
}}
@media screen and (min-width: 720px) {
.br_720 {
  display: none;
}}

@media screen and (min-width: 1020px) {
.h2_title {
  color: #333;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 30px;
  font-weight: 600;
  line-height: 1.8;
  text-align: center;
}}
@media screen and (max-width: 1019px) {
.h2_title {
  color: #333;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 28px;
  font-weight: 600;
  line-height: 1.6;
  text-align: center;
}}
@media screen and (max-width: 870px) {
.h2_title {
  color: #333;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 25px;
  font-weight: 600;
  line-height: 1.6;
  text-align: center;
}}
@media screen and (max-width: 720px) {
.h2_title {
  color: #333;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.5;
  text-align: center;
}}

.waku {
  margin: 10px 0 30px 0;
  padding: 30px;
  border-radius: 20px;
  background-color: #fff;
}
@media screen and (max-width: 390px) {
.waku {
  margin: 10px 0 30px 0;
  padding: 10px;
  border-radius: 20px;
  background-color: #fff;
}}

.waku2 {
  padding: 30px;
  border-radius: 20px;
  background-color: #F0F5F8;
}
@media screen and (max-width: 390px) {
.waku2 {
  padding: 10px;
  border-radius: 20px;
  background-color: #F0F5F8;
}}

.tool_container {
  display: flex;
  gap: 30px;
  justify-content: center;
}
@media screen and (max-width: 720px) {
.tool_container {
  display: flex;
  gap: 30px;
  flex-direction: column;
}}
.tool_container .tool_box {
  flex: 1;
}

@media screen and (min-width: 1020px) {
.top_tool_box {
  width: 300px;
  background-color: #fff;
  border-radius: 25px;
}}
@media screen and (max-width: 1019px) {
.top_tool_box {
  width: 250px;
  background-color: #fff;
  border-radius: 25px;
}}
@media screen and (max-width: 870px) {
.top_tool_box {
  width: 200px;
  background-color: #fff;
  border-radius: 25px;
}}
@media screen and (max-width: 720px) {
.top_tool_box {
  width: 100%;
  background-color: #fff;
  border-radius: 25px;
}}

img.tool_img {
  width: 100%;
}
img.tool_img2 {
  width: 100%;
  border: #fff 0px solid;
}

@media screen and (min-width: 1020px) {
.video-container {
  width: 100%;
  height: 318px;
  overflow: hidden;
  position: relative;
}}
@media screen and (max-width: 1019px) {
.video-container {
  width: 100%;
  height: 265px;
  overflow: hidden;
  position: relative;
}}
@media screen and (max-width: 870px) {
.video-container {
  width: 100%;
  height: 212px;
  overflow: hidden;
  position: relative;
}}
@media screen and (max-width: 720px) {
.video-container {
  width: 100%;
  height: 318px;
  overflow: hidden;
  position: relative;
}}
.video-container iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 170%;
  height: 100%;
  transform: translate(-50%, -50%) scale(1.1);
  transform-origin: center;
}

@media screen and (min-width: 1020px) {
.top_title {
  margin: 0 0 30px 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 50px;
  font-weight: 600;
  text-align: center;
}}
@media screen and (max-width: 1019px) {
.top_title {
  margin: 0 0 30px 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 45px;
  font-weight: 600;
  text-align: center;
}}
@media screen and (max-width: 870px) {
.top_title {
  margin: 0 0 20px 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 35px;
  font-weight: 600;
  text-align: center;
}}

@media screen and (max-width: 720px) {
.top_title {
  margin: 0 0 10px 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 30px;
  font-weight: 600;
  text-align: center;
}}

@media screen and (min-width: 1020px) {
.top_tool_title {
  padding: 20px;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 24px;
  font-weight: 500;
  text-align: center;
}}
@media screen and (max-width: 1019px) {
.top_tool_title {
  padding: 20px;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 20px;
  font-weight: 500;
  text-align: center;
}}
@media screen and (max-width: 870px) {
.top_tool_title {
  padding: 15px 20px;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 15px;
  font-weight: 500;
  text-align: center;
}}
@media screen and (max-width: 720px) {
.top_tool_title {
  padding: 20px;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 20px;
  font-weight: 500;
  text-align: center;
}}

.top_tool_text {
  padding: 20px;
  font-size: 16px;
  line-height: 32px;
  text-align:justify;
  text-justify:inter-ideograph;
  line-break: strict;
}
.sub_title {
  margin: 0 0 10px 0;
  color: #000;
  font-size: 1.2rem;
  font-weight: bold;
}
.sub_title2 {
  margin: 0 0 10px 0;
  color: #000;
  font-size: 1.2rem;
  font-weight: bold;
}

.top_text {
  font-size: 0.9rem;
  line-height: 2;
}

a.top_buy_link {
  margin: 40px 0;
  padding: 10px 20px;
  color: #fff;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 25px;
  font-weight: 600;
  text-align: center;
  border: 1px solid #bd1e21;
  border-radius: 25px;
  background-color: #bd1e21;
  text-decoration: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  transition: transform 0.4s ease;
}
@media screen and (max-width: 720px) {
a.top_buy_link {
  width: 80%;
  margin: 20px 0 0 0;
  padding: 10px 20px;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  border: 1px solid #bd1e21;
  border-radius: 25px;
  background-color: #bd1e21;
  text-decoration: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
}}
a.top_buy_link:hover {
  transform: scale(1.05);
}
a.top_tool_link {
  width: 60%;
  margin: 0 0 20px 0;
  padding: 5px;
  color: #fff;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 20px;
  font-weight: 600;
  text-align: center;
  border: 1px solid #bd1e21;
  border-radius: 25px;
  background-color: #bd1e21;
  text-decoration: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  transition: transform 0.4s ease;
}
a.top_tool_link:hover {
  transform: scale(1.05);
}

/* top_news */
.top_news_center {
  display: flex;
  gap: 30px;
  justify-content: center;
}
@media screen and (max-width: 720px) {
.top_news_center {
  display: flex;
  gap: 30px;
  flex-direction: column;
  align-items: center;
}}
.top_news {
  padding-bottom: 80px;
  box-sizing: border-box;
}
@media screen and (min-width: 1069px) {
.top_news_title {
  padding-bottom: 30px;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 40px;
  font-weight: 600;
  color: #479CD7;
}}
@media screen and (max-width: 1068px) {
.top_news_title {
  padding-bottom: 30px;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 37px;
  font-weight: 600;
  color: #479CD7;
}}
@media screen and (max-width: 734px) {
.top_news_title {
  padding-bottom: 30px;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 33px;
  font-weight: 600;
  color: #479CD7;
}}
@media screen and (max-width: 390px) {
.top_news_title {
  padding-bottom: 30px;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 30px;
  font-weight: 600;
  color: #479CD7;
}}
a.top_news_article_link {
  margin-bottom: 20px;
  padding: 30px;
  border-radius: 25px;
  background-color: #fff;
  display: block;
  transition: transform 0.4s ease;
}
a.top_news_article_link:hover {
  text-decoration: none;
  transform: scale(1.05);
}
@media screen and (min-width: 1069px) {
.top_news_article_title {
  padding-bottom: 30px;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 32px;
  font-weight: 500;
  color: #479CD7;
}}
@media screen and (max-width: 1068px) {
.top_news_article_title {
  padding-bottom: 30px;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 28px;
  font-weight: 500;
  color: #479CD7;
}}
@media screen and (max-width: 734px) {
.top_news_article_title {
  padding-bottom: 30px;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 24px;
  font-weight: 500;
  color: #479CD7;
}}
@media screen and (max-width: 390px) {
.top_news_article_title {
  padding-bottom: 30px;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 20px;
  font-weight: 500;
  color: #479CD7;
}}
.top_news_article_text {
  color: #333;
  font-size: 16px;
  line-height: 32px;
}
.top_news_article_time {

}
.top_news_article_more {
  padding-top: 30px;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 18px;
  font-weight: 500;
  color: #479CD7;
  text-align: center;
  box-sizing: border-box;
}
img.top_news_article_img {
  width: 250px;
  height: 250px;
  border: #eee 3px solid;
  border-radius: 25px;
}


/* x */
.tweets-container {
  display: flex;
  flex-wrap: wrap; /* 幅が狭くなったら折り返す */
  justify-content: space-between; /* 均等配置 */
  gap: 20px; /* カード間のスペース */
}
.twitter-tweet {
  flex: 1 1 calc(33.333% - 20px); /* 3分割 (マージン分を差し引く) */
  max-width: calc(33.333% - 20px); /* 最大幅を指定 */
  min-width: 300px; /* 幅が狭くなりすぎないよう制限 */
}
@media (max-width: 720px) {
  .twitter-tweet {
    flex: 1 1 100%; /* 幅を100%に */
    max-width: 100%; /* 幅を最大化 */
  }
}


/*///////////////////////////
// support_tool_info
///////////////////////////*/
#tool_container {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 1069px) {
img.secast_auto_tool_img {
  width: 500px;
  margin: 0 0 30px 0;
  border: solid 1px #000;
}}
@media screen and (max-width: 1068px) {
img.secast_auto_tool_img {
  width: 500px;
  margin: 0 0 30px 0;
}}
@media screen and (max-width: 734px) {
img.secast_auto_tool_img {
  width: 320px;
  margin: 0 0 30px 0;
}}
@media screen and (max-width: 390px) {
img.secast_auto_tool_img {
  width: 300px;
  margin: 0 0 30px 0;
  border: solid 1px #000;
}}

@media screen and (min-width: 1069px) {
.secast_auto_tool_big_txt {
  font-size: 1.5rem;
}}
@media screen and (max-width: 1068px) {
.secast_auto_tool_big_txt {
  font-size: 1.3rem;
}}
@media screen and (max-width: 734px) {
.secast_auto_tool_big_txt {
  font-size: 1.2rem;
}}
@media screen and (max-width: 390px) {
.secast_auto_tool_big_txt {
  font-size: 1.1rem;
}}
.secast_auto_tool_listtitle {
    font-size: 20px;
    font-weight: bold;
    color: #3273BC;
}
.secast_auto_tool_url {
  margin: 10px 0 20px 0;
  padding: 10px;
  border: #3273BC 1px solid;
  border-radius: 25px;
  background-color: #fff;
}

h1.support_tool_info_h1 {
  margin: 25px 0 30px 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-weight: 600;
  font-size: clamp(1rem, calc(3vw + 1.5rem), 4.5rem);
  line-height: 1.3;
  display: inline-block;
}
.support_tool_info_h1_text {
  margin: 10px 0 0 0;
  font-size: clamp(20px, calc(1.13vw + 15.8px), 32px);
}
h2.support_tool_info_h2 {
  margin: 25px 0 30px 0;
  color: #bd1e21;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-weight: 600;
  font-size: clamp(24px, 2.5vw + 10px, 40px);
  line-height: 1.3;
  display: inline-block;
}
h3.support_tool_info_h3 {
  margin: 25px 0 30px 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-weight: 600;
  font-size: clamp(24px, 2.5vw + 10px, 40px);
  line-height: 1.3;
  display: inline-block;
}
.support_tool_info_text {
  color: #666;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: clamp(1rem, calc(1.5vw + 0.5rem), 1.5rem);
  font-weight: 600;
  line-height: 1.5;
  text-align: justify;
  text-justify: inter-word;
}
.support_tool_info_text2 {
  color: #666;
  font-size: 16px;
  line-height: 1.5;
  text-align: justify;
  text-justify: inter-word;
}
.support_tool_info_title {
  padding: 15% 0 8% 0;
  color: #bd1e21;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-weight: 600;
  font-size: clamp(1rem, calc(2vw + 0.8rem), 2.5rem);
  text-align: center;
}
.support_tool_info_tool_box {
  margin: 0 0 50px 0;
  padding: 7% 5%;
  border-radius: 25px;
  background-color: #fff;
  box-sizing: border-box;
}
.support_tool_info_tool_title {
  padding-bottom: 5%;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-weight: 600;
  font-size: clamp(1.7rem, calc(2.5vw + 0.8rem), 3rem);
  line-height: 1.3;
  line-break: strict;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
.support_tool_info_tool_text {
  color: #666;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
  text-align: justify;
  text-justify: inter-word;
}
img.support_tool_info_tool_img {
  width: 100%;
  max-width: 500px;
  margin: 30px 00;
  border-radius: 25px;
}
img.support_tool_info_tool_img_bober {
  width: 100%;
  max-width: 500px;
  margin: 30px 0 20px 0;
  border-radius: 25px;
  border: #666 1px solid;
}

.support_tool_info_tool_movie {
  position: relative;
  width: 100%;
  max-width: 500px;
  padding-top: 56.25%;
  margin: 30px 0;
  overflow: hidden;
  border-radius: 25px;
}
.support_tool_info_tool_movie iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 170%;
  height: 100%;
  transform: translate(-50%, -50%) scale(1.1);
  transform-origin: center;
}

.tweet-container {
  max-width: 100%;
  width: 500px;
  margin: 0 auto;
  position: relative;
}
.twitter-tweet {
  max-width: 100%;
    width: 100%;
    margin: 0 auto;
}

.support_tool_info_user {
  padding-bottom: 3%;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-weight: 600;
  font-size: clamp(1rem, calc(2vw + 1.5rem), 3rem);
  text-align: center;
}

#price {
  background-color: #fff;
}
.support_tool_info_price {
  padding: 3% 0 4% 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-weight: 600;
  font-size: clamp(1rem, calc(2vw + 1.5rem), 3rem);
  text-align: center;
}
.support_tool_info_price_tax {
  font-size: clamp(0.5rem, calc(1vw + 0.5rem), 1rem);
}
.support_tool_info_price_table {
  width: 100%;
  margin-bottom: 50px;
  border-radius: 25px;
  border-spacing: 0;
  border: none;
  border-left: 1px solid #999;
  border-top: 1px solid #999;
  background-color: #fff;
}
.support_tool_info_price_table tr>* {
  height: 100px;
  padding: 2% 2%;
  font-size: clamp(1rem, calc(1.5vw + 0.5rem), 1.5rem);
  line-height: 25px;
  text-align: center;
  border: none;
  border-right: 1px solid #999;
  border-bottom: 1px solid #999;
  vertical-align: middle;
}
.support_tool_info_price_table tr:first-child>*:first-child {
  border-radius: 25px 0 0 0;
}
.support_tool_info_price_table tr:first-child>*:last-child {
  border-radius: 0 25px 0 0;
}
.support_tool_info_price_table tr:last-child>*:first-child {
  border-radius: 0 0 0 25px;
}
.support_tool_info_price_table tr:last-child>*:last-child {
  border-radius: 0 0 25px 0;
}
td.support_tool_info_price_table_left {
  width: 40%;
  text-align: left;
}
.support_tool_info_price_table th {
  width: 30%;
  padding-top: 30px;
  background-color: #F0F5F8;
}
.support_tool_info_price_table_td {
  line-height: 20px;
}

.support_tool_info_buy_box {
  padding-bottom: 3%;
}
.support_tool_info_buy_subtitle {
  padding-bottom: 2%;
  color: #bd1e21;
  font-size: clamp(0.9rem, calc(1vw + 0.5rem), 1.5rem);
  font-weight: bold;
  text-align: center;
}
.support_tool_info_selecttype {
  width: 100%;
  max-width: 500px;
  margin-bottom: 20px;
  padding: 10px;
  color: #bd1e21;
  border: #bd1e21 1px solid;
}
a.support_tool_info_buy_link {
  padding: 10px 20px;
  color: #fff;
  font-size: clamp(1rem, calc(2vw + 0.5rem), 2rem);
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  border: #FFA500 3px solid;
  border-radius: 25px;
  background-color: #FFA500;
  box-sizing: border-box;
  display: block;
}
a.support_tool_info_buy_link:hover {
  color: #FFA500;
  background-color: #fff;
}
.support_tool_info_buy_text {
  margin: 10px 0 0 0;
  color: #666;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
}



/*//////////////////////////////////////
//  secast_auto_tool
//////////////////////////////////////*/
.mokuji_box {
  max-width: 640px;
  margin: 50px 0 30px 0;
}
.mokuji_title {
  margin: 0 0 10px 0;
  font-size: 1.3rem;
  font-weight: bold;
  text-align: center;
}
a.mokuji_link {
  margin: 0 0 7px 0;
  display: block;
}
@media screen and (max-width: 390px) {
a.mokuji_link {
  margin: 0 0 10px 0;
  font-size: 0.9rem;
  display: block;
}}

.secast_auto_tool_movie {
  position: relative;
  width: 100%;
  max-width: 500px;
  padding-top: 56.25%;
  margin: 10px 0;
  overflow: hidden;
  border-radius: 25px;
}
.secast_auto_tool_movie iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 152%;
  height: 100%;
  transform: translate(-50%, -50%) scale(1.1);
  transform-origin: center;
}
.secast_auto_tool_movie2 {
  position: relative;
  width: 100%;
  max-width: 500px;
  padding-top: 56.25%;
  margin: 10px 0;
  overflow: hidden;
  border-radius: 25px;
}
.secast_auto_tool_movie2 iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 115%;
  height: 100%;
  transform: translate(-50%, -50%) scale(1.1);
  transform-origin: center;
}


/*///////////////////////////
// news
///////////////////////////*/
@media screen and (min-width: 1020px) {
.news_h1 {
  width: 80%;
  margin: 30px 0 30px 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 50px;
  font-weight: 600;
}}
@media screen and (max-width: 1019px) {
.news_h1 {
  width: 80%;
  margin: 30px 0 30px 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 45px;
  font-weight: 600;
}}
@media screen and (max-width: 870px) {
.news_h1 {
  width: 80%;
  margin: 30px 0 30px 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 35px;
  font-weight: 600;
}}
@media screen and (max-width: 720px) {
.news_h1 {
  width: 80%;
  margin: 30px 0 30px 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 30px;
  font-weight: 600;
}}
.news_text {
  width: 100%;
  max-width: 640px;
  font-size: 16px;
  line-height: 32px;
  text-align:justify;
  text-justify:inter-ideograph;
  line-break: strict;
}
.news_img_box {
  margin-bottom: 30px;
  padding: 30px 0;
  text-align: center;
  border-radius: 25px;
  background-color: #fff;
  box-sizing: border-box;
}
img.news_img {
  width: 100%;
  max-width: 500px;
}
.news_important {
  width: 100%;
  max-width: 500px;
  margin: 30px 0;
  padding: 20px;
  border: #bd1e21 1px solid;
  border-radius: 25px;
  background-color: #fff;
  box-sizing: border-box;
}
.news_important_title {
  padding-bottom: 15px;
  color: #bd1e21;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}
.news_important_text {
  color: #bd1e21;
  font-size: 14px;
  text-align:justify;
  text-justify:inter-ideograph;
  line-break: strict;
}
.news_form {
  width: 100%;
  max-width: 500px;
}
.news_form_subject {
  width: 100%;
  max-width: 640px;
  margin: 50px 0 20px 0;
  padding: 20px;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 30px;
  font-weight: 600;
  text-align: center;
  border-radius: 25px;
  background-color: #fff;
  box-sizing: border-box;
}
.news_form_subject2 {
  padding: 30px 0 0 0;
  color: #bd1e21;
  font-size: 20px;
  font-weight: bold;
  box-sizing: border-box;
}
.news_form_title {
  padding: 20px 0 0 10px;
  color: #3273BC;
  font-size: 20px;
  font-weight: bold;
  box-sizing: border-box;
}
.news_form_text {
  padding: 10px 0;
  color: #bd1e21;
  font-size: 14px;
  box-sizing: border-box;
}
.news_form_text2 {
  padding: 0 0 0 5px;
  color: #bd1e21;
  font-size: 14px;
  box-sizing: border-box;
}
.news_form_member_rank {
  width: 30px;
  height: 30px;
  margin: 0 0 0 5px;
  font-size: 16px;
  border: #3273BC 1px solid;
  border-radius: 5px;
  background-color: #fff;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  position: relative;
  vertical-align: middle;
}
.news_form_member_rank:checked {
  background-color: #3273BC;
  border-color: #245f8b;
}
.news_form_member_rank:checked::after {
  content: '✔'; /* チェックマーク文字 */
  color: white;
  font-size: 18px;
  position: absolute;
  top: 3px;
  left: 7px;
}
.news_form_member_rank_title {
  padding: 20px 0 0 10px;
  color: #3273BC;
  font-size: 20px;
  font-weight: bold;
  box-sizing: border-box;
  vertical-align: middle;
}
.news_form_email {
  width: 100%;
  max-width: 300px;
  padding: 5px 10px;
  font-size: 16px;
  border: #3273BC 1px solid;
  border-radius: 25px;
  background-color: #fff;
  box-sizing: border-box;
}
.news_form_textarea {
  width: 100%;
  max-width: 500px;
  height: 55px;
  padding: 5px 10px;
  font-size: 16px;
  border: #3273BC 1px solid;
  border-radius: 25px;
  background-color: #fff;
  box-sizing: border-box;
}
.news_form_submit {
  width: 120px;
  margin: 30px 0;
  padding: 5px 10px;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  border: #bd1e21 1px solid;
  border-radius: 25px;
  background-color: #bd1e21;
  box-sizing: border-box;
}
.news_form_submit:hover {
  color: #bd1e21;
  background-color: #fff;
  cursor: pointer;
}
.news_end_box {
  width: 100%;
  max-width: 500px;
}
@media screen and (min-width: 1020px) {
.news_end_title {
  padding: 20px 0 20px 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 30px;
  font-weight: bold;
  box-sizing: border-box;
  word-break: keep-all;
  overflow-wrap: anywhere;
}}
@media screen and (max-width: 1019px) {
.news_end_title {
  padding: 20px 0 20px 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 30px;
  font-weight: bold;
  box-sizing: border-box;
  word-break: keep-all;
  overflow-wrap: anywhere;
}}
@media screen and (max-width: 870px) {
.news_end_title {
  padding: 20px 0 20px 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 25px;
  font-weight: bold;
  box-sizing: border-box;
  word-break: keep-all;
  overflow-wrap: anywhere;
}}
@media screen and (max-width: 720px) {
.news_end_title {
  padding: 20px 0 20px 0;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 20px;
  font-weight: bold;
  box-sizing: border-box;
  word-break: keep-all;
  overflow-wrap: anywhere;
}}
.news_end_text {
  color: #000;
  font-size: 16px;
}
a.news_tool_link {
  margin-top: 50px;
  padding: 10px 20px;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  border: #479CD7 1px solid;
  border-radius: 25px;
  background-color: #479CD7;
  transition: transform 0.4s ease;
}
a.news_tool_link:hover {
  transform: scale(1.05);
}
.news_form_member {
  width: 100%;
  max-width: 500px;
  color:red;
}
a.news_form_member_link {
  margin-top: 10px;
  padding: 5px 10px;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  border: red 1px solid;
  border-radius: 25px;
  background-color: red;
}
a.news_form_member_link:hover {
  color: red;
  border: red 1px solid;
  background-color: #fff;
}

.news_info_box {
  width: 100%;
  max-width: 640px;
  margin-top: 30px;
  padding: 30px;
  border-radius: 25px;
  background-color: #D9EDF8;
}
.news_info_title {
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 30px;
  font-weight: 600;
}
.news_info_text {
  font-size: 16px;
  line-height: 32px;
}
a.news_info_link {
  margin-top: 30px;
  padding: 10px 20px;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  border: #3cb371 1px solid;
  border-radius: 25px;
  background-color: #3cb371;
  transition: transform 0.4s ease;
}
a.news_info_link:hover {
  transform: scale(1.05);
}


/*////////////////////////
// contact
////////////////////////*/
.contact_text {
  width: 100%;
  max-width: 500px;
  font-size: 16px;
  line-height: 32px;
  text-align: justify;
  text-justify: inter-ideograph;
  line-break: strict;
}
input.contact_form_email {
  width: 100%;
  max-width: 500px;
  padding: 10px 20px;
  font-size: 16px;
  border: #3273BC 1px solid;
  border-radius: 25px;
  background-color: #fff;
  box-sizing: border-box;
}
.contact_form_title {
  padding: 20px 0 10px 10px;
  color: #479CD7;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-weight: 600;
  font-size: 20px;
  box-sizing: border-box;
}
textarea.contact_form_textarea {
  width: 100%;
  max-width: 500px;
  height: 500px;
  padding: 10px 20px;
  font-size: 16px;
  border: #3273BC 1px solid;
  border-radius: 25px;
  background-color: #fff;
  box-sizing: border-box;
}
button.contact_form_submit {
  margin: 30px 0;
  padding: 10px 20px;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  border: #bd1e21 1px solid;
  border-radius: 25px;
  background-color: #bd1e21;
  box-sizing: border-box;
  transition: transform 0.4s ease;
}
button.contact_form_submit:hover {
  text-decoration: none;
  transform: scale(1.1);
  cursor: pointer;
}

.price_change_notice {
  width: 100%;
  max-width: 500px;
  margin: 30px auto;
  padding: 20px;
  border: #bd1e21 2px solid;
  border-radius: 25px;
  background-color: #fff;
  box-sizing: border-box;
}

.notice_title {
  padding-bottom: 15px;
  color: #bd1e21;
  font-family: "Zen Maru Gothic", "Arial", sans-serif;
  font-size: 1.2em;
  font-weight: bold;
  text-align: center;
}

.notice_content {
  color: #333;
  font-size: 1.1em;
  line-height: 1.8;
  text-align: center;
}