/*
Theme Name: daihokutochi
Theme URI: https://https://daihokutochi.co.jp/
Author: unitedworks
Description: 2025年リニューアルテンプレート
*/

/*navigation*/

body{font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 300;
  font-style: normal;color: #495054;}

ul,
ol {list-style: none;}
a {text-decoration: none;}
h1.logo{max-width:240px;min-width: 20%; margin: 0;}
p{font-size: 18px;line-height: 180%;font-feature-settings: "palt";}
.punct {margin:0 -0.6em 0 -0.1em; }
.contact .p-nav__link:hover, .btn:hover , a:hover{opacity: 0.8}
.bold{font-weight: 700;font-size: 22px;}

/*head*/
.l-header {
  display: block;
  z-index: 999;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  background: #EBEBEB;}
.c-hamburger {
  position: relative;
  width: inherit;
  height: inherit;
  margin: 0;
  border: transparent;
  background-color: transparent;
  cursor: pointer;}
.c-hamburger span {
  display: block;
  position: relative;
  left: 50%;
  width: 24px;
  height: 2px;
  transform: translateX(-50%);
  background: black;
  transition: all 0.4s;}
.c-hamburger span:nth-of-type(1) {top: -4px;}
.c-hamburger span:nth-of-type(2) {top: 1px;transform: translateX(-0.45deg);}
.c-hamburger span:nth-of-type(3) {top: 6px;transform: translateX(-0.45deg);}
.c-hamburger.is-active span:nth-of-type(1) {top: 0;transform: translateX(-50%) rotate(225deg);}
.c-hamburger.is-active span:nth-of-type(2) {opacity: 0;}
.c-hamburger.is-active span:nth-of-type(3) {top: -4px;transform: translateX(-50%) rotate(-225deg);}
.p-header__nav {
  display: flex;
  z-index: 10;
  position: absolute;
  top: 0;
  right: -100%;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
  background: transparent;
  opacity: 0;
  transition: top 0.6s, right 0.6s, opacity 0.6s;}
.p-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: inherit;
  padding: 0 0 0 1% ;}
.p-header__hamburger {
  z-index: 100;
  position: absolute;
  top: 0;
  right: 0;
  width: 95px;
  height: 100%;}
.p-header__nav.is-active {
  position: fixed;
  top: 0;
  right: 0;
  opacity: 1;
  background-color: #fff;}
.p-nav__list {
 display: block;margin: 0;
  padding-right: 5px;
  padding-left: 5px;}

.p-nav__link {text-decoration: underline;
  color: #495054;font-size: 14px;
  display: block;
  padding: 5px 0;
  width: 100%;    text-align: center;}

.contact{min-width:340px;background: #073652;color:#ffffff;}
.contact div{display: flex;}
.contact .p-nav__link{width:120px;color:#ffffff;height: 80px; text-decoration: none;line-height: 20px;}
.contact .p-nav__link  img{height:22px;width: auto;margin: 15px 0 5px 0; }
.contact p{margin: 0;}
.tel{font-size: 26px;font-weight: bold;letter-spacing: 0.1rem;display: inline-block;margin: 10px 0 0 0;}
.time{font-size: 13px;line-height: 20px;}
.time span{background: #fff;color:#073652;border-radius:5px;margin: 0 10px 0 0;padding:0 3px ;}

/*contents*/

#sec01 h2{font-size:40px;color: #5676ff;font-weight: bold;line-height: 90%;margin: 10px 0;}
#sec01 h2 span{font-size: 14px;color:#073652;}
#sec01 h3{font-size:32px;color: #ffffff;font-weight: bold;line-height: 120%;margin: 0;font-feature-settings: "palt";}
#sec01 h3 span{background: #073652;padding: 0 0.1em;display: inline-block;margin-bottom: 10px;}
.btn{background: #073652;width:240px;line-height: 42px;color:#fff;text-align: center;display: block;box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0.2);}


#sec02 h2{text-align: center;font-size: 38px;color: #073652;
align-items: center; display: flex; justify-content: center;}
#sec02 .h2sub{font-size: 20px;text-align: center;color: #073652;position: relative;bottom: -25px}

#sec02 h2::before,#sec02 h2::after {background-color: #073652; content: "";height: 2px;width: 40px;}
#sec02 h2::before {margin-right: 10px;transform: rotate(60deg);}
#sec02 h2::after {margin-left: 10px;transform: rotate(-60deg);}
#sec02 ul li span{color:#5676ff;font-size: 30px;}




#sec02 .img02{position: relative;max-width:700px;text-align: center;margin: -40px auto 0 auto;z-index: 1;}

.triangle {position: relative;}
.triangle:after {content: "";position: absolute;bottom: 0;right: 50%;
transform: translatex(50%);box-sizing: border-box;border-right: calc(50vw - 10px) solid transparent;border-left: calc(50vw - 10px) solid transparent;border-top: 100px solid #fff;}

#sec03{background: #EBEBEB;margin-top: -100px;padding: 100px 0;}
#sec03 h2{text-align: center; position: relative;display: inline-block;padding:15px 20px;width: 90%;color: #073652;font-size: 38px;background: #FFF;border-radius: 10px;border: solid 5px #073652;box-sizing: border-box;margin: 50px auto auto;display: block;}
#sec03 h2:before {content: "";position: absolute;bottom: -29px;left: 20%;margin-left: -11px;border: 16px solid transparent;border-top: 16px solid #FFF;z-index: 2;}
#sec03 h2:after{content: "";position: absolute; bottom: -44px;left: 20%;margin-left: -17px;border: 22px solid transparent;border-top: 22px solid #073652;z-index: 1;}


#sec03 .col3 div img{width:100%;max-width: 500px;margin-top: 30px;}
#sec03 .col3 p{font-size: 30px;color: #073652;margin:20px 0;}
#sec03 .col3 p span{font-size: 35px;}
#sec03 .col3 p span span{background: #073652;color:#ffffff;display: inline-block;padding: 0 8px;width: auto;}

#sec04 .wrap h2 span{font-size:16px;border-bottom: 4px solid #5676ff;}
#sec04 .wrap ul li{width:100%;border-bottom: 1px dotted #073652;padding: 5px 0;}
#sec04 .btn{margin: 30px auto;display: block;}


footer .logo{max-width:300px;}

footer .wrap .bnr p {margin: 10px 0;padding: 0;}
footer p{line-height: 140%;font-size: 14px;}
#copy{background: #073652;font-size: 12px;text-align: center;line-height:40px;color: #fff;margin: 20px 0 0 0 }

/*Single*/
#page h2{margin-top: 90px; background: #cccccc;color: #ffffff;line-height: 120px;color:#073652;}
#page h2 span{display: block;}
#page .wrap img{width:100%;height: auto;}

.post_meta{display: flex;}
.post_meta .date{font-size: 18px;margin-right: 20px;line-height: 24px;}
.post_meta .cat{font-size: 14px;border-radius: 5px;padding:0 10px;line-height: 30px;margin-right: 10px;}
.post_meta .cat1{background: #cccccc;color: #ffffff;}
.post_meta .cat2{background: #5676ff;color: #ffffff;}
.post_meta .cat3{background: #F6B140;color: #ffffff;}
.post_meta .cat4{background: #073652;color: #ffffff;}
.post_meta .cat5{background: #00692F;color: #ffffff;}
.single_ttl{font-size: 28px;color:#073652;line-height: 140%;padding: 20px 0;border-bottom: 1px dotted #073652;margin-top: 0;}
#side h4{font-size: 20px;}
#side ul{display: flex;padding: 0;align-items: stretch;}
#side ul.blog{margin-bottom: 50px;}
#side ul li{flex: 1;margin: 0 5px;background: #cccccc24;padding: 10px;}
#side ul li a{ display: block;width: 100%;height: 100%;}
#side ul li .date{font-size: 14px;margin-bottom: 10px;display: block;}
#side .btn{margin: 0 auto;}

/* page*/
.profile .col2{display: flex;width:100%;}
.profile img{width: 100%;height: auto;}
.profile .col2 div:first-child{width:30%;margin-bottom: 50px;}
.profile .col2 div:nth-child(2){width:68%;margin-left: 2%;}
.profile h3 ,.profile p{margin-top: 0;padding-top: 0;}
.profile .col2 .bgtxt{font-size: 30px;background: #073652;color: #ffffff; display: inline-block;padding: 5px;margin-left: 10px; }
.profile .col2 ul li{list-style:disc;line-height: 180%;}    


dl.gaiyou {display: flex;flex-wrap: wrap; width: 100%;border-top: 1px dotted #cccccc;line-height: 160%;}
dl.gaiyou dt {margin: 0;padding: 10px 0;border-bottom: 1px dotted #cccccc;text-align: center;background: #F1F1F1;align-items: center;display: flex;}
dl.gaiyou dt span{margin: 0 auto;display: block;}
dl.gaiyou dd {margin: 0;padding: 10px 2%;border-bottom: 1px dotted #cccccc;}

.formwrap{ width: 100%; line-height: 40px; vertical-align: middle; border-top: 1px solid #cccccc; border-right: 1px solid #cccccc;border-left: 1px solid #cccccc;}
.formwrap th { padding: 15px;background: #F1F1F1;text-align: left;vertical-align: middle;border-bottom: 1px solid #cccccc;}
.formwrap p{margin: 0;}
.formwrap td{padding: 10px; border-bottom: 1px solid #cccccc;}
.formwrap td.mailbox{padding: 15px;height: 40px;}
.formwrap .form01 input ,.formwrap textarea{background: #F1F1F1;border: none;height: 40px;line-height: 40px;width:99%;padding: 5px;}
.formwrap .wpcf7-list-item{display: block;width:100%;}
.formwrap td.mailbox{line-height: 40px;height: 40px;background: #F1F1F1;display: block;width:100%;color: #ffffff;}
.formwrap textarea{resize: vertical; width:99%;height:200px;}
.acceptance{margin:30px 0 0 0 ; }
.sendbtn{line-height: 40px;color:#fff;background:#073652;font-size: 18px;text-align: center;margin: 20px auto 20px 24px;padding: 0 30px; }
.privacy_policy{margin: 20px 0;background: rgb(255 251 223);padding: 20px;}
.privacy_policy p{line-height: 120%;font-size: 16px;}
.note{font-size: 12px;color: #ccc;text-align: center;}

.wrap2{width:75%;}
.wrap3{width:20%;margin-left: 5%;}  
.blog .wrap{display: flex;}
.blog .cat{font-size: 10px;line-height: 20px;margin-top: 0;margin-bottom: 0;}
.blog .post_meta .date{line-height: 20px;margin-top: 0;margin-bottom: 0;}
.wrap3 h3{background: #EBEBEB;line-height: 40px;font-size: 18px;text-align: center;}
.wrap3 select{width: 100%;}
.post_body{border-bottom: 1px solid #EBEBEB;padding-bottom: 50px;margin-bottom: 50px;}
.wrap3 h4{border-bottom: 1px dotted #EBEBEB;margin: 5px 0;line-height: 140%;padding-bottom: 15px;font-size: 14px;}
.wrap3 .date{font-size: 11px;}
.wrap3 a{color: #495054;}
.wrap3 a:hover{text-decoration: underline;}
/*PC*/

@media screen and (min-width: 768px) {
  .p-header__hamburger {
    display: none;
  }

  .p-nav__inner {
    margin-right: auto;
    margin-left: auto;
    max-width: initial;
    width: 100%;
  }

  .p-header__nav {
    position: static;
    opacity: 1;
    height: inherit;
    width: initial;
  }

  .p-nav__list {
    padding-right: 0;
    padding-left: 0;
    display: flex;
  }
main{margin-top: 90px;}    
.wrap{width:990px;margin: 0 auto;}

#sec01 .wrap ,#sec03 .col3 {display: flex;}    
#sec01{margin: 50px auto;}
#sec01 .col2:first-child {width:60%;}
#sec01 .col2::nth-child(2) {width:40%;}
#sec01 .col2 img{max-width:400px;box-shadow: 60px 40px 0px 0px #073652;margin-top: 40px;}
#sec02 ul{ display: flex;justify-content: center;text-align: center;z-index: 0;}
#sec02 ul li{background: #EBEBEB;border: 5px solid #fff;border-radius:10px;box-shadow: 4px 4px 0px 0px rgba(4, 4, 0, 0.2);margin: 10px;padding: 20px 30px; font-weight: bold;font-size: 18px;line-height: 160%;position: relative;}
#sec02 ul li::before,#sec02 ul li::after{position: absolute;content: ''; border-radius: 50%;}
#sec02 ul li::before {width: 38px;height: 38px;background:#EBEBEB;}
#sec02 ul li::after {width: 22px;height: 22px;background:#EBEBEB;}  
    
    
#sec02 ul.ul01 li:first-child::before {top: 40px;left: -55px;}
#sec02 ul.ul01 li:first-child::after {bottom: -5px;left: -35px;}  

#sec02 ul.ul01 li:nth-child(2)::before {top: 40px;right: -60px;}
#sec02 ul.ul01 li:nth-child(2)::after {bottom: -5px;right: -40px;}  

#sec02 ul.ul02 li:first-child::before {bottom: -55px;left: 30%;}
#sec02 ul.ul02 li:first-child::after {bottom: -75px;left: 45%;}  

#sec02 ul.ul02 li:nth-child(2)::before {bottom: -55px;left: 83%;}
#sec02 ul.ul02 li:nth-child(2)::after {bottom: -70px;left: 75%;} 

#sec02 ul.ul02 li:nth-child(3)::before {bottom: -55px;left: 45%;}
#sec02 ul.ul02 li:nth-child(3)::after {bottom: -70px;left: 35%;}  
#sec03 .col3 span{width:25%;padding-top: 50px;padding-left: 40px;}
#sec03 .col3 div{width:75%;text-align: center;}  
    
#sec04 .wrap{display: flex;align-items: center; }
#sec04 .wrap h2{width:20%;font-size:40px;color: #073652;font-weight: bold;text-align: center;line-height: 100%; } 
#sec04 .wrap ul{width:80%;} 
#sec05{display: flex;align-items: center;margin-top: 50px;}
#sec05 .col2{background: url("/img/img06.jpg") no-repeat left top;width:50%;text-align: center;color:#fff;font-size: 38px;padding: 40px 0;}
#sec05 .col3{width:50%;display: flex;text-align: center;}  
footer .wrap , footer .wrap .col3 ul,footer .wrap .col3 .bnr{display: flex;}
footer{background: #EBEBEB;padding: 40px 0 0 0;margin-top: 100px;}
footer .wrap .col2{width:40%;}
footer .wrap .col3{width:60%;}  
footer .wrap .col3 a{padding: 10px;display: block;text-decoration: underline;}

.sponly{display: none;}    
.p-nav__item {position: relative;width: 130px;line-height: 80px;}    
 a.form_btn{margin: 80px auto;display: block;}
 #page h2{font-size: 40px;}

.profile .col2 div:first-child{width:30%;margin-bottom: 50px;}
.profile .col2 div:nth-child(2){width:68%;margin-left: 2%;}   

dl.gaiyou dt {width:20%;}
dl.gaiyou dd {width:76%;}
   
.formwrap th {  width: 20%;border-right: 1px solid #cccccc;height: 40px;}   
.formwrap td.mailbox{width:80%;}
}



/*SP*/

@media screen and (max-width: 767px) {
.pconly{display: none;}    
.formbtn.pconly{display: none;}     
.p-nav__link {font-size: 20px;}    
.contact .p-nav__link{font-size: 14px;} 
main{margin-top: 85px;}    
.wrap{width:90%;margin: 0 auto;}
.col2{width:100%;display: block;}
#sec01 .wrap ,#sec03 .col3 {display: block;}    
#sec01{margin: 40px auto 0 ;}
#sec01 .col2 img{margin-top:40px;}
#sec01 .btn{margin: 0 auto;}
#sec02 .h2sub{margin-top:0;} 
#sec02 ul.ul01 ,#sec02 ul.ul02{padding: 0;}    
#sec02 ul {display: block;} 
#sec02 ul li{background: #EBEBEB;border: 5px solid #fff;border-radius:10px;box-shadow: 4px 4px 0px 0px rgba(4, 4, 0, 0.2);margin: 10px;padding: 10px; font-weight: bold;font-size: 18px;line-height: 160%;position: relative;text-align: center;}  
    
#sec01 h2 {font-size: 34px;}
#sec01 h3 {font-size: 22px;}
#sec02 h2{font-size: 28px;}    
#sec02 .h2sub{font-size: 20px;padding-bottom: 10px;line-height: 120%;} 
#sec02 ul li span {font-size: 26px;}    
#sec03 h2{font-size: 22px;padding: 10px 10px 20px;width:100%;}
#sec03 .col3 p {font-size: 24px;line-height: 160%;margin-bottom: 20px;}    
#sec03 .col3 p span {font-size: 28px;display: block;padding-top: 10px; }       
#sec03{padding-bottom: 50px;}   
    
#sec03 .col3 span{padding-top: 0;padding-left: 0;}
#sec03 .col3 span img{width: 70%;margin: 30px auto 0 auto;display: block;}

#sec03 .col3 span{padding-top: 50px;padding-left: 40px;}
#sec03 .col3 div{text-align: center;} 
    
#sec04 .wrap{display: block; }
#sec04 .wrap h2{font-size:34px;color: #073652;font-weight: bold;text-align: center;line-height: 100%;margin-bottom: 0; } 
#sec04 .wrap ul{width:100%;padding: 0;}  
#sec04 .wrap p{font-size: 16px;}    
.formbtn{margin-top: 30px;display: block}    
#sec05{display: block;align-items: center;margin-top: 50px;}
#sec05 .col2{background: url("/img/img06.jpg") no-repeat left top;width:100%;text-align: center;color:#fff;font-size: 38px;padding: 20px 0;}
#sec05 .col3{width:100%;display: flex;text-align: center;padding-top: 30px;}
 footer .logo{margin: 0 auto;display: block;}
footer .wrap .col3 ul{display: block;}
footer .wrap .col3 .bnr{display: flex;padding: 0;}
    footer .wrap .col3 .bnr p{margin: 0 5px;}
footer{background: #EBEBEB;padding: 40px 0 0 0;margin-top: 30px;text-align: center;}
footer .wrap .col3 a{padding: 5px;}
    
.l-header{padding: 20px 0;}  
.p-nav__item {position: relative;width: 100%;line-height: 50px;}      
a.form_btn{margin: 30px auto;display: block;}
#page h2{font-size: 30px;margin-top: 85px;}
.contact{margin-top: 40px;}    
.profile .col2{display: block;}
.profile .col2 img{max-width:300px;margin: 0 auto;display: block; }
.profile .col2 div:first-child{width:100%;margin-bottom: 30px;}
.profile .col2 div:nth-child(2){width:100%;margin-left: 0%;}
.profile .col2 .bgtxt {margin-bottom: 30px;} 
    
dl.gaiyou dt {width:100%;}
dl.gaiyou dd {width:96%;} 
.formwrap th {  width: 100%;box-sizing:border-box;display: block;}   
.formwrap td{width:100%;box-sizing:border-box;display: block;} 
    
.blog .wrap{display: block;}
.wrap2{width:100%;}
.wrap3{width:100%;margin-left: 0%;} 
.post_meta {display: block;} 
.blog .cat {font-size: 14px;line-height: 20px;margin: 2px;}    
    
#side ul {display: block;}

}