@charset "utf-8";

/*
Theme Name:	AIA
Description: Aoyama International Advisory
Author: Ryowan Inc.
Version: 1.0.0
*/


/* RESET */
html {line-height: 1.15;-webkit-text-size-adjust:none;-webkit-tap-highlight-color: transparent;}
body {margin: 0;}
main {display: block;}
p,table,blockquote,address,pre,iframe,form,figure,dl {margin: 0;}
h1,h2,h3,h4,h5,h6 {font-size: inherit;line-height: inherit;font-weight: inherit;margin: 0;}
ul,ol,li {margin: 0;padding: 0;list-style: none;}
dt {font-weight: bold;}
dd {margin-left: 0;}
hr {box-sizing: content-box; height: 0;overflow: visible;border: 0;border-top: 1px solid;margin: 0;clear: both;color: inherit;}
pre {font-family: monospace, monospace; font-size: inherit;}
address {font-style: inherit;}
a {background-color: transparent;text-decoration: none;color: inherit;}
abbr[title] {border-bottom: none;text-decoration: underline;text-decoration: underline dotted;}
b,strong {font-weight: bolder;}
code,kbd,samp {font-family: monospace, monospace;font-size: inherit;}
small {font-size: 80%;}
sub,sup {font-size: 75%;line-height: 0;position: relative;vertical-align: baseline;}
sub {bottom: -0.25em;}
sup {top: -0.5em;}
img {border-style: none;vertical-align: bottom;max-width: 100%;width: 100%; height: auto;}
embed,object,iframe {border: 0;vertical-align: bottom;}
button,input,optgroup,select,textarea {-webkit-appearance: none;appearance: none;vertical-align: middle;color: inherit;font: inherit;border: 0;background: transparent;padding: 0;margin: 0;outline: 0;border-radius: 0;text-align: inherit;}
[type='checkbox'] {-webkit-appearance: checkbox;appearance: checkbox;}
[type='radio'] {-webkit-appearance: radio;appearance: radio;}
button,input {overflow: visible;}
button,select {text-transform: none;}
button,[type='button'],[type='reset'],[type='submit'] {cursor: pointer;-webkit-appearance: none;appearance: none;}
button[disabled],[type='button'][disabled],[type='reset'][disabled],[type='submit'][disabled] {cursor: default;}
button::-moz-focus-inner,[type='button']::-moz-focus-inner,[type='reset']::-moz-focus-inner,[type='submit']::-moz-focus-inner {border-style: none;padding: 0;}
button:-moz-focusring,[type='button']:-moz-focusring,[type='reset']:-moz-focusring,[type='submit']:-moz-focusring {outline: 1px dotted ButtonText;}
fieldset {margin: 0;padding: 0;border: 0;min-width: 0;}
legend {color: inherit;display: table;max-width: 100%;padding: 0;white-space: normal;}
progress {vertical-align: baseline;}
textarea {overflow: auto;}
[type='checkbox'],[type='radio'] {padding: 0;}
[type='number']::-webkit-inner-spin-button,[type='number']::-webkit-outer-spin-button {height: auto;}
[type='search'] {outline-offset: -2px;}
[type='search']::-webkit-search-decoration {-webkit-appearance: none;}
::-webkit-file-upload-button {-webkit-appearance: button;font: inherit;}
label[for] {cursor: pointer;}
details {display: block;}
summary {display: list-item;}
table {border-collapse: collapse;border-spacing: 0;}
caption {text-align: left;}
td,th {vertical-align: top;}
th {text-align: left;font-weight: bold;}
template {display: none;}
[hidden] {display: none;}
i{font-style: normal;}

*:focus {outline:0;}

/* padding,border内側設定 */
* {-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;}
::before,::after {-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;}

/* HTML5 */
article, aside, figure, figcaption, footer, header, nav, section{display: block;}



/* ==================================
	Common
	================================== */

html{
	font-family: YakuHanJP, YuGothic,"Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
	font-size: 62.5%;
	word-spacing: 1px;
	letter-spacing: .17em;
	line-height: 1.7;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	-webkit-font-feature-settings: "palt";
	-ms-font-feature-settings: "palt";
	-o-font-feature-settings: "palt";
	font-feature-settings: "palt";
	overflow: auto;
    color: #0b1f24;
}
body {
    width: 100%;
    height: 100%;
}
main {
    overflow: hidden;
}
.pc{
	display: block;
}
.sp{
	display: none;
}

