@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&family=Shippori+Mincho:wght@400;500;600;700;800&display=swap');
/*google font
font-family: 'Noto Sans JP', sans-serif;
font-family: 'Noto Serif JP', serif;
font-family: "Shippori Mincho", serif;
font-family: "Aboreto", system-ui;
*/

/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17

*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}
*{box-sizing: border-box;}
body {
    line-height:1;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
	display:block;
}

ul,ol {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}

/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;   
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
    vertical-align:middle;
}
img{
	vertical-align:bottom;
	max-width: 100%;
}


/************** layout base ********************/

.clearfix{
overflow:hidden;
}
.clear:after{
	content:"";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;
}




a{color:#fff;
	text-decoration:none;
}
a:hover{
}
a:visited{color:#fff;}

/*ボタンrollover*/
a:hover{
opacity:0.60;}

sup {
	line-height: 100%;
	font-size:10px;
	vertical-align: 0.4em;
}
sub{
	line-height: 100%;
	font-size:10px;
	vertical-align: -0.1em;
}

.txtLeft{
text-align:left;
}
.txtRight{
text-align:right;
}
.txtCenter{
text-align:center;
}
.fw{font-weight:bold !important;}
.f10{ font-size:10px !important;}
.f11{ font-size:11px !important;}
.f12{ font-size:12px !important;}
.f13{ font-size:13px !important;}
.f14{ font-size:14px !important;}
.f15{ font-size:15px !important;}
.f16{ font-size:16px !important;}
.f17{ font-size:17px !important;}
.f18{ font-size:18px !important;}

.txtRed{ color:#D80000;}
.note{ color:#666666; font-size:12px;}

.fLeft{ float:left;}
.fRight{ float:right;}
.fNon{
	float:none !important;
}

.mTop0{ margin-top:0 !important;}
.mTop5{ margin-top:5px !important;}
.mTop10{ margin-top:10px !important;}
.mTop15{ margin-top:15px !important;}
.mTop20{ margin-top:20px !important;}
.mTop25{ margin-top:25px !important;}
.mTop30{ margin-top:30px !important;}
.mTop35{ margin-top:35px !important;}
.mTop40{ margin-top:40px !important;}
.mTop45{ margin-top:45px !important;}
.mTop50{ margin-top:50px !important;}
.mTop60{ margin-top:60px !important;}
.mTop70{ margin-top:70px !important;}

.mBtm0{ margin-bottom:0 !important;}
.mBtm5{ margin-bottom:5px !important;}
.mBtm10{ margin-bottom:10px !important;}
.mBtm15{ margin-bottom:15px !important;}
.mBtm20{ margin-bottom:20px !important;}
.mBtm25{ margin-bottom:25px !important;}
.mBtm30{ margin-bottom:30px !important;}
.mBtm35{ margin-bottom:35px !important;}
.mBtm40{ margin-bottom:40px !important;}
.mBtm45{ margin-bottom:45px !important;}
.mBtm50{ margin-bottom:50px !important;}
.mBtm60{ margin-bottom:60px !important;}

.pTop0{ padding-top:0 !important;}
.pTop5{ padding-top:5px !important;}
.pTop10{ padding-top:10px !important;}
.pTop15{ padding-top:15px !important;}
.pTop20{ padding-top:20px !important;}
.pTop25{ padding-top:25px !important;}
.pTop30{ padding-top:30px !important;}
.pTop35{ padding-top:35px !important;}
.pTop40{ padding-top:40px !important;}
.pTop45{ padding-top:45px !important;}
.pTop50{ padding-top:50px !important;}

.pBtm0{ padding-bottom:0 !important;}
.pBtm5{ padding-bottom:5px !important;}
.pBtm10{ padding-bottom:10px !important;}
.pBtm15{ padding-bottom:15px !important;}
.pBtm20{ padding-bottom:20px !important;}
.pBtm25{ padding-bottom:25px !important;}
.pBtm30{ padding-bottom:30px !important;}
.pBtm35{ padding-bottom:35px !important;}
.pBtm40{ padding-bottom:40px !important;}
.pBtm45{ padding-bottom:45px !important;}
.pBtm50{ padding-bottom:50px !important;}
.pBtm60{ padding-bottom:60px !important;}


.flex{	
 display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
 flex-flow: row wrap;
}
.flexSB{
 display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
 flex-flow: row wrap;
justify-content: space-between;
 }
.flexC{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
 flex-flow: row wrap;
justify-content: center;
}

/*色
========================================== */
:root {
  --base: #3b2318;
  --bk: #000;
  --wh: #fff;
  --brown: #3b2318;
}

/************** layout base ********************/
body{
 background: url("images/bg_brown.png") no-repeat center center /cover;
text-align:center;
font-family:'Noto Serif JP',"游明朝" , "Yu Mincho" ,"ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" ,  "游明朝体" , "YuMincho" ,  "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
line-height:1.2;
min-height: 100vh;
/*  overflow: hidden;*/
}
body.bodyWh{
 background: url("images/bg_wh.png") no-repeat center center /cover;}

.fontMin{
 font-family:'Noto Serif JP',"Shippori Mincho", Garamond , "Times New Roman" ,"游明朝" , "Yu Mincho" ,"ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" ,  "游明朝体" , "YuMincho" ,  "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
}
.fontS{
 font-family:"Shippori Mincho", Garamond , "Times New Roman" ,"游明朝" , "Yu Mincho" ,"ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" ,  "游明朝体" , "YuMincho" ,  "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
}
.fontG{
 font-family:"Noto Sans JP","游ゴシック", YuGothic,  "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

div,p,dl{
text-align:left;
}

p,dt,dd,li,td,th,div{
/*color:#3b2318;*/
 color: #fff;
 font-size: min(1.15vw,24px);
line-height:1.6;
}
h1,h2,h3,h4,h5,h6{
 color: #fff;
 font-family: "Shippori Mincho", serif;
 font-size: min(1.5625vw,30px);
 font-weight: 400;
 line-height: 1.1;
 text-align: left;
}
.bodyWh main *{
 color:var(--base);
}
.bodyWh h1,.bodyWh h2,.bodyWh h3,.bodyWh h4{
 color: var(--base);
}
/*------------------ list style----------------*/
.numberList{
	padding:0 0 0 18px;	
}
.numberList li{
	list-style:decimal outside;
	padding:0 0 5px 0;
}


.discList{
	padding:0 0 0 18px;
}
.discList li{
	list-style:disc outside;
	padding:0 0 2px 0;
}

.indentList li{
	padding-left:1em;
	text-indent:-1em;
}

/*****************  head ***********************/
#wrap{
 display: flex;
}
header{
 background: url("images/bg_nav.png") no-repeat left bottom/100% auto #3b2318;
 width: 19vw;
 padding: 3.7vh 1.4vw 0 1.4vw;
  min-height: 100vh;
}
#logo{
 width: 10.67vw;
 margin-bottom: 1.9vh;
 line-height: 0;
}
header ul li{
  margin-bottom: 4px;
}

header ul li a{
  padding: 6px 10px;
  display: block;
  line-height: 1;
}
header nav > ul > li > a{
background: #462a1d;
  font-size: min(1.15vw,18px);
}

header nav > ul > li.home > a{
  background: #251107;
}
header nav > ul > li > ul,
header nav > ul > li > ul > li > ul,
header nav > ul > li > ul > li > ul > li > ul{
  margin-top: 5px;
}
header nav > ul > li > ul > li > a{
  background: #593c2f;
}
header nav > ul > li > ul > li > ul > li a{
  background: #695247;
}
header nav > ul > li > ul > li > ul > li > ul a{
  padding-left: 20px;
}

/*header ul li span{
  color: #fff;
  min-height: 6vh;
  display: flex;
 align-items: center;
  cursor: pointer
}*/
header ul li.active > a,
header nav > ul > li.home.active > a{
  background: rgba(255,255,255,0.8);
  color: #3b2318
}
/*header ul li span.tite{
  min-height: 4.5vh;
}
header ul li span:hover{
  opacity:0.60;
}
header ul li a{
 display: flex;
 align-items: center;
}
header ul li:nth-of-type(6){
 letter-spacing: -0.09em;
}*/
header ul li ul{
  display: none;

}

/*header ul li li:last-child{
  border-bottom: none
}*/

header ul li li a{
  font-size: 14px;
}


/*****************  contents ***********************/
#wrap main{
 width: calc(100vw - 14.58vw);
 padding-top: 3.7vh;
 padding-right: 1.5625vw;
  display: flex;
  align-items: center;
}
#wrap main:has(.pager){
 position: relative;
 padding-left: 5vw;
 padding-right: 6vw;
  padding-bottom: 50px
}

