/*
Theme Name: Twenty Twenty Child
Template: twentytwenty
Version: 1.0
*/
.entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide):not(.home-header):not(.header) {
    max-width: 80%;
    width: calc(100% - 4rem);
}
/* フォント */
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&subset=japanese');
*{
font-family: 'Noto Sans JP', sans-serif;
}

/* All  pages*/
.page>.entry-header{
   display: none;
}

/* All posts */
.post-meta>.post-author{
   display: none;
}

.entry-categories{
   display: none;
}

.entry-title {
   font-size: 70px;
   font-weight:  600;
}
.post-date {
   pointer-events:none;
}

.pagination-single a{
   color: black;
   font-size: 16px;
}
.pagination-single {
   margin-bottom: 8rem;
}

/* home以外のページ全て */
.header {
   position: relative!important;
   height: 20vh!important;
   max-width: 100% !important;
}

/* home */
.home-header {
   position: relative;
   height: 40vh;
   max-width: 100% !important;
}

/* home>保険の選択セクション */
.hoken {
   margin: 1px 2px!important;
}

.hoken table, .hoken th,  .hoken td {
   border: none;
   margin: 0;
}
.hoken td {
padding: 0 0 0 14px;
   white-space: nowrap;
}
.option {
   height: 12%;
}
.hoken h4{
   color: white!important;
   font-size: 24px;
   line-height: 80px;
   padding-top: 10px;
   font-weight: 600;
}
.kojin h4{
   padding-left: 0 !important;
   text-align: center;
   background-image: url("../../uploads/2020/11/パス-1188@1X-2.png");
}
.kojin_btn .elementor-widget-container{
   border-color: #02a1c4!important;
}
.kojin_btn .elementor-widget-container a{
   width: 100%;
}
.houjin h4{
   padding-left: 0 !important;
   text-align: center;
   background-image: url("../../uploads/2020/11/パス-1188@1X-1.png");
}
.group h4{
   padding-left: 0 !important;
   text-align: center;
   background-image: url("../../uploads/2020/11/パス-1188@1X.png");
}

.hoken ul {
   list-style: none;
   margin-left: 0px;
   font-size: 18px;
   margin-bottom: 13px;
}
.hoken li::before{
   content: "★ ";
   color: white;
}

.hoken li {
   margin-left: 2px;
}
.kojin {
   background-color: #FFE0E0;
}
.kojin li {
   color: #ff8187;
}
.houjin {
   background-color:#D1F1F5;
}
.houjin li{
   color: #4fb6c4;
}
.group {
   background-color: #FFE2BD;
}
.group li{
       color: #ff9f24;
}
.hoken .has-very-dark-gray-color {
   margin-top: 0!important;
   position: relative;
   top: -30px;
   padding-left: 16px;
}
.hoken .wp-block-image {
   margin-bottom:0!important;
   margin-top:0!important;
}

.hoken img {
   position: relative; 
   z-index: 2;
   padding: 0; 
}
.btn_hover:hover{
   opacity: 0.7;
}
/* ヘッダー */
.categories{
   min-width: 130px;
}
.categories a{
   /* color: #7BA6B5; */
   color: #02a1c4;
   padding-bottom: 15px;
   font-weight: 600;
   display: block;
   width: 100%;
   text-align: center;
}

.categories a:focus,
.categories a:hover{
       color: #E12F3C!important;

}
.categories:not(.current) a:focus,
.categories:not(.current) a:hover{
   background-position: 50% 100%;
   background-image: url("../../uploads/2020/12/wave.svg");
   background-repeat: no-repeat;
   background-size: 100%;
   line-height: 18px;
   transition-property:none;
}

.categories a:active{
   color: pink!important;
}

.current {
   line-height: 18px;
   background-position: bottom;
   background-image: url("../../uploads/2020/12/wave.svg");
   background-repeat: no-repeat;
   background-size: 100%;
}

.current a {
   color: #4fb6c4;
   font-weight: bold;
}

/*各見出しの文字*/
.sub-title {
   color: #02a1c4; 
   font-weight: 600 !important; 
   letter-spacing: 2px;
   text-align: center;
   font-size: 36px;
}
.sub-sub-title{
   color: #02a1c4;
   font-weight: 500 !important; 
   font-size: 16px;
}
.translate {
   letter-spacing: 2px;
}
.elementor-widget-wp-widget-recent-posts h5{
   color: #02a1c4; 
   font-weight: 600; 
   letter-spacing: 2px;
   text-align: center;
   font-size: 36px;
}
.elementor-widget-wp-widget-recent-posts h5::after {
   content: "　";
   background-image: url('../../uploads/2026/01/ooh-right260130.svg');
   background-size: contain;
   background-repeat: no-repeat;
   margin-left: 4%;
}
.elementor-widget-wp-widget-recent-posts h5::before {
   content: "　";
   background-image: url("../../uploads/2026/01/ooh260130.svg");
   background-size: contain;
   background-repeat: no-repeat;
   margin-right: 4%;
}
.elementor-widget-wp-widget-recent-posts ul{
   max-width: 800px;
   margin: 0 auto;
}
.elementor-widget-wp-widget-recent-posts li{
   display: flex;
   flex-direction: row-reverse;
   border-top: 1px solid #4fb6c4;
   margin: 0;
}
.elementor-widget-wp-widget-recent-posts li:has(a:hover) {
   background-color: #02a1c417;
 }