a.disabled{
	pointer-events: none;
}

.invisible {
	opacity: 0;
	-webkit-transition: .5s;
	-o-transition: .5s;
	transition: .5s;
}
.visible {
	opacity: 1;
	-webkit-transition: .5s;
	-o-transition: .5s;
	transition: .5s;
}

@media (max-width: 780px){
	html{
		font-size: 62.5%;	
	}
    body.active {
        position: fixed;
    }
	.pc{
		display: none;
	 }
	 .sp{
		display: block;
	 }
	
}
/* ==================================
    FONT
    ================================== */
.font-serif-en {
    font-family:  'Cormorant Garamond', serif;;
}
.font-serif-jp {
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}

/*  ==================================
	Loader
	================================== */


/* ==================================
	header
	================================== */
header{
	z-index: 99;
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    -webkit-transition: .8s cubic-bezier(0.46, 0.03, 0.25, 1);
	-o-transition: .8s cubic-bezier(0.46, 0.03, 0.25, 1);
	transition: .8s cubic-bezier(0.46, 0.03, 0.25, 1);
}
header .header-wrap{
	width: 100%;
	height: 80px;
    margin: 4.5rem 0;
    padding: 0 9rem;
    color: #fff;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}
.l-header ,
.r-header {
    position: absolute;
	top: 50%;
	-webkit-transform: translate(0,-50%);
	-ms-transform: translate(0,-50%);
	-o-transform: translate(0,-50%);
	transform: translate(0,-50%);
}
.l-header {
    display: block;
    left: 9rem;
}
.r-header {
	display: block;
	right: 9rem;
}
.header-logo {
	width: 30rem;
}
.header-logo a {
	display: block;
	-webkit-transition: .3s;
	-o-transition: .3s;
	transition: .3s;
}
.header-logo a:hover {
	opacity: .6;
}
.header-top {
    
}
.top-gnav {
    font-size: 1.2rem;
}
.top-gnav .gnav-item {
    position: relative;
    padding: 0 1.4rem;
    line-height: 1;
}
.top-gnav .gnav-item::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    width: 1px;
    height: 1.4rem;
    background-color: #fff;
    -webkit-transform: translate(0,-50%);
	-ms-transform: translate(0,-50%);
	-o-transform: translate(0,-50%);
	transform: translate(0,-50%);
}
.top-gnav .gnav-item:first-child::before {
    content: none;
}
.top-gnav .gnav-item:last-child {
    padding-right: 0;
}
.header-bottom {
    margin-top: 2rem;
}
.bottom-gnav {
    font-size: 1.4rem;
}
.bottom-gnav .gnav-item {
    margin-left: 3rem;
}
nav ul.gnav-list {
    display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
    justify-content: flex-end;
    -webkit-transition: .3s;
	-o-transition: .3s;
	transition: .3s;
}

body.page header,
body.archive header,
body.single header{
    background: #fff;
    border-bottom: 1px solid #f4f6f6;
}
body.page header .header-wrap,
body.archive  header .header-wrap,
body.single  header .header-wrap{
    color: #0b1f24;
    margin: 2rem 0;
}
body.page .top-gnav .gnav-item::before,
body.archive .top-gnav .gnav-item::before,
body.single .top-gnav .gnav-item::before{
    background-color: #0b1f24;
}