.mainInner{
  width: 100%;
}

.ttlBarTop{
 font-size: min(2.8125vw,54px);
 text-align: center;
}

.f30{
 font-size: min(1.5625vw,30px);
}
.ttlBarTop.mB40{
	margin-bottom: 4.0vh;
}
.ttlBar{
 position: relative;
 padding-left: 40px;
 margin-bottom: 3.7vh;
 font-size: min(2.8125vw,54px);
}
.ttlBar::before{
 content: "";
 display: block;
 background: #fff;
 width: 20px;
 height: 20px;
 position: absolute;
 left: 0;
 top: 0.5em;
}
.ttlBarSub{
 position: relative;
 padding-left: 44px;
 margin-bottom: 3.17vh;
 font-size: min(1.875vw,36px);
 line-height: 1.4;
}
.ttlBarSub::before{
 content: "";
 display: block;
 background: #fff;
 width: 22px;
 height: 0.63vh;
 position: absolute;
 left: 0;
 top: 0.7em;
}
.bodyWh .ttlBarTop::before,
.bodyWh .ttlBar::before,
.bodyWh .ttlBarSub::before{
 background-color: var(--base);
}

.imgfit img{
 object-fit: cover;
 width: 100%;
 height: 100%;
}

/*----------------------------------------------
              top
---------------------------------------------*/
#top {
}
#top main{
 position: relative;
 width: 100%;
 height: 100%;
}
#top h1{
 width: 32.91vw;
 height: 17.96vw;
 padding: 2vw 2.23vw 0 2vw;
 margin: 7.7vh auto 5.9vh;
 line-height: 0;
}
#top h2{
 margin-bottom: 10.5vh;
 font-size: min(4.6875vw,90px);
 text-align: center;
}
#top p{
 width: 32.13vw;
 margin: 0 auto;
 color: #fff;
 font-size: min(1.25vw,24px);
 line-height: 2;
}