.elementor-widget-wp-widget-recent-posts li:last-child{
   border-bottom: 1px solid #4fb6c4;
}
.elementor-widget-wp-widget-recent-posts li{
   display: flex;
   flex-direction: row-reverse;
   border-top: 1px solid #4fb6c4;
   margin: 0;
}
.elementor-widget-wp-widget-recent-posts a{
   display: block;
   color: black;
   font-size: 18px;
   width: calc(100% - 10em);
   padding: 10px 20px 10px 0px;
   position: relative;
}
.elementor-widget-wp-widget-recent-posts .post-date{
   font-size: 16px;
   margin-right: 10px;
   width: 10em;
   color: #02a1c4;
   padding: 10px 0;
}
.elementor-widget-wp-widget-recent-posts a::after{
   color: rgb(155, 155, 155);
   font-size: 18px;
   position: absolute;
   font-family: "Font Awesome 5 Free";
   font-weight: 900;
   content: "\f054";
   top: 50%;
   right: 5px;
   transform: translateY(-50%);
}

/*各見出しの文字左右の模様*/
.sub-title::after {
   content: "　";
   background-image: url('../../uploads/2026/01/ooh-right260130.svg');
   background-size: contain;
   background-repeat: no-repeat;
   margin-left: 4%;
}

.sub-title::before {
   content: "　";
   background-image: url("../../uploads/2026/01/ooh260130.svg");
   background-size: contain;
       background-repeat: no-repeat;
   margin-right: 4%;
}

/* 投稿の色 */
.wp-show-posts-entry-title a {
   color: #7ba6b5;
   font-weight: normal;
}

/* 電話番号の色 */
.phoneLink {
   display: block;
   color: #7ba6b5;
   font-size: 36px;
   font-weight: 600;
}
.phoneLink img{
   width: 1em !important;
}
.companyName{
   font-size: 18px;
}

/* 各保険会社へのリンク先 */
.exampleKojin {
   display: block;
   color: #02a1c4;
}
.exampleKojin:hover,.exampleHoujin:hover {
   background-color: #02A1C412;
}

.exampleHoujin {
   color: #02a1c4;
}

.exampleKojin p{
   margin-bottom: 0; 
   padding: 20px 10px; 
   border-top: solid 1px;
   width: 100%;
   font-weight: bold;
}

.exampleHoujin a {
   width: 100%;
   font-weight: bold;
   color: #02a1c4;
}

.exampleHoujin p {
   padding: 20px 0px; 
   margin-bottom: 0;
}
section:has(#for_news)
{
   padding: 0;
}
#for_news{
   display: block;
   position: relative;
   font-size: 18px;
   color: #02a1c4;
   max-width: 300px;
   margin: 0 auto;
   text-align: center;
   background-color: white;
   border: 2px solid #02a1c4;
   border-radius: 5px;
}
#for_news:hover{
  background-color: #02a1c417;
}
#for_news::after{
   color: #02a1c4;
   font-size: 18px;
   position: absolute;
   font-family: "Font Awesome 5 Free";
   font-weight: 900;
   content: "\f054";
   top: 50%;
   right: 5px;
   transform: translateY(-50%);
}
section:has(#tp_news){
   padding-bottom: 20px;
}
/* イメージマップ */
area{
border:none;
outline:none;
}

   .elementor-button {
       line-height: 1.5;
   }

   #horizontal .elementor-tab-mobile-title {
   display: none;
 }

/* 全体 */
.linkButton span {
   font-size: 16px;
}

body p {
   font-size: 16px;
   letter-spacing: 1px;
}

body span {
   letter-spacing: 1px;
}

body h4 {
           letter-spacing: 2px;
}
body h3 {
   letter-spacing: 2px;
   font-size: 36px;
   display: flex;
 justify-content: center;
 align-items: center;
}

body h2 {
   letter-spacing: 2px;
   font-size: 40px;
}

   .topMessage {
       font-size: 36px;
   }

   .eng {
       font-size: 14px;
       letter-spacing: 3px;
   }