@media (max-width: 780px){
    header .header-wrap{
		margin: 1rem 0 0;
        height: 68px;
        padding: 0 7%;
	}
	.l-header {
        width: 56%;
        left: 7%;
        z-index: 2;
    }
    .header-logo{
		width: 100%;
	}
	.r-header {
        right: 50%;
        opacity: 0;
		display: none;
	}
    .active .header-wrap .r-header {
		opacity: 1;
    	background-color: #225e6c;
    	width: 100vw;
    	top: 0;
    	right: 0;
        padding: 10rem 7%;
    	transform: translate(0, 0);
		min-height: 100vh; 
  		min-height: calc(var(--vh, 1vh) * 100);
		display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -ms-flex-direction: column-reverse;
  		flex-direction: column-reverse;
        justify-content: flex-end;
	}
    .header-top {
        padding: 5rem 5rem 5rem 0;
    }
    .top-gnav .gnav-item {
        padding: 0;
        margin: 3rem 0 0;
        font-size: 1.5rem;
    }
    .top-gnav .gnav-item:first-of-type {
        margin-top: 0;
    }
    .top-gnav .gnav-item::before {
        content: none;
    }
	.header-wrap .r-header nav ul {
		-webkit-box-orient: vertical;
  		-webkit-box-direction: normal;
  		-ms-flex-direction: column;
  		flex-direction: column;
	}
    .bottom-gnav  {
        font-size: 1.5rem;
    }
    .bottom-gnav .gnav-item {
        margin: 3rem 0 0;
    }
    .bottom-gnav .gnav-item:first-of-type {
        margin-top: 0;
    }
    .sp-header-r{
		display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        position: absolute;
		right: calc(6vw - 10px);
		top: 50%;
	 	-webkit-transform: translate(0,-50%);
		-ms-transform: translate(0,-50%);
		-o-transform: translate(0,-50%);
		transform: translate(0,-50%);
		z-index: 2;
	}
    .openbtn{
		position: relative;
		width: 40px;
    	height: 40px;
		cursor: pointer;
	}
	.openbtn span{
        display: inline-block;
        position: absolute;
        left: 25%;
        width: 50%;
        height: 1px;
        background-color: #fff;
		-webkit-transition: .4s;
		-o-transition: .4s;
		transition: .4s;
    }
    body.page .activelogo,
    body.page.active .passivelogo{
        display: none;
    }
    body.page.active .activelogo,
    body.page .passivelogo{
        display: block;
    }
    body.page.active header .header-wrap, body.archive.active header .header-wrap, body.single.active header .header-wrap {
        color: #fff;
    }
    body.page .openbtn span {
        background-color: #0b1f24;
    }
    body.page.active .openbtn span {
        background-color: #fff;
    }
	.openbtn span:nth-of-type(1){
		top: 15px;	
	}
	.active .openbtn span:nth-of-type(1){
		top: 50%;
		-webkit-transform: rotate(-136deg);
		-ms-transform:  rotate(-136deg);
		-o-transform: rotate(-136deg);
		transform: rotate(-136deg);
	}
	.openbtn span:nth-of-type(2){
		bottom: 15px;
	}
	.active .openbtn span:nth-of-type(2){
		-webkit-transform: rotate(136deg);
		transform: rotate(136deg);
		top: 50%;
	}
	.btn-cancel {
    	height: 100%;
    	width: 100%;
    	z-index: 100;
		display: none;
	}
	.active .btn-cancel {
		display:block;
		position: absolute;
	}
}
/* ==================================
	Footer
	================================== */