.pager{
}
.pager a{
 position: absolute;
 top: calc(50vh - 21px);
 margin: auto;
 display: grid;
 place-content: center;
 border-radius: 50%;
 border: 1px #fff solid;
 width: 43px;
 height: 43px;
}
.pager a::before{
 content: "";
 background-color: #fff;
  width: 18px;
  height: 20px;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
 margin-left: 6px;
}
.pager .prev{
 left: 1.8vw;
}
.pager .prev::before{
 -webkit-transform: rotate(180deg);
transform: rotate(180deg);
 margin: 0 6px 0 0;
}
.pager .next{
 right: 1.8vw;
}
#wrap main .pager .prev{
 left:0;
}
.bodyWh .pager a{
 border-color: var(--base);
}
.bodyWh .pager a::before{
 background-color: var(--base);
}
/*----------------------------------------------
              home
---------------------------------------------*/
.menu{
 gap:2.5vh 1.09vw;
}
.menu li{
 width: calc((100% - 1.1vw*2)/3);
 height: 486px;
}
.menu li a{
 position: relative;
 display: block;
 height: 100%;
}
.menu li figure{
 height: 100%;
}
.menu li figure img{
 object-fit: cover;
 width: 100%;
 height: 100%;
}
.menu li h2{
 font-size: min(2vw,30px);
 text-align: center;
 position: absolute;
 top:50%;
 transform: translate(0, -50%);
 background: rgba(59,35,24,.55);
 width: 100%;
 padding: 40px 0;
}
.menu li h2 span{
 font-size: min(3vw,40px);
 display: block;
 line-height: 2;
}
.menu.column2 li{
	width: calc((100% - 1.1vw*2)/2);
	height: 332px;
}
.menu.column3 li{
	width: calc((100% - 1.1vw*2)/3);
	height: 332px;
}
.bnr{
 background: #fff;
 margin-top: 2.5vh;
}
.bnr a{
 display: flex;
 align-items: center;
 justify-content: center;
 height: 18vh;
 gap:0 32px;
 color: var(--base);
 font-size: min(2.8125vw,54px);
 padding: 10px;
}
.bnr img{
 width: auto;
 height: 90%;
 max-height: 110px;
}
/*----------------------------------------------
              new_exterior
---------------------------------------------*/
#new_exterior .sub,
.sub.f30.txtCenter{
 margin: 1.7vh auto 4.0vh;
 text-align: center;
}
.imgs{
 gap:2.5vh 1.04vw;
}
.imgs li{
 font-size: min(1.5625vw,18px);
}
.imgs.column2 li{
 width: calc((100% - 1.05vw)/2);
}
.imgs.column4 li{
 width: calc((100% - 1.05vw*3)/4);
}
.imgs.column5 li{
 width: calc((100% - 1.05vw*4)/5);
}

