@charset "UTF-8";

:root{
--base-color:#f0ede7;
--main-color:#e4dfd6;
--txt-color:#4A4645;

}

/*!
* ress.css • v1.2.2
* MIT License
* github.com/filipelinhares/ress
* 全ての要素にbox-sizing: border-box;.
* 全ての背景画像にbackground-repeat: no-repeat.
*/html{box-sizing:border-box;-webkit-text-size-adjust:100%}*,:after,:before{background-repeat:no-repeat;box-sizing:inherit}:after,:before{text-decoration:inherit;vertical-align:inherit}*{padding:0;margin:0}audio:not([controls]){display:none;height:0}hr{overflow:visible}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}summary{display:list-item}small{font-size:80%}[hidden],template{display:none}abbr[title]{border-bottom:1px dotted;text-decoration:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}code,kbd,pre,samp{font-family:monospace,monospace}b,strong{font-weight:bolder}dfn{font-style:italic}mark{background-color:#ff0;color:#000}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}input{border-radius:0}[role=button],[type=button],[type=reset],[type=submit],button{cursor:pointer}[disabled]{cursor:default}[type=number]{width:auto}[type=search]{-webkit-appearance:textfield}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}textarea{overflow:auto;resize:vertical}button,input,optgroup,select,textarea{font:inherit}optgroup{font-weight:700}button{overflow:visible}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:0;padding:0}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button:-moz-focusring{outline:1px dotted ButtonText}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}button,select{text-transform:none}button,input,select,textarea{background-color:transparent;border-style:none;color:inherit}select{-moz-appearance:none;-webkit-appearance:none}select::-ms-expand{display:none}select::-ms-value{color:currentColor}legend{border:0;color:inherit;display:table;max-width:100%;white-space:normal}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}img{border-style:none;vertical-align: bottom}progress{vertical-align:baseline}svg:not(:root){overflow:hidden}audio,canvas,progress,video{display:inline-block}@media screen{[hidden~=screen]{display:inherit}[hidden~=screen]:not(:active):not(:focus):not(:target){position:absolute!important;clip:rect(0 0 0 0)!important}}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled]{cursor:default}::-moz-selection{background-color:#b3d4fc;color:#000;text-shadow:none}::selection{background-color:#b3d4fc;color:#000;text-shadow:none}ul,ol{list-style:none;}a{text-decoration:none;}.wrapper{overflow:hidden;}body{overflow-y:scroll;}

body{
background-color: var(--base-color);
color:var(--txt-color);
}
a{
color:var(--txt-color);
}

/* モバイルファースト */
/*header部分*/
header{
width:100%;
height:56px;
background-color: var(--main-color);
display: flex;
flex-direction:  row-reverse;/*headerのなかで、横にならべたものを逆に並べる*/
justify-content: space-between;
align-items: center;/* 縦のコントロール　headerのなかで真ん中に設定 */
position: fixed;/*headerを固定している　スクロールしたときにも残るように*/
top:0;
z-index: 1000;
padding-right:20px;
}

h1{
width:150px;
height:36px;
background:url(../img/logo.svg)no-repeat center center/contain;
white-space: nowrap;/*h1の文字を隠す*/
text-indent: 100%;
overflow: hidden;
}
/*.small-logo{
width:50px;
height:50px;
background:url(../img/logo.svg)no-repeat center center/contain;
position: sticky;
left:50px;
display: ;
}*/
.g-nav{
width:100%;
height:calc(100vh - 56px);
background-color: #bed5db;
position:fixed;
top:56px;
display: none;/*一度かくしておいて　javascriptで設定*/
z-index:1000;
}
.g-nav>ul{
background:var(--base-color);
padding:20px;
}
.g-nav li{
margin-bottom: 6px;
}
.g-nav a{
font-size: 14px;
}
/*main部分
---------------------------------*/
.main{
padding-top:66px;/*headerに被ってくるので、paddingでスペースをつくる*/
}
.main-inner{
display:flex;
flex-direction: column-reverse;/*写真を上にして、テキストを下にする*/
margin-bottom: 10px;
}
.main-inner:nth-of-type(2)>.txt-box{
background-color:#afa891;
}
.photo-box{
width:100%;
height:40vh;
}
.photo-box>img{
object-fit: cover;/* 便利な機能 写真を幅いっぱいにしてサイズをあわせる*/
width:100%;
height:100%;
}
.txt-box{
background-color:#fff;
text-align: center;
}
.txt-box>h2{
font-weight: normal;
font-size: 30px;
padding:20px 0;
}
.txt-box>.txt{
padding:10px 30px 40px;
font-size:14px;
line-height: 1.7;
}
.btn{
background:var(--base-color);
font-size:14px;
display:inline-block;/*ボタンの幅を文字数によって幅を変えたいとき*/
padding:16px 10px;
margin-bottom: 40px;
}
.btn::after{/*矢印をつくる*/
display:inline-block;/*インラインブロックを作って*/
content: "";/*ボーダーで簡単な矢印をつくる*/
width:8px;
height:8px;
border-top:1px solid var(--txt-color);
border-right:1px solid var(--txt-color);
transform: rotate(45deg);
margin-left:10px;
}
/*column
--------------------*/
.col-photo{
width:100%;
height:40vh;
}
.col-photo>img{
object-fit: cover;/*画面のサイズに合わせた大きさにフィット*/
width:100%;
height:100%;
}
.col-txt{
margin-bottom: 10px;
background-color:var(--main-color);
text-align:center;
}
.col-txt>h3{
font-size:25px;
font-weight: normal;
padding-top:60px;
margin-bottom: 60px;
}
.col-txt>.icon{
width: 86px;
height:86px;
background:var(--base-color) url(../img/map.svg)no-repeat center 40% /52px;
border-radius:50%;/*まんまるになります。*/
margin:0 auto 30px;
white-space:nowrap;
text-indent:100%;
overflow: hidden;
}
.col-inner:nth-of-type(2) .icon{/*col-innerの子孫である.iconにnth*/
background:var(--base-color) url(../img/xmatree.svg)no-repeat center 40% /52px;
}

footer{
width:100%;
height:100vh;
background-color:#bed5db;
}
br.pc{
display:none;/*スマホのサイズのときに改行されない。*/
}

/*768px以上のスタイル*/
@media(min-width:768px){
header{
height: auto;
justify-content: center;/*ロゴを真ん中に持ってくる*/
padding:20px 0 ;
position: static;/*positionを初期値に上書きするheaderは固定されない*/
}
h1{
width:440px;
height:102px;
}
#btn{
display: none;/*classより、id名が優先されるので、上書きされて隠すことができる。*/
}
.g-nav{
display:block;
position: static;
height:56px;
position: sticky;
top:0;
}
.g-nav>ul{
display:flex;
padding:0;
justify-content: center;
}
.g-nav li{
margin:0 10px;
}
.g-nav a{
display:block;
line-height: 56px;
}
.main{
padding-top:0;
}
.container{
max-width: 1366px;
margin:0 auto;
padding:0 10px 10px;
}
.main-inner{
flex-direction: row-reverse;/*column-reveseをrow-reverseに変える*/
justify-content: space-between;
}
.main-inner:nth-of-type(2)>.txt-box{
width:100%;
height:80vh;
}
.main-inner:nth-of-type(4){
flex-direction: row;
}
.photo-box{
width:60%;
height:auto;/*txt-boxの高さのほうが高いので、それに合わせてフレックスで並べているときはオートで合わせてくれる。*/
}
.txt-box{
width:calc(40% - 10px);
}
/*column部分*/
.col-inner{
display: flex;
margin-bottom: 10px;
}
.col-photo{
width:50%;
height:auto;
}
.col-txt{
width:50%;
margin-bottom:0;
}
}
/*901px以上のとき*/
@media(min-width:901px){
.col-wrapper{
display:flex;
justify-content: space-between;
}
.col-inner{
display:block;/*縦に戻す*/
width:calc( (100% - 20px) /3);/*3分割　余白の20ｐｘを引く*/
}
.col-photo{
width:100%;
}
.col-txt{
width:100%;
}
br.pc{
display:block;/*pcサイズのときに改行される。*/
}
}

@media(min-width:960px){
.g-nav li{
margin:0 20px;
	}
}