footer {
    width: 100%;
    color: #173f48;
    position: relative;
}
footer .footer-container {
    padding: 7vw;
    background-color: #f4f6f6;
    position: relative;
}
footer .footer-nav {
    display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
    justify-content: space-between;
    align-items: center;
}
.l-footer {
    width: 30rem;
}
.l-footer img {
    width: 100%;
}
.l-footer a {
	display: block;
	-webkit-transition: .3s;
	-o-transition: .3s;
	transition: .3s;
}
.l-footer a:hover {
	opacity: .6;
}
.r-footer {
    
}
.footer-list ul {
    background-color: #0b1f24;
    display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
    justify-content: space-between;
}
.r-footer .gnav-item {
    margin-right: 3.2rem;
    font-size: 1.4rem;
}
.r-footer .gnav-item:last-of-type {
    margin-right: 0;
}
.r-footer .gnav-item ul {
    display: block;
}
.footer-info {
    margin: 4.8rem 0 0;
    font-size: 1.4rem;
}
.footer-tel-box, .footer-form-box {
    margin: 4rem 0 0;
}
.bottom-footer {
    padding: 2.4rem 7vw;
    background-color: #225e6c;
    color: #fff;
    justify-content: space-between;
}
.bottom-footer .copyright {
    font-size: 1.2rem;
    letter-spacing: .05em;
}
.footer-anc-btn {
    position: absolute;
    z-index: 99;
    width: 6.4rem;
    height: 6.4rem;
    bottom: 7vw;
    right: 7vw;
}
.footer-anc-btn a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    text-indent: -9999px;
    overflow: hidden;
    background-color: transparent;
    border-radius: 50%;
}
.footer-anc-btn a span:first-child {
    position: absolute;
    display: block;
    width: 3.2rem;
    height: 6.4rem;
    top: 0;
    right: 3.2rem;
    overflow: hidden
}
.footer-anc-btn a span:first-child::before {
    content: "";
    position: absolute;
    display: block;
    width: 200%;
    height: 100%;
    top: 0;
    left: 0;
    border: 1px solid rgba(0,0,0,.4);
    border-radius: 100%;
}
.footer-anc-btn a span:first-child::after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    border-top: solid 1px rgba(0,0,0,1);
    border-left: solid 1px rgba(0,0,0,1);
    border-bottom: solid 1px rgba(0,0,0,1);
    border-radius: 3.4rem 0 0 3.4rem;
    transform: rotate(-180deg);
    transform-origin: center right;
    transition: transform .2s cubic-bezier(.7,0,1,.3);
}
.footer-anc-btn a span:last-child {
    position: absolute;
    display: block;
    width: 3.2rem;
    height: 6.4rem;
    top: 0;
    right: 0;
    overflow: hidden
}
.footer-anc-btn a span:last-child::before,.footer-anc-btn a span:last-child::after,.footer-anc-btn a::before,.footer-anc-btn a::after {
    content: "";
    position: absolute;
    display: block;
    
}
.footer-anc-btn a span:last-child::before {
    width: 200%;
    height: 100%;
    top: 0;
    right: 0;
    border: solid 1px rgba(0,0,0,.4);
    border-radius: 100%;
}
.footer-anc-btn a span:last-child::after {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    border-top: solid 1px rgba(0,0,0,1);
    border-right: solid 1px rgba(0,0,0,1);
    border-bottom: solid 1px rgba(0,0,0,1);
    border-radius: 0 3.2rem 3.2rem 0;
    transform: rotate(-180deg);
    transform-origin: center left;
    transition: transform .2s cubic-bezier(0,.7,.3,1) ;
}
.footer-anc-btn a::before {
    width: 4px;
    height: 1.2rem;
    bottom: 2.5rem;
    left: 3rem;
    background-color: #225e6c;
    transition: top .2s linear;
}
.footer-anc-btn a::after {
    top: 2.5rem;
    left: 2.6rem;
    border-style: solid;
    border-color: transparent transparent #225e6c transparent;
    border-width: 0 .6rem .8rem .6rem;
    transition: top .2s linear;
}
@media (max-width: 780px){
	body.home footer,
    footer{
		margin-top: 0;
	}
	footer .footer-container{
		-webkit-box-orient: vertical;
  		-webkit-box-direction: normal;
  		-ms-flex-direction: column;
  		flex-direction: column;
        padding: 14vw 7%;
	}
    footer .footer-nav {
        flex-direction: column;
        align-items: flex-start;
    }
    .l-footer {
        width: 66%;
        margin-bottom: 2em;
    }
    .footer-logo {
        min-width: 56%;
    }
	.footer-list ul{
		-webkit-box-orient: vertical;
  		-webkit-box-direction: normal;
  		-ms-flex-direction: column;
  		flex-direction: column;
	}
	.r-footer .gnav-item{
		margin-top: 2em;
	}
}
/*  ==================================
	MAIN COMMON
	================================== */

.inner {
    width: 86%;
    margin: 0 auto;
    position: relative;
}
.flex-container {
    display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}