/* about
-----------------*/
#new_exterior_about dl{
 width: 35%;
}
#new_exterior_about dt{
 /*width: 5.98vw;*/
}
.definition dt{
 display: inline-block;
 border-radius: 2px;
 background: #fff;
 color: var(--base);
 padding: 0 .9375vw;
 margin-bottom: 2.75vh;
 font-size: min(1.5625vw,30px);
 font-weight: 600;
 text-align: center;
}
.definition dd{
 color: #fff;
 font-size: min(1.5625vw,30px);
}
.definition dd +dt{
 margin-top: 7.19vh;
}

#new_exterior_about .imgs{
 width: 65%;
 gap:1.69vh 1.14vw;
}
#new_exterior_about .imgs li{
 width: calc((100% - 1.14vw*2)/3);
}
.imgs figcaption{
 margin: .84vh;
 text-align: center;
 color: #fff;
}


/*  type
-----------------------*/
.column3.imgs{
 gap:2.5vh 1.09vw;
}
.column3.imgs li{
 width: calc((100% - 1.1vw*2)/3);
}
/*  variation
-----------------------*/
.imgtxts{
 gap:45px .9375vw;
}
.imgtxts li{
 width: calc((100% - .9375vw*2)/3);
 display: flex;
 gap:0 .78vw;
}
.imgtxts li figure{
 flex:0 0 auto;
 width: 57.95%;
}
.imgtxts li p{
 color: #fff;
 font-size: min(1.5625vw,18px);
}
/*  planning
-----------------------*/
#new_exterior_planning .planList{
 gap:2.96vh 1.14vw;
 justify-content: center;
}
#new_exterior_planning .planList li{
 width: calc((100% - 1.14vw*2)/3);
}
#new_exterior_planning .planList h3{
 display: inline-block;
 border-radius: 2px;
 background: #fff;
 padding: 7px .68vw;
 margin-bottom: 1.2vh;
 color: var(--base);
 font-weight: 600;
}
#new_exterior_planning .planList p{
 margin-bottom: 1.6vh;
 color: #fff;
 font-size: min(1.5625vw,30px);
}
/*  construction
-----------------------*/
#new_exterior_construction .flexSB .txts{
 width: 60%;
}
#new_exterior_construction .txts dl{
 padding-left: 44px;
 margin-bottom: 6.34vh;
}
#new_exterior_construction .txts  ul{
 padding-left: 44px;
}
#new_exterior_construction .txts li{
 color: #fff;
 font-size: min(1.8vw,30px);
 line-height: 2;
}

#new_exterior_construction .flexSB figure{
 width: 38%;
}
/*  universal
-----------------------*/
#new_exterior_universal{}
.acc{
 position: relative;
 cursor: pointer;
}
.acc::after{
 content: "";
	display: inline-block;
	border-bottom: 1px #fff solid;
	border-right: 1px #fff solid;
	width: 21px;
	height: 21px;
	margin-top: -14px;
 margin-left: 28px;
	-webkit-transform: rotate(45deg);
transform: rotate(45deg);
 vertical-align: middle;
 transition: 0.2s ease-in-out; 
}
.acc.active::after{
	margin-top: 0px;
	-webkit-transform: rotate(225deg);
transform: rotate(225deg);
}
.accBox{
 display: none;
 padding-bottom: 4.97vh;
}
.ttlBarSub + .accBox{
 padding-left: 44px;
}

/*  after
-----------------------*/
#new_exterior_after main{
}
#new_exterior_after .flexSB .txts{
 width: 40.35%;
 padding-left: 2.61vw;
}
#new_exterior_after .flexSB .txts li{
 padding-left: 1.0em;
 text-indent: -1.0em;
 color: #fff;
 font-size: min(1.5625vw,30px);
 line-height: 2;
}
#new_exterior_after .flexSB figure{
 position: relative;
 width: 59.2%;
}
#new_exterior_after .flexSB figure a{
 position: absolute;
 width: 2.39vw;
 height: 2.39vw;
}
#new_exterior_after .flexSB figure a span{
 display: none;
}
#new_exterior_after .flexSB figure a:nth-of-type(1){
 left: 2.8vw;
 top: 15vw;
}
#new_exterior_after .flexSB figure a:nth-of-type(2){
 left: 16.8vw;
 top: 2.3vw;
}
#new_exterior_after .flexSB figure a:nth-of-type(3){
 left: 34.5vw;
 top: 8.6vw;
}
#new_exterior_after .flexSB figure a:nth-of-type(4){
 left: 36.8vw;
 top: 15vw;
}
#new_exterior_after .flexSB figure a:nth-of-type(5){
 left: 26.8vw;
 top: 25.2vw;
}
#new_exterior_after .flexSB figure a:nth-of-type(6){
 left: 34.2vw;
 top: 25.2vw;
}