.hokenFor {
   font-size: 35px;
}
.risk {
   font-size: 28px;
}
.contactPage {
   font-size: 38px;
}
.contactList {
   font-size: 32px;
   text-align: center; 
   color: #02a1c4; 
   font-weight: 600; 
   letter-spacing: 3px;
}
.phones {
       text-align: center;
   }

.elementor-tabs-wrapper div {
   display: flex;
 justify-content: space-between;
       width: 100%;
}

#wprmenu_menu_ul >.menu-item {
   border-bottom: 1px solid  #e8e8e8;
   margin-left: 0px!important;
}
#wprmenu_menu_ul >.menu-item-6957 {
   border-top: 1px solid  #e8e8e8;
}

.menu-item a {
   padding-left: 25px!important;
}

.menu-item {
   background-image: url('../../uploads/2020/12/icons8-chevron-right-30-1.png')!important;
   background-repeat: no-repeat;
   background-position: 90%;
   background-size: 15px
}

/* home>保険の選択セクション (モバイル)*/
.mobileHokenName li::before{
   content: "★ ";
   color: white;
}
.mobileHokenName {
   margin-left: 0;
   list-style: none;
}
.mobileHokenName li{
   font-size: 16px;
}

.mobileKojinCover, .mobileHoujinCover, .mobileGroupCover {
   position: relative;
   top: 0px;
   background-repeat: no-repeat; 
   background-position: bottom; 
   background-size: 140%;
   color: white;
   margin-top: 0px;
   padding-top: 10px;
}

.mobileKojinCover {
background-image: url('../../uploads/2020/12/Layer-5.svg'); 
}

.mobileHoujinCover {
background-image: url('../../uploads/2020/12/Layer-6.svg'); 
}
.mobileGroupCover {
background-image: url('../../uploads/2020/12/Layer-7.svg'); 
}

.mobileKojinList, .mobileHoujinList, .mobileGroupList {
   font-size: 14px; margin-top: 30px; padding-bottom: 10px; width: 100%;
}
.mobileKojinList {
    color: #ff8187;
    font-size: 18px;
    font-weight: 600; 
}
.mobileHoujinList {
  color: #4fb6c4;
  font-size: 18px;
  font-weight: 600; 
}
.mobileGroupList {
   color: #ff9f24;
   font-size: 18px;
   font-weight: 600;
}
   
.mobileInfo h4, .mobileInfo p{
margin: 20px 10px 20px 40px; font-weight: 400; 
}
.mobileInfo h4{
   font-weight: 600; 
}
   .mobileCharacter {
     position: absolute; right: 14vw; bottom: 3%;
}
   .mobileCharacterSP {
     position: absolute; right: 14vw; bottom: 3%;
}
.sp_only_nic{
   display: none;
}
.mobileList li {
   font-size: 18px;
   font-weight: 600;
}
.wp-show-posts-entry-title{
   font-size: 24px;
   display: block;
   font-weight: 600;
   font-family: 'Noto Sans JP', sans-serif;
}
.wp-show-posts-entry-title a{
   font-size: 24px;
   display: block;
   font-weight: 600;
   font-family: 'Noto Sans JP', sans-serif;
}
a.wp-show-posts-read-more, a.wp-show-posts-read-more:visited {
   display: inline-block;
   padding: 4px 10px;
   border: none;
   color:white;
   background-color: #7ba6b5;
   border-radius: 5px;
   font-size: 18px;
   text-decoration: none;
}
a.wp-show-posts-read-more:hover, a.wp-show-posts-read-more:visited:hover {
   display: inline-block;
   padding: 4px 10px;
   border: none;
   color:white;
   background-color: #7ba6b5;
   border-radius: 5px;
   font-size: 18px;
   text-decoration: none;
   opacity: 0.8;
}
.post .entry-title,.post h1,.post h2,.post h3{
   font-size: 30px;
}
a.button1,a.button2{
   font-weight: 600;
}
.elementor-tabs-wrapper>.elementor-active{
   background-color: #6EC1E4;
}
.elementor-tabs-wrapper>.elementor-tab-title{
   padding-left: 0;
   padding-right: 0;
   text-align: center;
}
.elementor-tabs-wrapper>.elementor-active a{
   color: white !important;
}
.wp-block-column:not(:first-child) {
   margin-left: 50px;
}
.wpcf7{
   max-width: 800px !important;
}
#autozip{
   opacity: 0;
   visibility: hidden;
}
.elementor-tab-content section{
   padding-top: 0;
   padding-bottom: 0;
}