.section-container {
    width: 100%;
    padding: 16rem 0;
    position: relative;
}
.common-ttl-container {
    width: 100%;
    position: relative;
    margin-bottom: 4rem;
}
.common-ttl {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 1;
    color: #225e6c;
}
.common-ttl::before {
    content: "";
    display: inline-block;
    width: 1.2rem;
    height: 1px;
    background-color: #225e6c;
    margin: -.3rem 1.2rem 0 0;
    vertical-align: middle;
}
.read-txt-container {
    margin-top: 4rem;
}
.read-txt {
    font-size: 1.5rem;
    text-align: justify;
    letter-spacing: .16em;
    line-height: 1.8;
}
.bg-img {
    overflow: hidden;
    position: relative;
}
.thumb-box {
    position: relative;
    overflow: hidden;
    margin: 4rem 0 0;
    width: 100%;
}
.thumb-box a  {
    display: block;
    position: relative;
}
.thumb-box .thumb-img {
    position: relative;
    overflow: hidden;
    padding-top: 56.25%;
    -webkit-transition: .6s;
    -o-transition: .6s;
    transition: .6s;
}
.common-more-btn {
    position: relative;
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.4rem;
    margin: 4em 0 0;
    color: #225e6c;
}
.common-more-btn.RightTop {
    position: absolute;
    top: 0;
    right: 7%;
    margin-top: 0;
}
.common-more-btn a {
    display: block;
    position: relative;
}
.common-more-btn span {
    content: "";
    position: absolute;
    border: 1px #225e6c solid;
    border-radius: 50%;
    top: 50%;
    left: 12rem;
    width: 3.8rem;
    height: 3.8rem;
    -webkit-transition: .5s;
    -o-transition: .5s;
    transition: .5s;
    -webkit-transform: translate(0,-50%);
    -ms-transform: translate(0,-50%);
    -o-transform: translate(0,-50%);
    transform: translate(0,-50%);
}
.common-more-btn span::before,
.common-more-btn span::after {
    content: "";
    position: absolute;
    display: block;
}
.common-more-btn span::before {
    width: .8rem;
    height: 1px;
    bottom: 1.8rem;
    left: 1.4rem;
    background-color: #225e6c;
    transition: top .2s linear;
}
.common-more-btn span::after {
    top: 1.6rem;
    right: 1.2rem;
    border-style: solid;
    border-color: transparent transparent #225e6c transparent;
    border-width: 0 .3rem .3rem .3rem;
    transform: rotate(90deg);
    transition: top .2s linear;
}

@media (max-width: 780px){
	.flex-container {
		-webkit-box-orient: vertical;
  		-webkit-box-direction: normal;
  		-ms-flex-direction: column;
  		flex-direction: column;
	}
    .section-container {
        padding: 20vw 0;
    }
}

/*  ==================================
	TOP
	================================== */
section#section-mv {
    width: 100%;
    height: 100vh;
    position: relative;
}
section#section-mv .slide-area {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
section#section-mv .slide-area img {
    object-fit: cover;
    height: 100%;
}
.mv-copy {
    margin: 0 auto;
    position: absolute;
    top: 50%;
    right: 9rem;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -o-transform: translate(0, -50%);
    transform: translate(0, -50%);
    z-index: 10;
    text-align: right;
    color: #fff;
}
.mv-copy .mv-copy-jp {
    font-size: 3.6em;
    letter-spacing: .16em;
    margin-right: -.16em;
} 
.mv-copy .mv-copy-en {
    font-size: 2.4rem;
    font-weight: 500;
}
#section-about .bg-img {
    background: url("assets/images/top/about-thumb.jpg") center center/cover no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    width: 46vw;
    height: 35vw;
    z-index: -1;
}
#section-about .top-about-text {
    position: relative;
    padding:5vw 0 5vw  39vw;
    height: 35vw;
    display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    justify-content: space-around;
    align-items: flex-end;
}
#section-about .common-ttl-container,
#section-about .read-txt-container,
#section-about .common-more-btn {
    width: 33vw;
}
#section-about .top-about-slogan {
    font-size: 6.26vw;
    font-weight: 300;
    white-space: nowrap;
    text-align: right;
}
#section-news::before,
#section-news::after {
    content: "";
    position: absolute;
    left: 7vw;
    width: 86vw;
    height: 1px;
    background-color: #e5e5e5;
}
#section-news::before {
    top: 0;
}
#section-news::after {
    bottom: 0;
}
.news-container {
    justify-content: space-between;
    margin-top: 6.4rem;
}
.news-item {
    width: calc((100% - 12.8rem) / 3);
}
.news-ttl {
    font-size: 1.5rem;
    padding: 0 0 2rem;
}
.news-cap {
    justify-content: space-between;
    padding: 2rem 0 0;
    border-top: 1px solid #0b1f24;
    align-items: center;
}
.news-cap .news-cat {
    font-size: 1.2rem;
}
.news-cap .news-date {
    font-size: 1.6rem;
}
#section-corporate .flex-container {
    justify-content: space-between;
}
#section-service, #section-member {
    width: calc((100% - 6.4rem) / 2);
}
#section-corporate .read-txt-container {
    width: 75%;
}
#section-service .bg-img {
    background: url("assets/images/top/service-thumb.jpg") center center/cover no-repeat;
}
#section-member .bg-img {
    background: url("assets/images/top/member-thumb.jpg") center center/cover no-repeat;
}