.modalBox{
  display:none;
  position:absolute;
  top:50%;
  left:50%;
 transform: translate(-50%, -50%);
  z-index:100;
background:#fff;
width:calc(971/1920*100vw);
height:calc(629/945*100vh);
 padding: 10px 35px;
overflow-y: auto;
overflow-x: hidden;
 text-align: center;
}
.modalBox figure{
 height: 100%;
}
.modalBox img{
 object-fit: contain;
 width: 100%;
 height: 100%;
}
.modalBox .btnClose{
 position: absolute;
 right: 10px;
 top: 10px;
 line-height: 1;
}
.btnClose::before{
 content: "×";
 font-size: 48px;
}
  /* Lightbox表示時に背景を黒に */
#BlackWindow{
  display:none;
  background:#3b2318;
  opacity:0.5;/*黒地の背景の調整はこの数値で調整*/
  position:absolute;
  top:0px;
  left:0px;
  min-width:100%;
  min-height:100%;
  z-index:99;
  }

/*----------------------------------------------
         reform     
---------------------------------------------*/
#reform_importance h2{
 margin-bottom: 4vh;
}
#reform_importance .imgs{
 justify-content: center;
}
#reform_importance .imgs figure{
 height: 70vh;
 margin: 0 auto;
}
#reform_importance .imgs figure img{
 width: 100%;
 height: 100%;
 object-fit: contain;
}

#reform_exterior_gate .accBox figure,
#reform_exterior_approach .accBox figure,
#reform_exterior_garage .accBox figure,
#reform_fence .accBox figure,
#reform_wooddeck .accBox figure,
#reform_planning .accBox figure{
 height: 55vh;
  overflow: hidden;
  margin: 0 auto;
}

#reform_exterior_gate .accBox figure img,
#reform_exterior_approach .accBox figure img,
#reform_exterior_garage .accBox figure img,
#reform_fence .accBox figure img,
#reform_wooddeck .accBox figure img,
#reform_planning .accBox figure img{
 width: 100%;
 height: 100%;
 object-fit: contain;
}

#reform_summary .txts ul{
 margin-left: 4em;
}
#reform_summary .flexSB figure{
  width: 40vw
}

/*----------------------------------------------
        garden      
---------------------------------------------*/
#new_garden_aim h2{
 margin-bottom: 3vh;
}
#new_garden_aim figure {
 margin-bottom: 10px;
}
#new_garden_aim figure img{object-fit: cover;
 width: 100%;
 height: 100%;
 aspect-ratio:405/467;
}
#new_garden_aim figcaption{
 font-size: min(1.19vw,18px);
}

#new_garden_points .accBox figure{
 height: 55vh;
  overflow: hidden;
  margin: 0 auto;
}
#new_garden_points .accBox figure img{
 width: 100%;
 height: 100%;
 object-fit: contain;
}
#new_garden_points .accBox .figcaptionImg figure{
	height: auto;
}

#reform_garden_safety .imgfit{
 height: 70vh;
}
#garden_line .txts,
#garden_summery .txts{
 width: 51%;
}
#garden_line .discList,
#garden_summery .discList{
 margin-left: 3.5em;
}
#garden_line .discList li,
#garden_summery .discList li{
 font-size: min(1.3vw,24px);
}
#garden_line .flexSB figure,
#garden_summery .flexSB figure{
 width: 49%;
}

/*----------------------------------------------
        lighting      
---------------------------------------------*/
#lighting_role li h2{
 margin-bottom: 1vh;
}
#lighting_role li figure{
 margin-top: 1vh;
 height: 32vh;
}
#lighting_select .imgs + h2{
 margin-top: 2vh;
}
#lighting_select li figure{
 height: 28vh;
}