#topimage .elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated{
   padding: 0 !important;
}
#topimagesize img{
   width: 100% !important;
}
.contact_policy_area{
   width: 100%;
   height: 200px;
   overflow: auto;
   padding: 15px;
   border: 1px solid rgb(219, 219, 219);
   margin-bottom: 20px;
}
.contact_h3{
   font-size: 20px;
   margin-top: 0 !important;
   margin-bottom: 5px !important;;
}
.contact_h4{
   font-size: 18px;
   margin-top: 0 !important;
   margin-bottom: 5px !important;;
}
.contact_policy{
   margin-bottom: 10px;
   margin-top: 0 !important;
   margin-left: 0 !important;
}
.contact_policy li{
   list-style: none;
   margin-left: 0 !important;
   padding-left: 1em;
   text-indent: -1em;
   font-size: 16px;
   margin-bottom: 3px;
}
.contact_policy li a{
   color: rgb(2, 161, 196);
   text-decoration: underline;
}
.contact_privacy{
   margin-bottom: 10px;
   margin-top: 0 !important;
   margin-left: 0 !important;
}
.contact_privacy>li{
   list-style: none;
   margin-left: 0 !important;
   padding-left: 2.5em;
   text-indent: -2.5em;
   font-size: 16px;
   margin-bottom: 3px;
}
.preparation{
   width: 90%;
   max-width: 220px;
   margin: 0 auto;
}




/*  レスポンシブ*/
@media screen and (max-width: 800px){
   .wp-block-column:not(:first-child) {
      margin-left: 32px;
   }
}
@media screen and (max-width: 768px) {
   .entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide):not(.home-header):not(.header) {
      max-width: 90%;
      width: calc(100% - 4rem);
   }
   .menu-item a{
      font-weight: 500 !important;
   }
   .sp_only_nic{
      display: block;
   }
   .pc_only_nic{
      display: none;
   }
   .linesBefore, .linesAfter{
       background-size: 20px;
       text-align: center;
   }
   .linesBefore {
       margin: 0;
   }
   .linesAfter {
       margin: 0;
   }

   .exampleKojin p{
       width: 100%;
   }
   body p {
   font-size: 15px;
}
   .sub-title {
   font-size: 24px;
}
.elementor-widget-wp-widget-recent-posts h5{
   font-size: 24px;
}
   body h4{
       font-size: 20px;
   }
   body h2 {
       font-size: 22px;
   }
   body h3 {
       font-size: 22px;
   }
   body h5 {
       font-size: 20px;
   }
   .mobileList li {
       font-size: 16px;
   }
   .topMessage {
       font-size: 20px;
   }
   .eng {
       font-size: 11px;
   }
   .hokenFor {
   font-size: 22px;
}
   .risk {
       font-size: 20px;
   }
   .contactPage {
   font-size: 20px;
}
   .contactList {
   font-size: 24px;
}
   .phones {
       text-align: left!important;
   }
   .hoken img {
       padding: 0 0px 0 0px; 
   }
   .hoken a {
      transition: opacity 0.5s ease;
  }
   .hoken a:hover {
      opacity: 0.7;
  }
   .elementor-tabs-wrapper div {
       padding: 20px 7px!important;
       font-size: 13px;
       font-weight: normal;
       line-height: 1.4!important;
   }
   .entry-title{
       font-size: 32px;
   }
   .elementor-widget-wp-widget-recent-posts li{
      flex-wrap: wrap;
      flex-direction: column-reverse;
   }
   .elementor-widget-wp-widget-recent-posts a{
      width: 100%;
   }
   .elementor-widget-wp-widget-recent-posts .post-date{
      margin-right: 0px;
      width: 100%;
      padding: 10px 0 0 0;
   }
   .phoneLink {
      font-size: 24px;
  }
  .phoneLink img {
   width: 25px !important;
   }
}
@media screen and (max-width: 600px){
   .wp-block-column:not(:first-child) {
      margin-left: 0px;
   }
}

@media screen and (max-width: 480px) {
   .mobileInfo h4, .mobileInfo p{
margin: 20px 10px 20px 20px; font-weight: 400; 
}
.mobileInfo h4{
   font-weight: 600; 
}
.mobileCharacter {
   width: 130px; position: absolute; right: 10px; bottom: 3%;
}
.mobileCharacterSP {
   position: absolute; right: 10px; bottom: 03%; width: 110px;
}
.wp-show-posts-entry-title a{
   font-size: 20px;
}

}

@media screen and (min-width: 320px) {
 #horizontal .elementor-tabs-wrapper {
   display: flex;
     flex-direction: row;
   }
}

@media screen and (min-width: 760px) {
   .steps {
      margin-right: 40px;
   }
   .stepsImage {
       margin-top: 20%;
   }
}

@media screen and (min-width: 600px){
   .none {display:none}
}

@media screen and (min-width: 600px){
.allHoken {display:block!important}
}

/* ヘッダー余白調整 */
header .elementor-column-wrap  {
   padding-bottom: 0!important;
}

.menu_title img{
   height: 40px!important;
}