@media (max-width: 780px){
    section#section-mv {
        height: 180vw;
        max-height: 80vh;
    }
    .mv-copy {
        width: 100%;
        right: 50%;
        -webkit-transform: translate(50%, -50%);
        -ms-transform: translate(50%, -50%);
        -o-transform: translate(50%, -50%);
        transform: translate(50%, -50%);
        text-align: center;
        color: #fff;
    }
    .mv-copy .mv-copy-jp {
        font-size: 2.4em;
    } 
    .mv-copy .mv-copy-en {
        font-size: 1.6rem;
    }
    #section-about .bg-img {
        position: relative;
        width: 100%;
        height: 50vw;
    }
    #section-about .top-about-text {
        width: 100%;
        height: auto;
        padding: 10vw 0;
        align-items: flex-start;
    }
    #section-about .common-ttl-container, 
    #section-about .read-txt-container, 
    #section-about .common-more-btn {
        width: 100%;
    }
    #section-service, #section-member,
    #section-corporate .read-txt-container {
        width: 100%;
    }
    #section-service {
        margin-bottom: 20vw;
    }
}

/*  ==================================
	SECTION COMMON
	================================== */
body.page section#page,
body.archive section#page,
body.single section#single{
    padding: 12rem 0 16rem;
}
body.page .section-title,
body.archive .section-title,
body.single .section-title{
    margin: 10rem auto 8rem;
    letter-spacing: .1em;
    line-height: 1;
    color: #2d7d90;
}
body.page .section-title h1,
body.archive .section-title h1,
body.single .section-title h1{
    font-size: 4.4rem;
}
body.page .section-title h2,
body.archive .section-title h2,
body.single .section-title h2{
    font-size: 1.5rem;
    margin: 2rem 0 0;
}
body.page .content-read {
    font-size: 1.5rem;
    margin-bottom: 8.8rem;
}

/*  ==================================
	About Us
	================================== */
body#wrapper .about .company-profile {
    position: relative;
    margin: 12rem auto;
    width: 80%;
}
body#wrapper .about .company-profile::before {
    content: "";
    width: 100vw;
    height: 65vw;
    background-color: #f4f6f6;
    position: absolute;
    bottom: -12rem;
    left: -15.6vw;
    z-index: -1;
}
body#wrapper .about .company-profile dl {
    display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
    flex-wrap:  wrap;
    margin-top: 4rem;
}
body#wrapper .about .company-profile dt {
    font-weight: bold;
    width: 20%;
    position: relative;
    padding: 3.2rem 0;
    font-size: 1.4rem;
    border-bottom: 1px solid #2d7d90;
}
body#wrapper .about .company-profile dd {
    width: 80%;
    border-bottom: 1px solid #ddd;
    padding: 3.2rem;
    font-size: 1.4rem;
}
body#wrapper .about .company-access {
    width: 80%;
    margin: 24rem auto 0;
    position: relative;
}
body#wrapper .about .googlemaps {
    width: 100%;
    height: 50vh;
}
body#wrapper .about .googlemaps iframe {
    width: 100%;
    height: 100%;
}
@media (max-width: 780px){
    body#wrapper .about .company-profile {
        margin: 20vw 0 0;
        width: 100%;
    }
    body#wrapper .about .company-profile::before {
        height: 265vw;
        left: -7vw;
    }
    body#wrapper .about .company-access {
        width: 100%;
    }
}

/*  ==================================
	Member
	================================== */