#lighting_planting .column2 li figure,
#lighting_attention .column2 li figure{
  height: 25vh;
}

#lighting_planting .column2 li figure img,
#lighting_attention .column2 li figure img{
  height: 100%;
  width: 100%;
  object-fit: cover;
}
#lighting_point .imgs h2{
 margin-bottom: 1vh;
}
#lighting_point .imgs figure{
 margin-top: 1.2vh;
 height: 28vh;
}
/*----------------------------------------------
         guide  
---------------------------------------------*/
#guide {}
#guide main h1{
 margin-bottom: 6.13vh;
}
#guide main h2{
 margin-bottom: 7.83vh;
}
#guide main h2 img{
 width:24.06vw;
 height: auto;
}
#guide main p{
 color:var(--base);
 line-height: 2;
}

/* award
----------------------------*/
#guide_achievements_award main h1{
 margin-bottom: 6.13vh;
}
#guide_achievements_award main h2{
 margin-bottom: 4.23vh;
}
#guide_achievements_award main p.fontS{
 margin-bottom: 5.8vh;
 line-height: 2;
}
#guide_achievements_award .column3 li p{
 margin-top: 1.7vh;
 line-height: 1.25;
}
#guide_achievements_award .column3 li:nth-of-type(3) p{
 font-size: min(1.04vw,20px);
 letter-spacing: -0.02em;
 line-height: 1.5;
}
#guide_achievements_award .column3 li p span{
 font-size: min(.83vw,16px);
}

/* guide_organization_detail
----------------------------*/
#guide_organization_detail .imgs{
 gap:1.2vh 1.04vw;
 margin-top: -10px;
}
#guide_organization_detail .imgs figure{
 height: 12vh;
}
#guide_organization_detail .imgs figure img{
 width: 100%;
 height: 100%;
 object-fit: cover;
}
#guide_organization_detail .imgs h2{
 background: #000;
 padding: 5px 10px;
 color: #fff;
 font-size: min(1.3vw,20px);
}

/* guide_brand
----------------------------*/
#guide_brand main{
	padding-left: 3.2vw;
}
#guide_brand .btns{
 margin: 0 auto;
  gap:30px
}
#guide_brand .btns li{
  width: calc((100% - 60px)/3)
}
#guide_brand .btns li a{
 background: #fff;
 display: grid;
 place-content: center;
 height: 3em;
 border: 1px var(--base) solid;
 font-size: min(2.8vw,30px);
}

/* guide_strength1
----------------------------*/
#guide_strength1 h2{
 margin-top: 5vh;
}
#guide_strength1 .flexSB{
 margin-top: 1.2vh;
}
#guide_strength1 .flexSB figure{
 width: 40%;
}
#guide_strength1 .flexSB .txts{
 width: 58%;
}
/* guide_strength2
----------------------------*/
#guide_strength2 .imgs{
 margin: 3vh 0 0;
}
#guide_strength2 .imgs figure{
 height: 30vh;
}
#guide_strength2 .imgs figure img{
 width: 100%;
 height: 100%;
 object-fit: cover;
}

/* guide_strength3
----------------------------*/
#guide_strength3 .flexSB .txts{
 width: 68%;
}
#guide_strength3 .flexSB figure{
 width: 30%;
}
#guide_strength3 .support{
 margin-top: 5vh;
 margin-bottom: 5vh;
 text-align: center;
}
#guide_strength3 .support h2{
 font-size: min(2.5vw,35px);
 text-align: center;
}
#guide_strength3 .support p{
 font-size: min(3vw,35px);
 text-align: center;
}
#guide_strength3 .support p span{
 display: block;
 font-size: min(4.8vw,60px);
}
#guide_strength3 .support + p.txtCenter{
 border-top:1px var(--base) solid;
 border-bottom:1px var(--base) solid;
}

/* schedule_reform
----------------------------*/
#schedule_reform main{
	padding-left: 3.2vw;
}
#schedule_reform .imgs{
 margin-top: 2vh;
}
#schedule_reform .imgs figure{
 height: 26vh;
 margin-bottom: 1vh;
}
#schedule_reform .imgs figure img{
 width: 100%;
 height: 100%;
 object-fit: cover;
}
#schedule_reform .imgs h2{
 margin-bottom: 1vh;
}

/* schedule_new
----------------------------*/
#schedule_new main{
	padding-left: 3.2vw;
}


/*----------------------------------------------
         case     
---------------------------------------------*/