body#wrapper .member .member-list {
    justify-content: space-between;
    flex-wrap: wrap;
}
body#wrapper .member .member-list::after {
    content: "";
    display: block;
    width: calc((100% - 2.4rem) / 3);
}
body#wrapper .member .member-card {
    width: calc((100% - 2.4rem) / 3);
    margin-bottom: 1.2rem;
    background-color: #f4f6f6; 
    line-height: 1;
}
body#wrapper .member .member-card .member-img {
    width: 64%;
    margin: 12% 18%;
    border-radius: 50%;
    overflow: hidden;
}
body#wrapper .member .member-card .member-heading {
    text-align: center;
    margin: 0 auto 12%;
}
body#wrapper .member .member-card .member-heading h4.member-name-jp {
    font-size: 2.2rem;
    margin: 0 auto 1.6rem;
    color: #2d7d90;
}
body#wrapper .member .member-card .member-heading h4.member-name-en {
    font-size: 1.4rem;
    margin: 0 auto 2.4rem;
    color: #2d7d90;
}
body#wrapper .member .member-card .member-heading h5.member-position {
    font-size: 1.2rem;
}
body#wrapper .member .member-card .member-heading h5.member-position span.member-job {
    display: inherit;
    margin: 1rem auto 0;
}
@media (max-width: 780px){
    body#wrapper .member .member-list {
        flex-direction: row;
        flex-wrap: wrap;
    }
    body#wrapper .member .member-card {
        width: calc((100% - 3vw) / 2);
    }
    body#wrapper .member .member-card .member-heading h4.member-name-jp {
        font-size: 1.4rem;
        margin-bottom: 1rem;
    }
    body#wrapper .member .member-card .member-heading h4.member-name-en {
        font-size: 1rem;
    }
    body#wrapper .member .member-card .member-heading h5.member-position {
        font-size: .8rem;
    }
}

/*  ==================================
	Services
	================================== */
.service-tabs {
    background-color: #f4f6f6;
    width: 100%;
    margin: 0 auto;
}
.service-tab-item {
    width: calc(100%/6);
    height: 5.6rem;
    border-bottom: 1px solid #2d7d90;
    background-color: #ddd;
    line-height: 5.4rem;
    font-size: 1.3rem;
    color: #0b1f24;
    display: block;
    float: left;
    text-align: center;
    transition: all 0.2s ease;
}
.service-tab-item.tab-small {
    line-height: 2.8;
}
.service-tab-item span.service-tabs-small {
    font-size: 1rem;
    display: block;
    margin-top: -1.2rem;
}
.service-tab-item:hover {
    opacity: 0.75;
}
input[name="service-tab-item"] {
    display: none;
}
.service-tab-content {
    display: none;
    padding: 40px 40px 0;
    clear: both;
    overflow: hidden;
}
#tax-advisory:checked ~ #tax-advisory-content,
#inheritance:checked ~ #inheritance-content,
#MandA:checked ~ #MandA-content,
#IPO:checked ~ #IPO-content,
#RPA:checked ~ #RPA-content,
#International-taxation:checked ~ #International-taxation-content {
     display: block;
     min-height: 18rem; 
}
.service-tabs input:checked + .service-tab-item {
    background-color: #2d7d90;
    color: #fff;
}
.service-tabs li {
    font-size: 1.4rem;
    margin-bottom: 1rem;
}

/*  ==================================
	Contact
	================================== */
.text-container{
	width: 100%;
}
.text-container tr{
	margin-bottom: 40px;
	display: block;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.text-container tr:last-child{
	margin-bottom: 0;
}
.text-container th{
	font-weight: 100;
	font-size: 20px;
	font-style: italic;
	line-height: 1em;
	padding-top: 17px;
}
.text-container th span::after{
	content: "*";
	color: #dcc1ac;
}
.text-container td div {
    
    vertical-align: middle;
}
.text-container td .note {
    width: 30.4vw;
    font-size: 0.8rem;
	position: relative;
	padding: 17px 0 0 17px;;
	background-color: inherit;
}
.text-container td .note::before {
    content: "※";
	color: #dcc1ac;
	position: absolute;
	left: 0;
}
.text-container td input[type="text"],
.text-container td input[type="email"],
.text-container td input[type="number"],
.text-container td textarea{
	width: 30.4vw!important;
	font-size: 0.9rem;
	padding: 17px;
	line-height: 1em;
	background-color: #fff;
}
.text-container td input{
	height: 6.3vh
}
.text-container .video{
	height: 12.4vh;
}
.text-container .msg{
	height: 20.9vh;
}
.send-inner{
	text-align: center;
	margin-top: 96px;
}
.privacy,
.recaptcha{
	font-size: 0.9rem;
	line-height: 1.4em;
}
.privacy a,
.recaptcha a{
	color: #dcc1ac;
	border-bottom: #dcc1ac solid 1px;
}
.wpcf7-list-item-label span:last-of-type{
	color: #dcc1ac ;
}
.recaptcha{
	margin-top: 64px;
	line-height: 1.7em;
}
.wpcf7-list-item-label{
	padding-left: 2em;
	cursor: pointer;
	position: relative;
}
.btn-inner{
	position: relative;
}
.btn-wrap{
	margin-top: 64px;
}
.send{
	font-size: 1.2rem;
	position: relative;
	padding: 16px 32px;
	color: #dcc1ac;
	line-height: 1em;
}
.btn-inner::after,
.btn-inner::before{
	content: "";
	width: 100%;
	height: 100%;
	border: solid #dcc1ac 2px;
	position: absolute;
}
.btn-inner::after{
	left: 3px;
	top: 3px
}
.btn-inner::before{
	left: -3px;
	top: -3px
}
span.wpcf7-list-item-label::before {
    content: "";
    border: 1px solid #000;
    display: inline-block;
    position: absolute;
    width: 20px;
    height: 20px;
    cursor: pointer;
    left: 0;
}
input[type="checkbox"]:checked + span.wpcf7-list-item-label::after {
    content: "";
    display: inline-block;
    position: absolute;
    width: 20px;
    height: 20px;
    left: 0;
    background-color: #000;
}
.text-container input[type="text"]::placeholder {
  color: #dcc1ac;
}
.text-container input[type="text"]:-ms-input-placeholder {
  color: #dcc1ac;
}
.text-container input[type="text"]::-ms-input-placeholder {
  color: #dcc1ac;
}
.text-container input[type="email"]::placeholder {
  color: #dcc1ac;
}
.text-container input[type="email"]:-ms-input-placeholder {
  color: #dcc1ac;
}
.text-container input[type="email"]::-ms-input-placeholder {
  color: #dcc1ac;
}
.text-container input[type="number"]::placeholder {
  color: #dcc1ac;
}
.text-container input[type="number"]:-ms-input-placeholder {
  color: #dcc1ac;
}
.text-container input[type="number"]::-ms-input-placeholder {
  color: #dcc1ac;
}
.text-container textarea::placeholder {
  color: #dcc1ac;
}
.text-container textarea::-ms-input-placeholder {
  color: #dcc1ac;
}
.text-container textarea::-ms-input-placeholder {
  color: #dcc1ac;
}
.wpcf7 span.wpcf7-not-valid-tip {
    padding: 8px 0 0 9px;
    font-size: 0.8rem;
    line-height: 1rem;
    position: relative;
}
.wpcf7 .text-container .wpcf7-not-valid {
    background: #ffc0cb69;
}
.wpcf7 .ajax-loader{
	display: none!important;
}
.wpcf7 form .wpcf7-response-output{
	display: none!important;
}
.wpcf7 form .wpcf7-response-output::before,
span.wpcf7-not-valid-tip::before{
	content: "*";
	color: #dcc1ac;
}
.wpcf7-list-item-label{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

/*  ==================================
	Privacy Policy
	================================== */
body#wrapper .page-privacy .privacy-box {
    margin: 0 auto 4.8rem;
    font-size: 1.5rem;
}
body#wrapper .page-privacy .privacy-box:last-of-type {
    margin-bottom: 0;
}
body#wrapper .page-privacy .privacy-box h3.privacy-ttl {
    font-weight: 600;
    color: #2d7d90;
    margin: 0 0 2rem;
}
body#wrapper .page-privacy .privacy-list {
    margin: 2rem 0 0;
    font-size: 1.3rem;
}
body#wrapper .page-privacy .privacy-item {
    margin: 0 0 1.6rem;
}
body#wrapper .page-privacy .privacy-item .privacy-item-num {
    width: 2.4rem;
    display: inline-block;
}
body#wrapper .page-privacy .privacy-item:last-child {
    margin-bottom: 0;
}
